@damoqiongqiu/ice-chart 0.30.6 → 0.30.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.umd.js +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -24,4 +24,4 @@
|
|
|
24
24
|
|
|
25
25
|
"use strict";var e=require("ice-render");function _arrayLikeToArray(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function _callSuper(e,t,r){return t=_getPrototypeOf(t),function _possibleConstructorReturn(e,t){if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return function _assertThisInitialized(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(e)}(e,_isNativeReflectConstruct()?Reflect.construct(t,r||[],_getPrototypeOf(e).constructor):t.apply(e,r))}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,_toPropertyKey(n.key),n)}}function _createClass(e,t,r){return t&&_defineProperties(e.prototype,t),r&&_defineProperties(e,r),Object.defineProperty(e,"prototype",{writable:!1}),e}function _createForOfIteratorHelper(e,t){var r="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!r){if(Array.isArray(e)||(r=_unsupportedIterableToArray(e))||t&&e&&"number"==typeof e.length){r&&(e=r);var n=0,F=function(){};return{s:F,n:function(){return n>=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:F}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var a,s=!0,l=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return s=e.done,e},e:function(e){l=!0,a=e},f:function(){try{s||null==r.return||r.return()}finally{if(l)throw a}}}}function _defineProperty(e,t,r){return(t=_toPropertyKey(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function _get(){return _get="undefined"!=typeof Reflect&&Reflect.get?Reflect.get.bind():function(e,t,r){var n=function _superPropBase(e,t){for(;!{}.hasOwnProperty.call(e,t)&&null!==(e=_getPrototypeOf(e)););return e}(e,t);if(n){var a=Object.getOwnPropertyDescriptor(n,t);return a.get?a.get.call(arguments.length<3?e:r):a.value}},_get.apply(null,arguments)}function _getPrototypeOf(e){return _getPrototypeOf=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},_getPrototypeOf(e)}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&_setPrototypeOf(e,t)}function _isNativeReflectConstruct(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(_isNativeReflectConstruct=function(){return!!e})()}function ownKeys(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function _objectSpread2(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?ownKeys(Object(r),!0).forEach(function(t){_defineProperty(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):ownKeys(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function _regenerator(){
|
|
26
26
|
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
27
|
-
var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",a=r.toStringTag||"@@toStringTag";function i(r,n,a,l){var h=n&&n.prototype instanceof Generator?n:Generator,u=Object.create(h.prototype);return _regeneratorDefine(u,"_invoke",function(r,n,a){var l,h,u,c=0,p=a||[],v=!1,m={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,r){return l=t,h=0,u=e,m.n=r,s}};function d(r,n){for(h=r,u=n,t=0;!v&&c&&!a&&t<p.length;t++){var a,l=p[t],g=m.p,b=l[2];r>3?(a=b===n)&&(u=l[(h=l[4])?5:(h=3,3)],l[4]=l[5]=e):l[0]<=g&&((a=r<2&&g<l[1])?(h=0,m.v=n,m.n=l[1]):g<b&&(a=r<3||l[0]>n||n>b)&&(l[4]=r,l[5]=n,m.n=b,h=0))}if(a||r>1)return s;throw v=!0,n}return function(a,p,g){if(c>1)throw TypeError("Generator is already running");for(v&&1===p&&d(p,g),h=p,u=g;(t=h<2?e:u)||!v;){l||(h?h<3?(h>1&&(m.n=-1),d(h,u)):m.n=u:m.v=u);try{if(c=2,l){if(h||(a="next"),t=l[a]){if(!(t=t.call(l,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,h<2&&(h=0)}else 1===h&&(t=l.return)&&t.call(l),h<2&&(u=TypeError("The iterator does not provide a '"+a+"' method"),h=1);l=e}else if((t=(v=m.n<0)?u:r.call(n,m))!==s)break}catch(t){l=e,h=1,u=t}finally{c=1}}return{value:t,done:v}}}(r,a,l),!0),u}var s={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var l=[][n]?t(t([][n]())):(_regeneratorDefine(t={},n,function(){return this}),t),h=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,_regeneratorDefine(e,a,"GeneratorFunction")),e.prototype=Object.create(h),e}return GeneratorFunction.prototype=GeneratorFunctionPrototype,_regeneratorDefine(h,"constructor",GeneratorFunctionPrototype),_regeneratorDefine(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",_regeneratorDefine(GeneratorFunctionPrototype,a,"GeneratorFunction"),_regeneratorDefine(h),_regeneratorDefine(h,a,"Generator"),_regeneratorDefine(h,n,function(){return this}),_regeneratorDefine(h,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:i,m:f}})()}function _regeneratorDefine(e,t,r,n){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}_regeneratorDefine=function(e,t,r,n){function o(t,r){_regeneratorDefine(e,t,function(e){return this._invoke(t,r,e)})}t?a?a(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(o("next",0),o("throw",1),o("return",2))},_regeneratorDefine(e,t,r,n)}function _setPrototypeOf(e,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf(e,t)}function _slicedToArray(e,t){return function _arrayWithHoles(e){if(Array.isArray(e))return e}(e)||function _iterableToArrayLimit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,s,l,h=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=s.call(r)).done)&&(h.push(n.value),h.length!==t);u=!0);}catch(e){c=!0,a=e}finally{try{if(!u&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(c)throw a}}return h}}(e,t)||_unsupportedIterableToArray(e,t)||function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _superPropGet(e,t,r,n){var a=_get(_getPrototypeOf(1&n?e.prototype:e),t,r);return 2&n&&"function"==typeof a?function(e){return a.apply(r,e)}:a}function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_unsupportedIterableToArray(e)||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 _toPropertyKey(e){var t=function _toPrimitive(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _wrapNativeSuper(e){var t="function"==typeof Map?new Map:void 0;return _wrapNativeSuper=function(e){if(null===e||!function _isNativeFunction(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,Wrapper)}function Wrapper(){return function _construct(e,t,r){if(_isNativeReflectConstruct())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var a=new(e.bind.apply(e,n));return r&&_setPrototypeOf(a,r.prototype),a}(e,arguments,_getPrototypeOf(this).constructor)}return Wrapper.prototype=Object.create(e.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(Wrapper,e)},_wrapNativeSuper(e)}function storeDomainOf(e){var t=e.columns||e.ring||e.chunks||e.raw;return t?{xDomain:t.xDomain,yDomain:t.yDomain,xMonotonic:t.xMonotonic,sizeExtent:t.sizeExtent}:null}function rawCategoryIndex(e,t){var r=e.categorySeq.get(t);if(void 0===r)return-1;var n=e.categories[0];if(void 0===n)return 0;var a=e.categorySeq.get(String(n));return r-(void 0===a?0:a)}function columnAccessors(e){var t=e.x,r=e.y,n=e.size,a=function yAt(e){var t=r[e];return isNaNNumber(t)?null:t};return{pointAt:function pointAt(e){var r=a(e),s=n?n[e]:NaN;return{index:e,xValue:t[e],y:r,raw:void 0,base:0,top:null===r?0:r,name:void 0,size:isNaNNumber(s)?void 0:s}},xValueAt:function xValueAt(e){return t[e]},yValueAt:a,baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=a(e);return null===t?0:t},sizeAt:function sizeAt(e){if(n){var t=n[e];return isNaNNumber(t)?void 0:t}}}}function isNaNNumber(e){return"number"!=typeof e||Number.isNaN(e)}function toNumber(e){if(null==e)return null;var t=Number(e);return isFinite(t)?t:null}function readGenericPointInto(e,t,r,n){n.xValue=t,n.y=null,n.size=void 0,n.name=void 0,n.explicitX=!1;var a=e;if(Array.isArray(e)){if(n.xValue=e[0],n.y=toNumber(e[1]),e.length>2){var s=toNumber(e[2]);n.size=null===s?void 0:s}n.explicitX=!0}else if("number"==typeof e||null===e)n.y=toNumber(e);else if(e&&"object"===_typeof(e)){var l=r.xField||"x",h=r.yField||"y";if(void 0!==e[l]?(n.xValue=e[l],n.explicitX=!0):void 0!==e.x?(n.xValue=e.x,n.explicitX=!0):void 0!==e.name&&"bar"===r.type&&(n.xValue=e.name,n.explicitX=!0),void 0!==e[h]?n.y=toNumber(e[h]):void 0!==e.y?n.y=toNumber(e.y):void 0!==e.value&&(n.y=toNumber(e.value)),void 0!==e.size){var u=toNumber(e.size);n.size=null===u?void 0:u}}return a&&"object"===_typeof(a)&&!Array.isArray(a)&&void 0!==a.name?n.name=String(a.name):"pie"===r.type&&Array.isArray(a)&&"string"==typeof a[0]&&(n.name=a[0]),n}function readGenericPoint(e,t,r){return readGenericPointInto(e,t,r,{xValue:t,y:null,explicitX:!1})}function rawItemAt(e,t){if(!(t<0||t>=e.length))return e.capacity<=0?e.data[t]:e.data[(e.start+t)%e.capacity]}function appendRawItems(e,t,r){var n={type:e.type,xField:e.xField,yField:e.yField},a={xValue:0,y:null,size:void 0,name:void 0,explicitX:!1},s=function parsedOf(e){return readGenericPointInto(e,0,n,a)},l=e.length?Number(s(rawItemAt(e,e.length-1)).xValue):-1/0,h=!1,u=function noteAdded(t){var r=s(t),n=Number(r.xValue);isFinite(n)?(n<e.xDomain[0]&&(e.xDomain[0]=n),n>e.xDomain[1]&&(e.xDomain[1]=n),n<l&&(e.xMonotonic=!1),l=n):e.xMonotonic=!1,null!==r.y&&(e.yDomain?(r.y<e.yDomain[0]&&(e.yDomain[0]=r.y),r.y>e.yDomain[1]&&(e.yDomain[1]=r.y)):e.yDomain=[r.y,r.y])},c=function noteEvicted(t){if(void 0!==t){var r=s(t),n=Number(r.xValue);!isFinite(n)||n!==e.xDomain[0]&&n!==e.xDomain[1]||(h=!0);var a=r.y;null===a||!e.yDomain||a!==e.yDomain[0]&&a!==e.yDomain[1]||(h=!0)}};if(r>0&&e.capacity!==r){for(var p=Math.min(e.length,r),v=new Array(r),m=0;m<p;m++)v[m]=rawItemAt(e,e.length-p+m);e.data=v,e.capacity=r,e.start=0,e.length=p,e.categories=[],e.categoryCounts=new Map,e.categorySeq=new Map,e.categoryNext=0;for(var g=0;g<p;g++){var b,k=readGenericPointInto(rawItemAt(e,g),0,n,a),S=String(k.xValue),A=null!==(b=e.categoryCounts.get(S))&&void 0!==b?b:0;0===A&&(e.categories.push(k.xValue),e.categorySeq.set(S,e.categoryNext++)),e.categoryCounts.set(S,A+1)}}var w=function addCategory(t){var r,n=readGenericPoint(t,0,{type:e.type,xField:e.xField,yField:e.yField}),a=String(n.xValue),s=null!==(r=e.categoryCounts.get(a))&&void 0!==r?r:0;0===s&&(e.categories.push(n.xValue),e.categorySeq.set(a,e.categoryNext++)),e.categoryCounts.set(a,s+1)},_=function removeCategory(t){var r;if(void 0!==t){var n=readGenericPoint(t,0,{type:e.type,xField:e.xField,yField:e.yField}),a=String(n.xValue),s=null!==(r=e.categoryCounts.get(a))&&void 0!==r?r:0;if(s<=1){e.categoryCounts.delete(a);var l=e.categories.findIndex(function(e){return String(e)===a}),h=e.categories.length?e.categorySeq.get(String(e.categories[0])):void 0,u=e.categorySeq.get(a);if(e.categorySeq.delete(a),l>=0&&(e.categories.splice(l,1),void 0!==u&&u!==h)){for(var c=0;c<e.categories.length;c++)e.categorySeq.set(String(e.categories[c]),c);e.categoryNext=e.categories.length}}else e.categoryCounts.set(a,s-1)}};if(e.capacity>0){var M,C=_createForOfIteratorHelper(t);try{for(C.s();!(M=C.n()).done;){var T=M.value,P=void 0,I=void 0;e.length>=e.capacity?(P=e.start,I=e.data[P],e.start=(e.start+1)%e.capacity):(P=(e.start+e.length)%e.capacity,e.length+=1),void 0!==I&&_(I),e.data[P]=T,w(T),c(I),u(T)}}catch(e){C.e(e)}finally{C.f()}}else{var N,D=_createForOfIteratorHelper(t);try{for(D.s();!(N=D.n()).done;){var O=N.value;e.data.push(O),w(O),u(O)}}catch(e){D.e(e)}finally{D.f()}e.length=e.data.length}return h&&function refreshRawDomains(e){for(var t={type:e.type,xField:e.xField,yField:e.yField},r={xValue:0,y:null,size:void 0,name:void 0,explicitX:!1},n=1/0,a=-1/0,s=1/0,l=-1/0,h=1/0,u=-1/0,c=!0,p=-1/0,v=!1,m=0;m<e.length;m++){var g=readGenericPointInto(rawItemAt(e,m),m,t,r),b=Number(g.xValue);isFinite(b)?(b<n&&(n=b),b>a&&(a=b),b<p&&(c=!1),p=b):c=!1,null!==g.y&&(g.y<s&&(s=g.y),g.y>l&&(l=g.y)),"number"==typeof g.size&&isFinite(g.size)&&(v=!0,g.size<h&&(h=g.size),g.size>u&&(u=g.size))}e.xDomain=isFinite(n)?[n,a]:[0,Math.max(0,e.length-1)],e.yDomain=isFinite(s)?[s,l]:null,e.xMonotonic=c,e.sizeExtent=v?h===u?[h,h+1]:[h,u]:null}(e),e}function rawAccessors(e){var t={type:e.type,xField:e.xField,yField:e.yField},r=function readAt(r){var n=rawItemAt(e,r);return void 0===n&&(r<0||r>=e.length)?null:readGenericPoint(n,r,t)};return{pointAt:function pointAt(t){var n=r(t);if(n)return{index:t,xValue:n.xValue,y:n.y,raw:rawItemAt(e,t),base:0,top:null===n.y?0:n.y,name:n.name,size:n.size}},xValueAt:function xValueAt(e){var t=r(e);return t?t.xValue:void 0},yValueAt:function yValueAt(e){var t=r(e);return t?t.y:null},baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=r(e);return t&&null!==t.y?t.y:0},sizeAt:function sizeAt(e){var t=r(e);return t?t.size:void 0}}}function gridAccessors(e){var t=e.xCategories.length,r=function valueAt(t){var r=e.values[t];return isNaNNumber(r)?null:r};return{pointAt:function pointAt(n){var a=t>0?n%t:n,s=t>0?(n-a)/t:0,l=r(n),h=e.yCategories[s];return{index:n,xValue:e.xCategories[a],y:l,raw:void 0,base:0,top:null===l?0:l,name:void 0===h?void 0:String(h)}},xValueAt:function xValueAt(r){return t>0?e.xCategories[r%t]:e.xCategories[r]},yValueAt:r,baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=r(e);return null===t?0:t},sizeAt:function sizeAt(){}}}function createRing(e){var t=Math.max(1,Math.floor(e)||1);return{kind:"ring",capacity:t,start:0,length:0,x:new Float64Array(t),y:new Float64Array(t),xDomain:[0,1],yDomain:null,xMonotonic:!0,sizeExtent:null}}function ringSlot(e,t){return(e.start+t)%e.capacity}function ringXAt(e,t){return e.x[ringSlot(e,t)]}function ringYAt(e,t){return e.y[ringSlot(e,t)]}function ringAppend(e,t,r){var n,a=_createForOfIteratorHelper(t);try{for(a.s();!(n=a.n()).done;){var s=n.value,l=void 0;e.length>=e.capacity?(l=e.start,e.start=(e.start+1)%e.capacity):(l=(e.start+e.length)%e.capacity,e.length+=1);var h=s.x;e.x[l]=null!=h&&isFinite(h)?h:r,e.y[l]=null===s.y?NaN:s.y,r=e.x[l]+1}}catch(e){a.e(e)}finally{a.f()}}function chunkAt(e,t){if(t<0||t>=e.total)return null;var r=function chunkIndexOf(e,t){for(var r=0,n=e.sizes.length-1;r<n;){var a=r+n+1>>1;e.offsets[a]<=t?r=a:n=a-1}return r}(e,t),n=e.resident[r];return n?{columns:n,local:t-e.offsets[r]}:null}function requestChunk(e,t,r){if(!(t<0||t>=e.sizes.length))if(e.resident[t]||e.loading.has(t))touchLru(e,t);else{e.loading.add(t);var n=function settle(n){e.loading.delete(t),n&&(e.resident[t]=n,touchLru(e,t),function refreshChunkMeta(e,t){var r=e.resident[t];if(!r)return;var n=e.sizes[t];if(n){var a=r.x[0],s=r.x[n-1];isFinite(a)&&isFinite(s)&&(e.ranges[t]=[Math.min(a,s),Math.max(a,s)])}var l=e.ranges.filter(function(e){return!!e});l.length&&(e.xDomain=[Math.min.apply(Math,_toConsumableArray(l.map(function(e){return e[0]}))),Math.max.apply(Math,_toConsumableArray(l.map(function(e){return e[1]})))])}(e,t),function evictChunks(e){for(;e.lru.length>e.maxResident;){var t=e.lru.find(function(t){return!e.loading.has(t)});if(void 0===t)return;var r=e.lru.indexOf(t);e.lru.splice(r,1),e.resident[t]=null}}(e),r())};try{var a=e.load(t);a&&"function"==typeof a.then?a.then(function(e){return n(e)},function(){return n(null)}):n(a)}catch(e){n(null)}}}function chunkRangeForX(e,t,r){var n=e.sizes.length;if(!n)return{from:0,to:-1};for(var a=-1,s=-1,l=0;l<n;l++){var h=e.ranges[l];h&&(h[1]<t||h[0]>r||(a<0&&(a=l),s=l))}return a<0?{from:0,to:-1}:{from:Math.max(0,a-1),to:Math.min(n-1,s+1)}}function touchLru(e,t){var r=e.lru.indexOf(t);r>=0&&e.lru.splice(r,1),e.lru.push(t)}function chunkAccessors(e){var t=function yAt(t){var r=chunkAt(e,t);if(!r)return null;var n=r.columns.y[r.local];return Number.isNaN(n)?null:n};return{pointAt:function pointAt(r){var n=chunkAt(e,r);if(n){var a=t(r);return{index:r,xValue:n.columns.x[n.local],y:a,raw:void 0,base:0,top:null===a?0:a,name:void 0}}},xValueAt:function xValueAt(t){var r=chunkAt(e,t);return r?r.columns.x[r.local]:void 0},yValueAt:t,baseAt:function baseAt(){return 0},topAt:function topAt(e){var r=t(e);return null===r?0:r},sizeAt:function sizeAt(){}}}var t=_toConsumableArray(e.FAMILY_PALETTE),r={primary:"#0D6EFD",secondary:"#6C757D",success:"#198754",danger:"#DC3545",warning:"#FFC107",info:"#0DCAF0",light:"#F8F9FA",dark:"#212529",indigo:"#6610F2",purple:"#6F42C1",pink:"#D63384",orange:"#FD7E14",teal:"#20C997",cyan:"#0DCAF0",gray:{100:"#F8F9FA",200:"#E9ECEF",300:"#DEE2E6",400:"#CED4DA",500:"#ADB5BD",600:"#6C757D",700:"#495057",800:"#343A40",900:"#212529"},fontFamily:'system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif',radius:6},n=r,a={backgroundColor:"transparent",colorPalette:t,textColor:n.dark,subTextColor:n.secondary,axisLineColor:n.gray[300],axisLabelColor:n.gray[600],splitLineColor:n.gray[200],labelHaloColor:"rgba(255,255,255,0.85)",fontFamily:n.fontFamily,fontSize:12,legend:{textColor:n.gray[700],inactiveColor:n.gray[400]},tooltip:{background:"#ffffff",borderColor:n.gray[300],textColor:n.dark,shadowColor:"rgba(33,37,41,0.18)",fontSize:12,padding:10,radius:n.radius},crosshair:{lineColor:n.gray[500],labelBackground:n.gray[700],labelColor:"#ffffff"},brush:{fill:"rgba(13,110,253,0.16)",stroke:"rgba(13,110,253,0.8)"},selection:{stroke:n.primary,dimOpacity:.3}},s={backgroundColor:"transparent",colorPalette:_toConsumableArray(e.FAMILY_PALETTE_DARK),textColor:n.gray[200],subTextColor:n.gray[500],axisLineColor:n.gray[700],axisLabelColor:n.gray[400],splitLineColor:n.gray[800],labelHaloColor:"rgba(10,18,32,0.88)",fontFamily:n.fontFamily,fontSize:12,legend:{textColor:n.gray[300],inactiveColor:n.gray[700]},tooltip:{background:n.gray[800],borderColor:n.gray[700],textColor:n.gray[100],shadowColor:"rgba(0,0,0,0.5)",fontSize:12,padding:10,radius:n.radius},crosshair:{lineColor:n.gray[600],labelBackground:n.gray[300],labelColor:n.dark},brush:{fill:"rgba(77,148,255,0.2)",stroke:"rgba(77,148,255,0.85)"},selection:{stroke:"#4D94FF",dimOpacity:.32}},l=a,h=s;function resolveChartTheme(e){var t="dark"===e||"auto"===e&&(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).preferDark?s:a;return e&&"string"!=typeof e?_objectSpread2(_objectSpread2(_objectSpread2({},t),e),{},{legend:_objectSpread2(_objectSpread2({},t.legend),e.legend||{}),tooltip:_objectSpread2(_objectSpread2({},t.tooltip),e.tooltip||{}),crosshair:_objectSpread2(_objectSpread2({},t.crosshair),e.crosshair||{}),brush:_objectSpread2(_objectSpread2({},t.brush),e.brush||{}),selection:_objectSpread2(_objectSpread2({},t.selection),e.selection||{})}):t}function clamp$2(e,t,r){return e<t?t:e>r?r:e}function isFiniteNumber(e){return"number"==typeof e&&isFinite(e)}function extent(e){for(var t=1/0,r=-1/0,n=0;n<e.length;n++){var a=e[n];isFiniteNumber(a)&&(a<t&&(t=a),a>r&&(r=a))}if(t===1/0)return[0,1];if(t===r){var s=Math.abs(t)>1?.1*Math.abs(t):1;return[t-s,r+s]}return[t,r]}function niceStep(e,t){if(!(e>0&&t>0))return 1;var r=e/t,n=Math.pow(10,Math.floor(Math.log10(r))),a=r/n;return(a>=5?10:a>=2?5:a>=1?2:1)*n}function niceDomain(e,t){var r=_slicedToArray(e,2),n=r[0],a=r[1],s=niceStep(a-n,t);return[Math.floor(n/s)*s,Math.ceil(a/s)*s]}function round(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,r=Math.pow(10,t);return Math.round(e*r)/r}var u=1e3,c=6e4,p=36e5,v=24*p,m=30*v,g=365*v;function makeInterval(e,t,r,n,a){return{unit:e,ms:t*r,floor:function floor(e){var t=new Date(e);return n(t),t.getTime()},next:function next(e){var t=new Date(e);return a(t),t.getTime()}}}var b=[makeInterval("ms",1,1,function(){},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+1)}),makeInterval("ms",10,1,function(e){return e.setUTCMilliseconds(10*Math.floor(e.getUTCMilliseconds()/10))},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+10)}),makeInterval("ms",100,1,function(e){return e.setUTCMilliseconds(100*Math.floor(e.getUTCMilliseconds()/100))},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+100)}),makeInterval("s",1,u,function(e){return e.setUTCMilliseconds(0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+1)}),makeInterval("s",5,u,function(e){return e.setUTCSeconds(5*Math.floor(e.getUTCSeconds()/5),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+5)}),makeInterval("s",15,u,function(e){return e.setUTCSeconds(15*Math.floor(e.getUTCSeconds()/15),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+15)}),makeInterval("s",30,u,function(e){return e.setUTCSeconds(30*Math.floor(e.getUTCSeconds()/30),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+30)}),makeInterval("m",1,c,function(e){return e.setUTCSeconds(0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+1)}),makeInterval("m",5,c,function(e){return e.setUTCMinutes(5*Math.floor(e.getUTCMinutes()/5),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+5)}),makeInterval("m",15,c,function(e){return e.setUTCMinutes(15*Math.floor(e.getUTCMinutes()/15),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+15)}),makeInterval("m",30,c,function(e){return e.setUTCMinutes(30*Math.floor(e.getUTCMinutes()/30),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+30)}),makeInterval("h",1,p,function(e){return e.setUTCMinutes(0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+1)}),makeInterval("h",3,p,function(e){return e.setUTCHours(3*Math.floor(e.getUTCHours()/3),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+3)}),makeInterval("h",6,p,function(e){return e.setUTCHours(6*Math.floor(e.getUTCHours()/6),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+6)}),makeInterval("h",12,p,function(e){return e.setUTCHours(12*Math.floor(e.getUTCHours()/12),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+12)}),makeInterval("d",1,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+1)}),makeInterval("d",2,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+2)}),makeInterval("d",7,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+7)}),makeInterval("mo",1,m,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCMonth(e.getUTCMonth()+1)}),makeInterval("mo",3,m,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCMonth(e.getUTCMonth()+3)}),makeInterval("y",1,g,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCFullYear(e.getUTCFullYear()+1)})];function pad(e){return e<10?"0".concat(e):String(e)}var k=function(){function TimeScale(e,t){_classCallCheck(this,TimeScale),_defineProperty(this,"type","time");var r=Number(e[0]),n=Number(e[1]);this.domain=r===n?[r-v,n+v]:[Math.min(r,n),Math.max(r,n)],this.range=t}return _createClass(TimeScale,[{key:"map",value:function map(e){var t=toTimestamp(e),r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0];return l+(t-n)/(a-n)*(s[1]-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];return l===s?r:r+(e-s)/(l-s)*(n-r)}},{key:"pickInterval",value:function pickInterval(e){for(var t=(this.domain[1]-this.domain[0])/Math.max(1,e),r=b[0],n=1/0,a=0;a<b.length;a++){var s=Math.abs(Math.log(b[a].ms/t));s<n&&(n=s,r=b[a])}return r}},{key:"ticks",value:function ticks(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=this.pickInterval(e),r=[],n=t.floor(this.domain[0]);n<this.domain[0]&&(n=t.next(n));for(var a=0;n<=this.domain[1]&&a<1e3;a++){r.push(n);var s=t.next(n);if(s===n)break;n=s}return r}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){return this.pickInterval(5).ms}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1];return n===r?0:(toTimestamp(e)-r)/(n-r)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0];return r+e*(t[1]-r)}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){return function formatTime(e,t,r){var n=new Date(e),a=pad(n.getUTCHours()),s=pad(n.getUTCMinutes()),l=pad(n.getUTCSeconds()),h=pad(n.getUTCMonth()+1),u=pad(n.getUTCDate()),c=n.getUTCFullYear(),p=r>3*g;switch(t){case"ms":return"".concat(a,":").concat(s,":").concat(l,".").concat(pad(n.getUTCMilliseconds()));case"s":return"".concat(a,":").concat(s,":").concat(l);case"m":return"".concat(a,":").concat(s);case"h":return"".concat(a,":00");case"d":return p?"".concat(c,"-").concat(h,"-").concat(u):"".concat(h,"-").concat(u);case"mo":return p?"".concat(c,"-").concat(h):"".concat(h,"-01");default:return"".concat(c)}}(toTimestamp(e),this.pickInterval(5).unit,this.span())}},{key:"clone",value:function clone(){return new TimeScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]])}}])}();function toTimestamp(e){if(e instanceof Date)return e.getTime();if("string"==typeof e){var t=Date.parse(e);if(!isNaN(t))return t}var r=Number(e);return isFinite(r)?r:NaN}var S=function(){function ExpressionError(e,t,r){var n,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"syntax";return _classCallCheck(this,ExpressionError),(n=_callSuper(this,ExpressionError,["[ice-chart] 表达式错误:".concat(e,"(位置 ").concat(t,")\n ").concat(r,"\n ").concat(" ".repeat(Math.max(0,t)),"^")])).name="ExpressionError",n.position=t,n.code=a,n}return _inherits(ExpressionError,_wrapNativeSuper(Error)),_createClass(ExpressionError)}(),A={pi:Math.PI,PI:Math.PI,e:Math.E,tau:2*Math.PI,TAU:2*Math.PI,inf:1/0,Infinity:1/0,nan:NaN},w={sin:1,cos:1,tan:1,asin:1,acos:1,atan:1,atan2:2,sinh:1,cosh:1,tanh:1,asinh:1,acosh:1,atanh:1,exp:1,ln:1,log:1,log2:1,log10:1,sqrt:1,cbrt:1,abs:1,sign:1,floor:1,ceil:1,round:1,trunc:1,min:2,max:2,pow:2,mod:2,hypot:2,clamp:3},_={min:Math.min,max:Math.max,pow:Math.pow,mod:function mod(e,t){return e%t},hypot:Math.hypot,clamp:function clamp(e,t,r){return Math.max(t,Math.min(r,e))},ln:Math.log,log:Math.log,log10:Math.log10,cbrt:Math.cbrt,trunc:Math.trunc,sign:Math.sign};var M=function(){return _createClass(function Parser(e){_classCallCheck(this,Parser),_defineProperty(this,"index",0),_defineProperty(this,"variables",new Set),this.source=e,this.tokens=function tokenize(e){for(var t=[],r=0,n=function isDigit(e){return e>="0"&&e<="9"},a=function isIdentStart(e){return/[A-Za-z_]/.test(e)},s=function isIdentPart(e){return/[A-Za-z0-9_]/.test(e)};r<e.length;){var l=e[r];if(" "!==l&&"\t"!==l&&"\n"!==l&&"\r"!==l)if(n(l)||"."===l&&n(e[r+1]||"")){for(var h=r;r<e.length&&(n(e[r])||"."===e[r]);)r++;if("e"===e[r]||"E"===e[r]){var u=r;if("+"!==e[++r]&&"-"!==e[r]||r++,n(e[r]||""))for(;r<e.length&&n(e[r]);)r++;else r=u}t.push({type:"num",value:e.slice(h,r),position:h})}else if(a(l)){for(var c=r;r<e.length&&s(e[r]);)r++;t.push({type:"ident",value:e.slice(c,r),position:c})}else if("+-*/%^".indexOf(l)>=0)t.push({type:"op",value:l,position:r}),r++;else if("("!==l)if(")"!==l){if(","!==l)throw new S("无法识别的字符「".concat(l,"」"),r,e,"unknown-character");t.push({type:"comma",value:l,position:r}),r++}else t.push({type:"rparen",value:l,position:r}),r++;else t.push({type:"lparen",value:l,position:r}),r++;else r++}return t.push({type:"end",value:"",position:e.length}),t}(e)},[{key:"parse",value:function parse(){if("end"===this.peek().type)throw new S("表达式是空的",0,this.source,"empty");var e=this.parseSum(),t=this.peek();if("end"!==t.type)throw new S("多余的内容「".concat(t.value,"」"),t.position,this.source);return e}},{key:"getVariables",value:function getVariables(){return Array.from(this.variables)}},{key:"peek",value:function peek(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.tokens[Math.min(this.index+e,this.tokens.length-1)]}},{key:"next",value:function next(){return this.tokens[this.index++]}},{key:"parseSum",value:function parseSum(){for(var e=this.parseProduct();;){var t=this.peek();if("op"!==t.type||"+"!==t.value&&"-"!==t.value)return e;this.next(),e={kind:"binary",op:t.value,left:e,right:this.parseProduct()}}}},{key:"parseProduct",value:function parseProduct(){for(var e=this.parseUnary();;){var t=this.peek();if("op"===t.type&&"*/%".indexOf(t.value)>=0)this.next(),e={kind:"binary",op:t.value,left:e,right:this.parseUnary()};else{if(!this.startsAtom(t)||!this.endsAtom(e))return e;e={kind:"binary",op:"*",left:e,right:this.parseUnary()}}}}},{key:"startsAtom",value:function startsAtom(e){return"num"===e.type||"ident"===e.type||"lparen"===e.type}},{key:"endsAtom",value:function endsAtom(e){return"num"===e.kind||"var"===e.kind&&void 0!==A[e.name]}},{key:"parseUnary",value:function parseUnary(){var e=this.peek();return"op"!==e.type||"-"!==e.value&&"+"!==e.value?this.parsePower():(this.next(),{kind:"unary",op:e.value,arg:this.parseUnary()})}},{key:"parsePower",value:function parsePower(){var e=this.parseAtom(),t=this.peek();return"op"===t.type&&"^"===t.value?(this.next(),{kind:"binary",op:"^",left:e,right:this.parseUnary()}):e}},{key:"parseAtom",value:function parseAtom(){var e=this.next();if("num"===e.type){var t=Number(e.value);if(!isFinite(t))throw new S("无法解析的数字「".concat(e.value,"」"),e.position,this.source);return{kind:"num",value:t}}if("lparen"===e.type){var r=this.parseSum(),n=this.peek();if("rparen"!==n.type)throw new S("缺少右括号",n.position,this.source);return this.next(),r}if("ident"===e.type){var a=e.value;if("lparen"===this.peek().type){var s=w[a];if(void 0===s)throw new S("未知函数「".concat(a,"」"),e.position,this.source,"unknown-function");this.next();for(var l=[this.parseSum()];"comma"===this.peek().type;)this.next(),l.push(this.parseSum());var h=this.peek();if("rparen"!==h.type)throw new S("函数「".concat(a,"」缺少右括号"),h.position,this.source);if(this.next(),l.length!==s)throw new S("函数「".concat(a,"」需要 ").concat(s," 个参数,收到 ").concat(l.length," 个"),e.position,this.source,"arity");return{kind:"call",name:a,args:l}}return void 0!==A[a]?{kind:"num",value:A[a]}:(this.variables.add(a),{kind:"var",name:a})}throw new S("end"===e.type?"表达式意外结束":"这里不该出现「".concat(e.value,"」"),e.position,this.source)}}])}();function compileNode(e){switch(e.kind){case"num":return function(){return e.value};case"var":return function(t){var r=t[e.name];return"number"==typeof r?r:NaN};case"unary":var t=compileNode(e.arg);return"-"===e.op?function(e){return-t(e)}:t;case"binary":var r=compileNode(e.left),n=compileNode(e.right);switch(e.op){case"+":return function(e){return r(e)+n(e)};case"-":return function(e){return r(e)-n(e)};case"*":return function(e){return r(e)*n(e)};case"/":return function(e){return r(e)/n(e)};case"%":return function(e){return r(e)%n(e)};case"^":return function(e){return Math.pow(r(e),n(e))};default:return function(){return NaN}}case"call":var a=e.name,s=_[a]||Math[a],l=e.args.map(compileNode);return s?function(e){return s.apply(void 0,_toConsumableArray(l.map(function(t){return t(e)})))}:function(){return NaN}}}var C=new Map;function compileExpression(e){var t=String(null==e?"":e),r=C.get(t);if(r)return r;var n=new M(t),a=compileNode(n.parse()),s={source:t,variables:n.getVariables(),evaluate:function evaluate(e){return a(e||{})}};return C.set(t,s),s}function compileSampler(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=compileExpression(e),n=_objectSpread2({},t);return{setParams:function setParams(e){for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t];n[a]=Number(e[a])}},evaluate:function evaluate(e,t){return n[e]=t,r.evaluate(n)}}}function quantile(e,t){return e.length?e[Math.min(e.length-1,Math.max(0,Math.round((e.length-1)*t)))]:NaN}function diagnoseExpression(e,t){var r=String(null==e?"":e),n=t.params||{},a=[];if(!r.trim())return a.push({code:"empty",severity:"error",message:"表达式是空的:请填写 ".concat(t.variable," 的公式,例如 ").concat("t"===t.variable?"sin(3*t)":"sin(x)/x")}),a;var s=[];try{s=compileExpression(r).variables}catch(e){return e instanceof S?(a.push({code:e.code,severity:"error",message:e.message,position:e.position}),a):(a.push({code:"syntax",severity:"error",message:String(e&&e.message?e.message:e)}),a)}var l,h=[t.variable].concat(_toConsumableArray(Object.keys(n))),u=s.filter(function(e){return e!==t.variable&&!(e in n)}),c=_createForOfIteratorHelper(u);try{for(c.s();!(l=c.n()).done;){var p=l.value;a.push({code:"unknown-variable",severity:"error",message:"未定义的变量「".concat(p,"」:可用的是 ").concat(h.join("、"),"。想当参数用请写进 series.params(会自动进 JSON 快照)。")})}}catch(e){c.e(e)}finally{c.f()}var v,m=new Set([].concat(_toConsumableArray(s),_toConsumableArray(t.additionalVariables||[]))),g=Object.keys(n).filter(function(e){return!m.has(e)}),b=_createForOfIteratorHelper(g);try{for(b.s();!(v=b.n()).done;){var k=v.value;a.push({code:"unused-parameter",severity:"warning",message:"参数「".concat(k,"」定义了但表达式没有用到,改公式或去掉它。")})}}catch(e){b.e(e)}finally{b.f()}var A=t.values;if(A&&A.length&&!a.some(function(e){return"error"===e.severity})){var w=A.filter(function(e){return"number"==typeof e&&isFinite(e)});if(w.length){var _=w.slice().sort(function(e,t){return e-t}),M=quantile(_,.02),C=quantile(_,.98);Math.abs(C-M)<1e-12&&a.push({code:"constant-value",severity:"warning",message:"输出恒为 ".concat(Number(C.toPrecision(6)),":函数与自变量无关(或恰好取到常数),画出来是一条水平线。")})}else a.push({code:"no-finite-values",severity:"error",message:"在当前区间内没有任何可绘制的值:检查是否对负数开方、对 0 取对数,或者分母整段为 0。"})}return a}var T=1e7;function robustRange(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6,r=e.filter(function(e){return"number"==typeof e&&isFinite(e)&&Math.abs(e)<T});if(!r.length)return[-1,1];var n=r.slice().sort(function(e,t){return e-t}),a=function at(e){return n[Math.min(n.length-1,Math.max(0,Math.round((n.length-1)*e)))]},s=a(.5),l=a(.75)-a(.25),h=n[0],u=n[n.length-1];if(l>0&&(h=Math.max(h,s-t*l),u=Math.min(u,s+t*l)),!(u>h)){var c=(u+h)/2,p=Math.max(1,.2*Math.abs(c));h=c-p,u=c+p}return[h,u]}function refineSegment(e,t,r,n,a,s,l){var h=(t+n)/2;if(isFinite(h)&&h!==t&&h!==n){var u=e.evaluate(h);if(e.isBreak(u))l.push(h,NaN);else e.adaptive&&s<e.maxDepth&&e.count<e.maxSamples&&!e.isBreak(r)&&!e.isBreak(a)&&e.deviation(r,u,a)>e.tolerance&&(e.count++,refineSegment(e,t,r,h,u,s+1,l),e.emit(h,u,l),refineSegment(e,h,u,n,a,s+1,l))}}function sampleFunctionCurve(e,t,r){for(var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=Math.max(2,Math.round(n.base||240)),s=new Float64Array(a),l=new Float64Array(a),h=0;h<a;h++){var u=t+(r-t)*h/(a-1),c=e(u);s[h]=u,l[h]=isFinite(c)&&Math.abs(c)<T?c:NaN}for(var p=_slicedToArray(robustRange(Array.from(l)),2),v=p[0],m=p[1],g=Math.max(1e-9,m-v),b={tolerance:Math.max(1e-9,(void 0===n.tolerance?.0025:n.tolerance)*g),maxDepth:void 0===n.maxDepth?7:n.maxDepth,maxSamples:void 0===n.maxSamples?6e3:n.maxSamples,count:a,adaptive:!1!==n.adaptive,evaluate:function evaluate(t){return e(t)},isBreak:function isBreak(e){return!isFinite(e)||Math.abs(e)>T},deviation:function deviation(e,t,r){return Math.abs(t-(e+r)/2)},emit:function emit(e,t,r){r.push(e,t)}},k=[],S=0;S<a&&(k.push(s[S],isFinite(l[S])?l[S]:NaN),S!==a-1);S++)refineSegment(b,s[S],l[S],s[S+1],l[S+1],0,k);for(var A=[],w=0;w<k.length;w+=2)A.push([k[w],k[w+1]]);return function breakPoles(e,t){for(var r=20*Math.max(1e-9,t),n=[],a=0;a<e.length;a++){var s=e[a],l=n.length?n[n.length-1]:null;l&&isFinite(l[1])&&isFinite(s[1])&&l[1]*s[1]<0&&Math.abs(s[1]-l[1])>r&&n.push([(l[0]+s[0])/2,NaN]),n.push(s)}return n}(A,g)}function sampleParametricCurve(e,t,r,n){for(var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},s=Math.max(2,Math.round(a.base||360)),l=new Float64Array(s),h=new Float64Array(s),u=new Float64Array(s),c=0;c<s;c++){var p=r+(n-r)*c/(s-1);l[c]=p,h[c]=e(p),u[c]=t(p)}for(var v=_slicedToArray(robustRange(Array.from(h)),2),m=v[0],g=v[1],b=_slicedToArray(robustRange(Array.from(u)),2),k=b[0],S=b[1],A=Math.max(1e-9,Math.hypot(g-m,S-k)),w={tolerance:Math.max(1e-9,(void 0===a.tolerance?.0015:a.tolerance)*A),maxDepth:void 0===a.maxDepth?7:a.maxDepth,maxSamples:void 0===a.maxSamples?8e3:a.maxSamples,count:s,adaptive:!1!==a.adaptive,evaluate:function evaluate(r){return[e(r),t(r)]},isBreak:function isBreak(e){return!isFinite(e[0])||!isFinite(e[1])||Math.abs(e[0])>T||Math.abs(e[1])>T},deviation:function deviation(e,t,r){return function midDeviation(e,t,r,n,a,s){var l=r-e,h=n-t,u=l*l+h*h;if(0===u)return Math.hypot(a-e,s-t);var c=((a-e)*l+(s-t)*h)/u;return c=Math.max(0,Math.min(1,c)),Math.hypot(a-(e+c*l),s-(t+c*h))}(e[0],e[1],r[0],r[1],t[0],t[1])},emit:function emit(e,t,r){r.push(t[0],t[1])}},_=[],M=0;M<s;M++){var C=h[M],P=u[M],I=!isFinite(C)||!isFinite(P)||Math.abs(C)>T||Math.abs(P)>T;if(_.push(I?NaN:C,I?NaN:P),M===s-1)break;refineSegment(w,l[M],[h[M],u[M]],l[M+1],[h[M+1],u[M+1]],0,_)}for(var N=[],D=0;D<_.length;D+=2)N.push([_[D],_[D+1]]);return N}var P={top:12,right:16,bottom:12,left:12};function padDomain(e,t,r,n,a){var s=r&&void 0!==r.padding?Number(r.padding):.05;if(!isFinite(s)||s<=0)return[e,t];var l=t-e;if(!isFinite(l)||l<=0)return[e,t];var h=l*Math.min(.5,s);return[n?e:e-h,a?t:t+h]}var I={enter:{duration:520,delay:0,easing:"easeOutCubic",stagger:.35},update:{duration:420,delay:0,easing:"easeOutCubic",stagger:0},highlight:{duration:260,delay:0,easing:"springSnappy",stagger:0}};function normalizeAnimation(e){if(!1===e)return{enabled:!1,enter:!1,update:!1,highlight:!1};var t=e||{},r=!1!==t.enabled,n={duration:t.duration,easing:t.easing,stagger:t.stagger,delay:t.delay},a=function stage(e){if(!1===t[e])return!1;var r=_objectSpread2({},I[e]);if("enter"===e)for(var a=0,s=Object.keys(n);a<s.length;a++){var l=s[a];void 0!==n[l]&&(r[l]=n[l])}return t[e]&&"object"===_typeof(t[e])&&Object.assign(r,t[e]),r};return{enabled:r,enter:a("enter"),update:a("update"),highlight:a("highlight")}}function normalizeAnnotation(e){if(!e||"object"!==_typeof(e))return null;var t=function list(e){return Array.isArray(e)?e.filter(function(e){return e&&"object"===_typeof(e)}):[]},r=t(e.lines),n=t(e.points),a=t(e.areas);return r.length||n.length||a.length?{lines:r,points:n,areas:a}:null}function normalizeOption(e){var t,r,n,a,s,l,h,u,c,p,v,m,g=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e||!Array.isArray(e.series))throw new Error("[ice-chart] option.series 必须是数组。");var b=resolveChartTheme(e.theme,{preferDark:!!g.preferDark}),k={legend:_objectSpread2({show:e.series.length>1,position:"top",itemWidth:12,itemHeight:12,itemGap:16,selectable:!0},e.legend||{}),tooltip:_objectSpread2({show:!0,trigger:"axis"},e.tooltip||{}),crosshair:_objectSpread2({show:!0,type:"line",axis:"x",showAxisLabel:!0},e.crosshair||{}),grid:_objectSpread2({show:!0,x:!1,y:!0,lineWidth:1},e.grid||{}),interaction:{hover:_objectSpread2({enabled:!0,mode:"nearest-x",dimOthers:!1},(null===(t=e.interaction)||void 0===t?void 0:t.hover)||{}),select:_objectSpread2({enabled:!1,mode:"single",toggle:!0},(null===(r=e.interaction)||void 0===r?void 0:r.select)||{}),brush:!1!==(null===(n=e.interaction)||void 0===n?void 0:n.brush)&&_objectSpread2({enabled:!1,axes:"x",mode:"select"},(null===(a=e.interaction)||void 0===a?void 0:a.brush)||{}),zoom:!1!==(null===(s=e.interaction)||void 0===s?void 0:s.zoom)&&_objectSpread2({enabled:!0,axes:"x",wheel:!0,wheelFactor:1.2,mode:"data"},(null===(l=e.interaction)||void 0===l?void 0:l.zoom)||{}),pan:!1!==(null===(h=e.interaction)||void 0===h?void 0:h.pan)&&_objectSpread2({enabled:!1,axes:"xy"},(null===(u=e.interaction)||void 0===u?void 0:u.pan)||{}),keyboard:void 0===(null===(c=e.interaction)||void 0===c?void 0:c.keyboard)||e.interaction.keyboard},animation:normalizeAnimation(e.animation),margin:_objectSpread2(_objectSpread2({},P),e.margin||{})};k.series=e.series,k.title=e.title,k.xAxis=e.xAxis||{},k.yAxis=e.yAxis||{},k.dataZoom=e.dataZoom||null,k.theme=e.theme,k.aspect="equal"===e.aspect?"equal":"auto",k.polarGrid=e.polarGrid||null,k.annotation=normalizeAnnotation(e.annotation),k.tooltip=_objectSpread2({show:!1!==(null===(p=e.tooltip)||void 0===p?void 0:p.show)},k.tooltip),k.crosshair=_objectSpread2({show:!1!==(null===(v=e.crosshair)||void 0===v?void 0:v.show)},k.crosshair);for(var S=e.radar||null,A=e.graph||null,w=function buildSeries(e,t,r,n,a,s,l){for(var h=[],u={},c=function _loop(r){var c=e[r];if(!c||!c.type)throw new Error("[ice-chart] series[".concat(r,"] 缺少 type。"));var p=c.name;p||(p="series-".concat(r+1)),void 0!==u[p]?(u[p]+=1,p="".concat(p," (").concat(u[p],")")):u[p]=0;var v=c.id||"series-".concat(r),m=c.color||t.colorPalette[r%t.colorPalette.length];if(c.virtual){var g=l&&l.virtualColumns?l.virtualColumns:null,b=g?g.get(v):void 0,k={id:v,index:r,type:c.type,name:p,color:m,points:[],virtual:!0,hasExplicitX:!0,hidden:!1,axisIndex:0},S=b&&"raw"in b&&(void 0===c.data||b.raw.data===c.data)?b.raw:null,A=!S&&b&&void 0===c.data?b:null,w=function takeLean(){var t=_objectSpread2(_objectSpread2({},c),{},{data:void 0});return e[r]=t,t};if(S)return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,raw:S,pointCount:S.length},rawAccessors(S))),0;if(A&&"ring"in A){var _=A.ring;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,ring:_,pointCount:_.length},function ringAccessors(e){var t=function yAt(t){if(t<0||t>=e.length)return null;var r=ringYAt(e,t);return Number.isNaN(r)?null:r};return{pointAt:function pointAt(r){var n=t(r);return{index:r,xValue:ringXAt(e,r),y:n,raw:void 0,base:0,top:null===n?0:n,name:void 0}},xValueAt:function xValueAt(t){return t<0||t>=e.length?void 0:ringXAt(e,t)},yValueAt:t,baseAt:function baseAt(){return 0},topAt:function topAt(e){var r=t(e);return null===r?0:r},sizeAt:function sizeAt(){}}}(_))),0}if(A&&"chunks"in A){var M=A.chunks;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,chunks:M,pointCount:M.total},chunkAccessors(M))),0}if(A&&"grid"in A){var C=A.grid;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,grid:C,pointCount:C.values.length},gridAccessors(C))),0}if(A&&"columns"in A){var T=A.columns;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,columns:T,pointCount:T.y.length},columnAccessors(T))),0}if("heatmap"===c.type){var P=function buildVirtualGrid(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))},n=e.data,a=[],s=[],l=null,h=0,u=!1;if(n&&!Array.isArray(n)&&"object"===_typeof(n)&&void 0!==n.values){var c=n;Array.isArray(c.xCategories)&&a.push.apply(a,_toConsumableArray(c.xCategories)),Array.isArray(c.yCategories)&&s.push.apply(s,_toConsumableArray(c.yCategories));var p=a.length,v=s.length;p&&v||r("的矩阵需要非空的 xCategories / yCategories。");var m=p*v,g=Number(c.values.length)||0;g!==m&&r("的 values 长度(".concat(g,")应等于 ").concat(p," × ").concat(v," = ").concat(m,"。")),l=c.values instanceof Float64Array?c.values:Float64Array.from(c.values,function(e){return null==e?NaN:Number(e)}),h=m}else if(Array.isArray(n)){u=!0;for(var b=new Map,k=new Map,S=[],A=0;A<n.length;A++){var w=n[A];if(Array.isArray(w)&&!(w.length<3)){var _=b.get(w[0]);void 0===_&&(_=a.length,b.set(w[0],_),a.push(w[0]));var M=k.get(w[1]);void 0===M&&(M=s.length,k.set(w[1],M),s.push(w[1]));var C=toNumber(w[2]);null!==C&&(S.push({col:_,row:M,value:C}),h+=1)}}var T=a.length,P=s.length;T&&P||r("的矩阵是空的(没有可用的 [x类目, y类目, 值] 数据项)。"),l=new Float64Array(T*P).fill(NaN);for(var I=0,D=S;I<D.length;I++){var O=D[I];l[O.row*T+O.col]=O.value}}else r("需要 data(矩阵 { xCategories, yCategories, values } 或 [x类目, y类目, 值] 数组)。");var R=a.length,H=s.length;u&&h/Math.max(1,R*H)<N&&r("的矩阵太稀疏(".concat(h,"/").concat(R*H," 格有值):虚拟热力图按稠密矩阵存,")+"稀疏数据请用普通路径(去掉 virtual)。");for(var z=l,E=new Map,L=new Map,V=0;V<R;V++)E.set(a[V],V);for(var B=0;B<H;B++)L.set(s[B],B);for(var j=1/0,W=-1/0,X=0;X<z.length;X++){var G=z[X];Number.isNaN(G)||(G<j&&(j=G),G>W&&(W=G))}return{xCategories:a,yCategories:s,values:z,xIndex:E,yIndex:L,valueDomain:isFinite(j)?[j,W]:null}}(c,r);return g&&g.set(v,{grid:P}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),grid:P,pointCount:P.values.length},gridAccessors(P))),0}if(function isChunkedInput(e){return!!e&&!Array.isArray(e)&&"object"===_typeof(e)&&Array.isArray(e.sizes)&&"function"==typeof e.loadChunk}(c.data)){var I=function buildVirtualChunks(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))},n=e.sizes;n.length||r("的分块需要至少一块(sizes 为空)。");var a,s=_createForOfIteratorHelper(n);try{for(s.s();!(a=s.n()).done;){var l=a.value;(!isFinite(Number(l))||Number(l)<=0)&&r("的 sizes 必须是正数(收到 ".concat(JSON.stringify(l),")。"))}}catch(e){s.e(e)}finally{s.f()}"function"!=typeof e.rangeOf&&r("的分块需要 rangeOf(i) 声明每块的 x 范围(否则窗口定位要先把块 load 一遍)。");var h=e.yDomain;Array.isArray(h)&&2===h.length&&h.every(function(e){return isFinite(Number(e))})||r("的分块需要声明式 yDomain: [min, max](亿级数据不能为了自动缩放把块全加载一遍)。");return function createChunks(e){var t,r=e.sizes.map(function(e){return Math.max(0,Math.floor(e)||0)}),n=[],a=0,s=_createForOfIteratorHelper(r);try{for(s.s();!(t=s.n()).done;){var l=t.value;n.push(a),a+=l}}catch(e){s.e(e)}finally{s.f()}var h=r.map(function(t,r){return e.rangeOf(r)}),u=h.filter(function(e){return!!e});return{kind:"chunks",sizes:r,offsets:n,total:a,ranges:h,resident:r.map(function(){return null}),loading:new Set,maxResident:Math.max(1,Math.floor(e.maxResidentChunks||4)),lru:[],load:e.load,xDomain:u.length?[Math.min.apply(Math,_toConsumableArray(u.map(function(e){return e[0]}))),Math.max.apply(Math,_toConsumableArray(u.map(function(e){return e[1]})))]:[0,1],yDomain:e.yDomain,xMonotonic:!0,sizeExtent:null}}({sizes:n.map(function(e){return Number(e)}),load:function load(t){var a=e.loadChunk(t),s=function normalize(e){e&&"object"===_typeof(e)&&void 0!==e.x&&void 0!==e.y||r("的 loadChunk(".concat(t,") 必须返回 { x, y }。"));for(var a=void 0===n[t]?0:Number(n[t]),s=e.x instanceof Float64Array?e.x:Float64Array.from(e.x,function(e){return Number(e)}),l=new Float64Array(a),h=0;h<a;h++){var u=e.y[h];l[h]=null==u||""===u?NaN:Number(u)}return s.length!==a&&r("的 loadChunk(".concat(t,") 返回了 ").concat(s.length," 个 x,但 sizes[").concat(t,"] 是 ").concat(a,"。")),{x:s,y:l}};return a&&"function"==typeof a.then?a.then(s):s(a)},rangeOf:e.rangeOf,yDomain:[Number(h[0]),Number(h[1])],maxResidentChunks:e.maxResidentChunks})}(c.data,r);return g&&g.set(v,{chunks:I}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),chunks:I,pointCount:I.total},chunkAccessors(I))),0}if(function isColumnarVirtualType(e){return"scatter"===e||"line"===e||"area"===e||"heatmap"===e}(c.type)){var D=function buildVirtualColumns(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))};"scatter"!==e.type&&"line"!==e.type&&"area"!==e.type&&r("目前只支持散点 / 折线 / 面积(scatter / line / area),收到 type: '".concat(e.type,"'。"));e.stack&&r("不支持堆叠(stack)。");var n=e.data,a=0,s=null,l=null,h=null,u=null,c=null,p=null;if(n&&!Array.isArray(n)&&"object"===_typeof(n)&&void 0!==n.x){var v=n;a=Number(v.y.length)||0,Number(v.x.length)!==a&&r("的 x / y 长度不一致(".concat(v.x.length," vs ").concat(v.y.length,")。")),s=function readX(e){return v.x[e]},l=function readY(e){return v.y[e]},h=v.size?function(e){return v.size[e]}:null,u=v.x instanceof Float64Array?v.x:null,c=v.y instanceof Float64Array?v.y:null,p=v.size instanceof Float64Array?v.size:null}else Array.isArray(n)?(a=n.length,s=function readX(e){return Array.isArray(n[e])?n[e][0]:e},l=function readY(e){return Array.isArray(n[e])?n[e][1]:n[e]},h=function readSize(e){return Array.isArray(n[e])&&n[e].length>2?n[e][2]:void 0}):r("需要 data(列式 { x, y }、元组数组或数值数组)。");var m=u&&u.length===a?u:new Float64Array(a),g=c&&c.length===a?c:new Float64Array(a);s&&l||r("的数据无法解析。");if(u&&u.length===a)for(var b=0;b<a;b++)isFinite(m[b])||r("需要数值型 x(第 ".concat(b," 项是 ").concat(JSON.stringify(m[b]),")。"));else for(var k=0;k<a;k++){var S=Number(s(k));isFinite(S)||r("需要数值型 x(第 ".concat(k," 项是 ").concat(JSON.stringify(s(k)),")。")),m[k]=S}for(var A=!1,w=p&&p.length===a?p:new Float64Array(a).fill(NaN),_=0;_<a;_++){var M=h?h(_):void 0;if(null!=M&&""!==M){var C=Number(M);isFinite(C)&&(w[_]=C,A=!0)}var T=toNumber(l(_));g[_]=null===T?NaN:T}for(var P=1/0,I=-1/0,N=1/0,D=-1/0,O=1/0,R=-1/0,H=!0,z=-1/0,E=0;E<a;E++){var L=m[E];L<P&&(P=L),L>I&&(I=L),L<z&&(H=!1),z=L;var V=g[E];Number.isNaN(V)||(V<N&&(N=V),V>D&&(D=V));var B=w[E];Number.isNaN(B)||(B<O&&(O=B),B>R&&(R=B))}isFinite(P)||(P=0,I=1);return{kind:"columns",x:m,y:g,size:A?w:null,xDomain:[P,I],yDomain:isFinite(N)?[N,D]:null,xMonotonic:H,sizeExtent:A?O===R?[O,O+1]:[O,R]:null}}(c,r);return g&&g.set(v,{columns:D}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),columns:D,pointCount:D.y.length},columnAccessors(D))),0}var O=function buildVirtualRawPoints(e,t){for(var r=Array.isArray(e.data)?e.data:[],n=r.length,a={type:e.type,xField:e.xField,yField:e.yField},s=1/0,l=-1/0,h=1/0,u=-1/0,c=1/0,p=-1/0,v=!0,m=-1/0,g=!1,b=[],k=new Map,S=new Map,A=0;A<n;A++){var w,_,M=readGenericPoint(r[A],A,a),C=String(M.xValue);0===(null!==(w=k.get(C))&&void 0!==w?w:0)&&(b.push(M.xValue),S.set(C,S.size)),k.set(C,(null!==(_=k.get(C))&&void 0!==_?_:0)+1);var T=Number(M.xValue);isFinite(T)?(T<s&&(s=T),T>l&&(l=T),T<m&&(v=!1),m=T):v=!1,null!==M.y&&(M.y<h&&(h=M.y),M.y>u&&(u=M.y)),"number"==typeof M.size&&isFinite(M.size)&&(g=!0,M.size<c&&(c=M.size),M.size>p&&(p=M.size))}isFinite(s)||(s=0,l=Math.max(0,n-1));return{kind:"raw",data:r,start:0,length:n,capacity:0,type:e.type,xField:e.xField,yField:e.yField,xDomain:[s,l],yDomain:isFinite(h)?[h,u]:null,xMonotonic:v,sizeExtent:g?c===p?[c,c+1]:[c,p]:null,categories:b,categoryCounts:k,categorySeq:S,categoryNext:S.size}}(c);return g&&g.set(v,{raw:O}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,raw:O,pointCount:O.length},rawAccessors(O))),0}var R=function buildPoints(e,t,r,n,a){var s=Array.isArray(e.data)?e.data:[];if(!Array.isArray(e.data)&&e.data&&"object"===_typeof(e.data))throw new Error("[ice-chart] series 的列式 data({ x, y })需要配 virtual: true(当前 type: '".concat(e.type,"')。"));var l=[],h=!1;if("function"===e.type||"parametric"===e.type)return function buildCurvePoints(e,t){var r=[],n=e.params||{},a="function"===e.type,s=void 0===e.polarExpression||null===e.polarExpression?"":String(e.polarExpression).trim(),l=!a&&""!==s,h=a?String(e.expression||""):l?s:String(e.xExpression||""),u=a||l?"":String(e.yExpression||""),c=null,p=null;try{c=compileExpression(h),a||l||(p=compileExpression(u))}catch(e){c=null,p=null}var v=a?[-10,10]:[0,2*Math.PI],m=Array.isArray(e.domain)&&e.domain.length>=2?e.domain:null,g=m?Number(m[0]):v[0],b=m?Number(m[1]):v[1];if(a&&t&&Array.isArray(t.xDomain)&&t.xDomain.length>=2){var k=Number(t.xDomain[0]),S=Number(t.xDomain[1]);isFinite(k)&&isFinite(S)&&S>k&&(g=k,b=S)}isFinite(g)&&isFinite(b)&&b!==g||(g=v[0],b=v[1]);for(var A=Number(e.samples),w=Math.max(24,Math.min(6e3,isFinite(A)&&A>0?Math.round(A):a?240:360)),_=_objectSpread2({},n),M=a?"x":"t",C=0;C<w;C++){var T=g+(b-g)*C/(w-1);_[M]=T;var P=T,I=NaN,N=NaN;c&&(a?I=c.evaluate(_):l?(P=(N=c.evaluate(_))*Math.cos(T),I=N*Math.sin(T)):p&&(P=c.evaluate(_),I=p.evaluate(_)));var D=isFinite(P)&&isFinite(I);r.push({index:C,xValue:T,y:D?I:null,raw:a?{x:T,y:I}:l?{t:T,x:P,y:I,r:N}:{t:T,x:P,y:I},base:0,top:D?I:0,name:a?h:l?"r = ".concat(h):"(".concat(h,", ").concat(u,")")})}return{points:r,hasExplicitX:!0}}(e,a);if("graph"===e.type&&n){for(var u=Array.isArray(n.nodes)?n.nodes:[],c=Array.isArray(n.links)?n.links:[],p=function indexOf(e){return"number"==typeof e?e:u.findIndex(function(t){return t.id===e||t.name===e})},v=0;v<u.length;v++){var m=u[v],g=toNumber(m.value);l.push({index:v,xValue:m.name,y:g,raw:m,base:0,top:null===g?0:g,name:m.name})}for(var b=0;b<c.length;b++){var k=c[b],S=p(k.source),A=p(k.target),w="".concat(S>=0?u[S].name:String(k.source)," → ").concat(A>=0?u[A].name:String(k.target)),_=toNumber(k.value);l.push({index:u.length+b,xValue:w,y:null===_?1:_,raw:{__graphLink:!0,source:k.source,target:k.target,value:k.value},base:0,top:null===_?1:_,name:w})}return{points:l,hasExplicitX:!0}}if("sankey"===e.type&&r){var M,C=Array.isArray(r.nodes)?r.nodes:[],T=Array.isArray(r.links)?r.links:[],P=new Array(C.length).fill(0),I=new Array(C.length).fill(0),N=function _indexOf(e){return"number"==typeof e?e:C.findIndex(function(t){return t.name===e})},D=_createForOfIteratorHelper(T);try{for(D.s();!(M=D.n()).done;){var O=M.value,R=N(O.source),H=N(O.target),z=Number(O.value)||0;R>=0&&(I[R]+=z),H>=0&&(P[H]+=z)}}catch(e){D.e(e)}finally{D.f()}for(var E=P.map(function(e,t){return Math.max(e,I[t])}),L=0;L<C.length;L++){var V=C[L];l.push({index:L,xValue:V.name,y:E[L],raw:V,base:0,top:E[L],name:V.name})}for(var B=0;B<T.length;B++){var j=T[B],W=N(j.source),X=N(j.target),G="".concat(W>=0?C[W].name:String(j.source)," → ").concat(X>=0?C[X].name:String(j.target));l.push({index:C.length+B,xValue:G,y:Number(j.value)||0,raw:{__sankeyLink:!0,source:j.source,target:j.target,value:j.value},base:0,top:Number(j.value)||0,name:G})}return{points:l,hasExplicitX:!0}}if("radar"===e.type&&t&&Array.isArray(t.indicators)){for(var U=0;U<t.indicators.length;U++){var K=t.indicators[U],Y=s[U],q=Y&&"object"===_typeof(Y)&&!Array.isArray(Y)&&void 0!==Y.value?toNumber(Y.value):toNumber(Y);l.push({index:U,xValue:K.name,y:q,raw:Y,base:0,top:null===q?0:q,name:K.name})}return{points:l,hasExplicitX:!0}}if("heatmap"===e.type){for(var $=0;$<s.length;$++){var Z=s[$];if(!Array.isArray(Z)||Z.length<3)l.push({index:$,xValue:$,y:null,raw:Z,base:0,top:0});else{var J=toNumber(Z[2]);h=!0,l.push({index:$,xValue:Z[0],y:J,raw:Z,base:0,top:null===J?0:J,name:String(Z[1])})}}return{points:l,hasExplicitX:h}}if("boxplot"===e.type){for(var Q=0;Q<s.length;Q++){var ee=s[Q],te=Array.isArray(ee)?ee.map(function(e){return Number(e)}):null;if(te&&te.length){var ie=5===te.length?[te[0],te[1],te[2],te[3],te[4]]:computeBoxplotSummary(te);h=!0,l.push({index:Q,xValue:Q,y:ie[2],raw:ee,base:0,top:ie[2],boxplot:ie})}else l.push({index:Q,xValue:Q,y:null,raw:ee,base:0,top:0})}return{points:l,hasExplicitX:h}}if("waterfall"===e.type){for(var re=0;re<s.length;re++){var ne=s[re],ae=null,oe=void 0;if("number"==typeof ne)ae=toNumber(ne);else if(ne&&"object"===_typeof(ne)&&!Array.isArray(ne)){var se=ne;ae=toNumber(void 0===se.value?se.y:se.value),void 0!==se.name&&(oe=String(se.name))}else ae=toNumber(ne);h=!0,l.push({index:re,xValue:void 0===oe?re:oe,y:ae,raw:ne,base:0,top:null===ae?0:ae,name:oe})}return{points:l,hasExplicitX:h}}if("treemap"===e.type){var le=[],he=function visit(e,t){var r,n=_createForOfIteratorHelper(e.slice().sort(function(e,t){return treemapNodeValue(t)-treemapNodeValue(e)}));try{for(n.s();!(r=n.n()).done;){var a=r.value;le.push({node:a,depth:t}),Array.isArray(a&&a.children)&&a.children.length&&he(a.children,t+1)}}catch(e){n.e(e)}finally{n.f()}};Array.isArray(e.data)&&he(e.data,0);for(var ue=0;ue<le.length;ue++){var ce=le[ue].node,de=treemapNodeValue(ce);l.push({index:ue,xValue:ce&&void 0!==ce.name?ce.name:ue,y:de,raw:ce,base:0,top:de,name:ce&&void 0!==ce.name?String(ce.name):String(ue)})}return{points:l,hasExplicitX:!0}}for(var fe=0;fe<s.length;fe++){var pe=s[fe],ve=readGenericPoint(pe,fe,e);ve.explicitX&&(h=!0),l.push({index:fe,xValue:ve.xValue,y:ve.y,raw:pe,base:0,top:null===ve.y?0:ve.y,name:ve.name,size:ve.size})}return{points:l,hasExplicitX:h}}(c,n,a,s,l),H=R.points,z=R.hasExplicitX;if("pie"===c.type)for(var E=0;E<H.length;E++){var L=H[E].raw,V=L&&"object"===_typeof(L)&&!Array.isArray(L)?L.color:void 0;H[E].color=V||(0===E&&c.color?c.color:t.colorPalette[E%t.colorPalette.length])}var B=_objectSpread2(_objectSpread2({id:v,index:r,type:c.type,name:p,color:m,option:c,points:H,virtual:!1,pointCount:H.length},function arrayAccessors(e){return{pointAt:function pointAt(t){return e[t]},xValueAt:function xValueAt(t){return e[t].xValue},yValueAt:function yValueAt(t){return e[t].y},baseAt:function baseAt(t){return e[t].base},topAt:function topAt(t){return e[t].top},sizeAt:function sizeAt(t){return e[t].size}}}(H)),{},{hasExplicitX:z,hidden:!1,axisIndex:0});!function applyCurveDomain(e,t,r){if("function"!==t.type&&"parametric"!==t.type)return;for(var n=[],a=[],s=0,l=e.pointCount;s<l;s++){var h=e.pointAt(s).raw;h&&"object"===_typeof(h)&&("number"==typeof h.x&&a.push(h.x),"number"==typeof h.y&&n.push(h.y))}var u=n.filter(function(e){return isFinite(e)});u.length&&(e.domainValues=robustRange(u));if("parametric"===t.type){var c=a.filter(function(e){return isFinite(e)});c.length&&(e.domainXValues=[Math.min.apply(Math,_toConsumableArray(c)),Math.max.apply(Math,_toConsumableArray(c))])}var p=t.params||{},v=[];if("function"===t.type)v=diagnoseExpression(String(t.expression||""),{variable:"x",params:p,values:n});else if(void 0!==t.polarExpression&&null!==t.polarExpression&&""!==String(t.polarExpression).trim()){for(var m=[],g=0,b=e.pointCount;g<b;g++){var k=e.pointAt(g).raw;k&&"object"===_typeof(k)&&"number"==typeof k.r&&m.push(k.r)}v=diagnoseExpression(String(t.polarExpression),{variable:"t",params:p,values:m}).map(function(e){return _objectSpread2(_objectSpread2({},e),{},{message:"r(θ):".concat(e.message)})})}else{var S=String(t.xExpression||""),A=String(t.yExpression||""),w=expressionVariables(S),_=expressionVariables(A),M=function withPrefix(e,t){return e.map(function(e){return _objectSpread2(_objectSpread2({},e),{},{message:"".concat(t,":").concat(e.message)})})};v=[].concat(_toConsumableArray(M(diagnoseExpression(S,{variable:"t",params:p,values:a,additionalVariables:_}),"x(t)")),_toConsumableArray(M(diagnoseExpression(A,{variable:"t",params:p,values:n,additionalVariables:w}),"y(t)")))}if(v.length){e.expressionDiagnostics=v;var C=v.find(function(e){return"error"===e.severity});C&&(e.expressionError=C.message)}}(B,c),h.push(B)},p=0;p<e.length;p++)c(p);return h}(e.series,b,null===(m=k.legend)||void 0===m||m.selected,S,e.sankey||null,A,g),_=0,M=w;_<M.length;_++){var C=M[_];if("waterfall"===C.type){var T=C.option.waterfall,I=void 0!==T?T:e.waterfall;void 0!==I&&(C.waterfallOption=I)}}for(var D=_objectSpread2({},g.hiddenIds||{}),O=0,R=w;O<R.length;O++){var H,z=R[O];null!==(H=k.legend)&&void 0!==H&&H.selected&&!1===k.legend.selected[z.name]&&(D[z.id]=!0),z.hidden=!!D[z.id]||!1===z.option.show}var E=w.some(function(e){return"pie"===e.type})?"polar":w.some(function(e){return"radar"===e.type})?"radar":w.some(function(e){return"sankey"===e.type})?"sankey":w.some(function(e){return"funnel"===e.type})?"funnel":w.some(function(e){return"gauge"===e.type})?"gauge":w.some(function(e){return"liquid"===e.type})?"liquid":w.some(function(e){return"treemap"===e.type})?"treemap":w.some(function(e){return"graph"===e.type})?"graph":"cartesian",L="sankey"===E&&e.sankey||null,V="funnel"===E?e.funnel||{}:null,B="gauge"===E?e.gauge||{}:null,j="liquid"===E?e.liquid||{}:null,W="treemap"===E?e.treemap||{}:null,X="graph"===E?A:null,G=_objectSpread2({},g.hiddenSlices||{}),U=S?function buildRadarDomains(e,t){for(var r=[],n=Array.isArray(e.indicators)?e.indicators.length:0,a=0;a<n;a++){var s,l=e.indicators[a]||{name:String(a)},h=-1/0,u=_createForOfIteratorHelper(t);try{for(u.s();!(s=u.n()).done;){var c=s.value;if("radar"===c.type&&!c.hidden){var p=c.pointAt(a);p&&null!==p.y&&p.y>h&&(h=p.y)}}}catch(e){u.e(e)}finally{u.f()}isFinite(h)||(h=1);var v=isFiniteNumber(l.min)?l.min:0,m=isFiniteNumber(l.max)?l.max:h;r.push([v,m>v?m:v+1])}return r}(S,w):[];"cartesian"===E||e.tooltip&&void 0!==e.tooltip.trigger||(k.tooltip.trigger="item");var K=k.xAxis;"value"===K.type&&(K.type="linear");var Y=Array.isArray(e.yAxis)?e.yAxis:[e.yAxis||{}];Y.length||Y.push({});var q,$=_createForOfIteratorHelper(Y);try{for($.s();!(q=$.n()).done;){var Z=q.value;"value"===Z.type&&(Z.type="linear")}}catch(e){$.e(e)}finally{$.f()}for(var J=0,Q=w;J<Q.length;J++){var ee=Q[J],te=Number(ee.option.yAxisIndex);ee.axisIndex=isFinite(te)?Math.max(0,Math.min(Y.length-1,Math.floor(te))):0}var ie=function isHorizontalLayout(e,t){var r="category"===t.type||Array.isArray(t.data)&&t.data.length>0;return!!r&&!("category"===e.type||Array.isArray(e.data)&&e.data.length>0)}(K,Y[0]);!ie||e.tooltip&&void 0!==e.tooltip.trigger||(k.tooltip.trigger="item"),function applyAxisCategories(e,t){if(!e||!Array.isArray(e.data)||!e.data.length)return;var r,n=e.data,a=_createForOfIteratorHelper(t);try{for(a.s();!(r=a.n()).done;){var s=r.value;if(!s.virtual)for(var l=0,h=s.pointCount;l<h;l++){var u=s.pointAt(l);u.xValue===u.index&&(void 0!==n[u.index]&&(u.xValue=n[u.index],void 0===u.name&&(u.name=String(n[u.index]))))}}}catch(e){a.e(e)}finally{a.f()}}(ie?Y[0]:K,w);var re,ne,ae,oe=ie?K.type&&"category"!==K.type?K.type:"linear":function resolveXAxisType(e,t){if(e.type)return e.type;if(t.some(function(e){return"bar"===e.type||"heatmap"===e.type||"boxplot"===e.type||"waterfall"===e.type}))return"category";var r,n=[],a=_createForOfIteratorHelper(t);try{for(a.s();!(r=a.n()).done;)for(var s=r.value,l=0,h=s.pointCount;l<h&&(n.push(s.xValueAt(l)),!(n.length>2e3));l++);}catch(e){a.e(e)}finally{a.f()}if(n.some(function(e){return e instanceof Date}))return"time";if(n.some(function(e){return"number"==typeof e&&Math.abs(e)>1e11}))return"time";if(n.some(function(e){return"string"==typeof e&&!isFinite(Number(e))}))return"category";return"linear"}(K,w),se=w.some(function(e){return!!(e.columns||e.ring||e.chunks)});if(se&&("category"===oe||ie))throw new Error("[ice-chart] 虚拟(列存)系列只支持数值型 x 轴(xAxis.type 不要写 category)。");if(w.some(function(e){return e.grid})){if("category"!==oe)throw new Error("[ice-chart] 虚拟(列存)热力图的 x 轴必须是类目轴(xAxis.type: 'category')。");var le=Y[0]&&Y[0].type;if(void 0!==le&&"category"!==le)throw new Error("[ice-chart] 虚拟(列存)热力图的 y 轴必须是类目轴(yAxis.type 不要写别的)。")}if(ie){re=buildYDomain(w,0,K,oe),ne=[];var he=function buildCategoryValues(e,t){if(Array.isArray(e.data)&&e.data.length)return e.data.slice();var r,n={},a=[],s=_createForOfIteratorHelper(t);try{for(s.s();!(r=s.n()).done;){var l=r.value;if(l.raw){var h,u=_createForOfIteratorHelper(l.raw.categories);try{for(u.s();!(h=u.n()).done;){var c=h.value,p=String(c);n[p]||(n[p]=!0,a.push(c))}}catch(e){u.e(e)}finally{u.f()}}else for(var v=0,m=l.pointCount;v<m;v++){var g=l.pointAt(v),b=void 0===g.name?g.xValue:g.name,k=String(b);n[k]||(n[k]=!0,a.push(b))}}}catch(e){s.e(e)}finally{s.f()}return a}(Y[0],w);Y[0]=_objectSpread2(_objectSpread2({},Y[0]),{},{type:"category"}),Y[0].__categories=he}else{var ue=function buildXDomain(e,t,r){if("category"===e){var n=t.find(function(e){return e.grid});if(n&&n.grid)return{domain:n.grid.xCategories.slice(),categories:n.grid.xCategories.slice()};if(Array.isArray(r.data)&&r.data.length)return{domain:r.data.slice(),categories:r.data.slice()};var a={},s=[];if(1===t.length&&t[0].raw){var l=t[0].raw,h=l.categories.slice();return{domain:h,categories:h,categoryLookup:function categoryLookup(e){return rawCategoryIndex(l,e)}}}if(t.length>1&&t.every(function(e){return!!e.raw})){for(var u=t[0].raw,c=!0,p=1;p<t.length&&c;p++){var v=t[p].raw;if(v.categories.length!==u.categories.length){c=!1;break}for(var m=u.categories,g=v.categories,b=0;b<m.length;b++)if(m[b]!==g[b]){c=!1;break}}if(c){var k=u.categories.slice();return{domain:k,categories:k,categoryLookup:function categoryLookup(e){return rawCategoryIndex(u,e)}}}}var S,A=_createForOfIteratorHelper(t);try{for(A.s();!(S=A.n()).done;){var w=S.value;if(w.raw){var _,M=_createForOfIteratorHelper(w.raw.categories);try{for(M.s();!(_=M.n()).done;){var C=_.value,T=String(C);a[T]||(a[T]=!0,s.push(C))}}catch(e){M.e(e)}finally{M.f()}}else for(var P=0,I=w.pointCount;P<I;P++){var N=w.xValueAt(P),D=String(N);a[D]||(a[D]=!0,s.push(N))}}}catch(e){A.e(e)}finally{A.f()}return{domain:s,categories:s}}var O,R=[],H=_createForOfIteratorHelper(t);try{for(H.s();!(O=H.n()).done;){var z=O.value,E=storeDomainOf(z);if(E)R.push(E.xDomain[0],E.xDomain[1]);else if(z.domainXValues&&z.domainXValues.length){var L,V=_createForOfIteratorHelper(z.domainXValues);try{for(V.s();!(L=V.n()).done;){var B=L.value;isFinite(B)&&R.push(B)}}catch(e){V.e(e)}finally{V.f()}}else for(var j=0,W=z.pointCount;j<W;j++){var X=z.xValueAt(j),G="time"===e?toTimestamp(X):Number(X);isFinite(G)&&R.push(G)}}}catch(e){H.e(e)}finally{H.f()}var U=_slicedToArray(extent(R),2),K=U[0],Y=U[1],q=isFiniteNumber(r.min),$=isFiniteNumber(r.max);q&&(K=r.min);$&&(Y=r.max);if(!1!==r.nice){var Z=_slicedToArray(niceDomain([K,Y],r.tickCount||5),2);K=Z[0],Y=Z[1]}if("log"!==e){var J=_slicedToArray(padDomain(K,Y,r,q,$),2);K=J[0],Y=J[1]}return{domain:[K,Y],categories:[]}}(oe,w,K);re=ue.domain,ne=ue.categories,ae=ue.categoryLookup}var ce=function resolveXDomain(e,t,r,n){if(!r)return{domain:t,offset:0};if("category"!==e)return{domain:[r[0],r[1]],offset:0};var a=function at(e){if(!n)return t.indexOf(e);var r=n(String(e));return r>=0&&r<t.length?r:-1},s=a(r[0]),l=a(r[1]);return s>=0&&l>=s?{domain:t.slice(s,l+1),offset:s}:{domain:t,offset:0}}(oe,re,g.xDomain,ae),de=ce.domain,fe=ae?ce.offset:0;!function applyStacking(e){var t,r={},n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var a=t.value;if(!a.virtual)if(a.option.stack){var s="".concat(a.axisIndex,"::").concat(a.option.stack);(r[s]=r[s]||[]).push(a)}else for(var l=0,h=a.pointCount;l<h;l++){var u=a.pointAt(l);u.base=0,u.top=null===u.y?0:u.y}}}catch(e){n.e(e)}finally{n.f()}for(var c in r){var p,v={},m=_createForOfIteratorHelper(r[c]);try{for(m.s();!(p=m.n()).done;)for(var g=p.value,b=0,k=g.pointCount;b<k;b++){var S=g.pointAt(b),A=String(S.xValue),w=v[A]||0,_=null===S.y?0:S.y;S.base=w,S.top=w+_,v[A]=S.top}}catch(e){m.e(e)}finally{m.f()}}}(w),function applyWaterfall(e){var t,r=_createForOfIteratorHelper(e);try{for(r.s();!(t=r.n()).done;){var n=t.value;if("waterfall"===n.type&&!n.virtual)for(var a=0,s=0,l=n.pointCount;s<l;s++){var h=n.pointAt(s),u=h.raw,c=!(!u||"object"!==_typeof(u)||Array.isArray(u)||!u.total),p=h.y||0;c?(h.base=0,h.top=a):(h.base=a,h.top=a+p,a+=p)}}}catch(e){r.e(e)}finally{r.f()}}(w);var pe={option:K,type:oe,domain:de,scale:null,index:0,position:"left"},ve=w.some(function(e){return"heatmap"===e.type}),ye=Y.map(function(e,t){if(ie&&0===t)return{option:e,type:"category",domain:e.__categories||[],scale:null,index:t,position:e.position||"left"};if(ve&&(void 0===e.type||"category"===e.type)){for(var r={},n=[],a=0,s=w;a<s.length;a++){var l=s[a];if("heatmap"===l.type)if(l.grid){var h,u=_createForOfIteratorHelper(l.grid.yCategories);try{for(u.s();!(h=u.n()).done;){var c=h.value,p=String(c);r[p]||(r[p]=!0,n.push(c))}}catch(e){u.e(e)}finally{u.f()}}else for(var v=0,m=l.pointCount;v<m;v++){var b=l.pointAt(v),k=String(void 0===b.name?b.xValue:b.name);r[k]||(r[k]=!0,n.push(void 0===b.name?b.xValue:b.name))}}return{option:e,type:"category",domain:n,scale:null,index:t,position:e.position||(0===t?"left":"right")}}var S=e.type||"linear",A=g.yDomains?g.yDomains[t]:0===t?g.yDomain:null;return{option:e,type:S,domain:A||buildYDomain(w,t,e,S),scale:null,index:t,position:e.position||(0===t?"left":"right")}}),me=ye[0];return function applyEqualAspect(e,t,r,n){if("equal"!==e.aspect||"cartesian"!==t)return;if("category"===r.type)return;var a=n[0];if(!a||"category"===a.type)return;var s=Number(r.domain[0]),l=Number(r.domain[1]),h=Number(a.domain[0]),u=Number(a.domain[1]);if(![s,l,h,u].every(function(e){return isFinite(e)}))return;var c=Math.abs(l-s),p=Math.abs(u-h),v=Math.max(c,p);if(!(v>0))return;if(c<v){var m=(s+l)/2;r.domain=[m-v/2,m+v/2]}if(p<v){var g=(h+u)/2;a.domain=[g-v/2,g+v/2]}}(e,E,pe,ye),ae&&pe.domain===de&&(pe.categoryLookup=ae,pe.categoryOffset=fe),{labels:_objectSpread2({chart:"图表",sector:"扇区",value:"数值",ratio:"占比",indicator:"指标",coordinate:"坐标",liquid:"水位",slice:"切片"},e.labels||{}),kind:E,orientation:ie?"horizontal":"vertical",radar:S,sankey:L,funnel:V,gauge:B,liquid:j,treemap:W,graph:X,radarDomains:U,option:k,theme:b,series:w,xAxis:pe,yAxes:ye,yAxis:me,categories:ne,visibleSeries:w.filter(function(e){return!e.hidden}),hiddenIds:D,hiddenSlices:G}}var N=.25;function expressionVariables(e){try{return compileExpression(e).variables}catch(e){return[]}}function buildYDomain(e,t,r,n){var a,s=[],l=!1,h=_createForOfIteratorHelper(e);try{for(h.s();!(a=h.n()).done;){var u=a.value;if(!u.hidden&&u.axisIndex===t){"bar"!==u.type&&"area"!==u.type||(l=!0);var c=storeDomainOf(u);if(c)c.yDomain&&s.push(c.yDomain[0],c.yDomain[1]);else if(u.domainValues&&u.domainValues.length){var p=_slicedToArray(robustRange(u.domainValues),2),v=p[0],m=p[1];s.push(v,m)}else for(var g=0,b=u.pointCount;g<b;g++){var k=u.pointAt(g);null!==k.y&&s.push(k.y),k.boxplot&&s.push(k.boxplot[0],k.boxplot[4]),u.option.stack&&(s.push(k.base),s.push(k.top)),"waterfall"===u.type&&s.push(k.base,k.top)}}}}catch(e){h.e(e)}finally{h.f()}var S=_slicedToArray(extent(s),2),A=S[0],w=S[1];l&&(A=Math.min(A,0),w=Math.max(w,0));var _=isFiniteNumber(r.min),M=isFiniteNumber(r.max);if(_&&(A=r.min),M&&(w=r.max),!1!==r.nice&&"log"!==n){var C=_slicedToArray(niceDomain([A,w],r.tickCount||5),2);A=C[0],w=C[1]}if("log"!==n){var T=l&&!_&&Math.abs(A)<1e-12,P=l&&!M&&Math.abs(w)<1e-12,I=_slicedToArray(padDomain(A,w,r,_||T,M||P),2);A=I[0],w=I[1]}if("log"===n){var N=s.filter(function(e){return e>0});N.length?(A=Math.min.apply(Math,_toConsumableArray(N)),w=Math.max.apply(Math,_toConsumableArray(N))):(A=1,w=10),isFiniteNumber(r.min)&&r.min>0&&(A=r.min),isFiniteNumber(r.max)&&r.max>0&&(w=r.max)}return[round(A,10),round(w,10)]}function treemapNodeValue(e){if(!e)return 0;if(Array.isArray(e.children)&&e.children.length)return e.children.reduce(function(e,t){return e+treemapNodeValue(t)},0);var t=Number(e.value);return isFinite(t)&&t>0?t:0}function computeBoxplotSummary(e){var t=e.filter(function(e){return isFinite(e)}).sort(function(e,t){return e-t});if(!t.length)return[0,0,0,0,0];var r=function quantile(e){var r=(t.length-1)*e,n=Math.floor(r),a=Math.ceil(r);return n===a?t[n]:t[n]+(t[a]-t[n])*(r-n)};return[t[0],r(.25),r(.5),r(.75),t[t.length-1]]}function toSerializableOption(e){if(null==e)return e;if(Array.isArray(e))return e.map(toSerializableOption);if("function"!=typeof e){if("object"===_typeof(e)){var t={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){var n=toSerializableOption(e[r]);void 0!==n&&(t[r]=n)}return t}return e}}function chartThemeToEnginePatch(e){var t=Array.isArray(e.colorPalette)&&e.colorPalette.length?e.colorPalette:["#0D6EFD"],r=function pick(e,r){return t[e]||t[0]||r};return{palette:t,chrome:{selection:{stroke:e.selection.stroke},handle:{fill:r(0,"#0D6EFD")},linkHook:{fill:r(1,"#198754")},slot:{fill:r(1,"#198754"),hoverFill:r(2,"#FFC107")},guide:{color:r(0,"#0D6EFD")},linkLabel:{background:e.tooltip.background,fill:e.tooltip.textColor},textSelection:{color:e.brush.fill},shadow:{sm:e.tooltip.shadowColor,md:e.tooltip.shadowColor,lg:e.tooltip.shadowColor}},base:{fontFamily:{base:e.fontFamily},fontSize:{md:e.fontSize}}}}function applyChartThemeToEngine(e,t){if(!e||"function"!=typeof e.setTheme)throw new Error("applyChartThemeToEngine(ice, theme) 需要一个 ICE 实例");var r=chartThemeToEnginePatch(t);return"function"==typeof e.setThemePatch?e.setThemePatch("ice-chart",r):e.setTheme(r),e}function formatNumberTick(e,t){if(!isFinite(e))return String(e);var r=Math.abs(e);if(0!==r&&(r>=1e9||r<1e-4))return e.toExponential(1);var n=0;t>0&&t<1?n=Math.min(6,Math.ceil(-Math.log10(t))):Number.isInteger(e)||(n=2);var a=e.toFixed(n),s=_slicedToArray((n>0?a.replace(/\.?0+$/,""):a).split("."),2),l=s[0],h=s[1],u=l.replace(/\B(?=(\d{3})+(?!\d))/g,",");return h?"".concat(u,".").concat(h):u}function formatTick(e,t,r,n){if("function"==typeof n){var a=n(e,r);return null==a?"":String(a)}return"time"===t.type?t.format(e,r):"linear"===t.type||"log"===t.type?formatNumberTick(Number(e),function tickStep(e){for(var t=e.ticks(5),r=1/0,n=1;n<t.length;n++){var a=Math.abs(Number(t[n])-Number(t[n-1]));a>0&&a<r&&(r=a)}return isFinite(r)?r:0}(t)):String(e)}var D=function(){function LinearScale(e,t){_classCallCheck(this,LinearScale),_defineProperty(this,"type","linear"),this.domain=function normalize(e){var t=Number(e[0]),r=Number(e[1]);if(t===r){var n=Math.abs(t)>1?.1*Math.abs(t):1;return[t-n,r+n]}return[t,r]}(e),this.range=t}return _createClass(LinearScale,[{key:"map",value:function map(e){var t=Number(e);if(!isFinite(t))return NaN;var r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0];return l+(t-n)/(a-n)*(s[1]-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];return l===s?r:r+(e-s)/(l-s)*(n-r)}},{key:"ticks",value:function ticks(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=niceStep(n-r,e),s=[],l=Math.ceil(r/a)*a;l<=n+1e-6*a&&s.length<1e3;l+=a)s.push(round(l));return s}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){var e=this.ticks(5);return e.length>1?Math.abs(e[1]-e[0]):0}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1];return n===r?0:(Number(e)-r)/(n-r)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0];return r+e*(t[1]-r)}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){for(var r=this.ticks(5),n=1/0,a=1;a<r.length;a++){var s=Math.abs(r[a]-r[a-1]);s>0&&s<n&&(n=s)}return formatNumberTick(Number(e),isFinite(n)?n:0)}},{key:"clone",value:function clone(){return new LinearScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]])}}])}();var O=function(){function BandScale(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};_classCallCheck(this,BandScale),_defineProperty(this,"type","category"),_defineProperty(this,"indexCache",null),_defineProperty(this,"indexCacheDomain",null),this.domain=e.length?e.slice():[""],this.range=t,this.paddingInner=void 0===r.paddingInner?.2:r.paddingInner,this.paddingOuter=void 0===r.paddingOuter?.1:r.paddingOuter,this.lookup=r.categoryLookup||null;var n=Number(r.categoryOffset);this.offset=isFinite(n)&&n>0?Math.floor(n):0,this._step=this.computeStep()}return _createClass(BandScale,[{key:"computeStep",value:function computeStep(){var e=Math.max(1,this.domain.length),t=_slicedToArray(this.range,2),r=t[0],n=t[1],a=Math.abs(n-r),s=e-this.paddingInner+2*this.paddingOuter;return a/Math.max(1e-4,s)}},{key:"indexOf",value:function indexOf(e){if(null!==e&&"object"===_typeof(e)){var t=this.domain.indexOf(e);if(-1!==t)return t}var r=String(e);if(this.lookup){var n=this.lookup(r),a=n-this.offset;return n>=0&&a>=0&&a<this.domain.length?a:-1}var s=this.indices().get(r);return void 0!==s?s:-1}},{key:"indices",value:function indices(){if(this.indexCache&&this.indexCacheDomain===this.domain)return this.indexCache;for(var e=new Map,t=0;t<this.domain.length;t++){var r=String(this.domain[t]);e.has(r)||e.set(r,t)}return this.indexCache=e,this.indexCacheDomain=this.domain,e}},{key:"map",value:function map(e){return this.bandStart(e)+this.bandwidth()/2}},{key:"bandStart",value:function bandStart(e,t){var r=void 0!==t&&t>=0?t:this.indexOf(e);return r<0?NaN:_slicedToArray(this.range,1)[0]+(this.range[1]>=this.range[0]?1:-1)*(this.paddingOuter*this._step+r*this._step)}},{key:"bandwidth",value:function bandwidth(){return this._step*(1-this.paddingInner)}},{key:"step",value:function step(){return this._step}},{key:"isBand",value:function isBand(){return!0}},{key:"ticks",value:function ticks(){return this.domain.slice()}},{key:"indexAt",value:function indexAt(e){for(var t=this.bandwidth(),r=this.range[1]>=this.range[0]?1:-1,n=0;n<this.domain.length;n++){var a=this.bandStart(void 0,n),s=a+r*t,l=Math.min(a,s),h=Math.max(a,s);if(e>=l&&e<=h)return n}return-1}},{key:"invert",value:function invert(e){var t=this.indexAt(e);if(t>=0)return this.domain[t];for(var r=0,n=1/0,a=0;a<this.domain.length;a++){var s=Math.abs(this.map(this.domain[a])-e);s<n&&(n=s,r=a)}return this.domain[r]}},{key:"nearestIndex",value:function nearestIndex(e){var t=this.indexAt(e);if(t>=0)return t;for(var r=0,n=1/0,a=0;a<this.domain.length;a++){var s=Math.abs(this.map(this.domain[a])-e);s<n&&(n=s,r=a)}return r}},{key:"fractionOf",value:function fractionOf(e){var t=this.indexOf(e);return t<0?0:this.domain.length<=1?.5:(t+.5)/this.domain.length}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=this.domain.length;if(t){var r=Math.max(0,Math.min(t-1,Math.round(e*t-.5)));return this.domain[r]}}},{key:"span",value:function span(){return this.domain.length}},{key:"format",value:function format(e){return null==e?"":String(e)}},{key:"clone",value:function clone(){return new BandScale(this.domain.slice(),[this.range[0],this.range[1]],{paddingInner:this.paddingInner,paddingOuter:this.paddingOuter,categoryLookup:this.lookup||void 0,categoryOffset:this.offset})}}])}(),R=function(){function LogScale(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};_classCallCheck(this,LogScale),_defineProperty(this,"type","log"),this.base=r.logBase&&r.logBase>1?r.logBase:10;var n=Math.max(Number.MIN_VALUE,Number(e[0])),a=Math.max(1.0001*n,Number(e[1]));this.domain=[n,a],this.range=t}return _createClass(LogScale,[{key:"log",value:function log(e){return Math.log(e)/Math.log(this.base)}},{key:"map",value:function map(e){var t=Number(e);if(!(t>0))return NaN;var r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0],h=s[1],u=this.log(n),c=this.log(a);return l+(this.log(t)-u)/(c-u)*(h-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];if(l===s)return r;var h=this.log(r),u=h+(e-s)/(l-s)*(this.log(n)-h);return Math.pow(this.base,u)}},{key:"ticks",value:function ticks(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=[],s=Math.floor(this.log(r)),l=Math.ceil(this.log(n)),h=l-s;if(h<=2*e)for(var u=s;u<=l;u++){var c=Math.pow(this.base,u);c>=.999999*r&&c<=1.000001*n&&a.push(c)}else for(var p=Math.max(1,Math.ceil(h/e)),v=s;v<=l;v+=p){var m=Math.pow(this.base,v);m>=.999999*r&&m<=1.000001*n&&a.push(m)}return a.length||a.push(r,n),a}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){var e=this.ticks(5);return e.length>1?Math.abs(e[1]-e[0]):0}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=this.log(r),s=this.log(n);return s===a?0:(this.log(Math.max(Number.MIN_VALUE,Number(e)))-a)/(s-a)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=this.log(r),s=this.log(n);return Math.pow(this.base,a+e*(s-a))}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){return formatNumberTick(Number(e),this.step())}},{key:"clone",value:function clone(){return new LogScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]],{logBase:this.base})}}])}();function createScale(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};switch(e){case"category":return new O(t,r,n);case"time":return new k(t,r,n);case"log":return new R(t,r,n);default:return new D(t,r)}}function measureTextWidth(e,t,r,n){if(!t)return 0;if(e&&"function"==typeof e.measureText)try{var a=e.font;e.font="".concat(r,"px ").concat(n);var s=e.measureText(t);if(e.font=a,s&&"number"==typeof s.width&&isFinite(s.width))return s.width}catch(e){}for(var l=0,h=0;h<t.length;h++){l+=t.charCodeAt(h)>11904?1:.55}return l*r}function computeLayout(e,t,r){for(var n=e.option.margin,a=createScale(e.xAxis.type,e.xAxis.domain,[0,Math.max(1,r.width)],{logBase:e.xAxis.option.logBase}),s=buildAxisLayout(e,"x",e.xAxis,a,t),l=e.yAxes.map(function(n){var a=createScale(n.type,n.domain,[Math.max(1,r.height),0],{logBase:n.option.logBase});return buildAxisLayout(e,"y",n,a,t)}),h=0,u=0,c=0;c<e.yAxes.length;c++){var p=e.yAxes[c],v=l[c];if(!1!==p.option.show&&"cartesian"===e.kind){var m=yAxisReserve(p,v);"right"===p.position?(v.offset=u,u+=m):(v.offset=h,h+=m)}else v.offset=0}var g=l[0],b=function buildTitleLayout(e){var t=e.option.title;if(!t||!t.text&&!t.subtext)return null;var r=e.theme,n={color:t.textStyle&&t.textStyle.color||r.textColor,fontSize:t.textStyle&&t.textStyle.fontSize||r.fontSize+4,fontWeight:t.textStyle&&t.textStyle.fontWeight||"bold"},a={color:t.subtextStyle&&t.subtextStyle.color||r.subTextColor,fontSize:t.subtextStyle&&t.subtextStyle.fontSize||r.fontSize},s="left"===t.left?"left":"right"===t.left?"right":"center";return{text:t.text||"",subtext:t.subtext||"",x:0,y:0,align:s,textStyle:n,subtextStyle:a}}(e),k=b?(b.text?1.5*b.textStyle.fontSize:0)+(b.subtext?1.4*b.subtextStyle.fontSize:0):0,S=function layoutLegend(e,t,r,n){var a=e.option.legend;if(!a||!1===a.show)return null;var s=[];if("polar"===e.kind||"funnel"===e.kind){var l,h=_createForOfIteratorHelper(e.series);try{for(h.s();!(l=h.n()).done;){var u=l.value;if("pie"===u.type||"funnel"===u.type)for(var c=0,p=u.pointCount;c<p;c++){var v=u.pointAt(c);s.push({seriesId:u.id,seriesIndex:u.index,dataIndex:v.index,name:v.name||"".concat(u.name," ").concat(v.index+1),color:v.color||u.color,hidden:!!e.hiddenSlices["".concat(u.id,"#").concat(v.index)],x:0,y:0,width:0,height:0})}}}catch(e){h.e(e)}finally{h.f()}}else{var m,g=_createForOfIteratorHelper(e.series);try{for(g.s();!(m=g.n()).done;){var b=m.value;s.push({seriesId:b.id,seriesIndex:b.index,name:b.name,color:b.color,hidden:!!b.hidden,x:0,y:0,width:0,height:0})}}catch(e){g.e(e)}finally{g.f()}}if(!s.length)return null;var k={position:a.position||"top",items:s},S=e.theme.fontSize,A=a.itemWidth||12,w=Math.max(a.itemHeight||12,1.4*S),_=a.itemGap||16,M=s.map(function(r){return{item:r,textWidth:measureTextWidth(t,r.name,S,e.theme.fontFamily)}}),C=w+4,T=e.option.margin;if("left"===k.position||"right"===k.position){for(var P=Math.max.apply(Math,_toConsumableArray(M.map(function(e){return e.textWidth})).concat([0])),I=M.length*C,N="left"===k.position?T.left:r.width-T.right-(A+6+P),D=Math.max(0,r.height-n-T.bottom),O=Math.max(n,n+(D-I)/2),R=0;R<M.length;R++){var H=M[R].item;H.x=N,H.y=O+R*C,H.width=A+6+M[R].textWidth,H.height=C}return k}var z,E=[],L=[],V=0,B=Math.max(40,r.width-T.left-T.right),j=_createForOfIteratorHelper(M);try{for(j.s();!(z=j.n()).done;){var W=z.value,X=A+6+W.textWidth;L.length&&V+_+X>B&&(E.push(L),L=[],V=0),V+=(L.length>1?_:0)+X,L.push(W)}}catch(e){j.e(e)}finally{j.f()}L.length&&E.push(L);for(var G="top"===k.position?n:r.height-T.bottom-E.length*C,U=0,K=E;U<K.length;U++){var Y,q=K[U],$=q.reduce(function(e,t,r){return e+A+6+t.textWidth+(r>0?_:0)},0),Z=(r.width-$)/2,J=_createForOfIteratorHelper(q);try{for(J.s();!(Y=J.n()).done;){var Q=Y.value;Q.item.x=Z,Q.item.y=G,Q.item.width=A+6+Q.textWidth,Q.item.height=C,Z+=Q.item.width+_}}catch(e){J.e(e)}finally{J.f()}G+=C}return k}(e,t,r,n.top+k),A=S?function legendSizeOf(e,t){var r=t.option.legend,n=t.theme.fontSize,a=r.itemWidth||12,s=Math.max(r.itemHeight||12,1.4*n)+4;if("left"===e.position||"right"===e.position){var l=e.items.map(function(e){return e.x}),h=e.items.map(function(e){return e.x+e.width}),u=l.length?Math.min.apply(Math,_toConsumableArray(l)):0,c=h.length?Math.max.apply(Math,_toConsumableArray(h)):0;return{width:Math.max(a+6,c-u),height:e.items.length*s}}var p,v=1,m=e.items.length?e.items[0].y:0,g=_createForOfIteratorHelper(e.items);try{for(g.s();!(p=g.n()).done;){var b=p.value;b.y>m&&(v+=1,m=b.y)}}catch(e){g.e(e)}finally{g.f()}return{width:0,height:v*s}}(S,e):{width:0,height:0},w=n.left,_=n.top,M=r.width-n.right,C=r.height-n.bottom;_+=k,S&&("top"===S.position?_+=A.height+8:"bottom"===S.position?C-=A.height+8:"left"===S.position?w+=A.width+8:M-=A.width+8),w+=h,M-=u,"cartesian"===e.kind&&!1!==e.xAxis.option.show&&(C-=s.labelHeight+4+6,e.xAxis.option.name&&(C-=s.nameHeight+6));var T=e.option.dataZoom&&e.option.dataZoom.slider,P=!("cartesian"!==e.kind||!e.option.dataZoom||T&&!1===T.show),I=Math.max(12,Number(T&&T.height)||26),N=null;if(P){var D=r.height-n.bottom,O=I+14;C+O>D&&(C-=C+O-D),N=C+14}var R={x:Math.round(Math.max(0,w)),y:Math.round(Math.max(0,_)),width:Math.max(1,Math.round(M-w)),height:Math.max(1,Math.round(C-_))};"cartesian"===e.kind&&function thinXAxisLabels(e,t,r,n,a){var s=e.ticks,l=e.labels,h=t.axisLength;if(!s||s.length<=2||!h||h<=0)return;var u=e.formatLabel,c="function"==typeof u,p=0;if(c)p=Number(e.sampledLabelWidth)||0;else for(var v=Math.max(1,Math.floor(s.length/64)),m=0;m<l.length;m+=v)if(l[m]){var g=measureTextWidth(r,l[m],n,a);g>p&&(p=g)}var b=function materialize(e){if(u){var t,r=_createForOfIteratorHelper(e());try{for(r.s();!(t=r.n()).done;){var n=t.value;l[n]||(l[n]=u(n))}}catch(e){r.e(e)}finally{r.f()}}};if(p<=0)return void b(_regenerator().m(function _callee(){var e;return _regenerator().w(function(t){for(;;)switch(t.n){case 0:e=0;case 1:if(!(e<l.length)){t.n=3;break}return t.n=2,e;case 2:e++,t.n=1;break;case 3:return t.a(2)}},_callee)}));var k=Math.max(p+10,64),S=h/(s.length-1||1);if(S>=k)return void b(_regenerator().m(function _callee2(){var e;return _regenerator().w(function(t){for(;;)switch(t.n){case 0:e=0;case 1:if(!(e<l.length)){t.n=3;break}return t.n=2,e;case 2:e++,t.n=1;break;case 3:return t.a(2)}},_callee2)}));for(var A=Math.max(1,Math.ceil(k/S)),w=new Set,_=0;_<s.length;_+=A)w.add(_);var M=s.length-1;if(M>0&&!w.has(M)){var C=M-M%A;(M-C)*S>=k||w.delete(C),w.add(M)}var T=p/2,P=Number(t.leftRoom)||0,I=Number(t.rightRoom)||0,N=Array.from(w).sort(function(e,t){return e-t});if(N.length){var D=N[0];D*S-T<-P&&w.delete(D);var O=N[N.length-1];O*S+T>h+I&&w.delete(O)}b(function(){return w});var R=Array.from(w).sort(function(e,t){return e-t});if(e.visible=R,c){for(var H=Math.max(1,Math.floor(l.length/64)),z=0;z<l.length;z+=H)w.has(z)||(l[z]="");var E=l.length-1;return void(E>0&&E%H!==0&&!w.has(E)&&(l[E]=""))}for(var L=0;L<l.length;L++)w.has(L)||(l[L]="")}(s,{axisLength:R.width,leftRoom:R.x,rightRoom:Math.max(0,r.width-R.x-R.width)},t,e.theme.fontSize,e.theme.fontFamily);var H=null;if("polar"===e.kind||"radar"===e.kind||"gauge"===e.kind||"liquid"===e.kind){var z,E=Math.min(R.width,R.height)/2,L=R.width/2,V=R.height/2,B="polar"===e.kind&&e.series.some(function(e){return"pie"===e.type&&!(e.option.label&&!1===e.option.label.show)})?Math.min(46,.26*E):6;z="gauge"===e.kind?Math.max(10,.94*Math.min(L-14,V-4)):"liquid"===e.kind?Math.max(10,Math.min(L,V)-3):Math.max(10,E*function polarRadiusRatio(e){if("radar"===e.kind){var t=Number(e.radar&&e.radar.radius);return isFinite(t)&&t>0?Math.max(.1,Math.min(1,t)):.72}var r,n=_createForOfIteratorHelper(e.series);try{for(n.s();!(r=n.n()).done;){var a=r.value;if("pie"===a.type){var s=Number(a.option.radius);if(isFinite(s)&&s>0)return Math.max(.1,Math.min(1,s))}}}catch(e){n.e(e)}finally{n.f()}return.92}(e)-B);var j=R.x+R.width/2,W=R.y+R.height/2;H={cx:j,cy:W,radius:z},R={x:Math.round(j-z),y:Math.round(W-z),width:Math.round(2*z),height:Math.round(2*z)}}if("cartesian"===e.kind&&"equal"===e.option.aspect){var X=Math.min(R.width,R.height);R={x:Math.round(R.x+(R.width-X)/2),y:Math.round(R.y+(R.height-X)/2),width:Math.round(X),height:Math.round(X)}}b&&(b.y=n.top);var G=P&&null!==N?{x:R.x,y:Math.round(N),width:R.width,height:Math.round(I)}:null;return{canvas:r,plot:R,titleRect:b?{x:b.x,y:b.y,width:0,height:k}:null,legendRect:S?legendBoundingRect(S):null,legend:S,title:b,polar:H,slider:G,xAxisLayout:s,yAxes:l,yAxisLayout:g,margin:n}}function yAxisReserve(e,t){var r=t.labelWidth+4+6;return e.option.name&&(r+=t.nameHeight+6),r}function buildAxisLayout(e,t,r,n,a){for(var s=r.option,l=e.theme.fontSize,h=e.theme.fontFamily,u=!1===s.show,c=n.ticks(s.tickCount||5),p=function formatLabel(e){return formatTick(c[e],n,e,s.formatter)},v=c.length>512,m=v?new Array(c.length).fill(""):[],g=0,b=Math.max(1,Math.floor(c.length/64)),k=0;k<c.length;k++){var S=k%b===0||0===k||k===c.length-1;if(!v||S){var A=p(k);if(m[k]=A,S){var w=measureTextWidth(a,A,l,h);w>g&&(g=w)}}}var _=Math.abs(Number(s.labelRotate)||0),M=_*Math.PI/180,C=g*Math.sin(M)+1.4*l,T=s.name||"",P=T?measureTextWidth(a,T,l,h):0;return u?{ticks:c,labels:m,formatLabel:v?p:void 0,sampledLabelWidth:g,offset:0,labelWidth:0,labelHeight:0,nameWidth:0,nameHeight:0}:{ticks:c,labels:m,formatLabel:v?p:void 0,sampledLabelWidth:g,offset:0,labelWidth:"y"===t?g:0,labelHeight:"x"===t?_>0?C:1.4*l:0,nameWidth:"x"===t?P:0,nameHeight:T?1.4*l:0}}function legendBoundingRect(e){if(!e.items.length)return{x:0,y:0,width:0,height:0};var t,r=1/0,n=1/0,a=-1/0,s=-1/0,l=_createForOfIteratorHelper(e.items);try{for(l.s();!(t=l.n()).done;){var h=t.value;r=Math.min(r,h.x),n=Math.min(n,h.y),a=Math.max(a,h.x+h.width),s=Math.max(s,h.y+h.height)}}catch(e){l.e(e)}finally{l.f()}return{x:r,y:n,width:a-r,height:s-n}}var H=function(){function ChartComponent(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return _classCallCheck(this,ChartComponent),_defineProperty(e=_callSuper(this,ChartComponent,[_objectSpread2({origin:"top-left",fill:!1,stroke:!1,draggable:!1,transformable:!1,linkable:!1,interactive:!1},t)]),"loopRegistered",!1),e}return _inherits(ChartComponent,e.ICEComponent),_createClass(ChartComponent,[{key:"keyboardEvtHandler",value:function keyboardEvtHandler(){}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return e>=0&&t>=0&&e<=this.state.width&&t<=this.state.height}},{key:"unit",value:function unit(){var e=this.ice;return e?1/((e.viewport&&e.viewport.scale||1)*(e.dpr||1)):1}},{key:"snap",value:function snap(e){var t=this.ice;if(!t)return e;var r=(t.viewport&&t.viewport.scale||1)*(t.dpr||1);return Math.round(e*r)/r+.5/r}},{key:"markDirty",value:function markDirty(){return this.dirty=!0,this.ice&&(this.ice.dirty=!0),this}},{key:"keepAnimating",value:function keepAnimating(){if(!this.loopRegistered){this.loopRegistered=!0;var e=_objectSpread2(_objectSpread2({},this.props.animations||{}),{},{__tick:{from:0,to:1,duration:100,loop:!0}});this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"stopAnimating",value:function stopAnimating(){if(this.loopRegistered){this.loopRegistered=!1;var e=_objectSpread2({},this.props.animations||{});for(var t in e)e[t]&&(e[t].finished=!0);delete e.__tick,this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.remove(this)}}},{key:"setFont",value:function setFont(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"normal";this.ctx.font="".concat(r," ").concat(e,"px ").concat(t)}}])}(),z="auto";function shouldAnimate(){return"instant"!==z&&("full"===z||!function prefersReducedMotion(){if("undefined"==typeof window||"function"!=typeof window.matchMedia)return!1;try{return!!window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}}())}var E=function(){function Axis(e){var t;return _classCallCheck(this,Axis),_defineProperty(t=_callSuper(this,Axis,[_objectSpread2({interactive:!1},e)]),"axisIndex",0),_defineProperty(t,"position","left"),_defineProperty(t,"axis",null),_defineProperty(t,"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"lastTicks",[]),_defineProperty(t,"morphFrom",[]),t.orientation=e.orientation,t.axisIndex=e.axisIndex||0,t.position=e.position||"left",t}return _inherits(Axis,H),_createClass(Axis,[{key:"edgeX",value:function edgeX(e){var t=this.layout.plot,r=e.offset||0;return"left"===this.position?t.x-r:t.x+t.width+r}},{key:"axisLayoutOf",value:function axisLayoutOf(e){return"x"===this.orientation?e.xAxisLayout:e.yAxes[this.axisIndex]||e.yAxisLayout}},{key:"tickEntries",value:function tickEntries(){var e=this,t=this.axis,r=this.layout;if(!t||!r||!t.scale)return null;var n=t.option||{},a=t.scale,s=r.plot,l=this.axisLayoutOf(r),h=l.ticks,u=l.labels||[],c=[],p=u.length===h.length,v=function emit(t){if(!p||""!==u[t]){var r=a.map(h[t]),l="x"===e.orientation?s.x+r:s.y+r;if(isFinite(l)){var v=formatTick(h[t],a,t,n.formatter)||"";c.push({key:String(h[t]),pos:l,label:v,drawn:!!v})}}};if(l.visible){var m,g=_createForOfIteratorHelper(l.visible);try{for(g.s();!(m=g.n()).done;){v(m.value)}}catch(e){g.e(e)}finally{g.f()}}else for(var b=0;b<h.length;b++)v(b);return c}},{key:"morphProgress",value:function morphProgress(){var e=Number(this.state.axisMorph);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"renderedPositions",value:function renderedPositions(){var e,t=this,r=this.morphProgress(),n=new Map,a=_createForOfIteratorHelper(this.lastTicks);try{var s=function _loop(){var a=e.value,s=t.morphFrom.find(function(e){return e.key===a.key});n.set(a.key,s?s.pos+(a.pos-s.pos)*r:a.pos)};for(a.s();!(e=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}return n}},{key:"syncTicks",value:function syncTicks(){var e=this,t=this.tickEntries();if(t&&!(t.length===this.lastTicks.length&&t.every(function(t,r){return t.key===e.lastTicks[r].key&&Math.abs(t.pos-e.lastTicks[r].pos)<.01}))){var r=0===this.lastTicks.length,n=this.renderedPositions();if(this.morphFrom=this.lastTicks.map(function(e){var t;return _objectSpread2(_objectSpread2({},e),{},{pos:null!==(t=n.get(e.key))&&void 0!==t?t:e.pos})}),this.lastTicks=t,this.setState({axisMorph:0}),r||!shouldAnimate())return this.setState({axisMorph:1}),void this.markDirty();var a=_objectSpread2({},this.props.animations||{});a.axisMorph={from:0,to:1,duration:240,easing:"easeOutCubic",startTime:void 0,finished:!1},this.props.animations=a,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"renderedTickPos",value:function renderedTickPos(e){var t=String(e),r=this.morphFrom.find(function(e){return e.key===t}),n=this.lastTicks.find(function(e){return e.key===t});return r&&n?r.pos+(n.pos-r.pos)*this.morphProgress():n?n.pos:r?r.pos:null}},{key:"morphing",value:function morphing(){return this.morphProgress()<1}},{key:"drawTick",value:function drawTick(e,t,r,n,a){if(!1!==a.showTick){var s=this.ctx;if(s.beginPath(),"x"===this.orientation)s.moveTo(e,t.y+t.height),s.lineTo(e,t.y+t.height+4*n);else{var l="left"===this.position?-1:1;s.moveTo(r,e),s.lineTo(r+4*l*n,e)}s.stroke()}}},{key:"drawTickLabel",value:function drawTickLabel(e,t,r,n,a,s){if(t){var l=this.ctx;if("x"!==this.orientation){var h="left"===this.position?-1:1;l.fillText(t,n+h*a,e)}else{var u=r.y+r.height+a;s.labelRotate?(l.save(),l.translate(e,u),l.rotate(Number(s.labelRotate)*Math.PI/180),l.textAlign="right",l.textBaseline="middle",l.fillText(t,0,0),l.restore()):l.fillText(t,e,u)}}}},{key:"doRender",value:function doRender(){if(this.axis&&this.layout&&this.theme){var e=this.axis.option;if(!1!==e.show)if(this.axis.scale){var t=this.layout.plot,r="x"===this.orientation?this.layout.xAxisLayout:this.layout.yAxes[this.axisIndex]||this.layout.yAxisLayout,n=this.ctx,a=this.theme.fontSize,s=this.unit(),l=10*s;n.beginPath(),n.save(),n.lineWidth=s,n.strokeStyle=this.theme.axisLineColor,n.fillStyle=this.theme.axisLabelColor,this.setFont(a,this.theme.fontFamily),n.textBaseline="x"===this.orientation?"top":"middle",n.textAlign="x"===this.orientation?"center":"left"===this.position?"right":"left";var h="x"===this.orientation?t.x:this.edgeX(r);if(!1!==e.showAxisLine){if(n.beginPath(),"x"===this.orientation){var u=this.snap(t.y+t.height);n.moveTo(t.x,u),n.lineTo(t.x+t.width,u)}else{var c=this.snap(h);n.moveTo(c,t.y),n.lineTo(c,t.y+t.height)}n.stroke()}var p,v="left"===this.position?-1:1,m=this.tickEntries()||[],g=this.morphProgress(),b=new Map,k=_createForOfIteratorHelper(this.morphFrom);try{for(k.s();!(p=k.n()).done;){var S=p.value;b.set(S.key,S.pos)}}catch(e){k.e(e)}finally{k.f()}var A=new Set(m.map(function(e){return e.key}));if(g<1){n.fillStyle=this.theme.axisLabelColor,n.globalAlpha=(1-g)*(1-g);var w,_=_createForOfIteratorHelper(this.morphFrom);try{for(_.s();!(w=_.n()).done;){var M=w.value;!A.has(M.key)&&M.drawn&&(this.drawTick(M.pos,t,h,s,e),this.drawTickLabel(M.pos,M.label,t,h,l,e))}}catch(e){_.e(e)}finally{_.f()}n.globalAlpha=1}var C,T=_createForOfIteratorHelper(m);try{for(T.s();!(C=T.n()).done;){var P=C.value,I=b.get(P.key),N=void 0===I?P.pos:I+(P.pos-I)*g;n.globalAlpha=void 0===I?Math.min(1,.15+.85*g):1,this.drawTick(N,t,h,s,e),P.drawn&&this.drawTickLabel(N,P.label,t,h,l,e)}}catch(e){T.e(e)}finally{T.f()}if(n.globalAlpha=1,e.name)if(this.setFont(a,this.theme.fontFamily),n.fillStyle=this.theme.subTextColor,"x"===this.orientation)if(n.textAlign="center",n.textBaseline="middle",this.layout.slider)n.textAlign="right",n.textBaseline="bottom",n.fillText(e.name,t.x+t.width,t.y+t.height-4*s);else{var D=t.y+t.height+l+r.labelHeight+6*s+.5*a;n.fillText(e.name,t.x+t.width/2,D)}else{var O=h+v*(r.labelWidth+l+r.nameHeight+4*s);n.save(),n.translate("left"===this.position?Math.max(.6*a,O):O,t.y+t.height/2),n.rotate(-Math.PI/2),n.textAlign="center",n.textBaseline="middle",n.fillText(e.name,0,0),n.restore()}n.restore()}}}}])}(),L=function(){function GridLines(e){var t;return _classCallCheck(this,GridLines),_defineProperty(t=_callSuper(this,GridLines,[_objectSpread2({interactive:!1},e)]),"xScale",null),_defineProperty(t,"yScale",null),_defineProperty(t,"horizontal",[]),_defineProperty(t,"xTicks",[]),_defineProperty(t,"plot",{x:0,y:0,width:0,height:0}),_defineProperty(t,"grid",{}),_defineProperty(t,"theme",null),_defineProperty(t,"axisX",null),_defineProperty(t,"axisYList",[]),t}return _inherits(GridLines,H),_createClass(GridLines,[{key:"syncTicks",value:function syncTicks(){if([this.axisX].concat(_toConsumableArray(this.axisYList)).filter(Boolean).some(function(e){return"function"==typeof e.morphing&&e.morphing()})){var e=_objectSpread2({},this.props.animations||{});e.axisMorph={from:0,to:1,duration:240,easing:"easeOutCubic",startTime:void 0,finished:!1},this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"yTickPos",value:function yTickPos(e,t,r){var n=void 0===e?null:this.axisYList[e];if(!n||"function"!=typeof n.renderedTickPos)return r;var a=n.renderedTickPos(t);return null==a?r:a}},{key:"xTickPos",value:function xTickPos(e,t){var r=this.axisX;if(!r||"function"!=typeof r.renderedTickPos)return t;var n=r.renderedTickPos(e);return null==n?t:n}},{key:"doRender",value:function doRender(){var e=this;if(this.theme&&this.xScale&&this.yScale&&!1!==this.grid.show){var t=this.plot,r=this.ctx;r.beginPath(),r.save(),r.strokeStyle=this.grid.color||this.theme.splitLineColor,r.lineWidth=(this.grid.lineWidth||1)*this.unit(),"function"==typeof r.setLineDash&&r.setLineDash((this.grid.lineDash||[]).map(function(t){return t*e.unit()}));var n=this.horizontal.length?this.horizontal:this.yScale?[{scale:this.yScale,ticks:this.yScale.ticks(5)}]:[];if(!1!==this.grid.y){r.beginPath();var a,s=_createForOfIteratorHelper(n);try{for(s.s();!(a=s.n()).done;){var l,h=a.value,u=_createForOfIteratorHelper(h.ticks);try{for(u.s();!(l=u.n()).done;){var c=l.value,p=t.y+h.scale.map(c);if(isFinite(p)){var v=this.snap(this.yTickPos(h.index,c,p));r.moveTo(t.x,v),r.lineTo(t.x+t.width,v)}}}catch(e){u.e(e)}finally{u.f()}}}catch(e){s.e(e)}finally{s.f()}r.stroke()}if(this.grid.x){r.beginPath();var m,g=_createForOfIteratorHelper(this.xTicks.length?this.xTicks:this.xScale.ticks(5));try{for(g.s();!(m=g.n()).done;){var b=m.value,k=t.x+this.xScale.map(b);if(isFinite(k)){var S=this.snap(this.xTickPos(b,k));r.moveTo(S,t.y),r.lineTo(S,t.y+t.height)}}}catch(e){g.e(e)}finally{g.f()}r.stroke()}r.restore()}}}])}(),V=[6,4];function resolveAxisValue(e,t,r,n){if(null==t||""===t)return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注缺少定位值。")};var a=e.scale;if(!a||"function"!=typeof a.map)return{ok:!1,code:"annotation:unsupported-scene",message:"当前场景没有可用于定位的坐标系。"};var s,l=a.domain||[],h=t;if("category"===e.type){var u=l.indexOf(h);if(u<0&&(u=l.findIndex(function(e){return String(e)===String(h)})),u<0){var c=Number(h);if(!(Number.isInteger(c)&&c>=0&&c<l.length))return{ok:!1,code:"annotation:unknown-category",message:"".concat(n," 轴没有类目「").concat(String(t),"」。")};u=c}h=l[u];var p=Number(a.map(h));return isFinite(p)?{ok:!0,pixel:r+p,inside:!0,label:String(h)}:{ok:!1,code:"annotation:unknown-category",message:"".concat(n," 轴定位不到「").concat(String(t),"」。")}}if("time"===e.type){if(s=toTimestamp(h),!isFinite(s))return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注的「").concat(String(t),"」不是合法时间。")}}else if(s=Number(h),!isFinite(s))return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注的「").concat(String(t),"」不是合法数值。")};var v=Number(a.map(s));if(!isFinite(v))return{ok:!1,code:"annotation:out-of-range",message:"".concat(n," 标注的「").concat(String(t),"」无法定位。")};var m=function domainRange(e){if(!e||!e.length)return[null,null];var t=e.map(function(e){return Number(e)});if(t.length&&t.every(function(e){return isFinite(e)}))return[Math.min.apply(Math,_toConsumableArray(t)),Math.max.apply(Math,_toConsumableArray(t))];return[0,e.length-1]}(l),g=_slicedToArray(m,2),b=g[0],k=g[1];return{ok:!0,pixel:r+v,inside:null===b||null===k||s>=b-1e-9&&s<=k+1e-9,label:String(t)}}function pickAxis(e,t,r){if("x"===t)return e.xAxis;var n=Number.isInteger(r)&&Number(r)>=0?Number(r):0;return e.yAxes[n]||e.yAxes[0]||e.xAxis}function positiveNumber(e,t){var r=Number(e);return isFinite(r)&&r>0?r:t}function textPosition(e,t){return"start"===e||"center"===e||"end"===e?e:t}function pointTextPosition(e){return"bottom"===e||"left"===e||"right"===e||"top"===e?e:"top"}function resolvedLineDash(e){return Array.isArray(e.lineDash)?e.lineDash.filter(function(e){return isFinite(Number(e))&&Number(e)>=0}).map(Number):!1===e.dashed?[]:V}function symbolOf(e){return"rect"===e||"diamond"===e||"triangle"===e?e:"circle"}function clamp$1(e,t,r){return Math.max(t,Math.min(r,e))}function plainText(e){return null==e?"":String(e)}function withAlpha(e,t){if("string"!=typeof e)return"rgba(0,0,0,".concat(t,")");if("#"===e.charAt(0)){var r=e.slice(1);if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}return 0===e.indexOf("rgb(")?e.replace("rgb(","rgba(").replace(")",",".concat(t,")")):e}function resolveAnnotation(e,t){var r={lines:[],points:[],areas:[]},n=[];if(!e||"object"!==_typeof(e))return{resolved:r,diagnostics:n};var a=Array.isArray(e.lines)?e.lines:[],s=Array.isArray(e.points)?e.points:[],l=Array.isArray(e.areas)?e.areas:[];if(!(a.length+s.length+l.length))return{resolved:r,diagnostics:n};if("cartesian"!==t.kind)return n.push({code:"annotation:unsupported-scene",severity:"warning",message:"标注需要直角坐标系(x / y 轴),当前场景没有,已跳过全部标注。",kind:"line",index:0}),{resolved:r,diagnostics:n};for(var h=t.theme,u=h.textColor,c=h.fontSize||12,p=0;p<l.length;p++){var v=l[p]||{},m="x"===v.axis?"x":"y",g="x"===m?"x":"y",b=pickAxis(t,m,v.axisIndex),k="x"===m?t.plot.x:t.plot.y,S="x"===m?t.plot.width:t.plot.height,A=resolveAxisValue(b,v.from,k,g),w=resolveAxisValue(b,v.to,k,g);if(A.ok&&w.ok){var _=k,M=k+S,C=clamp$1(A.pixel,_,M),T=clamp$1(w.pixel,_,M);Math.abs(T-C)<=0?n.push({code:"annotation:out-of-range",severity:"warning",message:"标注区间#".concat(p,":区间「").concat(plainText(v.from)," ~ ").concat(plainText(v.to),"」不在当前可视范围内,已跳过。"),kind:"area",index:p}):r.areas.push({kind:"area",index:p,axis:m,axisIndex:Number.isInteger(v.axisIndex)?Number(v.axisIndex):0,from:C,to:T,color:"string"==typeof v.color&&v.color?v.color:withAlpha(u,.1),text:plainText(v.text),textPosition:textPosition(v.textPosition,"center"),textColor:"string"==typeof v.textColor&&v.textColor?v.textColor:u,fontSize:positiveNumber(v.fontSize,c)})}else pushDiagnostic(n,A.ok?w:A,"area",p)}for(var P=0;P<a.length;P++){var I=a[P]||{},N="x"===I.axis?"x":"y",D="x"===N?"x":"y",O=pickAxis(t,N,I.axisIndex),R="x"===N?t.plot.x:t.plot.y,H=resolveAxisValue(O,I.value,R,D);if(H.ok)if(H.inside){var z="string"==typeof I.color&&I.color?I.color:u;r.lines.push({kind:"line",index:P,axis:N,axisIndex:Number.isInteger(I.axisIndex)?Number(I.axisIndex):0,pixel:H.pixel,text:plainText(I.text),color:z,lineWidth:positiveNumber(I.lineWidth,1),lineDash:resolvedLineDash(I),textPosition:textPosition(I.textPosition,"end"),textColor:"string"==typeof I.textColor&&I.textColor?I.textColor:z,fontSize:positiveNumber(I.fontSize,c)})}else pushDiagnostic(n,{ok:!1,code:"annotation:out-of-range",message:"".concat(D," 标注的「").concat(H.label,"」不在当前可视范围内,已跳过。")},"line",P);else pushDiagnostic(n,H,"line",P)}for(var E=0;E<s.length;E++){var L=s[E]||{},V=resolveAxisValue(t.xAxis,L.x,t.plot.x,"x"),B=resolveAxisValue(pickAxis(t,"y",L.axisIndex),L.y,t.plot.y,"y");if(V.ok&&B.ok&&V.inside&&B.inside){var j="string"==typeof L.color&&L.color?L.color:u;r.points.push({kind:"point",index:E,axisIndex:Number.isInteger(L.axisIndex)?Number(L.axisIndex):0,x:V.pixel,y:B.pixel,text:plainText(L.text),color:j,symbol:symbolOf(L.symbol),symbolSize:positiveNumber(L.symbolSize,8),textPosition:pointTextPosition(L.textPosition),textColor:"string"==typeof L.textColor&&L.textColor?L.textColor:j,fontSize:positiveNumber(L.fontSize,c)})}else{pushDiagnostic(n,V.ok?B.ok?V.inside?{ok:!1,code:"annotation:out-of-range",message:"y 标注的「".concat(B.label,"」不在当前可视范围内,已跳过。")}:{ok:!1,code:"annotation:out-of-range",message:"x 标注的「".concat(V.label,"」不在当前可视范围内,已跳过。")}:B:V,"point",E)}}return{resolved:r,diagnostics:n}}function pushDiagnostic(e,t,r,n){var a="line"===r?"标注线":"point"===r?"标注点":"标注区间";e.push({code:t.code,severity:"annotation:invalid-value"===t.code?"error":"warning",message:"".concat(a,"#").concat(n,":").concat(t.message),kind:r,index:n})}var B=function(){function Annotation(e){var t;return _classCallCheck(this,Annotation),_defineProperty(t=_callSuper(this,Annotation,[_objectSpread2({interactive:!1},e)]),"resolved",{lines:[],points:[],areas:[]}),_defineProperty(t,"diagnostics",[]),_defineProperty(t,"ink",[]),_defineProperty(t,"theme",null),_defineProperty(t,"option",null),_defineProperty(t,"__boxScratch",[0,0,0,0]),_defineProperty(t,"plot",{x:0,y:0,width:0,height:0}),_defineProperty(t,"xAxis",null),_defineProperty(t,"yAxes",[]),t}return _inherits(Annotation,H),_createClass(Annotation,[{key:"sync",value:function sync(e,t){this.option=e||null,this.theme=t.theme;var r=resolveAnnotation(e,t),n=r.resolved,a=r.diagnostics;this.resolved=n,this.diagnostics=a,this.markDirty()}},{key:"hasInk",get:function get(){return this.resolved.lines.length>0||this.resolved.points.length>0||this.resolved.areas.length>0}},{key:"__localBox",value:function __localBox(){var e=this.__boxScratch;return e[0]=0,e[1]=0,e[2]=this.state.width||0,e[3]=this.state.height||0,e}},{key:"doRender",value:function doRender(){if(this.theme&&this.hasInk){var e=this.plot,t=[];this.drawAreas(t,e),this.drawLines(t,e),this.drawPoints(t),this.ink=t}else this.ink=[]}},{key:"drawAreas",value:function drawAreas(e,t){var r,n=this,a=_createForOfIteratorHelper(this.resolved.areas);try{var s=function _loop(){var a=r.value,s=n.ctx;s.beginPath();var l=Math.min(a.from,a.to),h=Math.max(a.from,a.to),u="x"===a.axis?l:t.x,c="y"===a.axis?l:t.y,p="x"===a.axis?h-l:t.width,v="y"===a.axis?h-l:t.height;if(p<=0||v<=0)return 1;s.save(),s.fillStyle=a.color,s.fillRect(u,c,p,v),s.restore();var m=null;if(a.text){s.save(),n.setFont(a.fontSize,n.theme.fontFamily,"normal"),s.fillStyle=a.textColor;if("y"===a.axis){var g="start"===a.textPosition?"left":"end"===a.textPosition?"right":"center",b="start"===a.textPosition?t.x+6:"end"===a.textPosition?t.x+t.width-6:t.x+t.width/2;s.textAlign=g,s.textBaseline="middle";var k=(a.from+a.to)/2;n.strokeHalo(function(){return s.strokeText(a.text,b,k)}),s.fillText(a.text,b,k),m={kind:"area",index:a.index,x:"right"===g?b-n.textWidth(a.text,a.fontSize):"center"===g?b-n.textWidth(a.text,a.fontSize)/2:b,y:k-a.fontSize/2,width:n.textWidth(a.text,a.fontSize),height:a.fontSize,text:a.text}}else{var S=(a.from+a.to)/2;s.textAlign="center",s.textBaseline="top";var A=t.y+6;n.strokeHalo(function(){return s.strokeText(a.text,S,A)}),s.fillText(a.text,S,A),m={kind:"area",index:a.index,x:S-n.textWidth(a.text,a.fontSize)/2,y:A,width:n.textWidth(a.text,a.fontSize),height:a.fontSize,text:a.text}}s.restore()}e.push({kind:"area",index:a.index,x:u,y:c,width:p,height:v,text:a.text}),m&&e.push(m)};for(a.s();!(r=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}}},{key:"drawLines",value:function drawLines(e,t){var r,n=this,a=_createForOfIteratorHelper(this.resolved.lines);try{for(a.s();!(r=a.n()).done;){var s=r.value,l=this.ctx,h="y"===s.axis,u=this.snap(s.pixel);l.save(),l.beginPath(),l.strokeStyle=s.color,l.lineWidth=s.lineWidth*this.unit(),"function"==typeof l.setLineDash&&l.setLineDash(s.lineDash.map(function(e){return e*n.unit()})),h?(l.moveTo(t.x,u),l.lineTo(t.x+t.width,u)):(l.moveTo(u,t.y),l.lineTo(u,t.y+t.height)),l.stroke(),l.restore();var c=h?{kind:"line",index:s.index,x:t.x,y:s.pixel-1,width:t.width,height:2,text:s.text}:{kind:"line",index:s.index,x:s.pixel-1,y:t.y,width:2,height:t.height,text:s.text};e.push(c),s.text&&e.push(this.drawLineText(s,t,h))}}catch(e){a.e(e)}finally{a.f()}}},{key:"drawLineText",value:function drawLineText(e,t,r){var n=this.ctx;n.save(),this.setFont(e.fontSize,this.theme.fontFamily,"normal"),n.fillStyle=e.textColor;var a,s=this.textWidth(e.text,e.fontSize);if(r){var l="start"===e.textPosition?"left":"end"===e.textPosition?"right":"center",h="start"===e.textPosition?t.x+6:"end"===e.textPosition?t.x+t.width-6:t.x+t.width/2,u=e.pixel-e.fontSize-4<t.y,c=u?e.pixel+4:e.pixel-4;n.textAlign=l,n.textBaseline=u?"top":"bottom",this.strokeHalo(function(){return n.strokeText(e.text,h,c)}),n.fillText(e.text,h,c);var p="right"===l?h-s:"center"===l?h-s/2:h;a={kind:"line",index:e.index,x:p,y:u?c:c-e.fontSize,width:s,height:e.fontSize,text:e.text}}else{var v=e.pixel+4+s>t.x+t.width,m=v?e.pixel-4:e.pixel+4,g=t.y+6;n.textAlign=v?"right":"left",n.textBaseline="top",this.strokeHalo(function(){return n.strokeText(e.text,m,g)}),n.fillText(e.text,m,g),a={kind:"line",index:e.index,x:v?m-s:m,y:g,width:s,height:e.fontSize,text:e.text}}return n.restore(),a}},{key:"drawPoints",value:function drawPoints(e){var t,r=_createForOfIteratorHelper(this.resolved.points);try{for(r.s();!(t=r.n()).done;){var n=t.value,a=this.ctx,s=n.symbolSize/2;a.save(),a.beginPath(),a.fillStyle=n.color,"circle"===n.symbol?a.arc(n.x,n.y,s,0,2*Math.PI):"rect"===n.symbol?a.rect(n.x-s,n.y-s,n.symbolSize,n.symbolSize):"diamond"===n.symbol?(a.moveTo(n.x,n.y-s),a.lineTo(n.x+s,n.y),a.lineTo(n.x,n.y+s),a.lineTo(n.x-s,n.y),a.closePath()):(a.moveTo(n.x,n.y-s),a.lineTo(n.x+s,n.y+s),a.lineTo(n.x-s,n.y+s),a.closePath()),a.fill(),a.restore(),e.push({kind:"point",index:n.index,x:n.x-s,y:n.y-s,width:n.symbolSize,height:n.symbolSize,text:n.text}),n.text&&e.push(this.drawPointText(n))}}catch(e){r.e(e)}finally{r.f()}}},{key:"drawPointText",value:function drawPointText(e){var t=this.ctx,r=e.symbolSize/2;t.save(),this.setFont(e.fontSize,this.theme.fontFamily,"normal"),t.fillStyle=e.textColor;var n=this.textWidth(e.text,e.fontSize),a=e.x,s=e.y,l="center",h="bottom";"top"===e.textPosition?(l="center",h="bottom",s=e.y-r-3):"bottom"===e.textPosition?(l="center",h="top",s=e.y+r+3):"left"===e.textPosition?(l="right",h="middle",a=e.x-r-3):(l="left",h="middle",a=e.x+r+3),t.textAlign=l,t.textBaseline=h,this.strokeHalo(function(){return t.strokeText(e.text,a,s)}),t.fillText(e.text,a,s),t.restore();var u="right"===l?a-n:"center"===l?a-n/2:a,c=e.fontSize,p="bottom"===h?s-c:"middle"===h?s-c/2:s;return{kind:"point",index:e.index,x:u,y:p,width:n,height:c,text:e.text}}},{key:"strokeHalo",value:function strokeHalo(e){var t=this.ctx,r=this.theme?this.theme.labelHaloColor:null;if(r){var n=t.lineWidth,a=t.lineJoin,s=t.strokeStyle;t.lineWidth=3*this.unit(),t.lineJoin="round",t.strokeStyle=r,e(),t.lineWidth=n,t.lineJoin=a,t.strokeStyle=s}}},{key:"textWidth",value:function textWidth(e,t){return measureTextWidth(this.ctx,e,t,this.theme?this.theme.fontFamily:"sans-serif")}}])}(),j=function(){function PlotArea(e){var t;return _classCallCheck(this,PlotArea),_defineProperty(t=_callSuper(this,PlotArea,[_objectSpread2({interactive:!0},e)]),"background",null),_defineProperty(t,"borderColor",null),t}return _inherits(PlotArea,H),_createClass(PlotArea,[{key:"setBackground",value:function setBackground(e){return this.background=e,this.markDirty()}},{key:"doRender",value:function doRender(){this.ctx.beginPath();var e=this.state,t=e.width,r=e.height;if(this.background&&(this.ctx.fillStyle=this.background,this.ctx.fillRect(0,0,t,r)),this.borderColor){this.ctx.strokeStyle=this.borderColor,this.ctx.lineWidth=this.unit();var n=this.unit()/2;this.ctx.strokeRect(n,n,t-this.unit(),r-this.unit())}}}])}(),W=function(){function Legend(e){var t;return _classCallCheck(this,Legend),_defineProperty(t=_callSuper(this,Legend,[_objectSpread2({interactive:!0},e)]),"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"selectable",!0),_defineProperty(t,"hoverIndex",-1),t}return _inherits(Legend,H),_createClass(Legend,[{key:"items",get:function get(){return this.layout&&this.layout.legend?this.layout.legend.items:[]}},{key:"hitItem",value:function hitItem(e,t){for(var r=this.items,n=0;n<r.length;n++){var a=r[n];if(e>=a.x&&e<=a.x+a.width&&t>=a.y&&t<=a.y+a.height)return n}return-1}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return this.selectable&&this.hitItem(e,t)>=0}},{key:"doRender",value:function doRender(){if(this.theme&&this.layout&&this.layout.legend){var e=this.ctx,t=this.layout.legend.items;this.layout.legend,e.beginPath(),e.save();for(var r=0;r<t.length;r++){var n=t[r],a=n.y+n.height/2;e.globalAlpha=n.hidden?.45:1,e.fillStyle=n.color,roundRect(e,n.x,a-6,12,12,Math.min(3,6)),e.fill(),this.setFont(this.theme.fontSize,this.theme.fontFamily),e.textAlign="left",e.textBaseline="middle",e.fillStyle=n.hidden?this.theme.legend.inactiveColor:this.theme.legend.textColor,e.fillText(n.name,n.x+12+6,a),this.hoverIndex===r&&(e.globalAlpha=1,e.strokeStyle=this.theme.axisLineColor,e.lineWidth=this.unit(),roundRect(e,n.x-4,n.y+1,n.width+8,n.height-2,4),e.stroke())}e.restore()}}}])}();function roundRect(e,t,r,n,a,s){var l=Math.max(0,Math.min(s,n/2,a/2));e.beginPath(),l<=0?e.rect(t,r,n,a):(e.moveTo(t+l,r),e.lineTo(t+n-l,r),e.arcTo(t+n,r,t+n,r+l,l),e.lineTo(t+n,r+a-l),e.arcTo(t+n,r+a,t+n-l,r+a,l),e.lineTo(t+l,r+a),e.arcTo(t,r+a,t,r+a-l,l),e.lineTo(t,r+l),e.arcTo(t,r,t+l,r,l),e.closePath())}var X=function(){function Title(e){var t;return _classCallCheck(this,Title),_defineProperty(t=_callSuper(this,Title,[_objectSpread2({interactive:!1},e)]),"layout",null),_defineProperty(t,"theme",null),t}return _inherits(Title,H),_createClass(Title,[{key:"doRender",value:function doRender(){var e=this.layout&&this.layout.title;if(e&&this.theme&&this.layout){var t=this.layout.canvas,r=this.ctx,n="left"===e.align?0:"right"===e.align?t.width:t.width/2,a=e.y;r.save(),r.textAlign=e.align,r.textBaseline="top",e.text&&(this.setFont(e.textStyle.fontSize,this.theme.fontFamily,e.textStyle.fontWeight),r.fillStyle=e.textStyle.color,r.fillText(e.text,n,a),a+=1.5*e.textStyle.fontSize),e.subtext&&(this.setFont(e.subtextStyle.fontSize,this.theme.fontFamily),r.fillStyle=e.subtextStyle.color,r.fillText(e.subtext,n,a)),r.restore()}}}])}(),G=function(){function Tooltip(e){var t;return _classCallCheck(this,Tooltip),_defineProperty(t=_callSuper(this,Tooltip,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"option",{}),_defineProperty(t,"layout",null),_defineProperty(t,"content",null),_defineProperty(t,"anchor",[0,0]),_defineProperty(t,"follow",!0),_defineProperty(t,"lastRect",null),_defineProperty(t,"pendingClear",!1),t}return _inherits(Tooltip,H),_createClass(Tooltip,[{key:"show",value:function show(e,t){var r=!this.content||this.pendingClear||this.currentOpacity()<.999;return this.content=e,this.anchor=t,this.pendingClear=!1,r&&this.playFade(!0),this.markDirty()}},{key:"hide",value:function hide(){return this.content?shouldAnimate()?(this.pendingClear=!0,this.playFade(!1),this.markDirty()):(this.content=null,this.lastRect=null,this.markDirty()):this}},{key:"panelOpacity",value:function panelOpacity(){var e=Number(this.state.panelOpacity);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"currentOpacity",value:function currentOpacity(){var e=Number(this.state.panelOpacity);return isFinite(e)?Math.max(0,Math.min(1,e)):0}},{key:"playFade",value:function playFade(e){if(!shouldAnimate())return this.setState({panelOpacity:e?1:0,slideY:0}),void(e||(this.content=null,this.lastRect=null));var t=_objectSpread2({},this.props.animations||{});t.panelOpacity={from:this.currentOpacity(),to:e?1:0,duration:e?140:110,easing:e?"easeOutCubic":"easeInQuad",startTime:void 0,finished:!1},e&&(t.slideY={from:6,to:0,duration:180,easing:"easeOutCubic",startTime:void 0,finished:!1},this.state.slideY=6),this.props.animations=t,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}},{key:"doRender",value:function doRender(){if(this.lastRect=null,this.content&&this.theme&&this.layout){var e=this.panelOpacity();if(this.pendingClear&&e<=.02)return this.content=null,void(this.pendingClear=!1);var t,r=this.theme,n=this.option,a=r.tooltip,s=n.fontSize||a.fontSize,l=r.fontFamily,h=a.padding,u=1.6*s,c=this.content.rows,p=this.content.title?measureTextWidth(this.ctx,this.content.title,s,l):0,v=0,m=_createForOfIteratorHelper(c);try{for(m.s();!(t=m.n()).done;){var g=t.value,b=16+measureTextWidth(this.ctx,g.name,s,l)+16+measureTextWidth(this.ctx,g.value,s,l);b>v&&(v=b)}}catch(e){m.e(e)}finally{m.f()}var k=Math.max(p,v)+2*h,S=2*h+(this.content.title?u:0)+c.length*u,A=n.offset||[14,14],w=this.layout.canvas,_=this.layout.plot,M=this.anchor[0]+A[0],C=this.anchor[1]+A[1];M+k>w.width&&(M=this.anchor[0]-A[0]-k),M=k<=_.width-4?Math.max(_.x+2,Math.min(M,_.x+_.width-k-2)):Math.max(2,Math.min(M,Math.max(2,w.width-k-2))),C+S>w.height&&(C=this.anchor[1]-A[1]-S);var T=_.y+_.height-(s+8)/2;if(C+S>T){var P=this.anchor[1]-A[1]-S;C=P>=_.y+2?P:Math.max(_.y+2,T-S)}C=Math.max(2,Math.min(C,Math.max(2,w.height-S-2))),this.lastRect={x:M,y:C,width:k,height:S};var I=this.ctx,N=this.unit();I.beginPath(),I.save(),I.globalAlpha=e,C+=Number(this.state.slideY)||0,I.shadowColor=a.shadowColor,I.shadowBlur=10*N,I.shadowOffsetY=2*N,I.fillStyle=n.backgroundColor||a.background,roundRect(I,M,C,k,S,a.radius),I.fill(),I.shadowColor="transparent",I.shadowBlur=0,I.shadowOffsetY=0,I.strokeStyle=n.borderColor||a.borderColor,I.lineWidth=N,roundRect(I,M+N/2,C+N/2,k-N,S-N,a.radius),I.stroke(),I.fillStyle=n.textColor||a.textColor,I.textAlign="left",I.textBaseline="middle";var D=C+h+u/2;this.content.title&&(this.setFont(s,l,"bold"),I.fillText(this.content.title,M+h,D),D+=u);var O,R=_createForOfIteratorHelper(c);try{for(R.s();!(O=R.n()).done;){var H=O.value,z=D+u/2-u/2+u/2;this.setFont(s,l),I.fillStyle=H.color,roundRect(I,M+h,z-4,8,8,2),I.fill(),I.fillStyle=n.textColor||a.textColor,I.fillText(H.name,M+h+8+8,z),I.textAlign="right",I.fillText(H.value,M+k-h,z),I.textAlign="left",D+=u}}catch(e){R.e(e)}finally{R.f()}I.restore()}}}])}();var U=function(){function Crosshair(e){var t;return _classCallCheck(this,Crosshair),_defineProperty(t=_callSuper(this,Crosshair,[_objectSpread2({interactive:!1},e)]),"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"option",{}),_defineProperty(t,"pixelX",null),_defineProperty(t,"pixelY",null),_defineProperty(t,"xLabel",""),_defineProperty(t,"yLabel",""),_defineProperty(t,"lastChipRects",[]),_defineProperty(t,"followDuration",90),t}return _inherits(Crosshair,H),_createClass(Crosshair,[{key:"show",value:function show(e,t,r,n){var a=null!==this.pixelX&&null!==e&&Math.abs(this.pixelX-e)<.5&&(this.pixelY===t||null!==this.pixelY&&null!==t&&Math.abs(this.pixelY-t)<.5);return this.pixelX=e,this.pixelY=t,this.xLabel=r,this.yLabel=n,a||this.animateAxis(e,t),this.markDirty()}},{key:"drawnX",value:function drawnX(){var e=Number(this.state.axisX);return null===this.pixelX?null:isFinite(e)?e:this.pixelX}},{key:"drawnY",value:function drawnY(){var e=Number(this.state.axisY);return null===this.pixelY?null:isFinite(e)?e:this.pixelY}},{key:"animateAxis",value:function animateAxis(e,t){if(!shouldAnimate()||null===e||this.followDuration<=0)this.setState({axisX:e,axisY:t});else{var r=this.drawnX(),n=this.drawnY();if(null!==r){var a=function crosshairGlideDuration(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5;if(!isFinite(t)||t<=0)return 0;var n=Math.abs(e);return!isFinite(n)||n<=0?0:Math.max(16,Math.min(t,n/r))}(Math.abs(e-r),this.followDuration);if(a<=0)this.setState({axisX:e,axisY:t});else{var s=_objectSpread2({},this.props.animations||{});s.axisX={from:r,to:e,duration:a,easing:"easeOutCubic",startTime:void 0,finished:!1},null!==n&&null!==t&&(s.axisY={from:n,to:t,duration:a,easing:"easeOutCubic",startTime:void 0,finished:!1}),this.props.animations=s,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this)}}else this.setState({axisX:e,axisY:t})}}},{key:"hide",value:function hide(){return null===this.pixelX&&null===this.pixelY?this:(this.pixelX=null,this.pixelY=null,this.stopAxisAnimation(),this.markDirty())}},{key:"stopAxisAnimation",value:function stopAxisAnimation(){var e=this.props.animations;if(e)for(var t in e)e[t]&&(e[t].finished=!0);this.ice&&this.ice.animationManager&&this.ice.animationManager.remove(this),this.state.axisX=null,this.state.axisY=null}},{key:"doRender",value:function doRender(){if(this.lastChipRects=[],this.layout&&this.theme&&!1!==this.option.show&&"none"!==this.option.type&&(null!==this.pixelX||null!==this.pixelY)){var e=this.layout.plot,t=this.ctx,r=this.unit(),n=this.option.axis||"x";if(t.beginPath(),t.save(),t.strokeStyle=this.option.lineColor||this.theme.crosshair.lineColor,t.lineWidth=r,"function"==typeof t.setLineDash&&t.setLineDash([3*r,3*r]),t.beginPath(),null!==this.pixelX&&"y"!==n){var a=this.snap(this.drawnX());t.moveTo(a,e.y),t.lineTo(a,e.y+e.height)}if(null!==this.pixelY&&("y"===n||"xy"===n)){var s=this.snap(this.drawnY());t.moveTo(e.x,s),t.lineTo(e.x+e.width,s)}t.stroke(),"function"==typeof t.setLineDash&&t.setLineDash([]),!1!==this.option.showAxisLabel&&(this.setFont(this.theme.fontSize,this.theme.fontFamily),t.textAlign="center",t.textBaseline="middle",null!==this.pixelX&&this.xLabel&&"y"!==n&&this.drawChip(this.snap(this.drawnX()),e.y+e.height,this.xLabel),null===this.pixelY||!this.yLabel||"y"!==n&&"xy"!==n||this.drawChip(e.x,this.snap(this.drawnY()),this.yLabel)),t.restore()}}},{key:"drawChip",value:function drawChip(e,t,r){var n=this.ctx,a=this.theme,s=n.measureText(r).width+12,l=a.fontSize+6;n.fillStyle=a.crosshair.labelBackground,this.lastChipRects.push({x:e-s/2,y:t-l/2,width:s,height:l}),n.fillRect(e-s/2,t-l/2,s,l),n.fillStyle=a.crosshair.labelColor,n.fillText(r,e,t)}}])}(),K=function(){function Highlight(e){var t;return _classCallCheck(this,Highlight),_defineProperty(t=_callSuper(this,Highlight,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"hoverItems",[]),_defineProperty(t,"selectionItems",[]),_defineProperty(t,"clipBox",null),t}return _inherits(Highlight,H),_createClass(Highlight,[{key:"setHover",value:function setHover(e){return this.hoverItems=e,this.markDirty()}},{key:"setSelection",value:function setSelection(e){return this.selectionItems=e,this.markDirty()}},{key:"setClipBox",value:function setClipBox(e){var t=this.clipBox,r=!t&&!e||!!t&&!!e&&t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height;return this.clipBox=e,r?this:this.markDirty()}},{key:"doRender",value:function doRender(){if(this.theme){var e=this.ctx,t=this.unit();e.beginPath(),e.save(),this.clipBox&&(e.beginPath(),e.rect(this.clipBox.x,this.clipBox.y,this.clipBox.width,this.clipBox.height),e.clip());var r,n=_createForOfIteratorHelper(this.hoverItems);try{for(n.s();!(r=n.n()).done;){var a=r.value;if("rect"===a.shape){var s=a.width||0,l=a.height||0;if(s<=0||l<=0)continue;e.strokeStyle=a.color,e.lineWidth=Math.max(t,1.5*t),roundRect(e,a.x-s/2,a.y-l/2,s,l,Math.min(4,s/2,l/2)),e.stroke()}else{var h=Math.max(3,a.size/2+3);e.beginPath(),e.arc(a.x,a.y,h,0,2*Math.PI),e.fillStyle="rgba(255,255,255,0.55)",e.fill(),e.beginPath(),e.arc(a.x,a.y,h,0,2*Math.PI),e.strokeStyle=a.color,e.lineWidth=Math.max(t,1.5*t),e.stroke()}}}catch(e){n.e(e)}finally{n.f()}var u,c=_createForOfIteratorHelper(this.selectionItems);try{for(c.s();!(u=c.n()).done;){var p=u.value;if(e.strokeStyle=this.theme.selection.stroke,e.lineWidth=Math.max(t,1.5*t),"rect"===p.shape){var v=p.width||0,m=p.height||0;if(v<=0||m<=0)continue;roundRect(e,p.x-v/2-2,p.y-m/2-2,v+4,m+4,5),e.stroke()}else{var g=Math.max(3,p.size/2+3);e.beginPath(),e.arc(p.x,p.y,g,0,2*Math.PI),e.stroke()}}}catch(e){c.e(e)}finally{c.f()}e.restore()}}}])}(),Y=function(){function Brush(e){var t;return _classCallCheck(this,Brush),_defineProperty(t=_callSuper(this,Brush,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"rect",null),_defineProperty(t,"color",null),t}return _inherits(Brush,H),_createClass(Brush,[{key:"setRect",value:function setRect(e){return this.rect=e,e?this.keepAnimating():this.stopAnimating(),this.markDirty()}},{key:"doRender",value:function doRender(){if(this.rect&&this.theme){var e=this.ctx,t=this.color||this.theme.brush,r=this.unit();if(e.beginPath(),e.save(),e.fillStyle=t.fill,e.fillRect(this.rect.x,this.rect.y,this.rect.width,this.rect.height),e.strokeStyle=t.stroke,e.lineWidth=r,"function"==typeof e.setLineDash){var n=[5*r,4*r],a=n[0]+n[1]||1;e.setLineDash(n),"number"==typeof e.lineDashOffset&&(e.lineDashOffset=-Date.now()/1e3*26%a)}e.strokeRect(this.rect.x,this.rect.y,this.rect.width,this.rect.height),"function"==typeof e.setLineDash&&e.setLineDash([]),e.restore()}}}])}(),q=function(){function RadarGrid(e){var t;return _classCallCheck(this,RadarGrid),_defineProperty(t=_callSuper(this,RadarGrid,[_objectSpread2({interactive:!1},e)]),"coord",null),_defineProperty(t,"theme",null),_defineProperty(t,"layout",null),t}return _inherits(RadarGrid,H),_createClass(RadarGrid,[{key:"doRender",value:function doRender(){var e=this.coord,t=this.theme;if(e&&t){var r=this.ctx,n=this.unit(),a=e.indicators.length;if(a){var s=e.polar.cx,l=e.polar.cy,h=e.polar.radius,u=function angleOf(e){return-Math.PI/2+e/a*Math.PI*2};this.layout,r.beginPath(),r.save(),r.lineWidth=n,r.strokeStyle=t.splitLineColor;for(var c=1;c<=e.splitNumber;c++){var p=h*c/e.splitNumber;if(r.beginPath(),"circle"===e.shape)r.arc(s,l,p,0,2*Math.PI);else{for(var v=0;v<a;v++){var m=u(v),g=s+Math.cos(m)*p,b=l+Math.sin(m)*p;0===v?r.moveTo(g,b):r.lineTo(g,b)}r.closePath()}r.stroke()}r.beginPath();for(var k=0;k<a;k++){var S=u(k);r.moveTo(s,l),r.lineTo(s+Math.cos(S)*h,l+Math.sin(S)*h)}r.stroke(),this.setFont(t.fontSize,t.fontFamily),r.fillStyle=t.subTextColor,r.textBaseline="middle";for(var A=0;A<a;A++){var w=u(A),_=s+Math.cos(w)*(h+10*n),M=l+Math.sin(w)*(h+10*n),C=Math.cos(w);r.textAlign=Math.abs(C)<.2?"center":C>0?"left":"right",r.fillText(e.indicators[A].name,_,M)}r.restore()}}}}])}(),$=function(){function PolarGrid(e){var t;return _classCallCheck(this,PolarGrid),_defineProperty(t=_callSuper(this,PolarGrid,[_objectSpread2({interactive:!1},e)]),"coord",null),_defineProperty(t,"theme",null),_defineProperty(t,"layout",null),t}return _inherits(PolarGrid,H),_createClass(PolarGrid,[{key:"geometry",value:function geometry(){var e=this.coord;if(!e)return null;var t=e.plot,r=t.x+e.xScale.map(0),n=t.y+e.yScale.map(0);if(!isFinite(r)||!isFinite(n))return null;var a=Math.min(Math.abs(r-t.x),Math.abs(t.x+t.width-r),Math.abs(n-t.y),Math.abs(t.y+t.height-n));if(!(a>1))return null;var s=e.xScale.map(1)-e.xScale.map(0);return{cx:r,cy:n,radiusPx:a,rMax:Math.abs(s)>1e-9?a/Math.abs(s):0}}},{key:"doRender",value:function doRender(){var e=this.coord,t=this.theme;if(e&&t&&!1!==e.options.show){var r=this.geometry();if(r){var n=r.cx,a=r.cy,s=r.radiusPx,l=r.rMax,h=e.options,u=Math.max(1,Math.min(12,Number(h.splitNumber)||4)),c=Math.max(4,Math.min(36,Number(h.spokeCount)||12)),p=(Number(h.startAngle)||0)*Math.PI/180,v=this.unit(),m=this.ctx;m.beginPath(),m.save(),m.lineWidth=v,m.strokeStyle=t.splitLineColor;for(var g=1;g<=u;g++)m.beginPath(),m.arc(n,a,s*g/u,0,2*Math.PI),m.stroke();m.beginPath();for(var b=0;b<c;b++){var k=p+b/c*Math.PI*2;m.moveTo(n,a),m.lineTo(n+Math.cos(k)*s,a+Math.sin(k)*s)}if(m.stroke(),!1!==h.showLabels&&l>0){var S=p+Math.PI/4,A=Math.cos(S),w=Math.sin(S);this.setFont(t.fontSize,t.fontFamily),m.fillStyle=t.subTextColor,m.textBaseline="middle";for(var _=1;_<=u;_++){var M=l*_/u,C=n+A*(s*_/u),T=a+w*(s*_/u);m.textAlign=A>=0?"left":"right";var P=Math.abs(M)>=1?String(Number(M.toPrecision(3))):String(Number(M.toPrecision(2)));m.strokeStyle="transparent"===t.backgroundColor?"#ffffff":t.backgroundColor,m.lineWidth=3*v,m.strokeText(P,C+3*A*v,T+3*w*v),m.fillText(P,C+3*A*v,T+3*w*v),m.strokeStyle=t.splitLineColor,m.lineWidth=v}}m.restore()}}}}])}(),Z=function(){function DataZoomSlider(e){var t;return _classCallCheck(this,DataZoomSlider),_defineProperty(t=_callSuper(this,DataZoomSlider,[_objectSpread2({interactive:!0},e)]),"theme",null),_defineProperty(t,"start",0),_defineProperty(t,"end",1),_defineProperty(t,"activePart",null),_defineProperty(t,"handleWidth",12),t}return _inherits(DataZoomSlider,H),_createClass(DataZoomSlider,[{key:"setWindow",value:function setWindow(e,t){var r=clamp$2(e,0,1),n=clamp$2(t,0,1);return Math.abs(r-this.start)<1e-6&&Math.abs(n-this.end)<1e-6?this:(this.start=r,this.end=n,this.markDirty())}},{key:"setActive",value:function setActive(e){return this.activePart===e?this:(this.activePart=e,this.markDirty())}},{key:"hitPart",value:function hitPart(e,t){var r=this.state,n=r.width,a=r.height;if(e<0||e>n||t<0||t>a)return null;var s=this.start*n,l=this.end*n,h=this.handleWidth/2;return Math.abs(e-s)<=h?"start":Math.abs(e-l)<=h?"end":e>s&&e<l?"window":"track"}},{key:"fractionAt",value:function fractionAt(e){return clamp$2(e/(this.state.width||1),0,1)}},{key:"doRender",value:function doRender(){if(this.theme){var e=this.ctx,t=this.state,r=t.width,n=t.height,a=this.unit(),s=Math.max(4,Math.round(.34*n)),l=(n-s)/2,h=this.start*r,u=this.end*r,c=this.theme.colorPalette[0],p=this.handleWidth;e.beginPath(),e.save(),e.fillStyle=this.theme.splitLineColor,roundRect(e,0,l,r,s,s/2),e.fill(),e.fillStyle=c,e.globalAlpha=.85,roundRect(e,h,l,Math.max(2,u-h),s,s/2),e.fill(),e.globalAlpha=1;for(var v=0,m=[[h,"start"],[u,"end"]];v<m.length;v++){var g=_slicedToArray(m[v],2),b=g[0],k=g[1],S=clamp$2(b-p/2,0,Math.max(0,r-p));e.fillStyle="#ffffff",e.strokeStyle=this.activePart===k?c:this.theme.axisLineColor,e.lineWidth=(this.activePart===k?2:1)*a,roundRect(e,S,1,p,n-2,3),e.fill(),e.stroke(),e.beginPath(),e.moveTo(S+p/2-2,l-3),e.lineTo(S+p/2-2,l+s+3),e.moveTo(S+p/2+2,l-3),e.lineTo(S+p/2+2,l+s+3),e.strokeStyle=this.theme.subTextColor,e.lineWidth=a,e.stroke()}e.restore()}}}])}(),J=function(){function SeriesBase(e,t){var r;return _classCallCheck(this,SeriesBase),_defineProperty(r=_callSuper(this,SeriesBase,[_objectSpread2({interactive:!0},t)]),"chartTheme",null),_defineProperty(r,"hiddenSlices",[]),_defineProperty(r,"coord",null),_defineProperty(r,"barSlot",{index:0,count:1}),_defineProperty(r,"pixels",new Float64Array(0)),_defineProperty(r,"effective",new Float64Array(0)),_defineProperty(r,"fromEffective",null),_defineProperty(r,"renderIndices",null),_defineProperty(r,"xMonotonic",!0),_defineProperty(r,"sizeExtent",[0,1]),_defineProperty(r,"itemProgress",new Float64Array(0)),_defineProperty(r,"stagger",0),_defineProperty(r,"animationKind","enter"),_defineProperty(r,"hoverIndex",null),_defineProperty(r,"cacheKey",""),_defineProperty(r,"supportsSampling",!0),_defineProperty(r,"clipToBox",!1),_defineProperty(r,"localBoxScratch",[0,0,0,0]),r.series=e,r}return _inherits(SeriesBase,H),_createClass(SeriesBase,[{key:"setClipToBox",value:function setClipToBox(e){return this.clipToBox===e?this:(this.clipToBox=e,this.markDirty())}},{key:"__localBox",value:function __localBox(){var e=this.paintPad(),t=this.localBoxScratch;return t[0]=-e,t[1]=-e,t[2]=(this.state.width||0)+e,t[3]=(this.state.height||0)+e,t}},{key:"paintPad",value:function paintPad(){var e=this.series.option,t=!1===e.showSymbol?0:this.maxSymbolSize()/2+4;return Math.max(t,(e.lineWidth||2)+4,6)}},{key:"symbolSizeAt",value:function symbolSizeAt(e){var t=this.series.option,r=t.symbolSize;if("function"==typeof r){var n=this.series.yValueAt(e),a=NaN;try{var s=this.series.virtual?null:this.series.pointAt(e);a=Number(r(n,{dataIndex:e,data:s?s.raw:void 0,seriesName:this.series.name}))}catch(e){a=NaN}return isFinite(a)&&a>0?a:8}var l=this.series.sizeAt(e);if("number"==typeof l&&isFinite(l)){var h=Array.isArray(t.symbolSizeRange)?t.symbolSizeRange:[8,40],u=_slicedToArray(this.sizeExtent,2),c=u[0],p=u[1],v=p>c?(l-c)/(p-c):.5;return h[0]+(h[1]-h[0])*Math.max(0,Math.min(1,v))}var m=Number(r);return isFinite(m)&&m>0?m:8}},{key:"maxSymbolSize",value:function maxSymbolSize(){var e=this.series.option;if("function"==typeof e.symbolSize||this.hasPointSize()){var t=Array.isArray(e.symbolSizeRange)?e.symbolSizeRange:[8,40];return Math.max(8,Number(t[1])||40)}var r=Number(e.symbolSize);return isFinite(r)&&r>0?r:8}},{key:"hasPointSize",value:function hasPointSize(){var e=storeDomainOf(this.series);if(this.series.virtual)return!(!e||!e.sizeExtent);for(var t=this.series,r=0,n=t.pointCount;r<n;r++)if("number"==typeof t.sizeAt(r))return!0;return!1}},{key:"setCoord",value:function setCoord(e){return this.coord=e,this.cacheKey="",this.series.virtual&&this.syncVirtualMeta(),this.markDirty()}},{key:"setHiddenSlices",value:function setHiddenSlices(e){return this.hiddenSlices=e||[],this.markDirty()}},{key:"setAnimationStage",value:function setAnimationStage(e){return this.stagger=e&&isFinite(Number(e.stagger))?Math.max(0,Math.min(.95,Number(e.stagger))):0,this.animationKind=e&&"update"===e.kind?"update":"enter",this}},{key:"isEntering",value:function isEntering(){return"enter"===this.animationKind&&this.progress()<1}},{key:"progressFor",value:function progressFor(e,t){var r=this.progress();if(r>=1)return 1;if(this.stagger<=0||t<=1)return r;var n=1/(1+this.stagger),a=(r-e/(t-1)*this.stagger*n)/n;return a<=0?0:a>=1?1:a}},{key:"computeItemProgress",value:function computeItemProgress(){var e=this.series.pointCount;this.itemProgress.length!==e&&(this.itemProgress=new Float64Array(e));for(var t=0;t<e;t++)this.itemProgress[t]=this.progressFor(t,e)}},{key:"getAnimationState",value:function getAnimationState(){return this.computeItemProgress(),{progress:this.progress(),kind:this.animationKind,stagger:this.stagger,itemProgress:Array.from(this.itemProgress)}}},{key:"setHoverIndex",value:function setHoverIndex(e){var t=void 0===e?null:e;if(this.hoverIndex!==t){var r=null!==this.hoverIndex;this.hoverIndex=t;var n=this.highlightT(),a=null===t?0:1;if(!shouldAnimate())return this.setState({highlightT:a}),void this.markDirty();var s=_objectSpread2({},this.props.animations||{});s.highlightT={from:n,to:a,duration:null===t?180:260,easing:null===t?"easeOutCubic":"springSnappy",startTime:void 0,finished:!1},this.props.animations=s,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),r||null===t||this.markDirty()}}},{key:"highlightT",value:function highlightT(){var e=Number(this.state.highlightT);return isFinite(e)?Math.max(0,Math.min(1.2,e)):0}},{key:"hoverBoost",value:function hoverBoost(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.12,r=arguments.length>2?arguments[2]:void 0;return this.hoverIndex!==e?1:1+t*(void 0===r?this.highlightT():Math.max(0,Math.min(1,r)))}},{key:"hoverAlpha",value:function hoverAlpha(e){return this.hoverIndex!==e?0:Math.max(0,Math.min(1,this.highlightT()))}},{key:"drawHoverOverlay",value:function drawHoverOverlay(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.hoverAlpha(e);if(!(n<=.01||t.width<=0||t.height<=0)){var a=this.ctx,s=this.unit(),l=Number(r.radius)||0;a.save(),a.globalAlpha=n,"none"!==r.fill&&(roundRect(a,t.x,t.y,t.width,t.height,l),a.fillStyle=r.fill||"rgba(255,255,255,0.16)",a.fill()),roundRect(a,t.x,t.y,t.width,t.height,l),a.strokeStyle=r.stroke||"rgba(255,255,255,0.95)",a.lineWidth=Math.max(s,(r.lineWidth||2)*s),a.stroke(),a.restore()}}},{key:"buildSeriesKey",value:function buildSeriesKey(e){return[].concat(_toConsumableArray(e),[this.coordKey(),this.progress(),this.animationKind,this.stagger]).join("|")}},{key:"coordKey",value:function coordKey(){var e=this.coord;if(!e)return"-";var t=[];e.plot&&t.push("p".concat(e.plot.x,",").concat(e.plot.y,",").concat(e.plot.width,",").concat(e.plot.height));for(var r=0,n=["xScale","yScale"];r<n.length;r++){var a=n[r],s=e[a],l=s&&s.domain;l&&l.length&&t.push("".concat(a,"[").concat(l.length,"]:").concat(String(l[0]),"~").concat(String(l[l.length-1])))}return t.join(";")}},{key:"updateSeries",value:function updateSeries(e,t){return arguments.length>2&&void 0!==arguments[2]&&arguments[2]||(this.fromEffective=t&&this.effective.length===2*e.pointCount?new Float64Array(this.effective):null),this.series=e,this.cacheKey="",e.virtual&&this.syncVirtualMeta(),this.markDirty()}},{key:"pixelAt",value:function pixelAt(e){if(this.series.virtual)return this.virtualPixelAt(e);this.rebuildPixels();var t=this.pixels[2*e],r=this.pixels[2*e+1];return isFinite(t)&&isFinite(r)?[t,r]:null}},{key:"barRectAt",value:function barRectAt(e){return null}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return this.hitTestIndex(e,t)>=0}},{key:"progress",value:function progress(){var e=Number(this.state.progress);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"computeEffective",value:function computeEffective(){var e=this.series,t=e.pointCount;this.effective.length!==2*t&&(this.effective=new Float64Array(2*t),this.fromEffective=null),this.computeItemProgress();for(var r=this.progress(),n=0;n<t;n++){var a=this.itemProgress[n];if(null!==this.series.yValueAt(n)){var s=e.topAt(n);if(null!=s){var l=e.baseAt(n),h=isFinite(l)?l:0,u=0,c=0;if(this.fromEffective){var p=this.fromEffective[2*n],v=this.fromEffective[2*n+1];isFinite(p)&&(u=p),isFinite(v)&&(c=v)}this.effective[2*n]=a>=1?h:u+(h-u)*a,this.effective[2*n+1]=a>=1?s:c+(s-c)*a}else this.effective[2*n]=NaN,this.effective[2*n+1]=NaN}else this.effective[2*n]=NaN,this.effective[2*n+1]=NaN}r>=1&&(this.fromEffective=null)}},{key:"rebuildPixels",value:function rebuildPixels(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.series.virtual||this.series.raw){var t=this.coord;if(t){var r=this.buildCacheKey(t);if(e||r!==this.cacheKey){var n=t.xScale.domain,a=t.yScale.domain,s=this.__incrementalXDomain,l=this.__incrementalYDomain,h=function numericPair(e){return Array.isArray(e)&&2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]&&isFinite(e[0])&&isFinite(e[1])};if(!e&&h(n)&&h(a)&&h(s)&&h(l)&&n[1]-n[0]===s[1]-s[0]&&a[0]===l[0]&&a[1]===l[1]&&this.pixels.length===2*this.series.pointCount){for(var u=(s[0]-n[0])/(n[1]-n[0])*t.plot.width,c=0;c<this.pixels.length;c+=2)this.pixels[c]+=u;return this.__incrementalXDomain=[n[0],n[1]],void(this.cacheKey=r)}this.computeEffective();var p=this.series,v=p.pointCount;this.pixels.length!==2*v&&(this.pixels=new Float64Array(2*v));for(var m=t.xScale,g=t.yScale,b=!0,k=-1/0,S=0;S<v;S++){var A=m.map(p.xValueAt(S)),w=this.effective[2*S+1],_=isFinite(w)?g.map(w):NaN;this.pixels[2*S]=A,this.pixels[2*S+1]=_,isFinite(A)&&(A<k&&(b=!1),k=A)}this.xMonotonic=b,this.sizeExtent=function computeSizeExtent(e){for(var t=1/0,r=-1/0,n=0,a=e.pointCount;n<a;n++){var s=e.sizeAt(n);"number"==typeof s&&isFinite(s)&&(s<t&&(t=s),s>r&&(r=s))}return isFinite(t)?t===r?[t,t+1]:[t,r]:[0,1]}(p),this.renderIndices=this.buildRenderIndices(v,t.plot.width),this.__incrementalXDomain=Array.isArray(n)&&2===n.length?[n[0],n[1]]:null,this.__incrementalYDomain=Array.isArray(a)&&2===a.length?[a[0],a[1]]:null,this.cacheKey=r}}else this.pixels=new Float64Array(0)}else this.syncVirtualMeta()}},{key:"syncVirtualMeta",value:function syncVirtualMeta(){this.pixels.length&&(this.pixels=new Float64Array(0));var e=storeDomainOf(this.series);this.xMonotonic=!(!e||!e.xMonotonic),this.renderIndices=null,e&&e.sizeExtent&&(this.sizeExtent=e.sizeExtent)}},{key:"virtualLowerBound",value:function virtualLowerBound(e){for(var t=this.series,r=0,n=t.pointCount;r<n;){var a=r+n>>1;Number(t.xValueAt(a))<e?r=a+1:n=a}return r}},{key:"virtualUpperBound",value:function virtualUpperBound(e){for(var t=this.series,r=0,n=t.pointCount;r<n;){var a=r+n>>1;Number(t.xValueAt(a))<=e?r=a+1:n=a}return r}},{key:"virtualVisibleWindow",value:function virtualVisibleWindow(e){var t=this.coord,r=this.series.pointCount;if(!t||!r)return{i0:0,i1:-1};if(this.series.chunks)return this.chunkWindow(this.series.chunks,t,e);if(!this.xMonotonic)return{i0:0,i1:r-1};var n=t.xScale.invert(-e),a=t.xScale.invert(t.plot.width+e),s=this.virtualLowerBound(Math.min(n,a)),l=this.virtualUpperBound(Math.max(n,a));return{i0:Math.max(0,s-1),i1:Math.min(r-1,l)}}},{key:"chunkWindow",value:function chunkWindow(e,t,r){var n=this,a=t.xScale.invert(-r),s=t.xScale.invert(t.plot.width+r),l=chunkRangeForX(e,Math.min(a,s),Math.max(a,s)),h=l.from,u=l.to;if(u<h)return{i0:0,i1:-1};var c,p=_createForOfIteratorHelper(function pickChunksForWindow(e,t,r){var n=t-e+1;if(n<=0)return[];var a=Math.max(1,Math.min(Math.max(1,r),n));if(n===a){for(var s=[],l=e;l<=t;l++)s.push(l);return s}for(var h=[],u=0;u<a;u++){var c=e+Math.round(u*(n-1)/(a-1));h[h.length-1]!==c&&h.push(c)}return h}(h,u,e.maxResident));try{for(p.s();!(c=p.n()).done;){requestChunk(e,c.value,function(){return n.markDirty()})}}catch(e){p.e(e)}finally{p.f()}var v=e.offsets[h],m=e.offsets[u]+e.sizes[u]-1;return{i0:v,i1:Math.min(e.total-1,m)}}},{key:"virtualPixelAt",value:function virtualPixelAt(e){var t=this.coord,r=this.series;if(!t||e<0||e>=r.pointCount)return null;var n=r.yValueAt(e);if(null===n)return null;var a=t.xScale.map(r.xValueAt(e)),s=t.yScale.map(n);return isFinite(a)&&isFinite(s)?[a,s]:null}},{key:"virtualNearestIndexAtX",value:function virtualNearestIndexAtX(e){var t=this.coord,r=this.series,n=r.pointCount;if(!t||!n)return-1;var a=function pixelX(e){return t.xScale.map(r.xValueAt(e))},s=r.chunks;if(s){for(var l=Number(t.xScale.invert(e)),h=chunkRangeForX(s,l,l),u=h.from,c=h.to,p=-1,v=1/0,m=Math.max(0,u);m<=c&&m<s.sizes.length;m++)if(s.resident[m]){for(var g=s.offsets[m],b=Math.min(s.total-1,g+s.sizes[m]-1),k=g,S=b;k<S;){var A=k+S>>1,w=a(A);!isFinite(w)||w<e?k=A+1:S=A}for(var _=0,M=[k-1,k,k+1];_<M.length;_++){var C=M[_];if(!(C<g||C>b)){var T=a(C);if(isFinite(T)){var P=Math.abs(T-e);P<v&&(v=P,p=C)}}}}return p}if(!this.xMonotonic){for(var I=-1,N=1/0,D=0;D<n;D++){var O=a(D);if(isFinite(O)){var R=Math.abs(O-e);R<N&&(N=R,I=D)}}return I}for(var H=0,z=n-1;H<z;){var E=H+z>>1,L=a(E);!isFinite(L)||L<e?H=E+1:z=E}for(var V=-1,B=1/0,j=0,W=[H,H-1];j<W.length;j++){var X=W[j];if(!(X<0||X>=n)){var G=a(X);if(isFinite(G)){var U=Math.abs(G-e);U<B&&(B=U,V=X)}}}return V}},{key:"paintInto",value:function paintInto(e){if(!this.series.virtual)return!1;var t=this.ctx;this.ctx=e;try{return this.doRender(),!0}finally{this.ctx=t}}},{key:"virtualIndexRange",value:function virtualIndexRange(e,t){var r=this.coord,n=this.series,a=n.pointCount;if(!r||!a||!n.virtual)return{from:0,to:-1};var s=function inverted(e){return Number(r.xScale.invert(e))},l=s(Math.min(e,t)),h=s(Math.max(e,t));return isFinite(l)&&isFinite(h)?{from:this.virtualLowerBound(l),to:this.virtualUpperBound(h)-1}:{from:0,to:a-1}}},{key:"buildRenderIndices",value:function buildRenderIndices(e,t){if(!this.supportsSampling||!this.xMonotonic)return null;var r=this.series.option;if("none"===r.sampling)return null;if(!r.sampling&&e<=Math.max(2e3,3*t))return null;var n=Math.max(64,Math.min(e,Math.floor(2*t)));return e<=n+2?null:function lttbIndices(e,t,r){if(r>=t||r<=2){for(var n=[],a=0;a<t;a++)n.push(a);return n}for(var s=[0],l=(t-2)/(r-2),h=0,u=0;u<r-2;u++){var c=Math.floor((u+1)*l)+1,p=Math.floor((u+2)*l)+1;p>t&&(p=t);for(var v=0,m=0,g=0;c<p;c++){var b=e[2*c+1];isFinite(b)&&(v+=e[2*c],m+=b,g++)}g?(v/=g,m/=g):(v=e[2*(t-1)],m=e[2*(t-1)+1],isFinite(m)||(m=e[2*h+1],v=e[2*h]));for(var k=Math.floor(u*l)+1,S=Math.min(Math.floor((u+1)*l)+1,t-1),A=e[2*h],w=e[2*h+1],_=-1,M=k,C=k;C<S;C++){var T=e[2*C+1];if(isFinite(T)){var P=e[2*C],I=Math.abs((A-v)*(T-w)-(A-P)*(m-w));I>_&&(_=I,M=C)}}s.push(M),h=M}return s.push(t-1),s}(this.pixels,e,n)}},{key:"renderCount",value:function renderCount(){return this.renderIndices?this.renderIndices.length:this.pixels.length/2}},{key:"renderIndexAt",value:function renderIndexAt(e){return this.renderIndices?this.renderIndices[e]:e}},{key:"nearestIndexAtX",value:function nearestIndexAtX(e){var t=this;if(this.series.virtual)return this.virtualNearestIndexAtX(e);this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;if(!this.xMonotonic){for(var n=-1,a=1/0,s=0;s<r;s++){var l=this.pixels[2*s];if(isFinite(l)){var h=Math.abs(l-e);h<a&&(a=h,n=s)}}return n}for(var u=0,c=r-1;u<c;){var p=u+c>>1,v=this.pixels[2*p];!isFinite(v)||v<e?u=p+1:c=p}var m,g=[u,u-1].filter(function(e){return e>=0&&e<r&&isFinite(t.pixels[2*e])}),b=-1,k=1/0,S=_createForOfIteratorHelper(g);try{for(S.s();!(m=S.n()).done;){var A=m.value,w=Math.abs(this.pixels[2*A]-e);w<k&&(k=w,b=A)}}catch(e){S.e(e)}finally{S.f()}return b}},{key:"buildCacheKey",value:function buildCacheKey(e){var t=e.xScale.domain,r=e.yScale.domain;return[this.series.pointCount,this.progress(),e.plot.width,e.plot.height,String(t[0]),String(t[t.length-1]),String(r[0]),String(r[1]),this.series.pointCount?String(this.series.xValueAt(0)):""].join("|")}},{key:"eachSegment",value:function eachSegment(e){for(var t=this.pixels.length/2,r=0;r<t-1;r++){var n=this.pixels[2*r],a=this.pixels[2*r+1],s=this.pixels[2*(r+1)],l=this.pixels[2*(r+1)+1];isFinite(n)&&isFinite(a)&&isFinite(s)&&isFinite(l)&&e(n,a,s,l,r)}}},{key:"pointColor",value:function pointColor(e){return this.series.option.color||this.series.color}},{key:"lineWidthDevice",value:function lineWidthDevice(){var e=this.series.option.lineWidth;return isFinite(e)?e:2}},{key:"opacity",value:function opacity(){var e=Number(this.series.option.opacity);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"beginDraw",value:function beginDraw(){this.ctx.beginPath(),this.ctx.save(),this.clipToBox&&(this.ctx.beginPath(),this.ctx.rect(0,0,this.state.width,this.state.height),this.ctx.clip()),this.ctx.lineJoin="round",this.ctx.lineCap="round",this.ctx.globalAlpha=this.opacity()}},{key:"endDraw",value:function endDraw(){this.ctx.restore()}},{key:"drawSymbol",value:function drawSymbol(e,t,r,n,a,s){var l=this.ctx,h=this.unit();l.beginPath(),"rect"===r?l.rect(e-n/2,t-n/2,n,n):l.arc(e,t,Math.max(1,n/2),0,2*Math.PI),a&&(l.fillStyle=a,l.fill()),s&&(l.strokeStyle=s,l.lineWidth=h,l.stroke())}},{key:"pointByIndex",value:function pointByIndex(e){return this.series.pointAt(e)||null}}])}();var Q=function(){function LineSeries(){var e;_classCallCheck(this,LineSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,LineSeries,[].concat(r)),"seriesType","line"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"fillArea",!1),e}return _inherits(LineSeries,J),_createClass(LineSeries,[{key:"doRender",value:function doRender(){this.rebuildPixels();var e=this.renderSequence(),t=e.pts,r=e.indices;if(t.length){var n=this.series.option,a=this.pointColor(0),s=this.unit(),l=this.lineWidthDevice()*s,h=n.symbol||"circle",u=!0===n.showSymbol||"scatter"===this.seriesType,c=this.ctx;if(this.beginDraw(),this.fillArea&&this.drawArea(a,t,r),c.beginPath(),c.strokeStyle=a,c.lineWidth=l,"function"==typeof c.setLineDash&&Array.isArray(n.lineDash)&&c.setLineDash(n.lineDash.map(function(e){return e*s})),n.smooth?this.drawSmoothLine(t,"number"==typeof n.smooth?n.smooth:.5):this.drawStraightLine(t),c.stroke(),"function"==typeof c.setLineDash&&c.setLineDash([]),u&&"none"!==h)for(var p=n.symbolFill||a,v=n.symbolStroke||"#ffffff",m=0;m<t.length;m++){var g=t[m];g&&this.drawSymbol(g[0],g[1],h,this.symbolSizeAt(r[m]),p,v)}this.endDraw()}}},{key:"renderSequence",value:function renderSequence(){if(this.rebuildPixels(),this.series.virtual)return this.virtualRenderSequence();var e=[],t=[],r=this.renderCount();this.isEntering()&&(r=Math.max(1,Math.ceil(r*this.progress())));for(var n=0;n<r;n++){var a=this.renderIndexAt(n),s=this.pixels[2*a],l=this.pixels[2*a+1];isFinite(s)&&isFinite(l)?(e.push([s,l]),t.push(a)):e.length&&null!==e[e.length-1]&&(e.push(null),t.push(-1))}return{pts:e,indices:t}}},{key:"renderPoints",value:function renderPoints(){return this.renderSequence().pts.filter(function(e){return!!e})}},{key:"revealedPointCount",value:function revealedPointCount(){return this.rebuildPixels(),this.renderPoints().length}},{key:"virtualRenderSequence",value:function virtualRenderSequence(){var e=this,t=this.coord,r=this.series,n=r.pointCount,a={pts:[],indices:[]};if(!t||!n)return a;var s=this.virtualVisibleWindow(this.maxSymbolSize()),l=s.i0,h=s.i1;if(h<l)return a;var u=h-l+1,c=t.plot.width,p=this.isEntering()?Math.max(0,Math.ceil(u*this.progress())):u;if(p<=0)return a;var v=Math.min(h,l+p-1),m=u>4096?Math.max(1,Math.floor(u/(8*c))):1,g=[],b=[],k=function pushBreak(){g.length&&null!==g[g.length-1]&&(g.push(null),b.push(-1))};if(1===m){for(var S=l;S<=v;S++){var A=this.virtualPixelAt(S);A?(g.push(A),b.push(S)):k()}return{pts:g,indices:b}}for(var w=NaN,_=-1,M=-1,C=-1,T=-1,P=1/0,I=-1/0,N=function flush(){if(!(_<0)){for(var t=[],r=0,n=[_,C,T,M];r<n.length;r++){var a=n[r];a<0||t.indexOf(a)>=0||t.push(a)}t.sort(function(e,t){return e-t});for(var s=0,l=t;s<l.length;s++){var h=l[s],u=e.virtualPixelAt(h);u&&(g.push(u),b.push(h))}_=-1}},D=l;D<=v;D+=m){var O=r.yValueAt(D);if(null!==O){var R=t.xScale.map(r.xValueAt(D)),H=t.yScale.map(O);if(isFinite(R)&&isFinite(H)){var z=Math.floor(R);z===w?(M=D,H<P&&(P=H,C=D),H>I&&(I=H,T=D)):(N(),w=z,_=D,M=D,C=D,T=D,P=H,I=H)}}else N(),k(),w=NaN}return N(),{pts:g,indices:b}}},{key:"drawStraightLine",value:function drawStraightLine(e){var t,r=this.ctx,n=!1,a=_createForOfIteratorHelper(e);try{for(a.s();!(t=a.n()).done;){var s=t.value;s?n?r.lineTo(s[0],s[1]):(r.moveTo(s[0],s[1]),n=!0):n=!1}}catch(e){a.e(e)}finally{a.f()}}},{key:"drawSmoothLine",value:function drawSmoothLine(e,t){var r,n=this.ctx,a=Math.max(.05,Math.min(1,t))/3,s=[],l=function flush(){if(1===s.length)n.moveTo(s[0][0],s[0][1]);else if(s.length>1){n.moveTo(s[0][0],s[0][1]);for(var e=0;e<s.length-1;e++){var t=e>0?s[e-1]:s[e],r=s[e],l=s[e+1],h=e+2<s.length?s[e+2]:l,u=r[0]+(l[0]-t[0])*a,c=r[1]+(l[1]-t[1])*a,p=l[0]-(h[0]-r[0])*a,v=l[1]-(h[1]-r[1])*a;n.bezierCurveTo(u,c,p,v,l[0],l[1])}}s=[]},h=_createForOfIteratorHelper(e);try{for(h.s();!(r=h.n()).done;){var u=r.value;u?s.push(u):l()}}catch(e){h.e(e)}finally{h.f()}l()}},{key:"drawArea",value:function drawArea(e,t,r){var n=this.coord;if(n){var a=this.ctx,s=Number(this.series.option.areaOpacity),l=isFinite(s)?Math.max(0,Math.min(1,s)):.28,h=a.createLinearGradient?a.createLinearGradient(0,0,0,n.plot.height):null;h?(h.addColorStop(0,hexToRgba(e,l)),h.addColorStop(1,hexToRgba(e,.02)),a.fillStyle=h):a.fillStyle=hexToRgba(e,l);for(var u=0;u<t.length;)if(t[u]){for(var c=u;c<t.length&&t[c];)c+=1;if(c-u>=2){a.beginPath(),a.moveTo(t[u][0],this.baselineYForIndex(r[u]));for(var p=u;p<c;p++)a.lineTo(t[p][0],t[p][1]);for(var v=c-1;v>=u;v--)a.lineTo(t[v][0],this.baselineYForIndex(r[v]));a.closePath(),a.fill()}u=c}else u+=1}}},{key:"baselineYForIndex",value:function baselineYForIndex(e){var t=this.coord;if(!t)return 0;if(this.series.virtual){var r=t.yScale.map(0);return isFinite(r)?r:t.plot.height}var n=this.effective[2*e];return isFinite(n)?t.yScale.map(n):t.plot.height}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.virtual)return this.hitTestVirtual(e,t);this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):Math.max(8,this.maxSymbolSize()/2+4);if(r>1024&&this.xMonotonic){var s=this.nearestIndexAtX(e);if(s<0)return-1;for(var l=-1,h=a*a,u=Math.max(0,s-2),c=Math.min(r-1,s+2),p=u;p<=c;p++){var v=this.pixels[2*p],m=this.pixels[2*p+1];if(isFinite(v)&&isFinite(m)){var g=v-e,b=m-t,k=g*g+b*b;k<=h&&(h=k,l=p)}}if(l>=0)return l;for(var S=Math.max(4,this.lineWidthDevice()+4),A=Math.max(0,s-1);A<=Math.min(r-2,s);A++){if(distanceToSegment(e,t,this.pixels[2*A],this.pixels[2*A+1],this.pixels[2*(A+1)],this.pixels[2*(A+1)+1])<=S)return Math.abs(e-this.pixels[2*A])<=Math.abs(e-this.pixels[2*(A+1)])?A:A+1}return-1}for(var w=-1,_=a*a,M=0;M<r;M++){var C=this.pixels[2*M],T=this.pixels[2*M+1];if(isFinite(C)&&isFinite(T)){var P=C-e,I=T-t,N=P*P+I*I;N<=_&&(_=N,w=M)}}if(w>=0)return w;var D=Math.max(4,this.lineWidthDevice()+4),O=-1;return this.eachSegment(function(r,n,a,s,l){O>=0||distanceToSegment(e,t,r,n,a,s)<=D&&(O=Math.abs(e-r)<=Math.abs(e-a)?l:l+1)}),O}},{key:"hitTestVirtual",value:function hitTestVirtual(e,t){this.rebuildPixels();var r=this.series.pointCount;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):Math.max(8,this.maxSymbolSize()/2+4),s=this.nearestIndexAtX(e);if(s<0)return-1;for(var l=-1,h=a*a,u=Math.max(0,s-2);u<=Math.min(r-1,s+2);u++){var c=this.virtualPixelAt(u);if(c){var p=c[0]-e,v=c[1]-t,m=p*p+v*v;m<=h&&(h=m,l=u)}}if(l>=0)return l;for(var g=Math.max(4,this.lineWidthDevice()+4),b=Math.max(0,s-1);b<=Math.min(r-2,s);b++){var k=this.virtualPixelAt(b),S=this.virtualPixelAt(b+1);if(k&&S&&distanceToSegment(e,t,k[0],k[1],S[0],S[1])<=g)return Math.abs(e-k[0])<=Math.abs(e-S[0])?b:b+1}return-1}}])}();function distanceToSegment(e,t,r,n,a,s){var l=a-r,h=s-n,u=l*l+h*h;if(0===u)return Math.hypot(e-r,t-n);var c=((e-r)*l+(t-n)*h)/u;return c=Math.max(0,Math.min(1,c)),Math.hypot(e-(r+c*l),t-(n+c*h))}function hexToRgba(e,t){if(!e)return"rgba(0,0,0,".concat(t,")");if(0===e.indexOf("rgba"))return e;if(0===e.indexOf("rgb("))return e.replace("rgb(","rgba(").replace(")",",".concat(t,")"));var r=e.replace("#","");if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}var ee=function(){function BarSeries(){var e;_classCallCheck(this,BarSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,BarSeries,[].concat(r)),"seriesType","bar"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"barCacheKey",""),_defineProperty(e,"denseLow",new Float64Array(0)),_defineProperty(e,"denseHigh",new Float64Array(0)),_defineProperty(e,"denseSeen",new Uint8Array(0)),_defineProperty(e,"denseLimit",0),e}return _inherits(BarSeries,J),_createClass(BarSeries,[{key:"isHorizontal",value:function isHorizontal(){var e=this.coord;return!!e&&e.yScale.isBand()&&!e.xScale.isBand()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,this.isHorizontal()?"h":"v",String(e.yScale.domain.join(","))]);if(r!==this.barCacheKey||this.pixels.length!==2*t){this.barCacheKey=r,this.computeEffective(),this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.barRectAt(n);a?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=a.y+a.height/2):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"barRectAt",value:function barRectAt(e){var t=this.coord,r=this.series.xValueAt(e);if(!t||void 0===r)return null;this.effective.length!==2*this.series.pointCount&&this.computeEffective();var n=this.effective[2*e+1],a=this.effective[2*e];if(!isFinite(n))return null;if(this.isHorizontal()){var s=t.yScale.bandStart(r);if(!isFinite(s))return null;var l=t.yScale.bandwidth()||.6*t.yScale.step(),h=l/Math.max(1,this.barSlot.count),u=this.resolveBarWidth(l,h),c=t.yScale.range[1]>=t.yScale.range[0]?1:-1,p=s+c*(h*this.barSlot.index+(h-u)/2),v=c>0?p:p-u,m=t.xScale.map(a),g=t.xScale.map(n);return isFinite(m)&&isFinite(g)?{x:Math.min(m,g),y:v,width:Math.abs(g-m),height:u}:null}var b=t.xScale.bandStart(r);if(!isFinite(b))return null;var k=t.xScale.bandwidth()||.6*t.xScale.step(),S=k/Math.max(1,this.barSlot.count),A=this.resolveBarWidth(k,S),w=b+S*this.barSlot.index+(S-A)/2,_=t.yScale.map(a),M=t.yScale.map(n);return isFinite(_)&&isFinite(M)?{x:w,y:Math.min(_,M),width:A,height:Math.abs(M-_)}:null}},{key:"resolveBarWidth",value:function resolveBarWidth(e,t){var r=this.series.option,n=Number(r.barWidth);return!isFinite(n)||n<=0?Math.max(1,t*(1-(isFinite(Number(r.barGap))?Number(r.barGap):.2))):n<=1?Math.max(1,e*n):Math.max(1,n*this.unit())}},{key:"barColorAt",value:function barColorAt(e){var t=this.series.pointAt(e),r=t&&t.raw;return(r&&"object"===_typeof(r)&&!Array.isArray(r)?r.color:void 0)||this.pointColor(e)}},{key:"barDrawRectAt",value:function barDrawRectAt(e,t){var r=this.barRectAt(e),n=this.coord;if(!r||!n)return r;var a=this.hoverBoost(e,.08,t)-1;if(a<=0)return r;var s=this.effective[2*e];if(this.isHorizontal()){var l=r.width*a;return r.x+r.width/2>=n.xScale.map(s)?{x:r.x,y:r.y,width:r.width+l,height:r.height}:{x:r.x-l,y:r.y,width:r.width+l,height:r.height}}var h=r.height*a;return r.y+r.height/2<=n.yScale.map(s)?{x:r.x,y:r.y-h,width:r.width,height:r.height+h}:{x:r.x,y:r.y,width:r.width,height:r.height+h}}},{key:"doRender",value:function doRender(){var e=this.coord;if(e){var t=Number(this.series.option.barRadius),r=this.ctx;if(this.beginDraw(),this.shouldDrawDense(e))return this.drawDense(e),void this.endDraw();this.rebuildPixels();for(var n=0;n<this.series.pointCount;n++){var a=this.barDrawRectAt(n);if(a&&!(a.height<=0)){var s=this.barColorAt(n),l=a;if(r.beginPath(),roundRect(r,l.x,l.y,l.width,l.height,isFinite(t)?t:0),l.height>=3*this.unit()&&r.createLinearGradient){var h=this.isHorizontal()?r.createLinearGradient(l.x,0,l.x+l.width,0):r.createLinearGradient(0,l.y,0,l.y+l.height);h.addColorStop(0,hexToRgba(s,.95)),h.addColorStop(1,hexToRgba(s,.7)),r.fillStyle=h}else r.fillStyle=s;r.fill()}}this.endDraw()}}},{key:"shouldDrawDense",value:function shouldDrawDense(e){var t=this.series.pointCount,r=Math.max(1,e.plot.width);return!!e.xScale.isBand()&&t/r>2}},{key:"drawDense",value:function drawDense(e){var t=this.series.pointCount,r=e.plot;this.effective.length!==2*t&&this.computeEffective();var n=Math.max(1,Math.round(r.width));this.denseLimit!==n&&(this.denseLow=new Float64Array(n),this.denseHigh=new Float64Array(n),this.denseSeen=new Uint8Array(n),this.denseLimit=n);var a=this.denseLow,s=this.denseHigh,l=this.denseSeen;l.fill(0);for(var h=t/n,u=h>8?Math.max(1,Math.floor(h/8)):1,c=n/t,p=this.ctx,v=0;v<t;v+=u){var m=this.effective[2*v+1],g=this.effective[2*v];if(isFinite(m)&&isFinite(g)){var b=Math.max(0,Math.min(n-1,Math.floor(v*c))),k=Math.min(g,m),S=Math.max(g,m);l[b]?(k<a[b]&&(a[b]=k),S>s[b]&&(s[b]=S)):(l[b]=1,a[b]=k,s[b]=S)}}for(var A=r.width/n,w=Math.max(1,A),_=0;_<n;_++)if(l[_]){var M=Math.min(t-1,Math.max(0,Math.ceil((_+1)/c)-1)),C=this.barColorAt(M),T=e.yScale.map(s[_]),P=e.yScale.map(a[_]);isFinite(T)&&isFinite(P)&&(p.fillStyle=C,p.fillRect(_*A,Math.min(T,P),w,Math.max(1,Math.abs(P-T))))}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.series.pointCount,n=this.coord;if(n&&r&&this.shouldDrawDense(n)){var a=n.plot.width/r;if(!(a>0))return-1;for(var s=Math.round(e/a-.5),l=Math.max(0,s-2);l<=Math.min(r-1,s+2);l++){var h=this.barRectAt(l);if(h&&(e>=h.x&&e<=h.x+h.width&&t>=h.y&&t<=h.y+h.height))return l}return-1}this.rebuildPixels();for(var u=0;u<r;u++){var c=this.barRectAt(u);if(c&&(e>=c.x&&e<=c.x+c.width&&t>=c.y&&t<=c.y+c.height))return u}return-1}}])}(),te=function(){function AreaSeries(e,t){var r;return _classCallCheck(this,AreaSeries),_defineProperty(r=_callSuper(this,AreaSeries,[e,t]),"seriesType","area"),r.fillArea=!0,r}return _inherits(AreaSeries,Q),_createClass(AreaSeries)}(),ie=function(){function ScatterSeries(){var e;_classCallCheck(this,ScatterSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,ScatterSeries,[].concat(r)),"seriesType","scatter"),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"clipToBox",!0),e}return _inherits(ScatterSeries,J),_createClass(ScatterSeries,[{key:"symbolStyle",value:function symbolStyle(){var e=this.series.option,t=this.pointColor(0);return{shape:e.symbol||"circle",fill:e.symbolFill||t,stroke:e.symbolStroke||"#ffffff"}}},{key:"doRender",value:function doRender(){if(this.series.virtual)this.renderVirtual();else{this.rebuildPixels();var e=this.pixels.length/2;if(e){var t=0,r=e-1;if(this.xMonotonic&&e>2048){var n=this.__localBox(),a=this.maxSymbolSize();t=this.__lowerBoundX(n[0]-a),r=this.__upperBoundX(n[2]+a)}if(r<t)return this.beginDraw(),void this.endDraw();var s=r-t+1,l=this.coord?this.coord.plot.width:960,h=this.xMonotonic&&s>4096?Math.max(1,Math.floor(s/(2*l))):1,u=this.symbolStyle(),c=u.shape,p=u.fill,v=u.stroke;this.beginDraw();var m=this.isEntering();this.computeItemProgress();for(var g=t;g<=r;g+=h){var b=this.pixels[2*g],k=this.pixels[2*g+1];if(isFinite(b)&&isFinite(k)){var S=m?this.itemProgress[g]:1;if(!(S<=0)){var A=this.symbolSizeAt(g)*(m?.2+.8*S:1)*this.hoverBoost(g,.18);m&&S<1&&(this.ctx.globalAlpha=.25+.75*S),this.drawSymbol(b,k,c,A,p,v),m&&S<1&&(this.ctx.globalAlpha=1)}}}this.endDraw()}}}},{key:"renderVirtual",value:function renderVirtual(){var e=this.coord,t=this.series;if(e&&t.pointCount){this.rebuildPixels();var r=e.plot.width,n=this.virtualVisibleWindow(this.maxSymbolSize()),a=n.i0,s=n.i1;if(!(s<a)){var l=s-a+1,h=this.xMonotonic&&l>4096?Math.max(1,Math.floor(l/(2*r))):1,u=this.symbolStyle(),c=u.shape,p=u.fill,v=u.stroke,m=this.isEntering(),g=m?this.progress():1;if(!(m&&g<=0)){this.beginDraw();for(var b=a;b<=s;b+=h){var k=t.yValueAt(b);if(null!==k){var S=e.xScale.map(t.xValueAt(b)),A=e.yScale.map(k);if(isFinite(S)&&isFinite(A)){var w=this.symbolSizeAt(b)*(m?.2+.8*g:1)*this.hoverBoost(b,.18);m&&g<1&&(this.ctx.globalAlpha=.25+.75*g),this.drawSymbol(S,A,c,w,p,v),m&&g<1&&(this.ctx.globalAlpha=1)}}}this.endDraw()}}}}},{key:"__lowerBoundX",value:function __lowerBoundX(e){for(var t=0,r=this.pixels.length/2;t<r;){var n=t+r>>1;this.pixels[2*n]<e?t=n+1:r=n}return Math.max(0,t-1)}},{key:"__upperBoundX",value:function __upperBoundX(e){for(var t=this.pixels.length/2,r=0,n=t;r<n;){var a=r+n>>1;this.pixels[2*a]<=e?r=a+1:n=a}return Math.min(t-1,r)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.virtual)return this.hitTestVirtual(e,t);this.rebuildPixels();var r=this.series.option,n=r.hitRadius?Number(r.hitRadius):this.maxSymbolSize()/2+4,a=n*n,s=-1,l=a,h=this.pixels.length/2;if(h>1024&&this.xMonotonic){var u=this.nearestIndexAtX(e);if(u<0)return-1;for(var c=-1,p=a,v=Math.max(0,u-3);v<=Math.min(h-1,u+3);v++){var m=this.pixels[2*v]-e,g=this.pixels[2*v+1]-t,b=m*m+g*g;b<=p&&(p=b,c=v)}return c}for(var k=0;k<h;k++){var S=this.pixels[2*k],A=this.pixels[2*k+1];if(isFinite(S)&&isFinite(A)){var w=S-e,_=A-t,M=w*w+_*_;M<=l&&(l=M,s=k)}}return s}},{key:"hitTestVirtual",value:function hitTestVirtual(e,t){this.rebuildPixels();var r=this.series.pointCount;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):this.maxSymbolSize()/2+4,s=a*a,l=this.nearestIndexAtX(e);if(l<0)return-1;for(var h=-1,u=s,c=Math.max(0,l-3);c<=Math.min(r-1,l+3);c++){var p=this.virtualPixelAt(c);if(p){var v=p[0]-e,m=p[1]-t,g=v*v+m*m;g<=u&&(u=g,h=c)}}return h}}])}(),re=2*Math.PI;function normalizeAngle(e){return(e%re+re)%re}function shortestAngleDelta(e,t){var r=normalizeAngle(t-e);return r>Math.PI&&(r-=re),r}var ne=function(){function PieSeries(){var e;_classCallCheck(this,PieSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,PieSeries,[].concat(r)),"seriesType","pie"),_defineProperty(e,"polar",null),_defineProperty(e,"slices",new Float64Array(0)),_defineProperty(e,"pieCacheKey",""),_defineProperty(e,"sliceFrom",null),e}return _inherits(PieSeries,J),_createClass(PieSeries,[{key:"setCoord",value:function setCoord(e){return this.polar=e||null,this.pieCacheKey="",this.markDirty()}},{key:"setHiddenSlices",value:function setHiddenSlices(e){return e.join(",")!==this.hiddenSlices.join(",")&&this.slices.length&&(this.sliceFrom=new Float64Array(this.slices)),_superPropGet(PieSeries,"setHiddenSlices",this,3)([e]),this.pieCacheKey="",this}},{key:"paintPad",value:function paintPad(){var e=this.series.option.label;return e&&!1===e.show?4:48}},{key:"localCenter",value:function localCenter(){var e=this.polar;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.polar,t=this.series;if(!e)return this.pixels=new Float64Array(0),void(this.slices=new Float64Array(0));var r=this.series.option,n=[t.pointCount,r.startAngle,r.clockwise,r.roseType,r.radius,r.innerRadius,e.polar.radius,e.plot.width,this.hiddenSlices.join(","),this.progress(),t.pointCount?String(t.pointAt(0).y):""].join("|");if(n!==this.pieCacheKey){this.pieCacheKey=n;var a=t.pointCount;this.pixels.length!==2*a&&(this.pixels=new Float64Array(2*a)),this.slices.length!==4*a&&(this.slices=new Float64Array(4*a));for(var s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=0,p=0,v=0;v<a;v++)if(!(this.hiddenSlices.indexOf(v)>=0)){var m=t.pointAt(v).y||0;m>0&&(c+=m),m>p&&(p=m)}this.computeItemProgress();for(var g=!1===r.clockwise?-1:1,b=-(void 0===r.startAngle?90:Number(r.startAngle))*Math.PI/180,k=Math.max(0,Math.min(.95,Number(r.innerRadius)||0)),S=r.roseType,A=0;A<a;A++){var w=this.hiddenSlices.indexOf(A)>=0,_=w?0:t.pointAt(A).y||0,M=b,C=b+g*(c>0?_/c*re*(w?0:this.itemProgress[A]):0);b=C;var T=u;S&&p>0&&(T="area"===S?u*Math.sqrt(Math.max(0,_)/p):u*(Math.max(0,_)/p),T=Math.max(3,T));var P=u*k;this.slices[4*A]=M,this.slices[4*A+1]=C,this.slices[4*A+2]=P,this.slices[4*A+3]=T}this.blendSliceMorph(this.isEntering());for(var I=0;I<a;I++)this.writeCentroid(I,l,h)}}},{key:"blendSliceMorph",value:function blendSliceMorph(e){var t=this.sliceFrom;if(!(!t||e||t.length<this.slices.length)){var r=Math.max(0,Math.min(1,this.progress()));if(r>=1)this.sliceFrom=null;else for(var n=0;n<this.slices.length/4;n++){var a=t[4*n],s=this.slices[4*n],l=a+shortestAngleDelta(a,s)*r,h=t[4*n+1]-a,u=this.slices[4*n+1]-s;this.slices[4*n]=l,this.slices[4*n+1]=l+h+(u-h)*r;for(var c=0,p=[2,3];c<p.length;c++){var v=p[c],m=t[4*n+v];this.slices[4*n+v]=m+(this.slices[4*n+v]-m)*r}}}}},{key:"writeCentroid",value:function writeCentroid(e,t,r){var n=this.slices[4*e],a=this.slices[4*e+1],s=this.slices[4*e+2],l=this.slices[4*e+3];if(Math.abs(a-n)<=1e-9)return this.pixels[2*e]=NaN,void(this.pixels[2*e+1]=NaN);var h=(n+a)/2,u=s+.6*(l-s);this.pixels[2*e]=t+Math.cos(h)*u,this.pixels[2*e+1]=r+Math.sin(h)*u}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.polar;if(!r)return-1;this.rebuildPixels();var n=_slicedToArray(this.localCenter(),2),a=e-n[0],s=t-n[1],l=Math.hypot(a,s);if(l>r.polar.radius+4)return-1;for(var h=this.series.pointCount,u=Math.atan2(s,a),c=0;c<h;c++){var p=this.slices[4*c],v=this.slices[4*c+1],m=this.slices[4*c+2],g=this.slices[4*c+3],b=Math.abs(v-p);if(!(b<=1e-9))if(!(l<m-1))if(normalizeAngle(v>p?u-p:p-u)<=b+1e-9&&l<=g+4)return c}return-1}},{key:"doRender",value:function doRender(){var e=this,t=this.polar;if(t){this.rebuildPixels();for(var r=this.ctx,n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1],l=this.unit(),h=!1===this.series.option.clockwise?-1:1,u=this.series.pointCount,c=this.series.option.label,p=!(c&&!1===c.show)&&u>0&&u<=16,v=c&&"inside"===c.position,m=0,g=0;g<u;g++)if(!(this.hiddenSlices.indexOf(g)>=0)){var b=this.series.pointAt(g).y||0;b>0&&(m+=b)}this.beginDraw();for(var k=0;k<u;k++){var S=this.slices[4*k],A=this.slices[4*k+1],w=this.slices[4*k+2],_=this.slices[4*k+3];if(!(Math.abs(A-S)<=1e-9)){var M=this.series.pointAt(k).color||this.series.color,C=this.hoverBoost(k,1),T=C>1?7*(C-1)*this.unit():0,P=(S+A)/2,I=Math.cos(P)*T,N=Math.sin(P)*T;r.beginPath(),w>0?(r.arc(a+I,s+N,_,S,A,h<0),r.arc(a+I,s+N,w,A,S,h>0)):(r.moveTo(a+I,s+N),r.arc(a+I,s+N,_,S,A,h<0)),r.closePath(),r.fillStyle=M,r.fill(),u>1&&(r.strokeStyle="rgba(255,255,255,0.85)",r.lineWidth=l,r.stroke())}}if(p){this.setFont(this.fontSize(),this.fontFamily());for(var D=NaN,O=0,R=[],H=0;H<u;H++){var z=this.slices[4*H],E=this.slices[4*H+1],L=this.slices[4*H+2],V=this.slices[4*H+3];if(!(Math.abs(E-z)<=1e-9)){var B=this.series.pointAt(H),j=B.y||0,W=t.polar.radius,X=m>0?j/m*100:0,G={name:B.name||"".concat(this.series.name," ").concat(H+1),value:B.y,percent:X,dataIndex:H,seriesId:this.series.id,seriesName:this.series.name,color:B.color||this.series.color},U=c&&"function"==typeof c.formatter?String(c.formatter(G)):"".concat(G.name," ").concat(X.toFixed(1),"%"),K=(z+E)/2;if(v){if(isFinite(D))O=Math.abs(Math.atan2(Math.sin(K-D),Math.cos(K-D)))<.42?Math.min(3,O+1):0;else O=0;D=K;var Y=L+.62*(V-L)+O*(this.fontSize()+4),q=Math.abs(E-z)*Y;if(measureTextWidth(this.ctx,U,this.fontSize(),this.fontFamily())<=q+6){r.textAlign="center",r.textBaseline="middle",r.fillStyle="#ffffff",r.fillText(U,a+Math.cos(K)*Y,s+Math.sin(K)*Y);continue}}var $=W+8,Z=W+26,J=Math.cos(K)>=0;R.push({x1:a+Math.cos(K)*V,y1:s+Math.sin(K)*V,x2:a+Math.cos(K)*$,y2:s+Math.sin(K)*$,x3:a+Math.cos(K)*Z+(J?8:-8),y3:s+Math.sin(K)*Z,text:U,right:J})}}for(var Q=1.45*this.fontSize(),ee=function _loop(){for(var n=ie[te],a=R.filter(function(e){return e.right===n}).sort(function(e,t){return e.y3-t.y3}),h=1;h<a.length;h++)a[h].y3-a[h-1].y3<Q&&(a[h].y3=a[h-1].y3+Q);if(a.length){var u=a[a.length-1].y3-(s+t.polar.radius+2*Q);if(u>0){var c,p=_createForOfIteratorHelper(a);try{for(p.s();!(c=p.n()).done;){c.value.y3-=u}}catch(e){p.e(e)}finally{p.f()}}}var v,m=_createForOfIteratorHelper(a);try{for(m.s();!(v=m.n()).done;){var g=v.value;r.strokeStyle="rgba(148,163,184,0.9)",r.lineWidth=l,r.beginPath(),r.moveTo(g.x1,g.y1),r.lineTo(g.x2,g.y2),r.lineTo(g.x2,g.y3),r.lineTo(g.x3,g.y3),r.stroke(),r.textAlign=g.right?"left":"right",r.textBaseline="middle",r.fillStyle=e.chartTheme&&e.chartTheme.axisLabelColor||"#475569",r.fillText(g.text,g.x3+(g.right?4:-4)*l,g.y3)}}catch(e){m.e(e)}finally{m.f()}},te=0,ie=[!0,!1];te<ie.length;te++)ee()}this.endDraw()}}},{key:"fontSize",value:function fontSize(){return this.chartTheme&&this.chartTheme.fontSize||12}},{key:"fontFamily",value:function fontFamily(){return this.chartTheme&&this.chartTheme.fontFamily||"Arial"}}])}(),ae=function(){function RadarSeries(){var e;_classCallCheck(this,RadarSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,RadarSeries,[].concat(r)),"seriesType","radar"),_defineProperty(e,"radar",null),_defineProperty(e,"radarCacheKey",""),e}return _inherits(RadarSeries,J),_createClass(RadarSeries,[{key:"setCoord",value:function setCoord(e){return this.radar=e||null,this.radarCacheKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 14}},{key:"localCenter",value:function localCenter(){var e=this.radar;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.radar,t=this.series,r=t.pointCount;if(e){var n=[r,e.polar.radius,e.plot.width,this.progress(),e.domains.map(function(e){return e.join(":")}).join("|")].join("::");if(n!==this.radarCacheKey||this.pixels.length!==2*r){this.radarCacheKey=n,this.pixels.length!==2*r&&(this.pixels=new Float64Array(2*r));for(var a=_slicedToArray(this.localCenter(),2),s=a[0],l=a[1],h=this.progress(),u=0;u<r;u++){var c=-Math.PI/2+u/Math.max(1,r)*Math.PI*2,p=e.domains[u]||[0,1],v=t.pointAt(u).y,m=null==v?p[0]:v,g=p[1]-p[0],b=g>0?(m-p[0])/g:0;b=Math.max(0,Math.min(1,b)),b*=h;var k=e.polar.radius*b;this.pixels[2*u]=s+Math.cos(c)*k,this.pixels[2*u+1]=l+Math.sin(c)*k}}}else this.pixels=new Float64Array(0)}},{key:"doRender",value:function doRender(){if(this.radar){this.rebuildPixels();var e=this.pixels.length/2;if(e){var t=this.ctx,r=this.pointColor(0),n=this.unit(),a=_slicedToArray(this.localCenter(),2);a[0],a[1],this.beginDraw(),t.beginPath();for(var s=0;s<e;s++){var l=this.pixels[2*s],h=this.pixels[2*s+1];0===s?t.moveTo(l,h):t.lineTo(l,h)}t.closePath(),t.fillStyle=hexToRgba(r,.22),t.fill(),t.strokeStyle=r,t.lineWidth=this.lineWidthDevice()*n,t.stroke();for(var u=0;u<e;u++){var c=this.hoverBoost(u,.3);this.drawSymbol(this.pixels[2*u],this.pixels[2*u+1],"circle",this.symbolSizeAt(u)*c,r,"#ffffff")}this.endDraw()}}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;for(var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):24,s=-1,l=a*a,h=0;h<r;h++){var u=this.pixels[2*h]-e,c=this.pixels[2*h+1]-t,p=u*u+c*c;p<=l&&(l=p,s=h)}if(s>=0)return s;if(this.containsPointInPolygon(e,t)){var v=_slicedToArray(this.localCenter(),2),m=v[0],g=v[1],b=Math.atan2(t-g,e-m),k=2*Math.PI/r,S=((b+Math.PI/2)%(2*Math.PI)+2*Math.PI)%(2*Math.PI);return Math.round(S/k)%r}return-1}},{key:"containsPointInPolygon",value:function containsPointInPolygon(e,t){for(var r=this.pixels.length/2,n=!1,a=0,s=r-1;a<r;s=a++){var l=this.pixels[2*a],h=this.pixels[2*a+1],u=this.pixels[2*s],c=this.pixels[2*s+1];h>t!=c>t&&e<(u-l)*(t-h)/(c-h)+l&&(n=!n)}return n}}])}(),oe=function(){function HeatmapSeries(){var e;_classCallCheck(this,HeatmapSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,HeatmapSeries,[].concat(r)),"seriesType","heatmap"),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"heatCacheKey",""),_defineProperty(e,"gridKey",""),_defineProperty(e,"gridX",new Float64Array(0)),_defineProperty(e,"gridY",new Float64Array(0)),_defineProperty(e,"gridCellW",1),_defineProperty(e,"gridCellH",1),_defineProperty(e,"gridVisibleCols",[]),_defineProperty(e,"gridVisibleRows",[]),_defineProperty(e,"gridBlocks",new Float64Array(0)),_defineProperty(e,"gridBlockCols",0),_defineProperty(e,"gridBlockRows",0),_defineProperty(e,"gridBlockPx",0),e}return _inherits(HeatmapSeries,J),_createClass(HeatmapSeries,[{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,String(e.yScale.domain.join(","))]);if(r!==this.heatCacheKey||this.pixels.length!==2*t){this.heatCacheKey=r,this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.cellRectAt(n);a?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=a.y+a.height/2):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"valueRange",value:function valueRange(){var e=this.series.grid;if(e)return e.valueDomain||[0,1];for(var t=1/0,r=-1/0,n=0,a=this.series.pointCount;n<a;n++){var s=this.series.pointAt(n).y;null!==s&&isFinite(s)&&(s<t&&(t=s),s>r&&(r=s))}return isFinite(t)&&isFinite(r)?t===r?[t,t+1]:[t,r]:[0,1]}},{key:"heatColors",value:function heatColors(){var e=this.series.option.heatmap||{};return{from:e.minColor||"#EFF6FF",to:e.maxColor||this.series.color}}},{key:"cellRectAt",value:function cellRectAt(e){if(this.series.grid)return this.virtualCellRect(e);var t=this.coord,r=this.series.pointAt(e);if(!t||!r)return null;var n=t.xScale.bandStart(r.xValue,void 0),a=void 0===r.name?r.index:r.name,s=t.yScale.bandStart(a,void 0);if(!isFinite(n)||!isFinite(s))return null;var l=t.xScale.bandwidth()||.8*t.xScale.step(),h=t.yScale.bandwidth()||.8*t.yScale.step(),u=t.xScale.range[1]>=t.xScale.range[0]?1:-1,c=t.yScale.range[1]>=t.yScale.range[0]?1:-1,p=Math.max(1,l),v=Math.max(1,h);return{x:u>0?n:n-p,y:c>0?s:s-v,width:p,height:v}}},{key:"doRender",value:function doRender(){var e=this.coord;if(e)if(this.series.grid)this.renderVirtual();else{var t=this.ctx,r=_slicedToArray(this.valueRange(),2),n=r[0],a=r[1],s=this.heatColors(),l=s.from,h=s.to,u=this.isEntering();this.computeItemProgress();var c=e.xScale.domain.length||1;this.beginDraw();for(var p=0;p<this.series.pointCount;p++){var v=this.series.pointAt(p),m=this.cellRectAt(p);if(m){var g=null===v.y?0:(v.y-n)/(a-n||1),b=1;if(u){var k=(p%c+Math.floor(p/c))%Math.max(1,c)/Math.max(1,c),S=this.progress();if((b=Math.max(0,Math.min(1,(S-k*(this.stagger||.35))/Math.max(.05,1-k*(this.stagger||.35)))))<=0)continue;t.globalAlpha=b}t.fillStyle=mixColors(l,h,Math.max(0,Math.min(1,g))),t.fillRect(m.x,m.y,m.width,m.height),u&&(t.globalAlpha=1)}}null!==this.hoverIndex&&this.drawHoverOverlay(this.hoverIndex,this.cellRectAt(this.hoverIndex),{radius:0}),this.endDraw()}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.grid)return this.hitTestGrid(e,t);for(var r=0;r<this.series.pointCount;r++){var n=this.cellRectAt(r);if(n&&(e>=n.x&&e<=n.x+n.width&&t>=n.y&&t<=n.y+n.height))return r}return-1}},{key:"paintPad",value:function paintPad(){return 4}},{key:"syncGrid",value:function syncGrid(){var e=this.coord,t=this.series.grid;if(e&&t){var r=t.xCategories.length,n=t.yCategories.length,a=function axisKey(e){return"".concat(e.domain.length,":").concat(String(e.domain[0]),"~").concat(String(e.domain[e.domain.length-1]))},s=[this.series.pointCount,e.plot.width.toFixed(2),e.plot.height.toFixed(2),a(e.xScale),a(e.yScale)].join("|");if(s!==this.gridKey){this.gridKey=s;for(var l=e.xScale.range[1]>=e.xScale.range[0]?1:-1,h=e.yScale.range[1]>=e.yScale.range[0]?1:-1,u=Math.max(.01,e.xScale.bandwidth()||.8*e.xScale.step()),c=Math.max(.01,e.yScale.bandwidth()||.8*e.yScale.step()),p=new Float64Array(r),v=new Float64Array(n),m=0;m<r;m++){var g=e.xScale.bandStart(t.xCategories[m],void 0);p[m]=l>0?g:g-u}for(var b=0;b<n;b++){var k=e.yScale.bandStart(t.yCategories[b],void 0);v[b]=h>0?k:k-c}this.gridX=p,this.gridY=v,this.gridCellW=u,this.gridCellH=c;for(var S=e.plot.width,A=e.plot.height,w=[],_=[],M=0;M<r;M++)!isFinite(p[M])||p[M]+u<-1||p[M]>S+1||w.push(M);for(var C=0;C<n;C++)!isFinite(v[C])||v[C]+c<-1||v[C]>A+1||_.push(C);this.gridVisibleCols=w,this.gridVisibleRows=_;var T=w.length*_.length,P=T<=HeatmapSeries.MAX_DIRECT_CELLS?0:Math.max(1,Math.ceil(Math.sqrt(T/HeatmapSeries.MAX_BLOCKS)));if(this.gridBlockPx=P,0===P)return this.gridBlocks=new Float64Array(0),this.gridBlockCols=0,void(this.gridBlockRows=0);for(var I=Math.max(1,Math.ceil(S/P)),N=Math.max(1,Math.ceil(A/P)),D=new Float64Array(I*N).fill(NaN),O=t.values,R=0,H=_;R<H.length;R++){var z,E=H[R],L=E*r,V=Math.min(N-1,Math.max(0,Math.floor((v[E]+c/2)/P))),B=_createForOfIteratorHelper(w);try{for(B.s();!(z=B.n()).done;){var j=z.value,W=O[L+j];if(!Number.isNaN(W)){var X=V*I+Math.min(I-1,Math.max(0,Math.floor((p[j]+u/2)/P))),G=D[X];(Number.isNaN(G)||W>G)&&(D[X]=W)}}}catch(e){B.e(e)}finally{B.f()}}this.gridBlocks=D,this.gridBlockCols=I,this.gridBlockRows=N}}}},{key:"virtualCellRect",value:function virtualCellRect(e){var t=this.series.grid;if(!this.coord||!t)return null;this.syncGrid();var r=t.xCategories.length,n=r>0?e%r:0,a=r>0?(e-n)/r:0,s=this.gridX[n],l=this.gridY[a];return isFinite(s)&&isFinite(l)?{x:s,y:l,width:Math.max(1,this.gridCellW),height:Math.max(1,this.gridCellH)}:null}},{key:"virtualPixelAt",value:function virtualPixelAt(e){var t=this.virtualCellRect(e);return t?[t.x+t.width/2,t.y+t.height/2]:null}},{key:"hitTestGrid",value:function hitTestGrid(e,t){var r=this.coord,n=this.series.grid;if(!r||!n)return-1;var a=this.state,s=a.width,l=a.height;if(e<0||t<0||e>s||t>l)return-1;var h=n.xIndex.get(String(r.xScale.invert(e))),u=n.yIndex.get(String(r.yScale.invert(t)));if(void 0===h||void 0===u)return-1;var c=u*n.xCategories.length+h;return Number.isNaN(n.values[c])?-1:c}},{key:"nearestIndexAtX",value:function nearestIndexAtX(e){var t=this.series.grid,r=this.coord;if(!t||!r)return _superPropGet(HeatmapSeries,"nearestIndexAtX",this,3)([e]);var n=r.xScale,a="function"==typeof n.nearestIndex?n.nearestIndex(e):-1;if(a<0)return-1;var s=t.xIndex.get(String(r.xScale.domain[a]));if(void 0===s)return-1;for(var l=t.xCategories.length,h=0;h<t.yCategories.length;h++){var u=h*l+s;if(!Number.isNaN(t.values[u]))return u}return-1}},{key:"renderVirtual",value:function renderVirtual(){var e=this.coord,t=this.series.grid;if(e&&t){this.syncGrid();var r=this.ctx,n=_slicedToArray(this.valueRange(),2),a=n[0],s=n[1],l=this.heatColors(),h=l.from,u=l.to,c=function ratioAt(e){var t=s-a?(e-a)/(s-a):0;return Math.max(0,Math.min(1,t))},p=t.xCategories.length,v=t.values,m=Math.max(1,this.gridCellW),g=Math.max(1,this.gridCellH);if(this.beginDraw(),0===this.gridBlockPx){var b,k=_createForOfIteratorHelper(this.gridVisibleRows);try{for(k.s();!(b=k.n()).done;){var S,A=b.value,w=this.gridY[A],_=A*p,M=_createForOfIteratorHelper(this.gridVisibleCols);try{for(M.s();!(S=M.n()).done;){var C=S.value,T=v[_+C];Number.isNaN(T)||(r.fillStyle=mixColors(h,u,c(T)),r.fillRect(this.gridX[C],w,m,g))}}catch(e){M.e(e)}finally{M.f()}}}catch(e){k.e(e)}finally{k.f()}}else for(var P=this.gridBlockPx,I=0;I<this.gridBlockRows;I++)for(var N=0;N<this.gridBlockCols;N++){var D=this.gridBlocks[I*this.gridBlockCols+N];Number.isNaN(D)||(r.fillStyle=mixColors(h,u,c(D)),r.fillRect(N*P,I*P,P,P))}if(null!==this.hoverIndex){var O=this.cellRectAt(this.hoverIndex);O&&this.drawHoverOverlay(this.hoverIndex,O,{radius:0})}this.endDraw()}}}])}();function mixColors(e,t,r){var n=parseHex$1(e),a=parseHex$1(t);if(!n||!a)return t;var s=Math.round(n[0]+(a[0]-n[0])*r),l=Math.round(n[1]+(a[1]-n[1])*r),h=Math.round(n[2]+(a[2]-n[2])*r);return"rgb(".concat(s,",").concat(l,",").concat(h,")")}function parseHex$1(e){if("string"!=typeof e)return null;var t=e.trim();if(0===t.indexOf("#"))return 3===(t=t.slice(1)).length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),6!==t.length?null:[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)];var r=t.match(/rgba?\(([^)]+)\)/);if(r){var n=r[1].split(",").map(function(e){return parseFloat(e)});return[n[0]||0,n[1]||0,n[2]||0]}return null}function layoutSankey(e,r,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{nodes:[],links:[]},s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:t,l=e.length;if(!l)return{nodes:[],links:[]};var h,u=Math.max(2,Number(a.nodeWidth)||16),c=Math.max(0,Number(a.nodePadding)||10),p=Math.max(0,void 0===Number(a.iterations)?6:Number(a.iterations)),v=function indexOf(t){return"number"==typeof t?t>=0&&t<l?t:-1:e.findIndex(function(e){return e.name===t})},m=r.map(function(e,t){return{id:t,source:v(e.source),target:v(e.target),value:Math.max(0,Number(e.value)||0),color:e.color}}).filter(function(e){return e.source>=0&&e.target>=0&&e.value>0}),g=e.map(function(){return[]}),b=e.map(function(){return[]}),k=new Array(l).fill(0),S=_createForOfIteratorHelper(m);try{for(S.s();!(h=S.n()).done;){var A=h.value;g[A.source].push(A.target),b[A.target].push(A.source),k[A.target]++}}catch(e){S.e(e)}finally{S.f()}for(var w=new Array(l).fill(0),_=[],M=0;M<l;M++)0===k[M]&&_.push(M);for(;_.length;){var C,T=_.shift(),P=_createForOfIteratorHelper(g[T]);try{for(P.s();!(C=P.n()).done;){var I=C.value;w[I]=Math.max(w[I],w[T]+1),0===--k[I]&&_.push(I)}}catch(e){P.e(e)}finally{P.f()}}for(var N=0;N<l;N++)void 0!==e[N].depth&&(w[N]=Math.max(0,Number(e[N].depth)||0));var D,O=Math.max.apply(Math,[1].concat(_toConsumableArray(w))),R=function columnX(e){return n.x+e*(n.width-u)/O},H=new Array(l).fill(0),z=new Array(l).fill(0),E=_createForOfIteratorHelper(m);try{for(E.s();!(D=E.n()).done;){var L=D.value;z[L.source]+=L.value,H[L.target]+=L.value}}catch(e){E.e(e)}finally{E.f()}for(var V=new Array(l).fill(0).map(function(e,t){return Math.max(H[t],z[t])}),B=new Array(O+1).fill(0),j=0;j<l;j++){B[w[j]]+=V[j]}for(var W=new Array(O+1).fill(0),X=0;X<l;X++)W[w[X]]++;var G,U=B.map(function(e,t){var r=n.height-c*Math.max(0,W[t]-1);return e>0?Math.max(1,r)/e:1}),K=e.map(function(e,t){var r=Math.max(2,V[t]*U[w[t]]);return{id:t,name:e.name,depth:w[t],x:R(w[t]),y:n.y,width:u,height:r,value:V[t],color:e.color||s[t%s.length]}}),Y=new Array(O+1).fill(0).map(function(){return[]}),q=_createForOfIteratorHelper(K);try{for(q.s();!(G=q.n()).done;){var $=G.value;Y[$.depth].push($.id)}}catch(e){q.e(e)}finally{q.f()}var Z,J=_createForOfIteratorHelper(Y);try{for(J.s();!(Z=J.n()).done;){var Q,ee=Z.value,te=n.y,ie=_createForOfIteratorHelper(ee);try{for(ie.s();!(Q=ie.n()).done;){var re=Q.value;K[re].y=te,te+=K[re].height+c}}catch(e){ie.e(e)}finally{ie.f()}}}catch(e){J.e(e)}finally{J.f()}for(var ne=0;ne<p;ne++){var ae,oe=_createForOfIteratorHelper(K);try{for(oe.s();!(ae=oe.n()).done;){var se,le=ae.value,he=[],ue=_createForOfIteratorHelper(m);try{for(ue.s();!(se=ue.n()).done;){var ce=se.value;ce.source===le.id?he.push({id:ce.target,weight:ce.value}):ce.target===le.id&&he.push({id:ce.source,weight:ce.value})}}catch(e){ue.e(e)}finally{ue.f()}if(he.length){for(var de=0,fe=0,pe=0,ve=he;pe<ve.length;pe++){var ye=ve[pe],me=K[ye.id];fe+=(me.y+me.height/2)*ye.weight,de+=ye.weight}var xe=de>0?fe/de:le.y+le.height/2;le.y=xe-le.height/2}}}catch(e){oe.e(e)}finally{oe.f()}var ge,be=_createForOfIteratorHelper(Y);try{for(be.s();!(ge=be.n()).done;){var ke=ge.value;ke.sort(function(e,t){return K[e].y-K[t].y});var Se,Ae=n.y,we=_createForOfIteratorHelper(ke);try{for(we.s();!(Se=we.n()).done;){var _e=Se.value;K[_e].y=Ae,Ae+=K[_e].height+c}}catch(e){we.e(e)}finally{we.f()}}}catch(e){be.e(e)}finally{be.f()}}var Me,Ce=_createForOfIteratorHelper(Y);try{for(Ce.s();!(Me=Ce.n()).done;){var Te=Me.value,Pe=Te.length?K[Te[Te.length-1]].y+K[Te[Te.length-1]].height-(n.y+n.height):0;if(Pe>0){var Fe,Ie=_createForOfIteratorHelper(Te);try{for(Ie.s();!(Fe=Ie.n()).done;){var Ne=Fe.value;K[Ne].y=Math.max(n.y,K[Ne].y-Pe)}}catch(e){Ie.e(e)}finally{Ie.f()}}}}catch(e){Ce.e(e)}finally{Ce.f()}var De,Oe=new Array(l).fill(0),Re=new Array(l).fill(0),He=[],ze=_createForOfIteratorHelper(m.slice().sort(function(e,t){return e.source-t.source||e.target-t.target}));try{for(ze.s();!(De=ze.n()).done;){var Ee=De.value,Le=K[Ee.source],Ve=K[Ee.target],Be=Le.value>0?Le.height/Le.value:0,je=Ve.value>0?Ve.height/Ve.value:0,We=Math.max(1,Ee.value*Math.min(Be,je)),Xe=Le.y+Oe[Ee.source],Ge=Ve.y+Re[Ee.target];Oe[Ee.source]+=We,Re[Ee.target]+=We,He.push({id:Ee.id,source:Ee.source,target:Ee.target,value:Ee.value,width:We,sy:Xe,ty:Ge,color:Ee.color||Le.color})}}catch(e){ze.e(e)}finally{ze.f()}return{nodes:K,links:He}}function sampleLinkPath(e,t,r){for(var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:16,s=[],l=e.sy+e.width/2-n,h=e.ty+e.width/2-n,u=t+.5*(r-t),c=r-.5*(r-t),p=0;p<=a;p++){var v=p/a,m=1-v,g=m*m*m*t+3*m*m*v*u+3*m*v*v*c+v*v*v*r,b=m*m*m*l+3*m*m*v*l+3*m*v*v*h+v*v*v*h;s.push([g,b])}return s}_defineProperty(oe,"MAX_DIRECT_CELLS",2e4),_defineProperty(oe,"MAX_BLOCKS",2e4);var se=function(){function SankeySeries(){var e;_classCallCheck(this,SankeySeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,SankeySeries,[].concat(r)),"seriesType","sankey"),_defineProperty(e,"sankey",null),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"sankeyCacheKey",""),e}return _inherits(SankeySeries,J),_createClass(SankeySeries,[{key:"setCoord",value:function setCoord(e){return this.sankey=e||null,this.sankeyCacheKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 24}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.sankey;if(e){var t=e.layout,r=t.nodes,n=t.links,a=r.length+n.length,s=[e.plot.x,e.plot.y],l=s[0],h=s[1],u=this.buildSeriesKey([a,l,h,e.plot.width,e.plot.height,r.length,n.length]);if(u!==this.sankeyCacheKey||this.pixels.length!==2*a){this.sankeyCacheKey=u,this.pixels=new Float64Array(2*a);var c,p=_createForOfIteratorHelper(r);try{for(p.s();!(c=p.n()).done;){var v=c.value;this.pixels[2*v.id]=v.x-l+v.width/2,this.pixels[2*v.id+1]=v.y-h+v.height/2}}catch(e){p.e(e)}finally{p.f()}var m,g=_createForOfIteratorHelper(n);try{for(g.s();!(m=g.n()).done;){var b=m.value,k=r[b.source],S=r[b.target];if(k&&S){var A=r.length+b.id;this.pixels[2*A]=(k.x+k.width+S.x)/2-l,this.pixels[2*A+1]=(b.sy+b.ty)/2+b.width/2-h}}}catch(e){g.e(e)}finally{g.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"doRender",value:function doRender(){var e=this.sankey;if(e){var t=e.layout,r=t.nodes,n=t.links,a=this.ctx,s=e.plot,l=this.unit();this.beginDraw();var h=e.options.flow;h?this.keepAnimating():this.stopAnimating();var u=Number(e.options.linkOpacity);a.globalAlpha=isFinite(u)?Math.max(0,Math.min(1,u)):.42;var c,p=_createForOfIteratorHelper(n);try{for(p.s();!(c=p.n()).done;){var v=c.value,m=r[v.source],g=r[v.target];if(m&&g){var b=m.x-s.x+m.width,k=g.x-s.x,S=v.sy-s.y,A=v.ty-s.y,w=b+.5*(k-b),_=k-.5*(k-b);if(a.beginPath(),a.moveTo(b,S),a.bezierCurveTo(w,S,_,A,k,A),a.lineTo(k,A+v.width),a.bezierCurveTo(_,A+v.width,w,S+v.width,b,S+v.width),a.closePath(),a.fillStyle=v.color,a.fill(),h){var M=Number(e.options.flowSpeed)||40;if(a.save(),a.globalAlpha=.9,a.beginPath(),a.moveTo(b,(S+A)/2),a.bezierCurveTo(w,(S+A)/2,_,(S+A)/2,k,(S+A)/2),a.strokeStyle="#ffffff",a.lineWidth=Math.max(l,Math.min(5*l,.28*v.width)),"function"==typeof a.setLineDash){var C=[6*l,10*l];a.setLineDash(C),"number"==typeof a.lineDashOffset&&(a.lineDashOffset=-Date.now()/1e3*M%(C[0]+C[1]))}a.stroke(),"function"==typeof a.setLineDash&&a.setLineDash([]),a.restore()}}}}catch(e){p.e(e)}finally{p.f()}a.globalAlpha=1;var T,P=_createForOfIteratorHelper(r);try{for(P.s();!(T=P.n()).done;){var I=T.value;a.beginPath();var N=I.x-s.x,D=I.y-s.y,O=Math.min(3,I.width/2);a.moveTo(N+O,D),a.lineTo(N+I.width-O,D),a.arcTo(N+I.width,D,N+I.width,D+O,O),a.lineTo(N+I.width,D+I.height-O),a.arcTo(N+I.width,D+I.height,N+I.width-O,D+I.height,O),a.lineTo(N+O,D+I.height),a.arcTo(N,D+I.height,N,D+I.height-O,O),a.lineTo(N,D+O),a.arcTo(N,D,N+O,D,O),a.closePath(),a.fillStyle=I.color,a.fill(),a.strokeStyle="rgba(255,255,255,0.75)",a.lineWidth=l,a.stroke()}}catch(e){P.e(e)}finally{P.f()}if(!e.options.label||!1!==e.options.label.show){var R=this.chartTheme;if(R){this.setFont(R.fontSize,R.fontFamily),a.fillStyle=R.textColor,a.textBaseline="middle";var H,z=Math.max.apply(Math,_toConsumableArray(r.map(function(e){return e.depth})).concat([0])),E=_createForOfIteratorHelper(r);try{for(E.s();!(H=E.n()).done;){var L=H.value,V=L.x-s.x,B=L.y-s.y+L.height/2;L.depth>=z?(a.textAlign="right",this.fillLabelWithHalo(L.name,V-6*l,B)):(a.textAlign="left",this.fillLabelWithHalo(L.name,V+L.width+6*l,B))}}catch(e){E.e(e)}finally{E.f()}}}this.endDraw()}}},{key:"fillLabelWithHalo",value:function fillLabelWithHalo(e,t,r){var n=this.ctx,a=this.chartTheme;n.lineWidth=3*this.unit(),n.strokeStyle=a&&a.labelHaloColor||"rgba(255,255,255,0.85)",n.lineJoin="round",n.strokeText(e,t,r),n.fillStyle=a&&a.textColor||"#212529",n.fillText(e,t,r)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.sankey;if(!r)return-1;var n,a=r.layout,s=a.nodes,l=a.links,h=r.plot,u=_createForOfIteratorHelper(s);try{for(u.s();!(n=u.n()).done;){var c=n.value,p=c.x-h.x,v=c.y-h.y;if(e>=p-2&&e<=p+c.width+2&&t>=v-2&&t<=v+c.height+2)return c.id}}catch(e){u.e(e)}finally{u.f()}var m,g=_createForOfIteratorHelper(l);try{for(g.s();!(m=g.n()).done;){var b=m.value,k=s[b.source],S=s[b.target];if(k&&S)for(var A=sampleLinkPath(b,k.x-h.x+k.width,S.x-h.x,h.y,12),w=1;w<A.length;w++){if(distanceToSegment(e,t,A[w-1][0],A[w-1][1],A[w][0],A[w][1])<=6)return s.length+b.id}}}catch(e){g.e(e)}finally{g.f()}return-1}}])}(),le=function(){function FunnelSeries(){var e;_classCallCheck(this,FunnelSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,FunnelSeries,[].concat(r)),"seriesType","funnel"),_defineProperty(e,"funnel",null),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"stageGeom",[]),_defineProperty(e,"stageRects",[]),_defineProperty(e,"funnelKey",""),_defineProperty(e,"stageFrom",null),e}return _inherits(FunnelSeries,J),_createClass(FunnelSeries,[{key:"setHiddenSlices",value:function setHiddenSlices(e){return e.join(",")!==this.hiddenSlices.join(",")&&this.stageGeom.length&&(this.stageFrom=this.stageGeom.map(function(e){return e?_objectSpread2({},e):null})),_superPropGet(FunnelSeries,"setHiddenSlices",this,3)([e]),this.funnelKey="",this}},{key:"setCoord",value:function setCoord(e){return this.funnel=e||null,this.funnelKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 12}},{key:"highlightRectAt",value:function highlightRectAt(e){return this.rebuildPixels(),this.stageRects[e]||null}},{key:"widthAt",value:function widthAt(e,t){var r=e.y1-e.y0||1,n=Math.max(0,Math.min(1,(t-e.y0)/r));return e.topWidth+(e.bottomWidth-e.topWidth)*n}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.funnel,t=this.series,r=t.pointCount;if(!e||!r)return this.pixels=new Float64Array(0),this.stageGeom=[],void(this.stageRects=[]);var n=e.options||{},a=this.buildSeriesKey([r,e.plot.width,e.plot.height,n.sort,n.minSize,n.trapezoid,this.hiddenSlices.join(",")]);if(a!==this.funnelKey||this.pixels.length!==2*r){this.funnelKey=a,this.pixels.length!==2*r&&(this.pixels=new Float64Array(2*r)),this.stageGeom=new Array(r).fill(null),this.stageRects=new Array(r).fill(null);for(var s=[],l=0;l<r;l++)this.hiddenSlices.indexOf(l)>=0||null!==t.pointAt(l).y&&s.push(l);var h=n.sort||"descending";if("none"!==h&&s.sort(function(e,r){return"ascending"===h?(t.pointAt(e).y||0)-(t.pointAt(r).y||0):(t.pointAt(r).y||0)-(t.pointAt(e).y||0)}),s.length){for(var u=Math.max(0,Number(n.gap)||2),c=Math.max(4,(e.plot.height-u*(s.length-1))/s.length),p=Math.max.apply(Math,_toConsumableArray(s.map(function(e){return t.pointAt(e).y||0})).concat([0])),v=Math.max(0,Math.min(1,void 0===n.minSize?.12:Number(n.minSize))),m=e.plot.width,g=e.plot.width/2,b=this.isEntering()?Math.max(0,Math.min(1,this.progress())):1,k=.72*m,S=s.map(function(e){var r=t.pointAt(e).y||0,n=p>0?r/p:1,a=Math.max(m*v,m*Math.max(0,Math.min(1,n)));return k+(a-k)*b}),A=!1!==n.trapezoid,w=0;w<s.length;w++){var _=s[w],M=w*(c+u),C=M+c,T=S[w],P=A&&w+1<S.length?S[w+1]:S[w],I={y0:M,y1:C,topWidth:T,bottomWidth:P,cx:g};this.stageGeom[_]=I;var N=Math.max(T,P)/2;this.stageRects[_]={x:g-N,y:M,width:2*N,height:C-M},this.pixels[2*_]=g,this.pixels[2*_+1]=(M+C)/2}this.blendStageMorph(),this.xMonotonic=!1,this.renderIndices=null}}}},{key:"blendStageMorph",value:function blendStageMorph(){var e=this.stageFrom;if(e&&!this.isEntering()){var t=Math.max(0,Math.min(1,this.progress()));if(t>=1)this.stageFrom=null;else for(var r=0;r<this.stageGeom.length;r++){var n=this.stageGeom[r],a=e[r];if(n&&a){var s=function lerp(e,r){return e+(r-e)*t};n.y0=s(a.y0,n.y0),n.y1=s(a.y1,n.y1),n.topWidth=s(a.topWidth,n.topWidth),n.bottomWidth=s(a.bottomWidth,n.bottomWidth);var l=Math.max(n.topWidth,n.bottomWidth)/2;this.stageRects[r]={x:n.cx-l,y:n.y0,width:2*l,height:n.y1-n.y0},this.pixels[2*r]=n.cx,this.pixels[2*r+1]=(n.y0+n.y1)/2}}}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();for(var r=0;r<this.stageGeom.length;r++){var n=this.stageGeom[r];if(n&&!(t<n.y0-1||t>n.y1+1)){var a=this.widthAt(n,t)/2*this.hoverBoost(r,.06)+1;if(Math.abs(e-n.cx)<=a)return r}}return-1}},{key:"doRender",value:function doRender(){var e=this.funnel;if(e&&this.chartTheme){this.rebuildPixels();for(var t=this.ctx,r=this.unit(),n=this.chartTheme,a=(e.options||{}).labelPosition||"inside",s=0,l=0;l<this.stageGeom.length;l++)this.stageGeom[l]&&s++;for(var h=0,u=0;u<this.series.pointCount;u++)this.stageGeom[u]&&(h+=this.series.pointAt(u).y||0);this.beginDraw();for(var c=0;c<this.stageGeom.length;c++){var p=this.stageGeom[c];if(p){var v=this.series.pointAt(c).color||this.series.color,m=this.hoverBoost(c,.06),g=p.topWidth*m,b=p.bottomWidth*m;t.beginPath(),t.moveTo(p.cx-g/2,p.y0),t.lineTo(p.cx+g/2,p.y0),t.lineTo(p.cx+b/2,p.y1),t.lineTo(p.cx-b/2,p.y1),t.closePath();var k=t.createLinearGradient(0,p.y0,0,p.y1);k.addColorStop(0,hexToRgba(v,.95)),k.addColorStop(1,hexToRgba(v,.75)),t.fillStyle=k,t.fill(),t.strokeStyle="rgba(255,255,255,0.7)",t.lineWidth=r,t.stroke()}}this.setFont(n.fontSize,n.fontFamily),t.textBaseline="middle";for(var S=0;S<this.stageGeom.length;S++){var A=this.stageGeom[S];if(A){var w=this.series.pointAt(S),_=w.y||0,M=h>0?_/h*100:0,C="".concat(w.name||w.xValue," ").concat(_).concat(s>1?" ".concat(M.toFixed(1),"%"):""),T=(A.y0+A.y1)/2,P=this.widthAt(A,T);if("right"!==a)measureTextWidth(t,C,n.fontSize,n.fontFamily)+12>P?(t.textAlign="left",t.fillStyle=n.textColor,t.fillText(C,A.cx+Math.max(A.topWidth,A.bottomWidth)/2+8*r,T)):(t.textAlign="center",t.fillStyle="#ffffff",t.fillText(C,A.cx,T));else t.textAlign="left",t.fillStyle=n.textColor,t.fillText(C,A.cx+Math.max(A.topWidth,A.bottomWidth)/2+8*r,T)}}this.endDraw()}}}])}(),he=2*Math.PI,ue=Math.PI/180,ce=function(){function GaugeSeries(){var e;_classCallCheck(this,GaugeSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,GaugeSeries,[].concat(r)),"seriesType","gauge"),_defineProperty(e,"gauge",null),_defineProperty(e,"gaugeKey",""),_defineProperty(e,"fromValue",null),e}return _inherits(GaugeSeries,J),_createClass(GaugeSeries,[{key:"setCoord",value:function setCoord(e){return this.gauge=e||null,this.gaugeKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 8}},{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return t&&this.gauge&&(this.fromValue=this.renderedValue()),_superPropGet(GaugeSeries,"updateSeries",this,3)([e,t,r])}},{key:"renderedValue",value:function renderedValue(){var e=this.range().min,t=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,r=Math.max(0,Math.min(1,this.progress())),n=null===this.fromValue?e:this.fromValue;return n+(t-n)*r}},{key:"angles",value:function angles(){for(var e=this.gauge&&this.gauge.options||{},t=void 0===e.startAngle?225:Number(e.startAngle),r=void 0===e.endAngle?-45:Number(e.endAngle),n=-t*ue,a=-r*ue;a<=n;)a+=he;return{a0:n,a1:a,sweep:a-n}}},{key:"range",value:function range(){var e=this.gauge&&this.gauge.options||{},t=isFinite(Number(e.min))?Number(e.min):0,r=isFinite(Number(e.max))?Number(e.max):100;return{min:t,max:r>t?r:t+1}}},{key:"angleFor",value:function angleFor(e){var t=this.angles(),r=t.a0,n=t.sweep,a=this.range(),s=a.min,l=a.max;return r+Math.max(0,Math.min(1,(e-s)/(l-s)))*n}},{key:"localCenter",value:function localCenter(){var e=this.gauge;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.gauge;if(e){var t=e.options||{},r=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,n=this.buildSeriesKey([e.polar.radius,t.startAngle,t.endAngle,t.min,t.max,r]);if(n!==this.gaugeKey||2!==this.pixels.length){this.gaugeKey=n,2!==this.pixels.length&&(this.pixels=new Float64Array(2));var a=_slicedToArray(this.localCenter(),2),s=a[0],l=a[1],h=Number(t.pointer&&t.pointer.length||.72)*e.polar.radius,u=this.angleFor(r);this.pixels[0]=s+Math.cos(u)*h,this.pixels[1]=l+Math.sin(u)*h,this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.gauge;if(!r||!this.series.pointCount)return-1;var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];return Math.hypot(e-a,t-s)<=r.polar.radius+12?0:-1}},{key:"doRender",value:function doRender(){var e=this.gauge;if(e&&this.chartTheme){this.rebuildPixels();var t=this.ctx,r=this.chartTheme,n=e.options||{},a=this.unit(),s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=this.angles(),p=c.a0,v=c.sweep,m=this.range(),g=m.min,b=m.max,k=Math.max(2,Number(n.lineWidth)||14),S=this.renderedValue();this.beginDraw();for(var A=n.axisLineColor&&n.axisLineColor.length?n.axisLineColor:[[1,r.colorPalette[0]]],w=0,_=0;_<A.length;_++){var M=_slicedToArray(A[_],2),C=M[0],T=M[1],P=w,I=Math.max(w,Math.min(1,Number(C)));w=I,I<=P||(t.beginPath(),t.arc(l,h,u,p+P*v,p+I*v),t.strokeStyle=T,t.lineWidth=k,t.lineCap="butt",t.stroke())}var N=Math.max(1,Number(n.splitNumber)||5);this.setFont(.85*r.fontSize,r.fontFamily),t.fillStyle=r.subTextColor,t.textBaseline="middle",t.textAlign="center";for(var D=0;D<=N;D++){var O=D/N,R=p+O*v,H=u-k-2*a,z=u-k-8*a;t.beginPath(),t.moveTo(l+Math.cos(R)*H,h+Math.sin(R)*H),t.lineTo(l+Math.cos(R)*z,h+Math.sin(R)*z),t.strokeStyle=r.axisLineColor,t.lineWidth=a,t.stroke();var E=u-k-20*a;t.fillText(String(Math.round(g+O*(b-g))),l+Math.cos(R)*E,h+Math.sin(R)*E)}var L=n.pointer||{};if(!1!==L.show){var V=Math.max(.1,Number(L.length)||.72)*u,B=Math.max(1,Number(L.width)||5)*a,j=this.angleFor(S),W=l+Math.cos(j)*V,X=h+Math.sin(j)*V,G=l+Math.cos(j+Math.PI/2)*B,U=h+Math.sin(j+Math.PI/2)*B,K=l+Math.cos(j-Math.PI/2)*B,Y=h+Math.sin(j-Math.PI/2)*B;t.beginPath(),t.moveTo(W,X),t.lineTo(G,U),t.lineTo(K,Y),t.closePath(),t.fillStyle=r.textColor,t.fill(),t.beginPath(),t.arc(l,h,1.6*B,0,he),t.fillStyle=r.textColor,t.fill(),t.beginPath(),t.arc(l,h,.7*B,0,he),t.fillStyle="#ffffff",t.fill()}var q=n.detail||{},$=q.formatter?String(q.formatter(S)):"".concat(Math.round(100*S)/100),Z=Math.max(0,360-this.angles().sweep/ue)>20;if(!1!==q.show){var J=Number(q.fontSize)||Math.max(16,Math.round(.26*u));this.setFont(J,r.fontFamily,"bold"),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.textColor,t.fillText($,l,h+u*(Z?.78:.42))}var Q=n.title||{},ee=this.series.pointAt(0),te=ee&&(ee.name||void 0!==ee.xValue)?ee.name||String(ee.xValue):"";if(!1!==Q.show&&te){var ie=Number(Q.fontSize)||r.fontSize;this.setFont(ie,r.fontFamily),measureTextWidth(t,te,ie,r.fontFamily),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.subTextColor,t.fillText(te,l,h+u*(Z?.6:.68))}this.endDraw()}}}])}(),de=function(){function BoxplotSeries(){var e;_classCallCheck(this,BoxplotSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,BoxplotSeries,[].concat(r)),"seriesType","boxplot"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"boxCacheKey",""),e}return _inherits(BoxplotSeries,J),_createClass(BoxplotSeries,[{key:"boxWidthAt",value:function boxWidthAt(e){var t=Number(this.series.option.barWidth);return!isFinite(t)||t<=0?Math.max(4,.5*e):t<=1?Math.max(4,e*t):Math.max(4,t*this.unit())}},{key:"boxRectAt",value:function boxRectAt(e){var t=this.coord,r=this.series.pointAt(e);if(!t||!r||!r.boxplot)return null;var n=t.xScale.map(r.xValue);if(!isFinite(n))return null;var a=t.xScale.bandwidth()||.5*t.xScale.step(),s=this.boxWidthAt(a),l=_slicedToArray(r.boxplot,4),h=l[1],u=l[3],c=_slicedToArray(r.boxplot,5),p=c[0],v=c[4],m=t.yScale.map(h),g=t.yScale.map(u),b=t.yScale.map(p),k=t.yScale.map(v);return isFinite(m)&&isFinite(g)&&isFinite(b)&&isFinite(k)?{x:n-s/2,y:Math.min(m,g),width:s,height:Math.max(Math.abs(g-m),this.unit())}:null}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,String(e.xScale.domain.join(","))]);if(r!==this.boxCacheKey||this.pixels.length!==2*t){this.boxCacheKey=r,this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.boxRectAt(n),s=this.series.pointAt(n);a&&s&&s.boxplot?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=e.yScale.map(s.boxplot[2])):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.coord;if(!r)return-1;for(var n=0;n<this.series.pointCount;n++){var a=this.series.pointAt(n),s=this.boxRectAt(n);if(a&&a.boxplot&&s){var l=s.x+s.width/2;if(!(Math.abs(e-l)>s.width/2+1)){var h=r.yScale.map(a.boxplot[0]),u=r.yScale.map(a.boxplot[4]),c=Math.min(h,u),p=Math.max(h,u);if(t>=c-2&&t<=p+2)return n}}}return-1}},{key:"doRender",value:function doRender(){var e=this,t=this.coord;if(t&&this.chartTheme){this.rebuildPixels();var r=this.ctx;this.chartTheme;var n=this.unit(),a=this.pointColor(0),s=this.isEntering();this.computeItemProgress(),this.beginDraw();for(var l=function _loop(){var l=e.series.pointAt(h),u=e.boxRectAt(h);if(!l||!l.boxplot||!u)return 0;var c=_slicedToArray(l.boxplot,5),p=c[0],v=c[1],m=c[2],g=c[3],b=c[4],k=u.x+u.width/2,S=t.yScale.map(m),A=s?e.itemProgress[h]:1;if(A<=0)return 0;var w=function lerp(e){return S+(e-S)*A},_=w(t.yScale.map(p)),M=w(t.yScale.map(b)),C=w(t.yScale.map(g)),T=w(t.yScale.map(v)),P={x:u.x,y:Math.min(C,T),width:u.width,height:Math.max(Math.abs(T-C),e.unit())};r.beginPath(),r.moveTo(k,M),r.lineTo(k,P.y),r.moveTo(k,P.y+P.height),r.lineTo(k,_),r.strokeStyle=a,r.lineWidth=n,r.stroke(),r.beginPath(),r.moveTo(k-u.width/4,M),r.lineTo(k+u.width/4,M),r.moveTo(k-u.width/4,_),r.lineTo(k+u.width/4,_),r.stroke(),r.beginPath(),r.rect(P.x,P.y,P.width,P.height),r.fillStyle=function hexWithAlpha(e,t){if(!e)return"rgba(0,0,0,".concat(t,")");var r=e.replace("#","");3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]);if(6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}(a,.28),r.fill(),r.strokeStyle=a,r.lineWidth=n,r.stroke(),r.beginPath(),r.moveTo(P.x,S),r.lineTo(P.x+P.width,S),r.lineWidth=Math.max(n,2*n),r.stroke(),e.drawHoverOverlay(h,P,{radius:1})},h=0;h<this.series.pointCount;h++)l();this.endDraw()}}}])}();var fe=function(){function WaterfallSeries(){var e;_classCallCheck(this,WaterfallSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,WaterfallSeries,[].concat(r)),"seriesType","waterfall"),e}return _inherits(WaterfallSeries,ee),_createClass(WaterfallSeries,[{key:"isTotalItem",value:function isTotalItem(e){var t=this.series.pointAt(e),r=t&&t.raw;return!(!r||"object"!==_typeof(r)||Array.isArray(r)||!r.total)}},{key:"isIncrease",value:function isIncrease(e){var t=this.series.pointAt(e);return!t||(t.y||0)>=0}},{key:"barColorAt",value:function barColorAt(e){var r=waterfallOptionOf(this.series),n=this.chartTheme,a=n&&n.colorPalette||t;return this.isTotalItem(e)?r.totalColor||a[0]:this.isIncrease(e)?r.increaseColor||a[1]:r.decreaseColor||a[2]}},{key:"doRender",value:function doRender(){if(_superPropGet(WaterfallSeries,"doRender",this,3)([]),!1!==waterfallOptionOf(this.series).connector){var e=this.coord;if(e){var t=this.ctx,r=this.unit(),n=this.chartTheme,a=e.yScale.isBand&&e.yScale.isBand();t.save(),t.strokeStyle=n&&n.subTextColor||"#6C757D",t.lineWidth=r,"function"==typeof t.setLineDash&&t.setLineDash([4*r,3*r]),t.beginPath();for(var s=0;s<this.series.pointCount-1;s++){var l=this.barRectAt(s),h=this.barRectAt(s+1);if(l&&h)if(a){var u=Math.max(l.x+l.width,h.x+h.width),c=l.y+l.height/2,p=h.y+h.height/2;t.moveTo(u,c),t.lineTo(u,p)}else{var v=Math.min(l.y,h.y),m=l.x+l.width/2,g=h.x+h.width/2;t.moveTo(m,v),t.lineTo(g,v)}}t.stroke(),"function"==typeof t.setLineDash&&t.setLineDash([]),t.restore()}}}}])}();function waterfallOptionOf(e){return e&&e.waterfallOption?e.waterfallOption:e&&e.option&&e.option.waterfall||{}}var pe=function(){function TreemapSeries(){var e;_classCallCheck(this,TreemapSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,TreemapSeries,[].concat(r)),"seriesType","treemap"),_defineProperty(e,"treemap",null),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"treemapKey",""),_defineProperty(e,"morphFrom",{}),_defineProperty(e,"morphing",!1),_defineProperty(e,"rectCache",new Map),e}return _inherits(TreemapSeries,J),_createClass(TreemapSeries,[{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(t&&this.treemap){var n,a={},s=_createForOfIteratorHelper(this.treemap.layout);try{for(s.s();!(n=s.n()).done;){var l=n.value;a["".concat(l.depth,":").concat(l.name)]=_objectSpread2({},l.rect)}}catch(e){s.e(e)}finally{s.f()}this.morphFrom=a,this.morphing=!0}return _superPropGet(TreemapSeries,"updateSeries",this,3)([e,t,r])}},{key:"rectOf",value:function rectOf(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.rectCache,r=this.progress();if(!this.morphing)return e.rect;if(r>=1)return this.morphing=!1,e.rect;var n=t.get(e.id);if(n)return n;var a,s=this.treemap?this.treemap.layout:[],l=this.morphFrom["".concat(e.depth,":").concat(e.name)],h=e.parent>=0?s[e.parent]:null,u=h?this.morphFrom["".concat(h.depth,":").concat(h.name)]:null;if(h&&l&&u&&u.width>1&&u.height>1){var c=this.rectOf(h,t),p=(l.x-u.x)/u.width,v=(l.y-u.y)/u.height,m=l.width/u.width,g=l.height/u.height;a={x:c.x+p*c.width,y:c.y+v*c.height,width:m*c.width,height:g*c.height}}else a=l?{x:l.x+(e.rect.x-l.x)*r,y:l.y+(e.rect.y-l.y)*r,width:l.width+(e.rect.width-l.width)*r,height:l.height+(e.rect.height-l.height)*r}:e.rect;return t.set(e.id,a),a}},{key:"setCoord",value:function setCoord(e){return this.treemap=e||null,this.treemapKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 6}},{key:"highlightRectAt",value:function highlightRectAt(e){var t=this.treemap;if(!t)return null;var r=t.layout[e];if(!r)return null;var n=this.rectOf(r);return{x:n.x-t.plot.x,y:n.y-t.plot.y,width:n.width,height:n.height}}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.treemap,t=e&&e.layout||[];if(e&&t.length){var r=this.buildSeriesKey([t.length,e.plot.width,e.plot.height]);if(r!==this.treemapKey||this.pixels.length!==2*t.length){this.treemapKey=r,this.pixels=new Float64Array(2*t.length);var n,a=_createForOfIteratorHelper(t);try{for(a.s();!(n=a.n()).done;){var s=n.value,l=this.rectOf(s);this.pixels[2*s.id]=l.x-e.plot.x+l.width/2,this.pixels[2*s.id+1]=l.y-e.plot.y+l.height/2}}catch(e){a.e(e)}finally{a.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.treemap;if(!r)return-1;var n,a=-1,s=-1,l=_createForOfIteratorHelper(r.layout);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=this.rectOf(h),c=u.x-r.plot.x,p=u.y-r.plot.y;e<c||e>c+u.width||t<p||t>p+u.height||h.depth>s&&(s=h.depth,a=h.id)}}catch(e){l.e(e)}finally{l.f()}return a}},{key:"doRender",value:function doRender(){var e=this,t=this.treemap;if(t&&this.chartTheme){this.rebuildPixels();var r=this.ctx,n=this.chartTheme,a=this.unit(),s=t.plot,l=t.options||{},h=void 0===l.minLabelRatio?.02:Number(l.minLabelRatio);this.rectCache=new Map,this.beginDraw();var u,c=_createForOfIteratorHelper(t.layout);try{for(c.s();!(u=c.n()).done;){var p=u.value,v=this.rectOf(p),m=v.x-s.x,g=v.y-s.y;r.beginPath(),r.rect(m,g,v.width,v.height),r.fillStyle=p.color,r.fill(),0===p.depth&&(r.strokeStyle="rgba(255,255,255,0.9)",r.lineWidth=1.5*a,r.stroke())}}catch(e){c.e(e)}finally{c.f()}if(null!==this.hoverIndex){var b=t.layout[this.hoverIndex];if(b){var k=this.rectOf(b),S={x:k.x-s.x,y:k.y-s.y,width:k.width,height:b.hasChildren&&b.header>0?b.header:k.height};this.drawHoverOverlay(this.hoverIndex,S,{radius:0,fill:"rgba(255,255,255,0.18)"})}}var A=function fitFontSize(e,t){for(var a=n.fontSize;a>9&&!e.every(function(e){return measureTextWidth(r,e,a,n.fontFamily)<=t});)a-=1;return a};this.setFont(n.fontSize,n.fontFamily),r.textAlign="center",r.textBaseline="middle";var w,_=_createForOfIteratorHelper(t.layout);try{var M=function _loop(){var t=w.value;if(t.ratio<h)return 0;var l=e.rectOf(t),u="".concat((100*t.ratio).toFixed(1),"%");if(t.hasChildren&&t.header>0){r.textAlign="left",r.fillStyle=0===t.depth?"#ffffff":n.textColor;var c="".concat(t.name," ").concat(u),p=A([c],l.width-16*a);return(p>9||measureTextWidth(r,c,p,n.fontFamily)<=l.width-16*a)&&(e.setFont(p,n.fontFamily,"bold"),r.fillText(c,l.x-s.x+8*a,l.y-s.y+t.header/2)),0}if(l.width<44||l.height<26)return 0;var v=(l.height>=40?"".concat(t.name,"\n").concat(u):"".concat(t.name," ").concat(u)).split("\n"),m=A(v,l.width-8*a);if(Math.max.apply(Math,_toConsumableArray(v.map(function(e){return measureTextWidth(r,e,m,n.fontFamily)})))>l.width-8*a)return 0;e.setFont(m,n.fontFamily),r.textAlign="center";var g=0===t.depth?"#ffffff":n.textColor;r.fillStyle=g;for(var b=1.35*m,k=l.y-s.y+l.height/2-(v.length-1)*b/2,S=0;S<v.length;S++)r.fillText(v[S],l.x-s.x+l.width/2,k+S*b)};for(_.s();!(w=_.n()).done;)M()}catch(e){_.e(e)}finally{_.f()}this.endDraw()}}}])}();function forceLayout(e,r,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{nodes:[],links:[]},s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:t,l=e.length;if(!l)return{nodes:[],links:[]};var h,u=a.layout||"force",c=_slicedToArray(Array.isArray(a.symbolSizeRange)?a.symbolSizeRange:[12,48],2),p=c[0],v=c[1],m=function indexOf(t){if("number"==typeof t)return t>=0&&t<l?t:-1;for(var r=0;r<l;r++){var n=e[r];if(n.id===t||n.name===t)return r}return-1},g=r.map(function(e,t){return{id:t,source:m(e.source),target:m(e.target),value:Number(e.value)||1,color:e.color}}).filter(function(e){return e.source>=0&&e.target>=0&&e.source!==e.target}),b=n.x+n.width/2,k=n.y+n.height/2,S=Math.max(10,Math.min(n.width,n.height)/2-v/2-4),A=e.map(function(e,t){if(isFinite(Number(e.x))&&isFinite(Number(e.y)))return{x:clamp(Number(e.x),n.x+2,n.x+n.width-2),y:clamp(Number(e.y),n.y+2,n.y+n.height-2)};var r=t/l*Math.PI*2-Math.PI/2;return{x:b+Math.cos(r)*S*.8,y:k+Math.sin(r)*S*.8}}),w=A.map(function(){return{x:0,y:0}}),_=A.map(function(e){return{x:e.x,y:e.y}}),M=new Array(l).fill(0),C=new Array(l).fill(0),T=_createForOfIteratorHelper(g);try{for(T.s();!(h=T.n()).done;){var P=h.value;M[P.source]++,M[P.target]++,C[P.source]+=P.value,C[P.target]+=P.value}}catch(e){T.e(e)}finally{T.f()}var I=Math.max.apply(Math,[1].concat(_toConsumableArray(C))),N=function sizeOf(t){var r=Number(e[t].value);if(!isFinite(r)||r<=0)return p;var n=Math.sqrt(Math.max(0,Math.min(1,C[t]/I)));return p+(v-p)*n};if("force"===u)for(var D=numberOr(a.repulsion,6e3),O=numberOr(a.edgeLength,70),R=numberOr(a.gravity,.06),H=Math.max(.1,Math.min(.98,numberOr(a.damping,.85))),z=Math.max(1,Math.floor(numberOr(a.iterations,240))),E=Math.max(8,(p+v)/6),L=0;L<z;L++){for(var V=1-L/z,B=0;B<l;B++)if(!e[B].fixed)for(var j=B+1;j<l;j++){var W=A[j].x-A[B].x,X=A[j].y-A[B].y,G=Math.hypot(W,X);G<E&&(W=W||(B%2==0?.5:-.5),X=X||(j%2==0?.5:-.5),G=Math.hypot(W,X));var U=D/(G*G)*V,K=W/G*U,Y=X/G*U;w[B].x-=K,w[B].y-=Y,e[j].fixed||(w[j].x+=K,w[j].y+=Y)}var q,$=_createForOfIteratorHelper(g);try{for($.s();!(q=$.n()).done;){var Z=q.value,J=A[Z.source],Q=A[Z.target],ee=Q.x-J.x,te=Q.y-J.y,ie=Math.max(.01,Math.hypot(ee,te)),re=.06*(ie-(O+(Z.value>1?Math.min(40,Z.value):0)))*V,ne=ee/ie*re,ae=te/ie*re;e[Z.source].fixed||(w[Z.source].x+=ne,w[Z.source].y+=ae),e[Z.target].fixed||(w[Z.target].x-=ne,w[Z.target].y-=ae)}}catch(e){$.e(e)}finally{$.f()}for(var oe=0;oe<l;oe++)e[oe].fixed||(w[oe].x+=(b-A[oe].x)*R*V,w[oe].y+=(k-A[oe].y)*R*V,w[oe].x*=H,w[oe].y*=H,A[oe].x+=w[oe].x,A[oe].y+=w[oe].y)}if("force"===u&&l>1){for(var se=1/0,le=1/0,he=-1/0,ue=-1/0,ce=0;ce<l;ce++){var de=N(ce)/2;se=Math.min(se,A[ce].x-de),he=Math.max(he,A[ce].x+de),le=Math.min(le,A[ce].y-de),ue=Math.max(ue,A[ce].y+de)}var fe=Math.max(1,he-se),pe=Math.max(1,ue-le),ve=Math.min(3,Math.min((n.width-16)/fe,(n.height-16)/pe));if(isFinite(ve)&&ve>0)for(var ye=(se+he)/2,me=(le+ue)/2,xe=0;xe<l;xe++)A[xe].x=b+(A[xe].x-ye)*ve,A[xe].y=k+(A[xe].y-me)*ve}var ge=e.map(function(e,t){var r=N(t)/2,l=clamp(A[t].x,n.x+r,n.x+n.width-r),h=clamp(A[t].y,n.y+r,n.y+n.height-r);return{id:t,name:e.name,x:l,y:h,initialX:_[t].x,initialY:_[t].y,size:N(t),value:C[t],degree:M[t],color:e.color||colorOf(e,a,s,t),category:e.category,fixed:!!e.fixed}}),be=Math.max.apply(Math,[1].concat(_toConsumableArray(g.map(function(e){return e.value})))),ke=g.map(function(e){return{id:e.id,source:e.source,target:e.target,value:e.value,width:1+3*Math.sqrt(e.value/be),color:e.color||ge[e.source].color}});return{nodes:ge,links:ke}}function colorOf(e,t,r,n){if(void 0!==e.category&&Array.isArray(t.categories)){var a=t.categories.find(function(t){return t.name===e.category});if(a&&a.color)return a.color;var s=t.categories.findIndex(function(t){return t.name===e.category});if(s>=0)return r[s%r.length]}return r[n%r.length]}function numberOr(e,t){var r=Number(e);return isFinite(r)?r:t}function clamp(e,t,r){return e<t?t:e>r?r:e}function sampleGraphLink(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:14,a=t[e.source],s=t[e.target],l=[];if(!a||!s)return l;if(!r)return l.push([a.x,a.y],[s.x,s.y]),l;for(var h=(a.x+s.x)/2,u=(a.y+s.y)/2,c=s.x-a.x,p=s.y-a.y,v=Math.max(1,Math.hypot(c,p)),m=Math.min(30,.18*v),g=h-p/v*m,b=u+c/v*m,k=0;k<=n;k++){var S=k/n,A=1-S;l.push([A*A*a.x+2*A*S*g+S*S*s.x,A*A*a.y+2*A*S*b+S*S*s.y])}return l}var ve=function(){function GraphSeries(){var e;_classCallCheck(this,GraphSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,GraphSeries,[].concat(r)),"seriesType","graph"),_defineProperty(e,"graph",null),_defineProperty(e,"clipToBox",!1),_defineProperty(e,"graphKey",""),e}return _inherits(GraphSeries,J),_createClass(GraphSeries,[{key:"setCoord",value:function setCoord(e){return this.graph=e||null,this.graphKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 28}},{key:"nodeCount",get:function get(){return this.graph&&this.graph.layout.nodes.length||0}},{key:"moveNode",value:function moveNode(e,t,r){var n=this.graph;if(!n)return!1;var a=n.layout.nodes[e];if(!a)return!1;var s=n.plot,l=a.size/2;return a.x=Math.max(s.x+l,Math.min(s.x+s.width-l,t+s.x)),a.y=Math.max(s.y+l,Math.min(s.y+s.height-l,r+s.y)),a.fixed=!0,this.graphKey="",this.markDirty(),!0}},{key:"settle",value:function settle(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:40,t=this.graph;if(t){var r=t.options||{},n=forceLayout(t.layout.nodes.map(function(e,t){return _objectSpread2(_objectSpread2({},r.nodes&&r.nodes[t]||{name:e.name}),{},{x:e.x,y:e.y,fixed:e.fixed})}),r.links||[],t.plot,_objectSpread2(_objectSpread2({},r),{},{layout:"force",iterations:e}),this.chartTheme?this.chartTheme.colorPalette:void 0);t.layout=n,this.graphKey="",this.markDirty()}}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.graph;if(e){var t=e.layout,r=t.nodes,n=t.links,a=r.length+n.length,s=this.buildSeriesKey([a,e.plot.width,e.plot.height,r.length,n.length]);if(s!==this.graphKey||this.pixels.length!==2*a){this.graphKey=s,this.pixels.length!==2*a&&(this.pixels=new Float64Array(2*a));var l,h=_createForOfIteratorHelper(r);try{for(h.s();!(l=h.n()).done;){var u=l.value;this.pixels[2*u.id]=u.x-e.plot.x,this.pixels[2*u.id+1]=u.y-e.plot.y}}catch(e){h.e(e)}finally{h.f()}var c,p=_createForOfIteratorHelper(n);try{for(p.s();!(c=p.n()).done;){var v=c.value,m=sampleGraphLink(v,r,!1!==e.options.curve,4),g=m[Math.floor(m.length/2)]||[0,0],b=r.length+v.id;this.pixels[2*b]=g[0]-e.plot.x,this.pixels[2*b+1]=g[1]-e.plot.y}}catch(e){p.e(e)}finally{p.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.graph;if(!r)return-1;var n,a=r.layout,s=a.nodes,l=a.links,h=r.plot,u=_createForOfIteratorHelper(s);try{for(u.s();!(n=u.n()).done;){var c=n.value,p=e-(c.x-h.x),v=t-(c.y-h.y),m=c.size/2*this.hoverBoost(c.id,.28)+3;if(p*p+v*v<=m*m)return c.id}}catch(e){u.e(e)}finally{u.f()}var g,b=!1!==r.options.curve,k=_createForOfIteratorHelper(l);try{for(k.s();!(g=k.n()).done;)for(var S=g.value,A=sampleGraphLink(S,s,b,12),w=1;w<A.length;w++){if(distanceToSegment(e,t,A[w-1][0]-h.x,A[w-1][1]-h.y,A[w][0]-h.x,A[w][1]-h.y)<=6)return s.length+S.id}}catch(e){k.e(e)}finally{k.f()}return-1}},{key:"doRender",value:function doRender(){var e=this.graph;if(e&&this.chartTheme){this.rebuildPixels();var t=this.ctx,r=this.chartTheme,n=e.plot,a=this.unit(),s=e.layout,l=s.nodes,h=s.links,u=!1!==e.options.curve,c=this.isEntering(),p=c?Math.max(0,Math.min(1,this.progress())):1,v=function positionOf(e){return c?[e.initialX+(e.x-e.initialX)*p,e.initialY+(e.y-e.initialY)*p]:[e.x,e.y]},m=l.map(function(e){var t=_slicedToArray(v(e),2),r=t[0],n=t[1];return _objectSpread2(_objectSpread2({},e),{},{x:r,y:n})});this.beginDraw(),t.globalAlpha=.55;var g,b=_createForOfIteratorHelper(h);try{for(b.s();!(g=b.n()).done;){var k=g.value,S=sampleGraphLink(k,m,u,16);if(!(S.length<2)){t.beginPath(),t.moveTo(S[0][0]-n.x,S[0][1]-n.y);for(var A=1;A<S.length;A++)t.lineTo(S[A][0]-n.x,S[A][1]-n.y);t.strokeStyle=k.color,t.lineWidth=Math.max(a,k.width*a),t.stroke()}}}catch(e){b.e(e)}finally{b.f()}t.globalAlpha=1;var w,_=_createForOfIteratorHelper(l);try{for(_.s();!(w=_.n()).done;){var M=w.value,C=_slicedToArray(v(M),2),T=C[0],P=C[1],I=T-n.x,N=P-n.y,D=Math.max(2,M.size/2*this.hoverBoost(M.id,.28));t.beginPath(),t.arc(I,N,D,0,2*Math.PI),t.fillStyle=M.color,t.fill(),t.strokeStyle="rgba(255,255,255,0.85)",t.lineWidth=a*(this.hoverBoost(M.id,.28)>1?2:1),t.stroke()}}catch(e){_.e(e)}finally{_.f()}this.setFont(r.fontSize,r.fontFamily),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.textColor;var O,R=_createForOfIteratorHelper(l);try{for(R.s();!(O=R.n()).done;){var H=O.value,z=_slicedToArray(v(H),2),E=z[0],L=z[1],V=E-n.x,B=L-n.y+H.size/2+9*a;t.strokeStyle=r.labelHaloColor,t.lineWidth=3*a,t.strokeText(H.name,V,B),t.fillText(H.name,V,B)}}catch(e){R.e(e)}finally{R.f()}this.endDraw()}}},{key:"nodeSizeAt",value:function nodeSizeAt(e){var t=this.graph,r=t&&t.layout.nodes[e];return r?r.size*this.hoverBoost(e,.28):10}}])}(),ye=function(){function CurveSeriesBase(){var e;_classCallCheck(this,CurveSeriesBase);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,CurveSeriesBase,[].concat(r)),"curve",[]),_defineProperty(e,"curveKey",""),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"monotonicX",!0),e}return _inherits(CurveSeriesBase,J),_createClass(CurveSeriesBase,[{key:"resolvedParams",value:function resolvedParams(){var e=_objectSpread2({},this.series.option.params||{}),t=this.series.option.sweep;if(t&&t.name){var r=Number(t.from),n=Number(t.to),a=shouldAnimate()?this.sweepPhase():0;e[t.name]=r+(n-r)*a}return e}},{key:"sweepPhase",value:function sweepPhase(){var e=this.series.option.sweep;if(!e)return 0;var t=Math.max(200,Number(e.duration)||3e3),r=(Date.now()%t+t)%t/t;return"loop"===e.mode?r:1-Math.abs(2*r-1)}},{key:"paramValue",value:function paramValue(e){var t=this.resolvedParams();return"number"==typeof t[e]?t[e]:null}},{key:"syncSweep",value:function syncSweep(){var e=this.series.option.sweep;!!(e&&e.name&&shouldAnimate()&&!1!==this.state.display)?this.keepAnimating():this.stopAnimating()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord;if(!e)return this.pixels=new Float64Array(0),void(this.curve=[]);this.syncSweep();var t=this.resolvedParams(),r=e.plot,n=_slicedToArray(this.parameterRange(r),2),a=n[0],s=n[1],l=this.buildSeriesKey([this.paramKey(t),r.width,r.height,Number(a).toPrecision(12),Number(s).toPrecision(12)]);if(l!==this.curveKey){this.curveKey=l;var h=this.series,u=h.pointCount;this.pixels.length!==2*u&&(this.pixels=new Float64Array(2*u));for(var c=0;c<u;c++){var p=_slicedToArray(this.evaluateAt(Number(h.xValueAt(c)),t),2),v=p[0],m=p[1],g=isFinite(v)?e.xScale.map(v):NaN,b=isFinite(m)?e.yScale.map(m):NaN;this.pixels[2*c]=g,this.pixels[2*c+1]=b}for(var k=this.sampleCurve(t,r),S=new Array(2*k.length),A=0;A<k.length;A++){var w=_slicedToArray(k[A],2),_=w[0],M=w[1];S[2*A]=isFinite(_)?e.xScale.map(_):NaN,S[2*A+1]=isFinite(M)?e.yScale.map(M):NaN}this.curve=S,this.xMonotonic=this.monotonicX,this.computeEffective(),this.renderIndices=null}}},{key:"paramKey",value:function paramKey(e){return Object.keys(e).sort().map(function(t){return"".concat(t,"=").concat(Number(e[t]).toPrecision(10))}).join(",")}},{key:"sampleCount",value:function sampleCount(){return this.rebuildPixels(),this.curve.length/2}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;for(var n=this.series.option,a=Math.max(6,this.lineWidthDevice()+4)+(isFinite(Number(n.hitRadius))?Number(n.hitRadius):0),s=-1,l=a*a,h=0;h<r;h++){var u=this.pixels[2*h]-e,c=this.pixels[2*h+1]-t;if(isFinite(u)&&isFinite(c)){var p=u*u+c*c;p<=l&&(l=p,s=h)}}return s}},{key:"hoverLineScale",value:function hoverLineScale(){return null===this.hoverIndex?1:1+.45*this.highlightT()}},{key:"doRender",value:function doRender(){if(this.rebuildPixels(),this.curve.length){var e=this.ctx,t=this.unit(),r=this.pointColor(0),n=this.series.option;this.beginDraw(),e.strokeStyle=r,e.lineWidth=this.lineWidthDevice()*t*this.hoverLineScale(),"function"==typeof e.setLineDash&&Array.isArray(n.lineDash)&&e.setLineDash(n.lineDash.map(function(e){return e*t})),e.beginPath();for(var a=this.isEntering()?Math.max(.001,Math.min(1,this.progress())):1,s=this.curve.length/2,l=Math.max(1,Math.ceil(s*a)),h=!1,u=0;u<l;u++){var c=this.curve[2*u],p=this.curve[2*u+1];isFinite(c)&&isFinite(p)?h?e.lineTo(c,p):(e.moveTo(c,p),h=!0):h=!1}e.stroke(),"function"==typeof e.setLineDash&&e.setLineDash([]),this.endDraw()}}},{key:"curvePoints",value:function curvePoints(){return this.rebuildPixels(),this.curve}}])}(),me=function(){function FunctionSeries(){var e;_classCallCheck(this,FunctionSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,FunctionSeries,[].concat(r)),"seriesType","function"),_defineProperty(e,"cachedSource",""),_defineProperty(e,"sampler",null),e}return _inherits(FunctionSeries,ye),_createClass(FunctionSeries,[{key:"samplerFor",value:function samplerFor(e){var t=String(this.series.option.expression||"");if(t!==this.cachedSource||!this.sampler){this.cachedSource=t;try{this.sampler=compileSampler(t)}catch(e){this.sampler={setParams:function setParams(){},evaluate:function evaluate(){return NaN}}}}var r=this.sampler;return r.setParams(e),function(e){return r.evaluate("x",e)}}},{key:"evaluateAt",value:function evaluateAt(e,t){return[e,this.samplerFor(t)(e)]}},{key:"parameterRange",value:function parameterRange(e){var t=this.coord,r=t&&t.xScale&&t.xScale.domain;if(r&&r.length>=2){var n=Number(r[0]),a=Number(r[r.length-1]);if(isFinite(n)&&isFinite(a)&&a>n)return[n,a]}var s=this.series.option.domain;return[s?Number(s[0]):-10,s?Number(s[1]):10]}},{key:"baseSampleCount",value:function baseSampleCount(){var e=Number(this.series.option.samples);return Math.max(24,Math.min(4e3,isFinite(e)&&e>0?e:240))}},{key:"sampleCurve",value:function sampleCurve(e,t){var r=this.samplerFor(e),n=_slicedToArray(this.parameterRange(t),2);return sampleFunctionCurve(r,n[0],n[1],{base:this.baseSampleCount(),adaptive:!1!==this.series.option.adaptive,tolerance:this.series.option.samplingTolerance})}}])}(),xe=function(){function ParametricSeries(){var e;_classCallCheck(this,ParametricSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,ParametricSeries,[].concat(r)),"seriesType","parametric"),_defineProperty(e,"cachedSources",""),_defineProperty(e,"samplerX",null),_defineProperty(e,"samplerY",null),_defineProperty(e,"samplerR",null),e.monotonicX=!1,e}return _inherits(ParametricSeries,ye),_createClass(ParametricSeries,[{key:"samplersFor",value:function samplersFor(e){var t=this.series.option,r=void 0===t.polarExpression||null===t.polarExpression?"":String(t.polarExpression);if(r){var n="polar\0".concat(r,"\0").concat(Object.keys(e).sort().join(","));if(n!==this.cachedSources||!this.samplerR){this.cachedSources=n;try{this.samplerR=compileSampler(r)}catch(e){this.samplerR={setParams:function setParams(){},evaluate:function evaluate(){return NaN}}}}var a=this.samplerR;return a.setParams(e),{x:function x(e){return a.evaluate("t",e)*Math.cos(e)},y:function y(e){return a.evaluate("t",e)*Math.sin(e)}}}var s=String(t.xExpression||""),l=String(t.yExpression||""),h="".concat(s,"\0").concat(l,"\0").concat(Object.keys(e).sort().join(","));if(h!==this.cachedSources||!this.samplerX||!this.samplerY){this.cachedSources=h;var u={setParams:function setParams(){},evaluate:function evaluate(){return NaN}};try{this.samplerX=compileSampler(s)}catch(e){this.samplerX=u}try{this.samplerY=compileSampler(l)}catch(e){this.samplerY=u}}var c=this.samplerX,p=this.samplerY;return c.setParams(e),p.setParams(e),{x:function x(e){return c.evaluate("t",e)},y:function y(e){return p.evaluate("t",e)}}}},{key:"evaluateAt",value:function evaluateAt(e,t){var r=this.samplersFor(t),n=r.x,a=r.y;return[n(e),a(e)]}},{key:"parameterRange",value:function parameterRange(e){var t=this.series.option.domain,r=t?Number(t[0]):0,n=t?Number(t[1]):2*Math.PI;return isFinite(r)&&isFinite(n)&&n!==r?[r,n]:[0,2*Math.PI]}},{key:"baseSampleCount",value:function baseSampleCount(){var e=Number(this.series.option.samples);return Math.max(24,Math.min(6e3,isFinite(e)&&e>0?e:360))}},{key:"sampleCurve",value:function sampleCurve(e,t){var r=this.samplersFor(e),n=r.x,a=r.y,s=_slicedToArray(this.parameterRange(t),2);return sampleParametricCurve(n,a,s[0],s[1],{base:this.baseSampleCount(),adaptive:!1!==this.series.option.adaptive,tolerance:this.series.option.samplingTolerance})}}])}(),ge=2*Math.PI,be=function(){function LiquidSeries(){var e;_classCallCheck(this,LiquidSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,LiquidSeries,[].concat(r)),"seriesType","liquid"),_defineProperty(e,"liquid",null),_defineProperty(e,"liquidKey",""),_defineProperty(e,"fromRatio",null),e}return _inherits(LiquidSeries,J),_createClass(LiquidSeries,[{key:"setCoord",value:function setCoord(e){return this.liquid=e||null,this.liquidKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 6}},{key:"localCenter",value:function localCenter(){var e=this.liquid;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"range",value:function range(){var e=this.liquid&&this.liquid.options||{},t=isFinite(Number(e.min))?Number(e.min):0,r=isFinite(Number(e.max))?Number(e.max):100;return{min:t,max:r>t?r:t+1}}},{key:"targetRatio",value:function targetRatio(){var e=this.range(),t=e.min,r=e.max,n=this.series.pointCount&&Number(this.series.pointAt(0).y)||0;return Math.max(0,Math.min(1,(n-t)/(r-t)))}},{key:"currentRatio",value:function currentRatio(){var e=this.targetRatio(),t=Math.max(0,Math.min(1,this.progress())),r=null===this.fromRatio?0:this.fromRatio;return r+(e-r)*t}},{key:"levelRatio",value:function levelRatio(){return this.currentRatio()}},{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return t&&this.liquid&&(this.fromRatio=this.currentRatio()),_superPropGet(LiquidSeries,"updateSeries",this,3)([e,t,r])}},{key:"phase",value:function phase(){var e=this.liquid&&this.liquid.options||{};if(!shouldAnimate())return 0;var t=isFinite(Number(e.waveSpeed))?Number(e.waveSpeed):1.6;return Date.now()/1e3*t}},{key:"syncWave",value:function syncWave(){var e=this.targetRatio();shouldAnimate()&&e>.001&&e<.999&&!1!==this.state.display?this.keepAnimating():this.stopAnimating()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.liquid;if(e){var t=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,r=this.buildSeriesKey([e.polar.radius,e.options.min,e.options.max,t]);if(r!==this.liquidKey||2!==this.pixels.length){this.liquidKey=r,2!==this.pixels.length&&(this.pixels=new Float64Array(2));var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];this.pixels[0]=a,this.pixels[1]=s,this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.liquid;if(!r||!this.series.pointCount)return-1;var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];return Math.hypot(e-a,t-s)<=r.polar.radius+8?0:-1}},{key:"wavePath",value:function wavePath(e,t,r,n,a,s,l,h){var u=Math.max(1,2*n/64);e.beginPath(),e.moveTo(t-n,a+s*Math.sin(h));for(var c=-n+u;c<=n;c+=u)e.lineTo(t+c,a+s*Math.sin(c/l*ge+h))}},{key:"doRender",value:function doRender(){var e=this.liquid;if(e&&this.chartTheme){this.rebuildPixels(),this.syncWave();var t=this.ctx,r=this.chartTheme,n=e.options||{},a=this.unit(),s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=Math.max(1,Number(n.borderWidth)||3)*a,p=Math.max(2,u-c),v=n.color||this.pointColor(0),m=this.currentRatio(),g=isFinite(Number(n.waveHeight))?Number(n.waveHeight):.06,b=Math.max(.15,isFinite(Number(n.waveLength))?Number(n.waveLength):1.2)*p,k=g*p,S=this.phase();this.beginDraw(),t.beginPath(),t.arc(l,h,p,0,ge),t.fillStyle=hexToRgba(v,.1),t.fill(),t.save(),t.beginPath(),t.arc(l,h,p,0,ge),t.clip();for(var A=h+p-2*p*m,w=0,_=[{phase:S,alpha:.34,ampScale:1.25},{phase:S+.6*Math.PI,alpha:.55,ampScale:1}];w<_.length;w++){var M=_[w];this.wavePath(t,l,h,p,A,k*M.ampScale,b,M.phase),t.lineTo(l+p,h+p+2*k),t.lineTo(l-p,h+p+2*k),t.closePath(),t.globalAlpha=M.alpha;var C=t.createLinearGradient?t.createLinearGradient(0,A-k,0,h+p):null;C?(C.addColorStop(0,hexToRgba(v,.95)),C.addColorStop(1,hexToRgba(v,.55)),t.fillStyle=C):t.fillStyle=v,t.fill(),t.globalAlpha=1}t.restore(),t.beginPath(),t.arc(l,h,u-c/2,0,ge),t.strokeStyle=n.borderColor||hexToRgba(v,.6),t.lineWidth=c,t.stroke();var T=n.detail||{};if(!1!==T.show){var P=this.range().min,I=P+((this.series.pointCount&&Number(this.series.pointAt(0).y)||0)-P)*Math.max(0,Math.min(1,this.progress())),N="function"==typeof T.formatter?T.formatter(I):"".concat(Number(I.toPrecision(4))).concat(void 0===n.unit?"%":n.unit),D=this.series.pointCount?this.series.pointAt(0).name:void 0;D&&!1!==n.title&&(this.setFont(r.fontSize,r.fontFamily),t.fillStyle=r.subTextColor,t.textAlign="center",t.textBaseline="middle",t.fillText(String(D),l,h-.9*(Number(T.fontSize)||.28*u)*a));var O=isFinite(Number(T.fontSize))?Number(T.fontSize):Math.max(14,.42*u);this.setFont(O*a,r.fontFamily,"bold"),t.fillStyle=n.textColor||r.textColor,t.textAlign="center",t.textBaseline="middle",t.fillText(N,l,h+(D?.18*O*a:0))}this.endDraw()}}}])}(),ke={bar:function bar(e,t){return new ee(e,t)},area:function area(e,t){return new te(e,t)},line:function line(e,t){return new Q(e,t)},scatter:function scatter(e,t){return new ie(e,t)},pie:function pie(e,t){return new ne(e,t)},radar:function radar(e,t){return new ae(e,t)},heatmap:function heatmap(e,t){return new oe(e,t)},sankey:function sankey(e,t){return new se(e,t)},funnel:function funnel(e,t){return new le(e,t)},gauge:function gauge(e,t){return new ce(e,t)},boxplot:function boxplot(e,t){return new de(e,t)},waterfall:function waterfall(e,t){return new fe(e,t)},treemap:function treemap(e,t){return new pe(e,t)},graph:function graph(e,t){return new ve(e,t)},function:function _function(e,t){return new me(e,t)},parametric:function parametric(e,t){return new xe(e,t)},liquid:function liquid(e,t){return new be(e,t)}},Se={},Ae=/^[a-zA-Z][\w-]*$/;function getSeriesTypeFactory(e){return Object.prototype.hasOwnProperty.call(ke,e)?ke[e]:Se[e]||null}function createSeriesComponent(e,t){return(getSeriesTypeFactory(String(e.type))||ke.line)(e,t)}var we=function(){return _createClass(function HitResolver(e){_classCallCheck(this,HitResolver),this.host=e},[{key:"resolveTarget",value:function resolveTarget(e,t){var r=this.host.ice,n={kind:"none",component:null,index:-1,local:[0,0],chart:[0,0]};if(!r||"function"!=typeof r.hitTest)return n;var a=_slicedToArray(r.screenToWorld(e,t),2),s=a[0],l=a[1],h=[s,l],u=r.hitTest(e,t);if(!u)return _objectSpread2(_objectSpread2({},n),{},{chart:h});var c=u.globalToLocal?u.globalToLocal(s,l):[0,0];if(u===this.host.plotArea)return{kind:"plot",component:u,index:-1,local:c,chart:h};if(u===this.host.legend)return{kind:"legend",component:u,index:this.host.legend&&"function"==typeof this.host.legend.hitItem?this.host.legend.hitItem(c[0],c[1]):-1,local:c,chart:h};if("function"==typeof u.hitTestIndex){var p=u.hitTestIndex(c[0],c[1]);return{kind:p>=0?"series":"other",component:u,index:p,local:c,chart:h}}return{kind:"other",component:u,index:-1,local:c,chart:h}}},{key:"isInsidePlot",value:function isInsidePlot(e,t){var r=this.host.layout.plot;return e>=r.x&&e<=r.x+r.width&&t>=r.y&&t<=r.y+r.height}},{key:"seriesComponentOf",value:function seriesComponentOf(e){if(!e)return null;var t,r=_createForOfIteratorHelper(this.host.seriesComponents);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(n.series===e)return n}}catch(e){r.e(e)}finally{r.f()}var a=e.id;if(null!=a){var s,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value;if(h.series&&h.series.id===a)return h}}catch(e){l.e(e)}finally{l.f()}}return null}},{key:"seriesOfComponent",value:function seriesOfComponent(e){var t,r=_createForOfIteratorHelper(this.host.norm.series);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(this.seriesComponentOf(n)===e)return n}}catch(e){r.e(e)}finally{r.f()}return null}},{key:"buildActiveItem",value:function buildActiveItem(e,t){var r=this.seriesComponentOf(e);if(!r)return null;var n=r.pixelAt(t),a=e.pointAt(t);if(!n||!a)return null;var s=this.host.layout.plot;return{series:e,point:a,pixel:[s.x+n[0],s.y+n[1]],screen:[0,0]}}},{key:"toParams",value:function toParams(e){var t=this.host.ice,r=t&&"function"==typeof t.worldToScreen?t.worldToScreen(e.pixel[0],e.pixel[1]):e.pixel;return{seriesId:e.series.id,seriesName:e.series.name,seriesIndex:e.series.index,seriesType:e.series.type,color:e.series.color,dataIndex:e.point.index,data:e.point.raw,xValue:e.point.xValue,value:e.point.y,screen:[r[0],r[1]]}}},{key:"pickColumn",value:function pickColumn(e){var t=e-this.host.layout.plot.x,r=this.host.norm.series.filter(function(e){return!e.hidden});if(!r.length)return null;var n,a=[],s=null,l=_createForOfIteratorHelper(r);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=this.seriesComponentOf(h);if(u){var c=this.nearestIndexByX(u,t);if(!(c<0)){var p=this.buildActiveItem(h,c);p&&(a.push(p),null===s&&(s=h.pointAt(c).xValue))}}}}catch(e){l.e(e)}finally{l.f()}return a.length?{dataIndex:a[0].point.index,xValue:s,pixelX:a[0].pixel[0],items:a}:null}},{key:"nearestIndexByX",value:function nearestIndexByX(e,t){return e.nearestIndexAtX(t)}},{key:"nearestByXValue",value:function nearestByXValue(e){var t,r=this.host.norm.series.filter(function(e){return!e.hidden}),n=this.host.norm.hiddenSlices||{},a=null,s=_createForOfIteratorHelper(r);try{for(s.s();!(t=s.n()).done;)for(var l=t.value,h=0;h<l.pointCount;h++)if("pie"!==l.type&&"funnel"!==l.type||!n["".concat(l.id,"#").concat(h)]){var u=valueDistance(e,l.pointAt(h).xValue);null!==u&&(!a||u<a.dist)&&(a={series:l,index:h,dist:u})}}catch(e){s.e(e)}finally{s.f()}return a?this.buildActiveItem(a.series,a.index):null}}])}();function valueDistance(e,t){var r=e instanceof Date?e.getTime():Number(e),n=t instanceof Date?t.getTime():Number(t);return isFinite(r)&&isFinite(n)?Math.abs(r-n):String(e)===String(t)?0:null}function barCountRange(e,t){var r=Math.max(1,e),n=Math.max(2,Math.ceil(r/function maxBarSpacingOf(e,t){var r=Number(e&&e.maxBarSpacing);return isFinite(r)&&r>0?r:Math.max(1,.5*t)}(t,r))),a=Math.max(n,Math.floor(r/function minBarSpacingOf(e){var t=Number(e&&e.minBarSpacing);return isFinite(t)&&t>0?t:.5}(t)));return[n,a]}function clampBarCount(e,t,r){var n=_slicedToArray(barCountRange(t,r),2),a=n[0],s=n[1];return isFinite(e)?Math.min(s,Math.max(a,e)):a}var _e=null,Me=function(){return _createClass(function InteractionController(e){_classCallCheck(this,InteractionController),_defineProperty(this,"hover",null),_defineProperty(this,"externalHover",!1),_defineProperty(this,"selection",[]),_defineProperty(this,"drag",null),_defineProperty(this,"bound",!1),_defineProperty(this,"lastDimmed",null),_defineProperty(this,"keyboardIndex",0),this.host=e,this.resolver=new we(e)},[{key:"bind",value:function bind(){if(this.bound)return this;var e=this.host.ice&&this.host.ice.evtBus;return e?(this.bound=!0,e.on("mousemove",this.onBusMove,this),e.on("mousedown",this.onBusDown,this),e.on("mouseup",this.onBusUp,this),e.on("click",this.onBusClick,this),e.on("dblclick",this.onBusDoubleClick,this),e.on("wheel",this.onBusWheel,this),e.on("keydown",this.onBusKeyDown,this),this):this}},{key:"unbind",value:function unbind(){if(this.bound){this.bound=!1;var e=this.host.ice&&this.host.ice.evtBus;e&&(e.off("mousemove",this.onBusMove,this),e.off("mousedown",this.onBusDown,this),e.off("mouseup",this.onBusUp,this),e.off("click",this.onBusClick,this),e.off("dblclick",this.onBusDoubleClick,this),e.off("wheel",this.onBusWheel,this),e.off("keydown",this.onBusKeyDown,this))}}},{key:"pointOf",value:function pointOf(e){if(!e)return null;var t="number"==typeof e.offsetX?e.offsetX:e.x,r="number"==typeof e.offsetY?e.offsetY:e.y;return"number"!=typeof t||"number"!=typeof r?null:[t,r]}},{key:"isOverCanvas",value:function isOverCanvas(e,t){var r=this.host&&this.host.ice;if(!r)return!1;var n=r.dpr||1,a=(r.canvasWidth||0)/n,s=(r.canvasHeight||0)/n;return a>0&&s>0&&(e>=0&&t>=0&&e<=a&&t<=s)}},{key:"preventDefault",value:function preventDefault(e){if(e){if("function"==typeof e.preventDefault)try{return void e.preventDefault()}catch(e){}var t=e.originalEvent;if(t&&"function"==typeof t.preventDefault)try{t.preventDefault()}catch(e){}}}},{key:"onBusMove",value:function onBusMove(e){var t=this.pointOf(e);t&&this.handlePointerMove(t[0],t[1],e)}},{key:"onBusDown",value:function onBusDown(e){var t=this.pointOf(e);t&&this.handlePointerDown(t[0],t[1],e)}},{key:"onBusUp",value:function onBusUp(e){var t=this.pointOf(e);t&&this.handlePointerUp(t[0],t[1],e)}},{key:"onBusClick",value:function onBusClick(e){var t=this.pointOf(e);t&&this.handleClick(t[0],t[1],e)}},{key:"onBusDoubleClick",value:function onBusDoubleClick(e){var t=this.pointOf(e);t&&this.handleDoubleClick(t[0],t[1],e)}},{key:"onBusWheel",value:function onBusWheel(e){var t=this.pointOf(e);t&&this.handleWheel(t[0],t[1],Number(e.deltaY)||0,e)}},{key:"onBusKeyDown",value:function onBusKeyDown(e){this.handleKeyDown(e&&e.key,e)}},{key:"refreshHover",value:function refreshHover(){var e=this.hover;if(e){var t=this.host.norm;if("item"===e.kind){var r=t.series.find(function(t){return t.id===e.item.series.id})||e.item.series,n=e.item.point.index,a=("pie"===r.type||"funnel"===r.type)&&t.hiddenSlices["".concat(r.id,"#").concat(n)];if(r.hidden||a||!r.pointAt(n))return void this.setHover(null);var s=this.resolver.buildActiveItem(r,n);return s&&this.resolver.isInsidePlot(s.pixel[0],s.pixel[1])?void this.setHover({kind:"item",item:s},this.externalHover):void this.setHover(null)}var l=this.resolver.nearestByXValue(e.column.xValue),h=l?this.resolver.pickColumn(l.pixel[0]):null;h&&("cartesian"!==t.kind||this.resolver.isInsidePlot(h.pixelX,h.items[0].pixel[1]))?this.setHover({kind:"axis",column:h},this.externalHover):this.setHover(null)}}},{key:"resolveTarget",value:function resolveTarget(e,t){return this.resolver.resolveTarget(e,t)}},{key:"handlePointerMove",value:function handlePointerMove(e,t,r){this.drag?this.updateDrag(e,t,r):this.isOverCanvas(e,t)?this.updateHover(e,t):this.hover&&!this.externalHover&&this.setHover(null)}},{key:"updateHover",value:function updateHover(e,t){var r=this.host.norm.option.interaction;if(!r||!r.hover||!1!==r.hover.enabled){var n=this.resolveTarget(e,t);if("legend"===n.kind){var a=this.host.legend;return a&&a.hoverIndex!==n.index&&(a.hoverIndex=n.index,a.markDirty()),this.clearDataVisuals(),void this.setHoverState(null)}this.resetLegendHover();var s=this.host.norm.option.tooltip&&this.host.norm.option.tooltip.trigger||"axis";if(this.resolver.isInsidePlot(n.chart[0],n.chart[1])&&"axis"===s){var l=this.resolver.pickColumn(n.chart[0]);if(l)return void this.setHover({kind:"axis",column:l})}if("series"===n.kind&&n.index>=0){var h=this.resolver.seriesOfComponent(n.component),u=h?this.resolver.buildActiveItem(h,n.index):null;if(u)return void this.setHover({kind:"item",item:u})}this.setHover(null)}}},{key:"resetLegendHover",value:function resetLegendHover(){var e=this.host.legend;e&&-1!==e.hoverIndex&&(e.hoverIndex=-1,e.markDirty())}},{key:"setHover",value:function setHover(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.externalHover=!!e&&t;var r=!!this.hover;if(this.hover=e,!e)return this.clearHoverVisuals(),this.dimOthers(null),void(r&&this.host.emit("item:leave",void 0));this.applyHoverVisuals(e),"item"===e.kind?(this.keyboardIndex=e.item.point.index,this.dimOthers(e.item.series.id),this.host.emit("item:hover",this.resolver.toParams(e.item))):(this.dimOthers(null),e.column.items[0]&&this.host.emit("item:hover",this.resolver.toParams(e.column.items[0])))}},{key:"setHoverState",value:function setHoverState(e){this.hover=e}},{key:"applyHoverVisuals",value:function applyHoverVisuals(e){var t=this,r="item"===e.kind?[e.item]:e.column.items,n=r[0];this.syncSeriesHover(r);var a=this.host.highlight;a&&a.setHover(this.hoverMarkEnabled()?r.map(function(e){return t.markFor(e)}):[]);var s=this.host.crosshair;if(s)if("cartesian"!==this.host.norm.kind||"horizontal"===this.host.norm.orientation)s.hide();else{var l=this.host.norm.option.crosshair&&this.host.norm.option.crosshair.axis||"x";s.show("y"===l?null:n.pixel[0],"x"===l?null:n.pixel[1],this.host.formatAxisValue("x",n.point.xValue),null===n.point.y?"":this.host.formatAxisValue("y",n.point.y))}var h=this.host.tooltip;if(h)if(this.host.norm.option.tooltip&&!1===this.host.norm.option.tooltip.show)h.hide();else{var u=this.buildTooltipContent(e),c="axis"===e.kind?[e.column.pixelX,n.pixel[1]]:[n.pixel[0],n.pixel[1]];h.show(u,c)}}},{key:"buildTooltipContent",value:function buildTooltipContent(e){var t=this,r="item"===e.kind?[e.item]:e.column.items,n=r[0];if(n&&"horizontal"===this.host.norm.orientation)return{title:this.host.formatAxisValue("y",n.point.xValue),rows:r.map(function(e){return{name:e.series.name,value:null===e.point.y?"-":t.host.formatAxisValue("x",e.point.y),color:e.series.color}})};if(n&&"pie"===n.series.type){for(var a=n.series,s=n.point,l=0,h=0;h<a.pointCount;h++){var u=a.pointAt(h);this.host.norm.hiddenSlices["".concat(a.id,"#").concat(u.index)]||(l+=u.y||0)}var c=s.y||0,p=l>0?c/l*100:0;return{title:a.name,rows:[{name:s.name||"".concat(this.host.norm.labels.slice," ").concat(s.index+1),value:"".concat(p.toFixed(1),"%"),color:s.color||a.color}]}}if(n&&"funnel"===n.series.type){for(var v=n.series,m=n.point,g=0,b=0;b<v.pointCount;b++){var k=v.pointAt(b);this.host.norm.hiddenSlices["".concat(v.id,"#").concat(k.index)]||(g+=k.y||0)}var S=g>0?(m.y||0)/g*100:0;return{title:m.name||this.host.formatAxisValue("x",m.xValue),rows:[{name:v.name,value:"".concat(null===m.y?"-":m.y,"(").concat(S.toFixed(1),"%)"),color:m.color||v.color}]}}if(n&&"gauge"===n.series.type){var A=n.series,w=n.point;return{title:w.name||A.name,rows:[{name:A.name,value:null===w.y?"-":String(w.y),color:A.color}]}}if(n&&"liquid"===n.series.type){var _=n.series,M=n.point,C=_.option.liquid||{},T=isFinite(Number(C.min))?Number(C.min):0,P=isFinite(Number(C.max))?Number(C.max):100,I=null===M.y?T:Number(M.y),N=P>T?Math.max(0,Math.min(1,(I-T)/(P-T))):0;return{title:M.name||_.name,rows:[{name:_.name,value:"".concat(I).concat(void 0===C.unit?"%":C.unit),color:_.color},{name:this.host.norm.labels.liquid,value:"".concat((100*N).toFixed(1),"%"),color:this.host.norm.theme.subTextColor}]}}if(n&&("function"===n.series.type||"parametric"===n.series.type)){var D,O,R=n.series,H=n.point.raw||{},z="function"===R.type,E=z?"x":"t",L=Number(z?null!==(D=H.x)&&void 0!==D?D:n.point.xValue:null!==(O=H.t)&&void 0!==O?O:n.point.xValue),V=Number(H.x),B=Number(H.y),j=function fmt(e){return isFinite(e)?String(Number(e.toPrecision(4))):"—"};return{title:"".concat(E," = ").concat(j(L)),rows:z?[{name:R.name,value:j(B),color:R.color},{name:this.host.norm.labels.coordinate,value:"(".concat(j(V),", ").concat(j(B),")"),color:this.host.norm.theme.subTextColor}]:[{name:this.host.norm.labels.coordinate,value:"(".concat(j(V),", ").concat(j(B),")"),color:R.color},{name:"y",value:j(B),color:this.host.norm.theme.subTextColor}]}}if(n&&"radar"===n.series.type){for(var W=n.series,X=[],G=0;G<W.pointCount;G++){var U=W.pointAt(G);X.push({name:U.name||"".concat(U.index+1),value:null===U.y?"-":String(U.y),color:U.index===n.point.index?W.color:this.host.norm.theme.subTextColor})}return{title:W.name,rows:X}}if(n&&"boxplot"===n.series.type){var K=n.point,Y=K.boxplot;if(Y){var q=["最小值","下四分位","中位数","上四分位","最大值"];return{title:K.name||this.host.formatAxisValue("x",K.xValue),rows:Y.map(function(e,t){return{name:q[t],value:String(e),color:n.series.color}})}}}if(n&&"waterfall"===n.series.type){var $=n.point,Z=$.y||0;return{title:$.name||this.host.formatAxisValue("x",$.xValue),rows:[{name:Z>=0?"增加":"减少",value:"".concat(Z>=0?"+":"").concat(Z),color:n.series.color},{name:"累计",value:String($.top),color:this.host.norm.theme.subTextColor}]}}if(n&&"treemap"===n.series.type){var J=n.series,Q=n.point,ee=J.pointAt(0);ee&&0===ee.index&&ee.y;for(var te=Q.y||0,ie=0,re=0;re<J.pointCount;re++){var ne=J.pointAt(re),ae=ne.raw;ae&&Array.isArray(ae.children)&&ae.children.length||(ie+=ne.y||0)}var oe=ie>0?te/ie*100:0;return{title:Q.name||String(Q.xValue),rows:[{name:J.name,value:"".concat(te,"(").concat(oe.toFixed(1),"%)"),color:n.series.color}]}}if(n&&"graph"===n.series.type){var se=this.resolver.seriesComponentOf(n.series),le=n.point,he=se&&se.nodeCount||0;if(le.index>=he){var ue=se&&se.graph?se.graph.layout.links[le.index-he]:null,ce=se&&se.graph?se.graph.layout.nodes:[];return{title:le.name,rows:[{name:"流量",value:String(ue?ue.value:le.y),color:ue?ue.color:n.series.color}].concat(_toConsumableArray(ue&&ce[ue.source]&&ce[ue.target]?[{name:"度数",value:String(ce[ue.source].degree+ce[ue.target].degree),color:this.host.norm.theme.subTextColor}]:[]))}}return{title:le.name,rows:[{name:"权重",value:null===le.y?"-":String(le.y),color:n.series.color},{name:"连接数",value:String(se&&se.graph&&se.graph.layout.nodes[le.index]?se.graph.layout.nodes[le.index].degree:0),color:this.host.norm.theme.subTextColor}]}}if(n&&"heatmap"===n.series.type){var de=n.point;return{title:de.name||this.host.formatAxisValue("x",de.xValue),rows:[{name:this.host.formatAxisValue("x",de.xValue),value:null===de.y?"-":this.host.formatAxisValue("y",de.y),color:de.color||n.series.color}]}}if(n&&"sankey"===n.series.type){var fe=n.point,pe=!(!fe.raw||!fe.raw.__sankeyLink);return{title:pe?fe.name:"节点",rows:[{name:pe?"流量":fe.name,value:null===fe.y?"-":String(fe.y),color:n.series.color}]}}var ve="item"===e.kind?e.item.point.xValue:e.column.xValue,ye=this.host.formatAxisValue("x",ve),me=r.map(function(e){return{name:e.series.name,value:null===e.point.y?"-":t.host.formatAxisValue("y",e.point.y),color:e.series.color}}),xe=this.host.norm.option.tooltip&&this.host.norm.option.tooltip.formatter;if("function"==typeof xe){var ge=xe({items:r.map(function(e){return t.resolver.toParams(e)}),dataIndex:"item"===e.kind?e.item.point.index:e.column.dataIndex,xValue:ve});if(Array.isArray(ge))return{title:void 0===ge[0]?ye:String(ge[0]),rows:ge.slice(1).map(function(e,t){return{name:String(e),value:"",color:r[t]?r[t].series.color:"#999999"}})};if("string"==typeof ge)return{title:ge,rows:[]};if(ge&&"object"===_typeof(ge)&&(void 0!==ge.title||void 0!==ge.rows))return{title:ge.title||ye,rows:ge.rows||me}}return{title:ye,rows:me}}},{key:"clearHoverVisuals",value:function clearHoverVisuals(){this.clearDataVisuals(),this.resetLegendHover()}},{key:"clearDataVisuals",value:function clearDataVisuals(){this.syncSeriesHover([]),this.host.highlight&&this.host.highlight.setHover([]),this.host.crosshair&&this.host.crosshair.hide(),this.host.tooltip&&this.host.tooltip.hide()}},{key:"hoverMarkEnabled",value:function hoverMarkEnabled(){var e=this.host.norm.option.interaction;return!(e&&e.hover&&!1===e.hover.mark)}},{key:"syncSeriesHover",value:function syncSeriesHover(e){var t,r=new Map,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var a=t.value;r.has(a.series.id)||r.set(a.series.id,a.point.index)}}catch(e){n.e(e)}finally{n.f()}var s,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value,u=r.get(h.series.id);h.setHoverIndex(void 0===u?null:u)}}catch(e){l.e(e)}finally{l.f()}}},{key:"markFor",value:function markFor(e){var t,r,n=this.resolver.seriesComponentOf(e.series),a=this.host.layout.plot;if(n&&"bar"===e.series.type&&"function"==typeof n.barRectAt){var s=("function"==typeof n.barDrawRectAt?n.barDrawRectAt(e.point.index,1):null)||n.barRectAt(e.point.index),l=s?{x:Math.max(s.x,0),y:Math.max(s.y,0),width:Math.max(0,Math.min(s.x+s.width,a.width)-Math.max(s.x,0)),height:Math.max(0,Math.min(s.y+s.height,a.height)-Math.max(s.y,0))}:null;if(l&&l.width>0&&l.height>0)return{x:a.x+l.x+l.width/2,y:a.y+l.y+l.height/2,width:l.width,height:l.height,color:e.series.color,size:0,shape:"rect"}}return{x:e.pixel[0],y:e.pixel[1],color:e.series.color,size:(t=e.series,r=t.option&&t.option.symbolSize,isFinite(r)?Number(r):"bar"===t.type?10:8),shape:"circle"}}},{key:"dimOthers",value:function dimOthers(e){var t=this.host.norm.option.interaction,r=!!(t&&t.hover&&t.hover.dimOthers),n=r?e:null;if(n!==this.lastDimmed){this.lastDimmed=n;var a,s=this.host.norm.theme.selection.dimOpacity,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(a=l.n()).done;){var h=a.value,u=r&&null!==n&&h.series.id!==n;h.setState({opacity:u?s:1})}}catch(e){l.e(e)}finally{l.f()}}}},{key:"handlePointerDown",value:function handlePointerDown(e,t,r){if(!this.isOverCanvas(e,t))return!1;_e=this;var n=this.resolveTarget(e,t);if("legend"===n.kind)return!0;var a=this.host.dataZoomSlider;if(a&&n.component===a){var s=a.hitPart(n.local[0],n.local[1]);if(s){this.preventDefault(r),this.setHover(null);var l=a.fractionAt(n.local[0]);if(this.drag={mode:"slider",part:s,startX:e,startY:t,originStart:a.start,originEnd:a.end,anchorFraction:l,moved:!1},a.setActive(s),"track"===s){var h=a.end-a.start,u=clamp$2(l-h/2,0,1-h);this.host.setDomainFromFractions(u,u+h,"slider",!0),a.setActive("window"),this.drag.part="window",this.drag.originStart=u,this.drag.originEnd=u+h}return!0}}if("series"===n.kind&&n.index>=0&&n.component&&"graph"===n.component.seriesType&&"function"==typeof n.component.moveNode&&n.index<(n.component.nodeCount||0)&&(!n.component.graph||!1!==n.component.graph.options.draggable))return this.preventDefault(r),this.setHover(null),this.drag={mode:"graph-node",component:n.component,nodeIndex:n.index,startX:e,startY:t,moved:!1},!0;if(n.component&&"function"==typeof this.host.isMarkComponent&&this.host.isMarkComponent(n.component))return this.setHover(null),!1;if(!this.resolver.isInsidePlot(n.chart[0],n.chart[1]))return!1;var c=this.host.norm.option.interaction||{},p=c.brush,v=c.pan,m=!(!p||!1===p||!1===p.enabled),g=!(!v||!1===v||!v.enabled);return this.preventDefault(r),m?(this.setHover(null),this.drag={mode:"brush",startX:e,startY:t,moved:!1},this.host.brush&&this.host.brush.setRect({x:n.chart[0],y:n.chart[1],width:0,height:0}),!0):!!g&&(this.setHover(null),this.drag={mode:"pan",startX:e,startY:t,domainX:this.currentXWindow(),domainY:[this.host.norm.yAxis.domain[0],this.host.norm.yAxis.domain[1]],moved:!1},!0)}},{key:"currentXWindow",value:function currentXWindow(){var e=this.host.norm.xAxis,t=e&&e.domain;return!t||t.length<2?null:"category"===e.type?[t[0],t[t.length-1]]:[t[0],t[1]]}},{key:"handlePointerUp",value:function handlePointerUp(e,t,r){"function"==typeof this.host.finishMarkDrag&&this.host.finishMarkDrag();var n=this.drag;if(n){if(this.drag=null,"brush"===n.mode){if(!n.moved)return this.host.brush&&this.host.brush.setRect(null),void this.updateHover(e,t);var a=this.brushRange(),s=this.host.norm.option.interaction&&this.host.norm.option.interaction.brush;return s&&"zoom"===s.mode&&a&&(this.applyRange(a),this.host.brush&&this.host.brush.setRect(null)),this.host.emit("brush:end",a),void this.updateHover(e,t)}if("slider"===n.mode){var l=this.host.dataZoomSlider;return l&&l.setActive(null),void this.updateHover(e,t)}if("graph-node"===n.mode){var h=n.component;return n.moved&&h&&"function"==typeof h.settle&&h.graph&&!1!==h.graph.options.settleOnDrop&&h.settle(),void this.updateHover(e,t)}"pan"===n.mode&&this.updateHover(e,t)}}},{key:"updateDrag",value:function updateDrag(e,t,r){var n=this.drag;if(n){var a=e-n.startX,s=t-n.startY;if(n.moved||!(Math.abs(a)+Math.abs(s)<3)){n.moved=!0;var l=this.host.layout.plot,h=_slicedToArray(this.host.ice.screenToWorld(n.startX,n.startY),2),u=h[0],c=h[1],p=_slicedToArray(this.host.ice.screenToWorld(e,t),2),v=p[0],m=p[1];if("brush"!==n.mode)if("slider"!==n.mode)if("graph-node"!==n.mode){var g=this.host.norm.option.interaction&&this.host.norm.option.interaction.pan,b=g&&g.axes||"xy";if(("x"===b||"xy"===b)&&n.domainX){var k=this.shiftDomain("x",n.domainX,a);k&&this.host.setDomain("x",k,"pan")}if(("y"===b||"xy"===b)&&n.domainY){var S=this.shiftDomain("y",n.domainY,s);S&&this.host.setDomain("y",S,"pan")}}else{n.moved=!0;var A=n.component,w=_slicedToArray(this.host.ice.screenToWorld(e,t),2),_=w[0],M=w[1],C=A.globalToLocal(_,M);A.moveNode(n.nodeIndex,C[0],C[1]);var T=this.seriesOfGraphComponent(A);if(T){var P=this.resolver.buildActiveItem(T,n.nodeIndex);P&&this.setHover({kind:"item",item:P})}}else{var I=this.host.dataZoomSlider;if(!I)return;n.moved=!0;var N=_slicedToArray(this.host.ice.screenToWorld(e,t),2),D=N[0],O=N[1],R=I.globalToLocal(D,O)[0],H=I.fractionAt(R),z=n.originEnd-n.originStart,E=n.originStart,L=n.originEnd;if("start"===n.part)E=clamp$2(H,0,n.originEnd-.02);else if("end"===n.part)L=clamp$2(H,n.originStart+.02,1);else{var V=H-n.anchorFraction;L=(E=clamp$2(n.originStart+V,0,1-z))+z}this.host.setDomainFromFractions(E,L,"slider",!0)}else{var B=clamp$2(u,l.x,l.x+l.width),j=clamp$2(c,l.y,l.y+l.height),W=clamp$2(v,l.x,l.x+l.width),X=clamp$2(m,l.y,l.y+l.height);this.host.brush&&this.host.brush.setRect({x:Math.min(B,W),y:Math.min(j,X),width:Math.abs(W-B),height:Math.abs(X-j)});var G=this.brushRange();G&&this.host.emit("brush:change",G)}}}}},{key:"shiftDomain",value:function shiftDomain(e,t,r){var n=this.host.norm["x"===e?"xAxis":"yAxis"],a=n.scale;if(!a)return null;var s="x"===e?this.host.layout.plot.width:this.host.layout.plot.height;if(a.isBand()){var l=this.host.fullDomain("x"),h=l&&l.length?l:n.domain,u=h.indexOf(t[0]),c=h.indexOf(t[1]);if(u<0||c<0||h.length<=1)return null;var p=a.step()||s/Math.max(1,h.length),v=c-u,m=clamp$2(u+Math.round(-r/p),0,Math.max(0,h.length-1-v));return[h[m],h[m+v]]}var g=Number(t[1])-Number(t[0]),b=("x"===e?-1:1)*r/Math.max(1,s)*g;return[Number(t[0])+b,Number(t[1])+b]}},{key:"handleClick",value:function handleClick(e,t,r){if(this.isOverCanvas(e,t)){var n=this.resolveTarget(e,t),a=this.host.norm.option.interaction;if("legend"!==n.kind){if("series"===n.kind&&n.index>=0){var s=this.resolver.seriesOfComponent(n.component),l=s?this.resolver.buildActiveItem(s,n.index):null;if(l){var h=this.resolver.toParams(l);this.host.emit("item:click",h);var u=a&&a.select;return void(u&&u.enabled&&this.toggleSelection(l.series.id,l.point.index,u.mode||"single",!1!==u.toggle))}}if(this.resolver.isInsidePlot(n.chart[0],n.chart[1])){var c=this.host.layout.plot;this.host.emit("plot:click",{screen:[e,t],xValue:this.host.norm.xAxis.scale?this.host.norm.xAxis.scale.invert(n.chart[0]-c.x):void 0,yValue:this.host.norm.yAxis.scale?this.host.norm.yAxis.scale.invert(n.chart[1]-c.y):void 0})}else this.host.emit("chart:click",{screen:[e,t]})}else{var p=this.host.legend;if(p&&n.index>=0){var v=p.items[n.index];void 0!==v.dataIndex?this.host.toggleSlice(v.seriesId,v.dataIndex):this.host.toggleSeries(v.seriesId)}}}}},{key:"handleDoubleClick",value:function handleDoubleClick(e,t,r){if(this.isOverCanvas(e,t)){var n=this.resolveTarget(e,t);if(!("series"!==n.kind||n.index<0)){var a=this.resolver.seriesOfComponent(n.component),s=a?this.resolver.buildActiveItem(a,n.index):null;s&&this.host.emit("item:dblclick",this.resolver.toParams(s))}}}},{key:"toggleSelection",value:function toggleSelection(e,t,r,n){var a=this.selection.findIndex(function(r){return r.seriesId===e&&r.dataIndex===t});"single"===r?this.selection=a>=0&&n?[]:[{seriesId:e,dataIndex:t}]:a>=0?this.selection.splice(a,1):this.selection.push({seriesId:e,dataIndex:t}),this.refreshSelectionVisuals(),this.host.emit("select:change",this.getSelectedParams())}},{key:"clearSelection",value:function clearSelection(){this.selection.length&&(this.selection=[],this.refreshSelectionVisuals(),this.host.emit("select:change",[]))}},{key:"refreshSelectionVisuals",value:function refreshSelectionVisuals(){var e=this,t=this.host.highlight;if(t){var r,n=[],a=_createForOfIteratorHelper(this.selection);try{var s=function _loop(){var t=r.value,a=e.host.norm.series.find(function(e){return e.id===t.seriesId});if(!a)return 1;var s=e.resolver.buildActiveItem(a,t.dataIndex);s&&n.push(e.markFor(s))};for(a.s();!(r=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}t.setSelection(n)}}},{key:"getSelectedParams",value:function getSelectedParams(){var e,t=this,r=[],n=_createForOfIteratorHelper(this.selection);try{var a=function _loop2(){var n=e.value,a=t.host.norm.series.find(function(e){return e.id===n.seriesId});if(!a)return 1;var s=t.resolver.buildActiveItem(a,n.dataIndex);s&&r.push(t.resolver.toParams(s))};for(n.s();!(e=n.n()).done;)a()}catch(e){n.e(e)}finally{n.f()}return r}},{key:"brushRect",get:function get(){return this.host.brush?this.host.brush.rect:null}},{key:"brushRange",value:function brushRange(){var e=this.brushRect,t=this.host.layout.plot;if(!e||e.width<2&&e.height<2)return null;var r=this.host.norm.option.interaction&&this.host.norm.option.interaction.brush,n=r&&r.axes||"x",a={};if("x"===n||"xy"===n){var s=this.valueAtPixel("x",e.x-t.x),l=this.valueAtPixel("x",e.x+e.width-t.x),h=this.orderValues("x",s,l);h&&(a.x=h)}if("y"===n||"xy"===n){var u=this.valueAtPixel("y",e.y-t.y),c=this.valueAtPixel("y",e.y+e.height-t.y),p=this.orderValues("y",u,c);p&&(a.y=p)}return a.x||a.y?a:null}},{key:"valueAtPixel",value:function valueAtPixel(e,t){var r=this.host.norm["x"===e?"xAxis":"yAxis"],n=r.scale;if(n){if(n.isBand()){var a=n.indexAt(t),s=a>=0?a:n.nearestIndex?n.nearestIndex(t):0;return r.domain[clamp$2(s,0,r.domain.length-1)]}return n.invert(t)}}},{key:"orderValues",value:function orderValues(e,t,r){if(void 0===t||void 0===r)return null;var n=this.host.norm["x"===e?"xAxis":"yAxis"].scale;if(n&&n.isBand()){var a=this.host.norm["x"===e?"xAxis":"yAxis"].domain;return a.indexOf(t)<=a.indexOf(r)?[t,r]:[r,t]}return Number(t)<=Number(r)?[t,r]:[r,t]}},{key:"applyRange",value:function applyRange(e){e.x&&this.host.setDomain("x",e.x,"brush"),e.y&&this.host.setDomain("y",e.y,"brush")}},{key:"handleWheel",value:function handleWheel(e,t,r,n){var a=this.host.norm.option.interaction&&this.host.norm.option.interaction.zoom;if(!a||!1===a||!1===a.enabled||!1===a.wheel)return!1;var s=this.resolveTarget(e,t);if(!this.resolver.isInsidePlot(s.chart[0],s.chart[1]))return!1;this.preventDefault(n);var l=Number(a.wheelFactor)||1.2,h=r<0?l:1/l;if("viewport"===a.mode)return this.host.ice.zoomAt(e,t,h),!0;var u=a.axes||"x",c=this.host.layout.plot;if("x"===u||"xy"===u){var p=this.zoomDomain("x",s.chart[0]-c.x,h);p&&this.host.setDomain("x",p,"zoom")}if("y"===u||"xy"===u){var v=this.zoomDomain("y",s.chart[1]-c.y,h);v&&this.host.setDomain("y",v,"zoom")}return!0}},{key:"zoomDomain",value:function zoomDomain(e,t,r){var n=this.host.norm["x"===e?"xAxis":"yAxis"],a=n.scale;if(!a)return null;var s=this.host.norm.option.interaction&&this.host.norm.option.interaction.zoom,l=Number(s&&s.minSpan)||.05,h=Number(s&&s.maxSpan)||1,u=this.host.fullDomain(e),c=this.host.layout.plot,p="x"===e?c.width:c.height;if(a.isBand()){var v=u,m=v.length;if(m<=2)return null;var g=n.domain,b=Math.max(0,v.indexOf(g[0])),k=v.indexOf(g[g.length-1]),S=Math.max(2,k-b+1),A=clamp$2(t/Math.max(1,p),0,1),w=Math.min(m,clampBarCount(Math.round(S/r),c.width,s)),_=b+A*(S-1),M=Math.round(_-A*(w-1));return[v[M=clamp$2(M,0,Math.max(0,m-w))],v[M+w-1]]}var C=Number(n.domain[0]),T=Number(n.domain[1])-C,P=Number(u[1])-Number(u[0]),I=clamp$2(T/r,P*l,P*h),N=a.invert(t),D=N-(0===T?.5:(N-C)/T)*I;return[D,D+I]}},{key:"currentRange",value:function currentRange(){return{x:[this.host.norm.xAxis.domain[0],this.host.norm.xAxis.domain[1]],y:[Number(this.host.norm.yAxis.domain[0]),Number(this.host.norm.yAxis.domain[1])]}}},{key:"handleKeyDown",value:function handleKeyDown(e,t){var r=this.host.norm.option.interaction;if(r&&!1===r.keyboard)return!1;if(!e)return!1;if(_e&&_e!==this&&_e.host)return!1;if(t&&t.target&&/^(INPUT|TEXTAREA|SELECT)$/.test(t.target.tagName||""))return!1;var n=this.host.norm.series.filter(function(e){return!e.hidden});if(!n.length)return!1;var a=0;if(this.hover){var s="item"===this.hover.kind?this.hover.item.series.id:this.hover.column.items[0].series.id,l=n.findIndex(function(e){return e.id===s});l>=0&&(a=l)}var h=!1;switch(e){case"ArrowRight":case"ArrowLeft":var u=n[a];if(!u.pointCount)break;var c=this.stepVisibleIndex(u,"ArrowRight"===e?1:-1);if(c>=0){this.keyboardIndex=c;var p=this.resolver.buildActiveItem(u,c);p&&this.setHover({kind:"item",item:p})}h=c>=0;break;case"ArrowUp":case"ArrowDown":var v=n[clamp$2(a+("ArrowDown"===e?1:-1),0,n.length-1)];if(!v.pointCount)break;var m=clamp$2(this.keyboardIndex,0,v.pointCount-1),g=this.resolver.buildActiveItem(v,m);g&&this.setHover({kind:"item",item:g}),h=!0;break;case"Escape":this.setHover(null),this.clearSelection(),this.host.brush&&this.host.brush.setRect(null),h=!0;break;case"Enter":case" ":if(this.hover&&"item"===this.hover.kind){var b=this.hover.item,k=r&&r.select;this.toggleSelection(b.series.id,b.point.index,k&&k.mode||"single",!0),this.host.emit("item:click",this.resolver.toParams(b)),h=!0}}return h&&this.preventDefault(t),h}},{key:"showHoverAtValue",value:function showHoverAtValue(e){var t=this.resolver.nearestByXValue(e);t&&this.setHover({kind:"item",item:t},!0)}},{key:"clearHover",value:function clearHover(){this.setHover(null)}},{key:"seriesOfGraphComponent",value:function seriesOfGraphComponent(e){var t,r=_createForOfIteratorHelper(this.host.norm.series);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(this.resolver.seriesComponentOf(n)===e)return n}}catch(e){r.e(e)}finally{r.f()}return null}},{key:"stepVisibleIndex",value:function stepVisibleIndex(e,t){var r=e.pointCount;if(!r)return-1;for(var n=clamp$2(this.keyboardIndex,0,r-1),a=0;a<r;a++){var s=n+t;if(s<0||s>=r)return-1;n=s;var l=this.resolver.buildActiveItem(e,n);if(l&&this.resolver.isInsidePlot(l.pixel[0],l.pixel[1]))return n}return-1}},{key:"destroy",value:function destroy(){this.unbind(),_e===this&&(_e=null),this.host=null}}])}();var Ce=function(){return _createClass(function Emitter(){_classCallCheck(this,Emitter),_defineProperty(this,"listeners",new Map)},[{key:"on",value:function on(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=this.listeners.get(e)||[];return this.off(e,t,r),n.push({fn:t,scope:r}),this.listeners.set(e,n),this}},{key:"once",value:function once(e,t){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=function wrapper(s){r.off(e,a,n),t.call(n,s)};return a.__onceOriginal=t,this.on(e,a,n)}},{key:"off",value:function off(e,t,r){var n=this.listeners.get(e);if(!n)return this;if(!t)return this.listeners.delete(e),this;for(var a=n.length-1;a>=0;a--){var s=n[a],l=s.fn;!(l===t||l&&l.__onceOriginal===t)||void 0!==r&&s.scope!==r||n.splice(a,1)}return n.length||this.listeners.delete(e),this}},{key:"emit",value:function emit(e,t){var r=this.listeners.get(e);if(!r||!r.length)return!1;for(var n=r.slice(),a=0;a<n.length;a++)n[a].fn.call(n[a].scope,t);return!0}},{key:"hasListener",value:function hasListener(e){var t=this.listeners.get(e);return!!t&&t.length>0}},{key:"clear",value:function clear(){this.listeners.clear()}}])}();function chartTitle(e){var t=e.option.title&&e.option.title.text;return t?String(t):e.labels.chart}function buildDataTable(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.norm,n=chartTitle(r),a=r.series.filter(function(e){return!e.hidden&&"pie"!==e.type});if("polar"===r.kind){var s=r.series.find(function(e){return"pie"===e.type});if(!s)return{caption:n,columns:[r.labels.sector,r.labels.value,r.labels.ratio],rows:[]};for(var l=[],h=0;h<s.pointCount;h++){var u=s.pointAt(h);r.hiddenSlices["".concat(s.id,"#").concat(u.index)]||l.push(u)}var c=l.reduce(function(e,t){return e+(t.y||0)},0);return{caption:n,columns:[r.labels.sector,r.labels.value,r.labels.ratio],rows:l.map(function(e){return[e.name||"".concat(s.name," ").concat(e.index+1),null===e.y?"":String(e.y),c>0?"".concat(((e.y||0)/c*100).toFixed(1),"%"):"0%"]})}}if("radar"===r.kind){var p=r.radar&&r.radar.indicators||[];return{caption:n,columns:["指标"].concat(_toConsumableArray(a.map(function(e){return e.name}))),rows:p.map(function(e,t){return[e.name].concat(_toConsumableArray(a.map(function(e){var r=e.pointAt(t);return r&&null!==r.y?String(r.y):""})))})}}var v,m=[r.xAxis.option&&r.xAxis.option.name||"类目"].concat(_toConsumableArray(a.map(function(e){return e.name}))),g=Math.max(2,void 0===t.maxTableRows?200:Number(t.maxTableRows)||200),b=a.reduce(function(e,t){return e+t.pointCount},0),k=b>g?Math.ceil(b/g):1,S=[],A={},w=_createForOfIteratorHelper(a);try{for(w.s();!(v=w.n()).done;)for(var _=v.value,M=0,C=_.pointCount;M<C;M+=k){var T=_.pointAt(M),P=String(T.xValue);A[P]||(A[P]={x:T.xValue,cells:{}},S.push(P)),A[P].cells[_.id]=null===T.y?"":e.formatAxisValue("y",T.y)}}catch(e){w.e(e)}finally{w.f()}var I=S.map(function(t){var r=A[t];return[e.formatAxisValue("x",r.x)].concat(_toConsumableArray(a.map(function(e){return r.cells[e.id]||""})))});return{caption:k>1?"".concat(n,"(共 ").concat(b," 点,已按每 ").concat(k," 点抽样 ").concat(I.length," 行)"):n,columns:m,rows:I}}function buildDataNodes(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Math.max(0,void 0===r.maxDataNodesPerSeries?200:r.maxDataNodesPerSeries),a=[],s=_createForOfIteratorHelper(e.norm.series);try{for(s.s();!(t=s.n()).done;){var l=t.value;if(!l.hidden){var h=e.controller&&e.controller.resolver?e.controller.resolver.seriesComponentOf(l):null;if(h)for(var u=Math.min(l.pointCount,n),c=0;c<u;c++){var p=l.pointAt(c),v=h.pixelAt(c);if(v){var m=[e.layout.plot.x+v[0],e.layout.plot.y+v[1]],g=e.ice&&"function"==typeof e.ice.worldToScreen?e.ice.worldToScreen(m[0],m[1]):m,b=seriesSymbolSize(l);a.push({id:"".concat(l.id,"#").concat(c),role:"graphic",label:"".concat(l.name,",").concat(e.formatAxisValue("x",p.xValue),",").concat(null===p.y?"无数据":e.formatAxisValue("y",p.y)),seriesId:l.id,seriesName:l.name,dataIndex:c,value:p.y,box:{x:g[0]-b/2,y:g[1]-b/2,width:b,height:b},focusable:!0})}}}}}catch(e){s.e(e)}finally{s.f()}return a}function seriesSymbolSize(e){var t=e.option.symbolSize;return"number"==typeof t&&isFinite(t)?Math.max(8,t):"bar"===e.type?12:10}var Te=["position:absolute","width:1px","height:1px","margin:-1px","padding:0","overflow:hidden","clip:rect(0 0 0 0)","clip-path:inset(50%)","white-space:nowrap","border:0"].join(";"),Pe=function(){function A11yMirror(e){_classCallCheck(this,A11yMirror),_defineProperty(this,"wrapper",null),_defineProperty(this,"live",null),_defineProperty(this,"tableEl",null),_defineProperty(this,"hoverHandler",null),_defineProperty(this,"options",{}),this.chart=e}return _createClass(A11yMirror,[{key:"listOptions",get:function get(){return this.options}},{key:"attached",get:function get(){return!!this.wrapper}},{key:"element",get:function get(){return this.wrapper}},{key:"attach",value:function attach(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=t||{};var r=this.chart.ice,n=this.chart.canvasElement,a=r&&r.root&&r.root.document;if(!a||!n||"function"!=typeof a.createElement||!n.parentNode)return!1;this.detach();var s=a.createElement("div");s.id="ice-chart-a11y-mirror-".concat(++A11yMirror.seq),s.setAttribute("style",Te),s.setAttribute("data-ice-chart-a11y","mirror"),this.tableEl=a.createElement("table");var l=a.createElement("div");return l.setAttribute("role","status"),l.setAttribute("aria-live","polite"),s.appendChild(this.tableEl),s.appendChild(l),n.parentNode.appendChild(s),n.setAttribute("aria-describedby",s.id),n.getAttribute("aria-label")||n.setAttribute("aria-label",chartTitle(this.chart.norm)),this.wrapper=s,this.live=l,this.refresh(),this.hoverHandler=function(t){t&&e.announce("".concat(t.seriesName,",").concat(e.chart.formatAxisValue("x",t.xValue),",").concat(null===t.value?"无数据":e.chart.formatAxisValue("y",t.value)))},this.chart.on("item:hover",this.hoverHandler),!0}},{key:"detach",value:function detach(){this.hoverHandler&&(this.chart.off("item:hover",this.hoverHandler),this.hoverHandler=null);var e=this.chart.canvasElement;this.wrapper&&this.wrapper.parentNode&&this.wrapper.parentNode.removeChild(this.wrapper),e&&"function"==typeof e.removeAttribute&&e.removeAttribute("aria-describedby"),this.wrapper=null,this.live=null,this.tableEl=null}},{key:"refresh",value:function refresh(){var e=this.chart.ice&&this.chart.ice.root&&this.chart.ice.root.document;if(this.wrapper&&this.tableEl&&e){for(var t=buildDataTable(this.chart,this.options);this.tableEl.firstChild;)this.tableEl.removeChild(this.tableEl.firstChild);var r=e.createElement("caption");r.textContent=t.caption,this.tableEl.appendChild(r);var n,a=e.createElement("thead"),s=e.createElement("tr"),l=_createForOfIteratorHelper(t.columns);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=e.createElement("th");u.setAttribute("scope","col"),u.textContent=h,s.appendChild(u)}}catch(e){l.e(e)}finally{l.f()}a.appendChild(s),this.tableEl.appendChild(a);var c,p=e.createElement("tbody"),v=_createForOfIteratorHelper(t.rows);try{for(v.s();!(c=v.n()).done;){for(var m=c.value,g=e.createElement("tr"),b=0;b<m.length;b++){var k=e.createElement(0===b?"th":"td");0===b&&k.setAttribute("scope","row"),k.textContent=m[b],g.appendChild(k)}p.appendChild(g)}}catch(e){v.e(e)}finally{v.f()}this.tableEl.appendChild(p)}}},{key:"announce",value:function announce(e){this.live&&(this.live.textContent=e)}}])}();_defineProperty(Pe,"seq",0);function layoutTreemap(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t,s=[],l=Math.max(0,Number(n.gap)||2),h=void 0===n.depthFade?.18:Math.max(0,Math.min(1,Number(n.depthFade)));if(!Array.isArray(e)||!e.length)return s;var u=sumValues(e);if(!(u>0))return s;var c=0,p=function visit(e,t,r,n,a){if(!(t.width<=1||t.height<=1)){var v=e.map(function(e){return{node:e,value:nodeValue(e)}}).filter(function(e){return e.value>0});if(v.length){v.sort(function(e,t){return t.value-e.value});for(var m=v.reduce(function(e,t){return e+t.value},0),g=function squarify(e,t,r){var n=[],a=_objectSpread2({},t),s=e.slice(),l=t.width*t.height/r;if(!(l>0))return n;for(;s.length;){var h=Math.min(a.width,a.height);if(!(h>0))break;for(var u=[],c=0;s.length;){var p=s[0],v=c+p.value*l,m=u.length?worstRatio(u,c,h):1/0,g=worstRatio([].concat(u,[p]),v,h);if(u.length&&g>m)break;u.push(s.shift()),c=v}for(var b=a.width>=a.height,k=c/h,S=0,A=0,w=u;A<w.length;A++){var _=w[A],M=_.value*l/k,C=b?{x:a.x,y:a.y+S,width:k,height:M}:{x:a.x+S,y:a.y,width:M,height:k};n.push({item:_,box:C}),S+=M}a=b?{x:a.x+k,y:a.y,width:Math.max(0,a.width-k),height:a.height}:{x:a.x,y:a.y+k,width:a.width,height:Math.max(0,a.height-k)}}return n}(v,t,m),b=0;b<g.length;b++){var k=g[b],S=k.item,A=k.box,w=S.node.color||shade(a,r*h),_=Array.isArray(S.node.children)?S.node.children:[],M=_.length>0,C=c++,T=M&&A.height>32?16:0;if(s.push({id:C,name:S.node.name,depth:r,parent:n,value:S.value,ratio:S.value/u,rect:A,header:T,color:w,hasChildren:M}),M){var P={x:A.x+l,y:A.y+l+T,width:Math.max(0,A.width-2*l),height:Math.max(0,A.height-2*l-T)};p(_,P,r+1,C,w)}}}}};return p(e,r,0,-1,a[0]),s.filter(function(e){return 0===e.depth}).forEach(function(e,t){var r=a[t%a.length];e.color=r,recolor(s,e.id,r,a,h)}),s}function recolor(e,t,r,n,a){var s,l=_createForOfIteratorHelper(e);try{for(l.s();!(s=l.n()).done;){var h=s.value;h.parent===t&&(h.color=shade(r,h.depth*a),recolor(e,h.id,h.color,n,a))}}catch(e){l.e(e)}finally{l.f()}}function sumValues(e){var t,r=0,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){r+=nodeValue(t.value)}}catch(e){n.e(e)}finally{n.f()}return r}function nodeValue(e){if(Array.isArray(e.children)&&e.children.length)return sumValues(e.children);var t=Number(e.value);return isFinite(t)&&t>0?t:0}function worstRatio(e,t,r){if(!(t>0&&r>0))return 1/0;var n,a=0,s=1/0,l=_createForOfIteratorHelper(e);try{for(l.s();!(n=l.n()).done;){var h=n.value;h.value>a&&(a=h.value),h.value<s&&(s=h.value)}}catch(e){l.e(e)}finally{l.f()}if(!(s>0))return 1/0;var u=t,c=r;return Math.max(c*c*a/(u*u),u*u/(c*c*s))}function shade(e,t){var r=function parseHex(e){if("string"!=typeof e)return null;var t=e.trim();if(0===t.indexOf("#"))return 3===(t=t.slice(1)).length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),6!==t.length?null:[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)];var r=t.match(/rgba?\(([^)]+)\)/);if(r){var n=r[1].split(",").map(function(e){return parseFloat(e)});return[n[0]||0,n[1]||0,n[2]||0]}return null}(e);if(!r)return e;var n=Math.max(0,Math.min(1,t)),a=Math.round(r[0]+(255-r[0])*n),s=Math.round(r[1]+(255-r[1])*n),l=Math.round(r[2]+(255-r[2])*n);return"rgb(".concat(a,",").concat(s,",").concat(l,")")}var Fe=10,Ie=20,Ne=100,De=300,Oe=310,Re=400,He=450,ze=500,Ee=600,Le=620,Ve=640,Be=700;function isChartSnapshot(e){return!!e&&"object"===_typeof(e)&&!Array.isArray(e)&&!!e.option&&("version"in e||"view"in e||"hidden"in e)}function finiteOrNull(e){if(null==e||""===e)return null;var t=Number(e);return isFinite(t)?t:null}function mergeOptionPatch(e,t){var r=_objectSpread2(_objectSpread2({},e),t);return Array.isArray(t&&t.series)&&Array.isArray(e&&e.series)&&(r.series=e.series.map(function(e,r){var n=t.series.find(function(t){return t&&t.id&&e&&e.id&&t.id===e.id}),a=t.series[r],s=n||(a&&!a.id?a:void 0);return s?_objectSpread2(_objectSpread2({},e),s):e})),r}var je=function(){function ICEChart(t,r){var n=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(_classCallCheck(this,ICEChart),_defineProperty(this,"axisYList",[]),_defineProperty(this,"legend",null),_defineProperty(this,"titleComponent",null),_defineProperty(this,"tooltip",null),_defineProperty(this,"crosshair",null),_defineProperty(this,"highlight",null),_defineProperty(this,"brushComponent",null),_defineProperty(this,"dataZoomSlider",null),_defineProperty(this,"seriesComponents",[]),_defineProperty(this,"markLayer",null),_defineProperty(this,"marks",[]),_defineProperty(this,"markSeq",0),_defineProperty(this,"syncingMarks",!1),_defineProperty(this,"fullXDomain",[]),_defineProperty(this,"fullYDomain",[]),_defineProperty(this,"fullYDomains",[]),_defineProperty(this,"emitter",new Ce),_defineProperty(this,"viewState",{x:null,y:null,yAxes:[]}),_defineProperty(this,"autoYCurve",!1),_defineProperty(this,"hiddenIds",{}),_defineProperty(this,"hiddenSlices",{}),_defineProperty(this,"seriesSignature",""),_defineProperty(this,"axisSignature",""),_defineProperty(this,"resizeObserver",null),_defineProperty(this,"destroyed",!1),_defineProperty(this,"silenceDepth",0),_defineProperty(this,"__appliedEngineThemeKey",null),_defineProperty(this,"__offThemeFollow",null),_defineProperty(this,"a11yMirror",new Pe(this)),_defineProperty(this,"virtualColumns",new Map),_defineProperty(this,"__virtualSourceVersion",1),_defineProperty(this,"domainTransition",null),_defineProperty(this,"domainFrameHandler",null),!t)throw new Error("[ice-chart] 初始化失败:缺少 canvas 元素或其 id。");this.chartOptions=a,this.option=r,this.ice=new e.ICE,this.ice.init(t,{renderMode:a.renderMode||"dirty-rect",dpr:a.dpr}),this.canvasEl=this.ice.canvasEl||t,this.registerTypes();var s=this.canvasRect();this.root=new e.ICEGroup({left:0,top:0,width:s.width,height:s.height,origin:"top-left",fill:!1,stroke:!1,interactive:!1,draggable:!1,transformable:!1,linkable:!1,clipChildren:!0,zIndex:0}),this.ice.addChild(this.root),this.plotArea=new j({left:0,top:0,width:1,height:1,zIndex:Fe}),this.grid=new L({width:s.width,height:s.height,zIndex:Ie}),this.annotation=new B({width:s.width,height:s.height,zIndex:Oe}),this.radarGrid=new q({width:s.width,height:s.height,zIndex:Ie+5}),this.polarGrid=new $({width:s.width,height:s.height,zIndex:Ie+6}),this.axisX=new E({orientation:"x",width:s.width,height:s.height,zIndex:Re}),this.axisYList=[new E({orientation:"y",width:s.width,height:s.height,zIndex:Re,axisIndex:0,position:"left"})],this.legend=new W({width:s.width,height:s.height,zIndex:ze}),this.titleComponent=new X({width:s.width,height:s.height,zIndex:He}),this.crosshair=new U({width:s.width,height:s.height,zIndex:Ee}),this.highlight=new K({width:s.width,height:s.height,zIndex:Le}),this.brushComponent=new Y({width:s.width,height:s.height,zIndex:Ve}),this.dataZoomSlider=new Z({left:0,top:0,width:s.width,height:26,zIndex:Ve+5}),this.tooltip=new G({width:s.width,height:s.height,zIndex:Be}),this.root.addChildren([this.plotArea,this.grid,this.annotation,this.radarGrid,this.polarGrid,this.axisX].concat(_toConsumableArray(this.axisYList),[this.titleComponent,this.legend,this.crosshair,this.highlight,this.brushComponent,this.dataZoomSlider,this.tooltip])),this.controller=new Me(this),this.applyOption(r,{animate:"enter",preserveView:!1}),this.controller.bind(),this.__offThemeFollow=this.ice.onThemeChange(function(e){"theme"!==e.kind||n.destroyed||n.option&&"auto"===n.option.theme&&n.rebuild(!1)}),a.autoResize&&this.observeResize()}return _createClass(ICEChart,[{key:"brush",get:function get(){return this.brushComponent}},{key:"setOption",value:function setOption(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.applyOption(e,{animate:void 0===t.animate||t.animate,preserveView:!1!==t.preserveView}),this}},{key:"getOption",value:function getOption(){return this.option}},{key:"expressionDiagnostics",value:function expressionDiagnostics(){var e,t=[],r=_createForOfIteratorHelper(this.norm.series);try{for(r.s();!(e=r.n()).done;){var n=e.value;n.expressionDiagnostics&&n.expressionDiagnostics.length&&t.push({seriesId:n.id,diagnostics:n.expressionDiagnostics})}}catch(e){r.e(e)}finally{r.f()}return t}},{key:"expressionErrors",value:function expressionErrors(){var e,t=[],r=_createForOfIteratorHelper(this.norm.series);try{for(r.s();!(e=r.n()).done;){var n=e.value;if(n.expressionDiagnostics){var a,s=_createForOfIteratorHelper(n.expressionDiagnostics);try{for(s.s();!(a=s.n()).done;){var l=a.value;"error"===l.severity&&t.push({seriesId:n.id,message:l.message})}}catch(e){s.e(e)}finally{s.f()}}}}catch(e){r.e(e)}finally{r.f()}return t}},{key:"annotationDiagnostics",value:function annotationDiagnostics(){return this.annotation?this.annotation.diagnostics.slice():[]}},{key:"annotationErrors",value:function annotationErrors(){return this.annotationDiagnostics().filter(function(e){return"error"===e.severity})}},{key:"setData",value:function setData(e,t){var r=(this.option.series||[]).map(function(e,t){return{item:e,index:t}}).find(function(t){return"number"==typeof e?t.index===e:t.item.id===e||t.item.name===e});if(!r)throw new Error("[ice-chart] 找不到系列:".concat(e));return r.item.data=t,this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("data:change",{seriesId:r.item.id,seriesIndex:r.index}),this}},{key:"appendData",value:function appendData(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==e)throw new Error("[ice-chart] appendData 需要系列 id / name / 下标。");var n=(this.option.series||[]).map(function(e,t){return{item:e,index:t}}).find(function(t){return"number"==typeof e?t.index===e:t.item.id===e||t.item.name===e});if(!n)throw new Error("[ice-chart] 找不到系列:".concat(e));var a=Array.isArray(t)?t:[];if(!a.length)return this;if(n.item.virtual)return this.appendToVirtualSeries(n.item,n.index,a,r);var s=n.item.data;if(void 0!==s&&!Array.isArray(s))throw new Error("[ice-chart] 列式输入({ x, y })不支持 appendData(系列 ".concat(n.item.name||n.item.id||n.index,"):请用 setData 重新给一份数据。"));var l=(s||[]).concat(a),h=Number(r.maxPoints);return n.item.data=isFinite(h)&&h>0&&l.length>h?l.slice(l.length-h):l,this.applyOption(this.option,{animate:!0===r.animate,preserveView:!0}),this.emit("data:change",{seriesId:n.item.id,seriesIndex:n.index}),this}},{key:"appendToVirtualSeries",value:function appendToVirtualSeries(e,t,r,n){var a=this.norm.series.find(function(r){return r.id===(e.id||"series-".concat(t))||r.index===t});if(!a)throw new Error("[ice-chart] appendData:找不到已归一化的系列「".concat(e.id||t,"」。"));if(a.grid)throw new Error("[ice-chart] 虚拟(列存)热力图是稠密矩阵,不支持 appendData(系列 ".concat(e.name||e.id||t,"):请用 setData 重新给一份数据。"));var s,l=Number(n.maxPoints),h=isFinite(l)&&l>0?Math.floor(l):0,u=this.virtualColumns.get(a.id);if(u&&"raw"in u){var c=appendRawItems(u.raw,r,h);if(this.virtualColumns.set(a.id,{raw:c}),c.capacity>0&&void 0!==a.option.data){var p=_objectSpread2(_objectSpread2({},a.option),{},{data:void 0}),v=this.option.series;if(Array.isArray(v)){var m=v.findIndex(function(e,t){return(e&&e.id)===a.id||t===a.index});m>=0&&(v[m]=p)}a.option=p}return this.applyOption(this.option,{animate:!0===n.animate,preserveView:!0}),this.emit("data:change",{seriesId:a.id,seriesIndex:a.index}),this}if(u&&"ring"in u)s=u.ring;else{var g=a.pointCount,b=Math.max(1,h||g);s=createRing(b);for(var k=g-Math.min(g,b);k<g;k++)ringAppend(s,[{x:Number(a.xValueAt(k)),y:a.yValueAt(k)}],0)}if(h&&h!==s.capacity){for(var S=createRing(h),A=Math.min(s.length,h),w=s.length-A;w<s.length;w++){var _=ringYAt(s,w);ringAppend(S,[{x:ringXAt(s,w),y:Number.isNaN(_)?null:_}],0)}s=S}return ringAppend(s,r.map(function(t){if(Array.isArray(t))return{x:finiteOrNull(t[0]),y:finiteOrNull(t[1])};if(t&&"object"===_typeof(t)){var r=e.xField||"x",n=e.yField||"y";return{x:finiteOrNull(void 0!==t[r]?t[r]:t.x),y:finiteOrNull(void 0!==t[n]?t[n]:t.value)}}return{x:void 0,y:finiteOrNull(t)}}),s.length?function ringLastX(e){if(!e.length)return 0;var t=ringXAt(e,e.length-1);return isFinite(t)?t:0}(s)+1:0),function refreshRingDomains(e){for(var t=1/0,r=-1/0,n=1/0,a=-1/0,s=!0,l=-1/0,h=0;h<e.length;h++){var u=ringXAt(e,h);if(isFinite(u)){u<t&&(t=u),u>r&&(r=u),u<l&&(s=!1),l=u;var c=ringYAt(e,h);Number.isNaN(c)||(c<n&&(n=c),c>a&&(a=c))}}e.xDomain=isFinite(t)?[t,r]:[0,1],e.yDomain=isFinite(n)?[n,a]:null,e.xMonotonic=s}(s),this.virtualColumns.set(a.id,{ring:s}),this.applyOption(this.option,{animate:!0===n.animate,preserveView:!0}),this.emit("data:change",{seriesId:a.id,seriesIndex:a.index}),this}},{key:"createVirtualSource",value:function createVirtualSource(t){var r=this,n="number"==typeof t?this.norm.series[t]:this.norm.series.find(function(e){return e.id===t||e.name===t});if(!n)throw new Error("[ice-chart] createVirtualSource:找不到系列「".concat(t,"」。"));if(!n.virtual)throw new Error("[ice-chart] createVirtualSource 只支持虚拟(列存)系列:普通系列本来就是真组件。");var a=this.seriesComponents.find(function(e){return e&&e.series&&e.series.id===n.id});if(!a)throw new Error("[ice-chart] createVirtualSource:系列「".concat(n.id,"」还没有渲染组件。"));var s=new Float64Array(4),l=function readHalo(){return r.norm&&r.norm.theme?r.norm.theme.labelHaloColor:n.color},h=function symbolSize(){var e=n.option,t=Number(e.symbolSize);return isFinite(t)&&t>0?t:8};return{count:n.pointCount,get version(){return function readVersion(){return r.__virtualSourceVersion}()},boxAt:function boxAt(e,t){var r=a.pixelAt(e);if(!r)return t[0]=NaN,t[1]=NaN,t[2]=NaN,void(t[3]=NaN);var n=h()/2;t[0]=r[0]-n,t[1]=r[1]-n,t[2]=r[0]+n,t[3]=r[1]+n},forEachInBox:function forEachInBox(e,t,r,n,s){for(var l=a.virtualIndexRange(e,r),h=l.from,u=l.to,c=Math.max(0,h);c<=u;c++){var p=a.pixelAt(c);p&&(p[1]<t||p[1]>n||s(c))}},hitTest:function hitTest(e,t){return a.hitTestIndex(e,t)},paint:function paint(e){return a.paintInto(e)},materialize:function materialize(t){var r=a.pixelAt(t);if(!r)return null;var u=h();s[0]=r[0],s[1]=r[1];var c=new e.ICEStar({left:r[0]-u/2,top:r[1]-u/2,outerRadius:u/2,innerRadius:u/5,spikes:5,style:{fillStyle:n.color,strokeStyle:l(),lineWidth:1}});return c.__iceChartDataIndex=t,c.__iceChartSeriesId=n.id,c}}}},{key:"setDomain",value:function setDomain(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"api";if(this.destroyed)return this;var n="x"!==e||"zoom"!==r&&"brush"!==r?t:this.guardInteractiveXWindow(t),a=this.clampDomain(e,n,r);if(!a)return this;"x"===e?this.viewState.x=a:this.viewState.y=a,this.rebuild(!1);var s=this.currentRange();return this.emit("pan"===r?"pan:change":"zoom:change",s),this}},{key:"numericXProbe",value:function numericXProbe(){var e,t=[],r=[],n=_createForOfIteratorHelper(this.norm.series);try{for(n.s();!(e=n.n()).done;){var a=e.value;if(!a.hidden){var s=storeDomainOf(a);if(s&&s.xMonotonic)r.push(a);else for(var l=0,h=a.pointCount;l<h;l++){var u=Number(a.xValueAt(l));isFinite(u)&&t.push(u)}}}}catch(e){n.e(e)}finally{n.f()}t.sort(function(e,t){return e-t});for(var c=[],p=0;p<t.length;p++)p>0&&t[p]===t[p-1]||c.push(t[p]);var v=function lowerBound(e,t,r){for(var n=0,a=t;n<a;){var s=n+a>>1;Number(e[s])<r?n=s+1:a=s}return n},m=function upperBound(e,t,r){for(var n=0,a=t;n<a;){var s=n+a>>1;Number(e[s])<=r?n=s+1:a=s}return n},g=function seriesLowerBound(e,t){for(var r=0,n=e.pointCount;r<n;){var a=r+n>>1;Number(e.xValueAt(a))<t?r=a+1:n=a}return r},b=function seriesUpperBound(e,t){for(var r=0,n=e.pointCount;r<n;){var a=r+n>>1;Number(e.xValueAt(a))<=t?r=a+1:n=a}return r};return{total:c.length+r.reduce(function(e,t){return e+t.pointCount},0),countIn:function countIn(e,t){for(var n=m(c,c.length,t)-v(c,c.length,e),a=0,s=r;a<s.length;a++){var l=s[a];n+=b(l,t)-g(l,e)}return n},leftOf:function leftOf(e){var t,n=v(c,c.length,e)-1;n>=0&&(t=c[n]);for(var a=0,s=r;a<s.length;a++){var l=s[a],h=g(l,e)-1;if(!(h<0)){var u=Number(l.xValueAt(h));(void 0===t||u>t)&&(t=u)}}return t},rightOf:function rightOf(e){var t,n=m(c,c.length,e);n<c.length&&(t=c[n]);for(var a=0,s=r;a<s.length;a++){var l=s[a],h=b(l,e);if(!(h>=l.pointCount)){var u=Number(l.xValueAt(h));(void 0===t||u<t)&&(t=u)}}return t}}}},{key:"guardInteractiveXWindow",value:function guardInteractiveXWindow(e){if("category"===this.norm.xAxis.type){var t=this.fullXDomain;if(t.length<2)return e;var r=t.indexOf(e[0]),n=t.indexOf(e[1]);return r<0&&n<0?e:(r<0&&(r=0),n<0&&(n=t.length-1),n-r>=1?e:(r>0?r-=1:n<t.length-1&&(n+=1),[t[r],t[n]]))}var a=this.numericXProbe();if(a.total<2)return e;var s=a.total>=3?2:1,l=Number(e[0]),h=Number(e[1]);if(!isFinite(l)||!isFinite(h)||h<=l)return e;for(var u=a.countIn(l,h),c=0;u<s&&c<4;){c+=1;var p=a.leftOf(l),v=a.rightOf(h);if(void 0===p&&void 0===v)break;(void 0===p?1/0:l-p)<=(void 0===v?1/0:v-h)?l=p:h=v,u=a.countIn(l,h)}return u>=s?[l,h]:e}},{key:"addMark",value:function addMark(t){var r=this,n=t.id||"mark-".concat(++this.markSeq);if(this.marks.some(function(e){return e.id===n}))throw new Error("[ice-chart] addMark:id「".concat(n,"」已经存在"));if(!t||!t.component)throw new Error("[ice-chart] addMark:必须提供 component(一个引擎图元实例)");var a=t.type||"point";if("point"!==a&&"xLine"!==a&&"yLine"!==a&&"xBand"!==a&&"yBand"!==a)throw new Error("[ice-chart] addMark:不支持的 type「".concat(String(a),"」"));var s={id:n,spec:_objectSpread2(_objectSpread2({},t),{},{id:n}),component:t.component,dragging:!1};return this.marks.push(s),this.ensureMarkLayer().addChild(t.component),"function"==typeof t.component.on&&t.component.on(e.ICE_EVENT_NAME_CONSTS.AFTER_MOVE,function(e){if(!r.syncingMarks){var t=e&&isFinite(e.left)&&isFinite(e.top)?{left:Number(e.left),top:Number(e.top)}:void 0,n=r.markDataAt(s,t);"point"===a?(s.spec.x=n.xValue,s.spec.y=n.yValue):"xLine"===a||"xBand"===a?"xLine"===a?s.spec.x=n.xValue:s.spec.x0=n.xValue:"yLine"===a?s.spec.y=n.yValue:s.spec.y0=n.yValue,s.dragging=!0,r.syncMarks(),r.emit("mark:drag",n),"function"==typeof s.spec.onDrag&&s.spec.onDrag(n)}}),this.syncMarks(),this.markHandle(s)}},{key:"getMark",value:function getMark(e){var t=this.marks.find(function(t){return t.id===e});return t?this.markHandle(t):null}},{key:"getMarks",value:function getMarks(){var e=this;return this.marks.map(function(t){return e.markHandle(t)})}},{key:"removeMark",value:function removeMark(e){var t=this.marks.findIndex(function(t){return t.id===e});if(t<0)return!1;var r=_slicedToArray(this.marks.splice(t,1),1)[0];return this.markLayer&&r.component&&this.markLayer.removeChild(r.component),!0}},{key:"clearMarks",value:function clearMarks(){var e,t=_createForOfIteratorHelper(this.marks);try{for(t.s();!(e=t.n()).done;){var r=e.value;this.markLayer&&r.component&&this.markLayer.removeChild(r.component)}}catch(e){t.e(e)}finally{t.f()}this.marks=[]}},{key:"isMarkComponent",value:function isMarkComponent(e){return!!e&&this.marks.some(function(t){return t.component===e})}},{key:"finishMarkDrag",value:function finishMarkDrag(){var e,t=_createForOfIteratorHelper(this.marks);try{for(t.s();!(e=t.n()).done;){var r=e.value;r.dragging&&(r.dragging=!1,this.emit("mark:dragend",this.markDataAt(r)))}}catch(e){t.e(e)}finally{t.f()}}},{key:"ensureMarkLayer",value:function ensureMarkLayer(){if(this.markLayer)return this.markLayer;var t=this.layout?this.layout.canvas:this.canvasRect(),r=new e.ICEGroup({left:0,top:0,width:t.width,height:t.height,origin:"top-left",fill:!1,stroke:!1,interactive:!1,draggable:!1,transformable:!1,linkable:!1,zIndex:De});return this.root.addChild(r),this.markLayer=r,r}},{key:"markHandle",value:function markHandle(e){var t=this,r={id:e.id,spec:e.spec,component:e.component,update:function update(n){return Object.assign(e.spec,n),t.syncMarks(),r},toData:function toData(){return t.markDataAt(e)},remove:function remove(){t.removeMark(e.id)}};return r}},{key:"markAxis",value:function markAxis(e){if(e.seriesId){var t=this.norm.series.find(function(t){return t.id===e.seriesId||t.name===e.seriesId});if(t)return this.norm.yAxes[t.axisIndex]||this.norm.yAxis}return this.norm.yAxes[0]||this.norm.yAxis}},{key:"markBox",value:function markBox(e,t){var r=e.type||"point",n=this.layout.plot,a=this.norm.xAxis.scale,s=this.markAxis(e),l=s&&s.scale,h=Number(e.dx)||0,u=Number(e.dy)||0,c=function px(e){return n.x+Number(a.map(e))+h},p=function py(e){return n.y+Number(l.map(e))+u},v=t.width||1,m=t.height||1;if("xLine"===r)return{left:c(e.x)-v/2,top:n.y+u,width:v,height:n.height};if("yLine"===r)return{left:n.x+h,top:p(e.y)-m/2,width:n.width,height:m};if("xBand"===r){var g=c(e.x0),b=c(e.x1);return{left:Math.min(g,b),top:n.y+u,width:Math.abs(b-g),height:n.height}}if("yBand"===r){var k=p(e.y0),S=p(e.y1);return{left:n.x+h,top:Math.min(k,S),width:n.width,height:Math.abs(S-k)}}var A=c(e.x),w=p(e.y);return{left:A-v/2,top:w-m/2,width:v,height:m,anchor:[A,w]}}},{key:"markDataAt",value:function markDataAt(e,t){var r,n,a=e.spec,s=a.type||"point",l=this.layout.plot,h=this.norm.xAxis.scale,u=this.markAxis(a),c=u&&u.scale,p=e.component.state||{},v=p.width||0,m=p.height||0,g=t?t.left:p.left,b=t?t.top:p.top;"point"===s?(r=g+v/2,n=b+m/2):"xLine"===s||"xBand"===s?(r=g+v/2,n=l.y+l.height/2):(r=l.x+l.width/2,n=b+m/2);var k=h&&"function"==typeof h.invert?h.invert(r-l.x):null,S=c&&"function"==typeof c.invert?Number(c.invert(n-l.y)):NaN;return{id:e.id,xValue:k,yValue:"xLine"!==s&&"xBand"!==s&&isFinite(S)?S:void 0,pixel:[r,n]}}},{key:"syncMarks",value:function syncMarks(){if(this.marks.length&&this.norm&&this.layout){var e=this.layout.plot;this.syncingMarks=!0;try{var t,r=_createForOfIteratorHelper(this.marks);try{for(r.s();!(t=r.n()).done;){var n=t.value,a=n.component.state||{},s=this.markBox(n.spec,{width:a.width||0,height:a.height||0});if([s.left,s.top,s.width,s.height].every(function(e){return isFinite(e)})){var l=!1!==n.spec.hideWhenOutOfView,h=s.anchor||[s.left+s.width/2,s.top+s.height/2],u=!(isFinite(h[0])&&isFinite(h[1]))||h[0]<e.x-s.width||h[0]>e.x+e.width+s.width||h[1]<e.y-s.height||h[1]>e.y+e.height+s.height,c=Math.round(s.left),p=Math.round(s.top),v=Math.max(1,Math.round(s.width)),m=Math.max(1,Math.round(s.height));a.left===c&&a.top===p||(n.component.setPosition(c,p),!0),a.width===v&&a.height===m||(n.component.setState({width:v,height:m}),!0),n.component.setState({display:!l||!u})}else n.component.setState({display:!1})}}catch(e){r.e(e)}finally{r.f()}}finally{this.syncingMarks=!1}this.markLayer&&this.markLayer.setState({width:this.layout.canvas.width,height:this.layout.canvas.height})}}},{key:"resetZoom",value:function resetZoom(){return this.viewState={x:null,y:null,yAxes:[]},this.rebuild(!0),this.emit("zoom:change",this.currentRange()),this}},{key:"toggleSeries",value:function toggleSeries(e,t){var r=this.norm.series.find(function(t){return t.id===e});if(!r)return this;var n=!!this.hiddenIds[e],a=void 0===t?!n:!t;return this.hiddenIds[e]=a,this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("legend:toggle",{seriesId:e,seriesName:r.name,seriesIndex:r.index,selected:!a}),this}},{key:"isSeriesSelected",value:function isSeriesSelected(e){return!this.hiddenIds[e]}},{key:"toggleSlice",value:function toggleSlice(e,t,r){var n=this.norm.series.find(function(t){return t.id===e});if(!n||"pie"!==n.type&&"funnel"!==n.type)return this;var a="".concat(e,"#").concat(t),s=!!this.hiddenSlices[a],l=void 0===r?!s:!r;this.hiddenSlices[a]=l;var h=n.pointAt(t);return this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("legend:toggle",{seriesId:e,seriesName:h&&h.name||"".concat(n.name," ").concat(t+1),seriesIndex:n.index,selected:!l,dataIndex:t}),this}},{key:"showHoverAt",value:function showHoverAt(e,t){var r=this.norm.series.find(function(t){return t.id===e});if(!r)return this;var n=this.controller.resolver.buildActiveItem(r,t);return n&&this.controller.setHover({kind:"item",item:n}),this}},{key:"showHoverAtValue",value:function showHoverAtValue(e){return this.controller.showHoverAtValue(e),this}},{key:"clearHover",value:function clearHover(){return this.controller.clearHover(),this}},{key:"getSelection",value:function getSelection(){return this.controller.getSelectedParams()}},{key:"clearSelection",value:function clearSelection(){return this.controller.clearSelection(),this}},{key:"getDomain",value:function getDomain(e){return"x"===e?this.norm.xAxis.domain.slice():this.norm.yAxis.domain.slice()}},{key:"getAxisDomain",value:function getAxisDomain(e){var t=this.norm.yAxes[e];return t?t.domain.slice():this.norm.yAxis.domain.slice()}},{key:"setAxisDomain",value:function setAxisDomain(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"api";if(0===e)return this.setDomain("y",t,r);if(this.destroyed)return this;var n=this.clampAxisDomain(e,t,r);return n?(this.viewState.yAxes[e]=n,this.rebuild(!1),this.emit("pan"===r?"pan:change":"zoom:change",this.currentRange()),this):this}},{key:"fullDomain",value:function fullDomain(e){return("x"===e?this.fullXDomain:this.fullYDomain).slice()}},{key:"canvasElement",get:function get(){return this.canvasEl}},{key:"getDataTable",value:function getDataTable(){return buildDataTable(this,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}},{key:"getA11yTree",value:function getA11yTree(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="function"==typeof this.ice.getAccessibilityTree?this.ice.getAccessibilityTree():[];return[].concat(_toConsumableArray(t),_toConsumableArray(buildDataNodes(this,e)))}},{key:"attachA11yMirror",value:function attachA11yMirror(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.a11yMirror.attach(e)}},{key:"detachA11yMirror",value:function detachA11yMirror(){this.a11yMirror.detach()}},{key:"a11yMirrorAttached",get:function get(){return this.a11yMirror.attached}},{key:"announceA11y",value:function announceA11y(e){this.a11yMirror.announce(e)}},{key:"on",value:function on(e,t,r){return this.emitter.on(e,t,r),this}},{key:"once",value:function once(e,t,r){return this.emitter.once(e,t,r),this}},{key:"off",value:function off(e,t,r){return this.emitter.off(e,t,r),this}},{key:"emit",value:function emit(e,t){return!(this.silenceDepth>0)&&this.emitter.emit(e,t)}},{key:"silent",value:function silent(e){this.silenceDepth++;try{return e()}finally{this.silenceDepth--}}},{key:"resize",value:function resize(e,t){return this.destroyed?this:(this.ice.fitCanvasToDisplaySize(e,t),this.ice.canvasWidth>0&&this.ice.canvasHeight>0?(this.rebuild(!1),this):this)}},{key:"destroy",value:function destroy(){this.destroyed||(this.destroyed=!0,this.__offThemeFollow&&(this.__offThemeFollow(),this.__offThemeFollow=null),this.stopDomainTransition(),this.a11yMirror.detach(),this.controller.destroy(),this.resizeObserver&&"function"==typeof this.resizeObserver.disconnect&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.emitter.clear(),this.ice.destroy())}},{key:"nextFrame",value:function nextFrame(){var t=this;return new Promise(function(r){var n=t.ice.evtBus;if(n){var a=function handler(){n.off(e.ICE_EVENT_NAME_CONSTS.ROUND_FINISH,a,null),r()};n.on(e.ICE_EVENT_NAME_CONSTS.ROUND_FINISH,a,null),t.ice.dirty=!0}else r()})}},{key:"render",value:function render(){return this.ice.dirty=!0,this.nextFrame()}},{key:"formatAxisValue",value:function formatAxisValue(e,t){var r="x"===e?this.norm.xAxis:this.norm.yAxis,n=r.scale;if(!n)return String(t);var a=r.domain.indexOf(t);return formatTick(t,n,a<0?0:a,r.option.formatter)}},{key:"toDataURL",value:function toDataURL(e,t){return this.ice&&"function"==typeof this.ice.toDataURL?this.ice.toDataURL(e,t):""}},{key:"toBlob",value:function toBlob(e,t,r){this.ice&&"function"==typeof this.ice.toBlob?this.ice.toBlob(e,t,r):e(null)}},{key:"toJSON",value:function toJSON(){return{version:1,option:toSerializableOption(this.option),view:{x:this.viewState.x,y:this.viewState.y,yAxes:this.viewState.yAxes},hidden:_objectSpread2({},this.hiddenIds),hiddenSlices:_objectSpread2({},this.hiddenSlices)}}},{key:"toJSONString",value:function toJSONString(){return JSON.stringify(this.toJSON())}},{key:"fromJSONString",value:function fromJSONString(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=JSON.parse(e);return this.loadSnapshot(r,t),this}},{key:"fromJSONObject",value:function fromJSONObject(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.loadSnapshot(e,t),this}},{key:"loadSnapshot",value:function loadSnapshot(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){var r="string"==typeof e?JSON.parse(e):e,n=r.option||r;if("number"==typeof r.version&&r.version>1)throw new Error("[ice-chart] 快照版本 ".concat(r.version," 高于当前实现支持的 ").concat(1,",请升级 ice-chart 后再还原。"));var a=(Array.isArray(n&&n.series)?n.series:[]).findIndex(function(e){return e&&e.virtual&&!e.data});if(a>=0)throw new Error("[ice-chart] 快照里的 series[".concat(a,"] 是虚拟(列存)系列,数据不在快照里,无法还原:请用 setData 重新给一份数据(虚拟化省内存的代价就是不进快照)。"));var s=t.optionPatch?mergeOptionPatch(n,t.optionPatch):n;this.hiddenIds=r.hidden||{},this.hiddenSlices=r.hiddenSlices||{};var l=r.view||{};this.viewState={x:l.x||null,y:l.y||null,yAxes:l.yAxes||[]},this.applyOption(s,{animate:!1,preserveView:!0})}}},{key:"applyOption",value:function applyOption(e,t){this.option=e;var r=this.norm?this.norm.yAxis.domain.slice():null,n=normalizeOption(e,{hiddenIds:this.hiddenIds,hiddenSlices:this.hiddenSlices,preferDark:isEngineThemeDark(this.ice),virtualColumns:this.virtualColumns});if("auto"!==e.theme){var a=JSON.stringify(n.theme);a!==this.__appliedEngineThemeKey&&(applyChartThemeToEngine(this.ice,n.theme),this.__appliedEngineThemeKey=a)}if(this.fullXDomain=n.xAxis.domain.slice(),this.fullYDomain=n.yAxis.domain.slice(),this.fullYDomains=n.yAxes.map(function(e){return e.domain.slice()}),this.autoYCurve=(e.series||[]).some(function(e){return!!e&&"function"===e.type}),!t.preserveView){this.viewState={x:null,y:null,yAxes:[]};var s=this.initialWindow(n);s&&(this.viewState.x=s)}if(this.hiddenIds=n.hiddenIds,this.hiddenSlices=n.hiddenSlices,this.rebuild("enter"===t.animate?"enter":!1!==t.animate&&"update"),"update"===("enter"===t.animate?"enter":!1!==t.animate&&"update")&&shouldAnimate()&&r&&this.norm&&"cartesian"===this.norm.kind&&2===this.norm.yAxis.domain.length){var l=this.norm.yAxis.domain;(Math.abs(Number(r[0])-Number(l[0]))>1e-9||Math.abs(Number(r[1])-Number(l[1]))>1e-9)&&this.startDomainTransition([Number(r[0]),Number(r[1])],[Number(l[0]),Number(l[1])])}}},{key:"initialWindow",value:function initialWindow(e){var t=e.option.dataZoom;if(!t||void 0===t.start&&void 0===t.end)return null;var r=clamp$2(Number(void 0===t.start?0:t.start)/100,0,1),n=clamp$2(Number(void 0===t.end?100:t.end)/100,0,1);if(r<=0&&n>=1)return null;var a=e.xAxis.domain;if("category"===e.xAxis.type){var s=a.length,l=clamp$2(Math.floor(r*s),0,Math.max(0,s-2)),h=clamp$2(Math.ceil(n*s)-1,l+1,s-1);return[a[l],a[h]]}var u=Number(a[0]),c=Number(a[1])-u;return[u+c*r,u+c*n]}},{key:"startDomainTransition",value:function startDomainTransition(t,r){var n=this;if(this.domainTransition={from:t,to:r},!this.domainFrameHandler){var a=this.ice.evtBus;a&&(this.domainFrameHandler=function(){return n.stepDomainTransition()},a.on(e.ICE_EVENT_NAME_CONSTS.ICE_FRAME_EVENT,this.domainFrameHandler,this))}}},{key:"stepDomainTransition",value:function stepDomainTransition(){var e=this.domainTransition;if(e&&!this.destroyed){var t,r=0,n=_createForOfIteratorHelper(this.seriesComponents);try{for(n.s();!(t=n.n()).done;){var a=t.value,s=Number(a.state.progress);isFinite(s)&&s>r&&(r=s)}}catch(e){n.e(e)}finally{n.f()}if(r>=1)return this.domainTransition=null,this.stopDomainTransition(),void this.rebuild(!1);var l=e.to.map(function(t,n){var a=e.from[n];return isFinite(a)?a+(t-a)*r:t});this.rebuild(!1,l)}else this.stopDomainTransition()}},{key:"stopDomainTransition",value:function stopDomainTransition(){if(this.domainFrameHandler){var t=this.ice&&this.ice.evtBus;t&&t.off(e.ICE_EVENT_NAME_CONSTS.ICE_FRAME_EVENT,this.domainFrameHandler,this),this.domainFrameHandler=null}}},{key:"rebuild",value:function rebuild(e,t){var r=this;if(!this.destroyed){var n=this.canvasRect(),a=this.fullYDomains.map(function(e,t){var n=0===t?r.viewState.y:r.viewState.yAxes[t];return n&&2===n.length?n:e}),s=normalizeOption(this.option,{hiddenIds:this.hiddenIds,hiddenSlices:this.hiddenSlices,preferDark:isEngineThemeDark(this.ice),virtualColumns:this.virtualColumns,xDomain:this.viewState.x&&2===this.viewState.x.length?[this.viewState.x[0],this.viewState.x[1]]:null,yDomain:!this.autoYCurve||this.viewState.y||t&&2===t.length?t&&2===t.length?[Number(t[0]),Number(t[1])]:a[0]&&2===a[0].length?[Number(a[0][0]),Number(a[0][1])]:null:null,yDomains:a.map(function(e){return(!r.autoYCurve||r.viewState.y||t&&2===t.length)&&e&&2===e.length?[Number(e[0]),Number(e[1])]:null})});if(this.norm=s,this.__virtualSourceVersion+=1,this.virtualColumns.size){var l,h=new Set,u=_createForOfIteratorHelper(s.series);try{for(u.s();!(l=u.n()).done;){var c=l.value;c.virtual&&h.add(c.id)}}catch(e){u.e(e)}finally{u.f()}for(var p=0,v=Array.from(this.virtualColumns.keys());p<v.length;p++){var m=v[p];h.has(m)||this.virtualColumns.delete(m)}}this.autoYCurve&&(this.fullYDomain=s.yAxis.domain.slice(),this.fullYDomains=s.yAxes.map(function(e){return e.domain.slice()})),this.layout=computeLayout(s,this.ice.ctx,n),this.buildScales(s),this.root.state.ariaLabel=chartTitle(s),this.syncComponents(!t&&e),this.syncMarks(),this.ice.dirty=!0,this.controller&&this.controller.refreshHover(),this.a11yMirror.attached&&this.a11yMirror.refresh()}}},{key:"buildScales",value:function buildScales(e){var t=this.layout.plot;e.xAxis.scale=createScale(e.xAxis.type,e.xAxis.domain,[0,Math.max(1,t.width)],{logBase:e.xAxis.option.logBase,categoryLookup:e.xAxis.categoryLookup,categoryOffset:e.xAxis.categoryOffset});var r,n=_createForOfIteratorHelper(e.yAxes);try{for(n.s();!(r=n.n()).done;){var a=r.value;a.scale=createScale(a.type,a.domain,[Math.max(1,t.height),0],{logBase:a.option.logBase})}}catch(e){n.e(e)}finally{n.f()}}},{key:"syncComponents",value:function syncComponents(e){var t,r=this.norm,n=this.layout,a=n.canvas,s=n.plot,l=r.theme;this.root.state.width===a.width&&this.root.state.height===a.height||this.root.setState({width:a.width,height:a.height});var h=n.polar,u="cartesian"!==r.kind;null===(t=this.highlight)||void 0===t||t.setClipBox(u?null:{x:s.x,y:s.y,width:s.width,height:s.height}),this.plotArea.setState({left:s.x,top:s.y,width:s.width,height:s.height}),this.plotArea.setBackground("transparent"===l.backgroundColor?null:l.backgroundColor),this.grid.setState({width:a.width,height:a.height}),this.grid.setState({display:!u}),this.grid.xScale=r.xAxis.scale,this.grid.yScale=r.yAxis.scale;var c=n.xAxisLayout;this.grid.xTicks=c.visible?c.visible.filter(function(e){return!c.labels||""!==c.labels[e]}).map(function(e){return c.ticks[e]}):c.ticks.filter(function(e,t){return!c.labels||""!==c.labels[t]}),this.grid.horizontal=r.yAxes.map(function(e,t){return{axis:e,axisLayout:n.yAxes[t],index:t}}).filter(function(e){return void 0===e.axis.option.showGrid?0===e.index:!1!==e.axis.option.showGrid}).map(function(e){return{scale:e.axis.scale,ticks:e.axisLayout.ticks,index:e.index}}),this.grid.plot=s,this.grid.grid=r.option.grid||{},this.grid.theme=l,this.grid.markDirty(),this.radarGrid.setState({width:a.width,height:a.height,display:"radar"===r.kind}),this.radarGrid.theme=l,this.radarGrid.coord="radar"===r.kind&&h&&r.radar?{polar:h,plot:s,indicators:r.radar.indicators.map(function(e,t){return{name:e.name,max:r.radarDomains[t]?r.radarDomains[t][1]:1}}),shape:r.radar.shape||"polygon",splitNumber:Math.max(1,Number(r.radar.splitNumber)||4)}:null,this.radarGrid.markDirty();var p=r.option.polarGrid,v="cartesian"===r.kind&&!!p&&"equal"===r.option.aspect;this.polarGrid.setState({width:a.width,height:a.height,display:v}),this.polarGrid.theme=l,this.polarGrid.layout=n,this.polarGrid.coord=v?{plot:s,xScale:r.xAxis.scale,yScale:r.yAxis.scale,options:!0===p?{}:p}:null,this.polarGrid.markDirty(),this.syncAxisComponents();for(var m=0;m<this.axisYList.length;m++){var g=this.axisYList[m];g.setState({width:a.width,height:a.height,display:!u}),g.layout=n,g.theme=l,g.axis=r.yAxes[m]||r.yAxis,g.axisIndex=m,g.position=r.yAxes[m]&&r.yAxes[m].position||"left",g.syncTicks(),g.markDirty()}var b=this.axisX;b.setState({width:a.width,height:a.height,display:!u}),b.layout=n,b.theme=l,b.axis=r.xAxis,b.syncTicks(),b.markDirty(),this.grid.axisX=this.axisX,this.grid.axisYList=this.axisYList,this.grid.syncTicks(),this.annotation.setState({width:a.width,height:a.height,display:!0}),this.annotation.plot=s,this.annotation.xAxis=r.xAxis,this.annotation.yAxes=r.yAxes,this.annotation.sync(r.option.annotation,{kind:r.kind,plot:s,xAxis:r.xAxis,yAxes:r.yAxes,theme:l}),this.legend&&(this.legend.setState({width:a.width,height:a.height}),this.legend.layout=n,this.legend.theme=l,this.legend.selectable=!1!==r.option.legend.selectable,this.legend.markDirty()),this.titleComponent&&(this.titleComponent.setState({width:a.width,height:a.height}),this.titleComponent.layout=n,this.titleComponent.theme=l,this.titleComponent.markDirty());for(var k=0,S=[this.crosshair,this.highlight,this.brushComponent,this.tooltip];k<S.length;k++){var A=S[k];A&&(A.setState({width:a.width,height:a.height}),A.theme=l,A.markDirty())}if(this.tooltip&&(this.tooltip.layout=n),this.crosshair){this.crosshair.layout=n,this.crosshair.option=r.option.crosshair||{};var w=Number(this.crosshair.option.followDuration);this.crosshair.followDuration=isFinite(w)&&w>=0?Math.min(400,w):90}if(this.crosshair&&this.crosshair.setState({display:!u}),this.brushComponent){var _=r.option.interaction&&r.option.interaction.brush;this.brushComponent.color=_&&!1!==_&&_.color?{fill:toAlpha(_.color,.16),stroke:_.color}:null}if(this.dataZoomSlider){var M=n.slider;if(M){this.dataZoomSlider.setState({left:M.x,top:M.y,width:M.width,height:M.height,display:!0});var C=_slicedToArray(this.domainFractions(),2),T=C[0],P=C[1];this.dataZoomSlider.setWindow(T,P)}else this.dataZoomSlider.setState({display:!1});this.dataZoomSlider.theme=l,this.dataZoomSlider.markDirty()}this.syncSeries(e)}},{key:"domainFractions",value:function domainFractions(){var e=this.fullXDomain,t=this.norm.xAxis.domain;if(!e||e.length<2||!t||t.length<2)return[0,1];if("category"===this.norm.xAxis.type){var r=e.length;if(r<=1)return[0,1];var n=Math.max(0,this.categoryIndexOf(e,t[0])),a=this.categoryIndexOf(e,t[t.length-1]);return[n/r,((a<0?r-1:a)+1)/r]}var s=Number(e[0]),l=Number(e[1])-s||1;return[(Number(t[0])-s)/l,(Number(t[1])-s)/l]}},{key:"categoryIndexOf",value:function categoryIndexOf(e,t){var r=this.norm&&this.norm.xAxis?this.norm.xAxis.categoryLookup:void 0;if(r){var n=r(String(t));return n>=0&&n<e.length?n:-1}return e.indexOf(t)}},{key:"setDomainFromFractions",value:function setDomainFromFractions(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"slider",n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if("cartesian"!==this.norm.kind)return this;var a=_slicedToArray(this.domainFractions(),2),s=a[0],l=a[1];if(Math.abs(s-e)<1e-4&&Math.abs(l-t)<1e-4)return this;var h=this.fullXDomain;if("category"===this.norm.xAxis.type){var u=h.length;if(u<2)return this;var c=Math.round(e*u),p=Math.round(t*u)-1;c=Math.max(0,Math.min(u-1,c)),(p=Math.max(0,Math.min(u-1,p)))<=c&&(p=Math.min(u-1,c+1));var v=[h[c],h[p]];return this.setDomain("x",n?this.guardInteractiveXWindow(v):v,r)}var m=Number(h[0]),g=Number(h[1])-m,b=[m+g*e,m+g*t];return this.setDomain("x",n?this.guardInteractiveXWindow(b):b,r)}},{key:"syncAxisComponents",value:function syncAxisComponents(){var e=this.norm.yAxes,t=e.length,r=e.map(function(e){return e.position}).join("|");if(this.axisSignature!==r){var n,a=_createForOfIteratorHelper(this.axisYList);try{for(a.s();!(n=a.n()).done;){var s=n.value;this.root.removeChild(s)}}catch(e){a.e(e)}finally{a.f()}var l=this.layout.canvas;this.axisYList=e.map(function(e,t){return new E({orientation:"y",width:l.width,height:l.height,zIndex:Re+t,axisIndex:t,position:e.position})}),this.root.addChildren(this.axisYList),this.axisSignature=r}for(;this.axisYList.length>t;){var h=this.axisYList.pop();this.root.removeChild(h)}}},{key:"syncSeries",value:function syncSeries(e){var t=this.norm,r=this.layout.plot,n=t.series.map(function(e){return"".concat(e.id,":").concat(e.type)}).join("|"),a=computeBarSlots(t.series);if(n!==this.seriesSignature){var s,l=_createForOfIteratorHelper(this.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value;this.root.removeChild(h)}}catch(e){l.e(e)}finally{l.f()}this.seriesComponents=t.series.map(function(e,t){return createSeriesComponent(e,{left:r.x,top:r.y,width:r.width,height:r.height,zIndex:Ne+t})}),this.root.addChildren(this.seriesComponents),this.seriesSignature=n}for(var u=0;u<this.seriesComponents.length;u++){var c=this.seriesComponents[u],p=t.series[u],v=!p.hidden,m=t.yAxes[p.axisIndex]||t.yAxis,g=this.layout.polar,b="pie"===p.type?{polar:g,plot:r,canvas:this.layout.canvas}:"radar"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,domains:t.radarDomains}:"funnel"===p.type?{plot:r,canvas:this.layout.canvas,options:t.funnel||{}}:"gauge"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,options:t.gauge||{}}:"liquid"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,options:t.liquid||{}}:"treemap"===p.type?{plot:r,canvas:this.layout.canvas,layout:layoutTreemap(Array.isArray(p.option.data)?p.option.data:[],r,t.treemap||{},t.theme.colorPalette),options:t.treemap||{}}:"graph"===p.type&&t.graph?{plot:r,canvas:this.layout.canvas,layout:forceLayout(t.graph.nodes||[],t.graph.links||[],r,t.graph,t.theme.colorPalette),options:t.graph}:"sankey"===p.type&&t.sankey?{plot:r,canvas:this.layout.canvas,layout:layoutSankey(t.sankey.nodes||[],t.sankey.links||[],r,t.sankey,t.theme.colorPalette),options:t.sankey}:{plot:r,canvas:this.layout.canvas,xScale:t.xAxis.scale,yScale:m.scale,yAxisIndex:p.axisIndex,theme:t.theme};if(c.setState({left:r.x,top:r.y,width:r.width,height:r.height,display:v,zIndex:Ne+u,interactive:v}),c.barSlot=a[p.id]||{index:0,count:1},c.chartTheme=t.theme,c.state.ariaLabel="".concat(p.name," 系列,共 ").concat(p.pointCount," 个数据点"),c.updateSeries(p,!!e&&!this.viewState.x,!!this.domainTransition),"pie"!==p.type&&"funnel"!==p.type||c.setHiddenSlices(hiddenSliceIndexes(t,p.id)),"cartesian"===t.kind&&c.setClipToBox(!0),c.setCoord(b),c.markDirty(),e&&v){var k=t.option.animation;if(k&&!1!==k.enabled){var S=k["enter"===e?"enter":"update"];S&&this.playStage(c,_objectSpread2(_objectSpread2({},S),{},{kind:"enter"===e?"enter":"update"}))}}}}},{key:"playStage",value:function playStage(e,t){if(!shouldAnimate())return e.setAnimationStage(t),e.setState({progress:1}),void e.markDirty();e.setAnimationStage(t);var r=_objectSpread2({},e.props.animations||{});r.progress={from:0,to:1,duration:Math.max(1,Number(t.duration)||480),delay:Number(t.delay)||0,easing:t.easing||"easeOutCubic",startTime:void 0,finished:!1},e.props.animations=r,e.setState({progress:0}),this.ice.animationManager&&this.ice.animationManager.add(e)}},{key:"playEnter",value:function playEnter(e,t,r){this.playStage(e,{duration:t,easing:r,stagger:0})}},{key:"finishAnimations",value:function finishAnimations(){this.domainTransition=null,this.stopDomainTransition();var e,t=_createForOfIteratorHelper([].concat(_toConsumableArray(this.seriesComponents),[this.axisX],_toConsumableArray(this.axisYList),[this.grid,this.tooltip,this.crosshair]));try{for(t.s();!(e=t.n()).done;){var r=e.value;if(r){var n=r.props.animations;if(n)for(var a in n)0!==a.indexOf("__")&&n[a]&&(n[a].finished=!0);var s=!!n&&Object.keys(n).some(function(e){return 0===e.indexOf("__")});this.ice.animationManager&&!s&&this.ice.animationManager.remove(r),r.props&&r.props.animations&&r.props.animations.axisMorph&&r.setState({axisMorph:1}),Number(r.state.progress)<1&&r.setState({progress:1}),r.markDirty()}}}catch(e){t.e(e)}finally{t.f()}return this.ice.dirty=!0,this}},{key:"currentRange",value:function currentRange(){return{x:[this.norm.xAxis.domain[0],this.norm.xAxis.domain[this.norm.xAxis.domain.length-1]],y:[Number(this.norm.yAxis.domain[0]),Number(this.norm.yAxis.domain[1])]}}},{key:"clampDomain",value:function clampDomain(e,t,r){return"y"===e?this.clampAxisDomain(0,t,r):this.clampAxisDomain(-1,t,r)}},{key:"clampAxisDomain",value:function clampAxisDomain(e,t,r){var n=e<0?this.fullXDomain:this.fullYDomains[e];if(!n||n.length<2||!t||t.length<2)return null;var a=e<0?this.norm.xAxis:this.norm.yAxes[e];if(!a)return null;if("category"===a.type){var s=n,l=this.categoryIndexOf(s,t[0]),h=this.categoryIndexOf(s,t[1]);if(l<0&&h<0)return null;if(l<0||h<0){var u=Math.max(1,a.domain.length-1);h<0?(h=s.length-1,l=Math.max(0,h-u)):(l=0,h=Math.min(s.length-1,u))}if(l>h){var c=l;l=h,h=c}if(h-l<1)return null;if("zoom"===r||"brush"===r){var p=h-l+1,v=this.norm.option.interaction&&this.norm.option.interaction.zoom,m=clampBarCount(p,this.layout.plot.width,v&&!1!==v?v:void 0);if(m!==p){var g=(l+h)/2,b=Math.round(g-(m-1)/2);if(b=Math.max(0,Math.min(b,s.length-m)),l=Math.max(0,b),(h=Math.min(s.length-1,l+m-1))-l<1)return null}}return[s[l],s[h]]}var k=Number(n[0]),S=Number(n[1]),A=Number(t[0]),w=Number(t[1]);if(!isFinite(A)||!isFinite(w)||w<=A)return null;var _=.001*(S-k);if(w-A<_)return null;if("pan"===r){var M=.25*(w-A),C=A,T=w;return T<k+M&&(C+=k+M-T,T=k+M),C>S-M&&(T-=C-(S-M),C=S-M),[C,T]}var P=Math.max(k,A),I=Math.min(S,w);return I<=P||I-P<_?null:[P,I]}},{key:"canvasRect",value:function canvasRect(){var e=this.ice&&this.ice.dpr||1,t=(this.ice&&this.ice.canvasWidth?this.ice.canvasWidth:this.canvasEl?this.canvasEl.width:0)/e,r=(this.ice&&this.ice.canvasHeight?this.ice.canvasHeight:this.canvasEl?this.canvasEl.height:0)/e;return{x:0,y:0,width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(r))}}},{key:"observeResize",value:function observeResize(){var e=this,t="undefined"!=typeof window?window.ResizeObserver:null;if(t&&this.canvasEl){var r=this.canvasEl.parentNode||this.canvasEl;this.resizeObserver=new t(function(){e.resize()}),this.resizeObserver.observe(r)}}},{key:"registerTypes",value:function registerTypes(){for(var e=0,t=[["ice-chart:PlotArea",j],["ice-chart:GridLines",L],["ice-chart:Annotation",B],["ice-chart:Axis",E],["ice-chart:Legend",W],["ice-chart:Title",X],["ice-chart:Tooltip",G],["ice-chart:Crosshair",U],["ice-chart:Highlight",K],["ice-chart:Brush",Y]];e<t.length;e++){var r=_slicedToArray(t[e],2),n=r[0],a=r[1];this.ice.registerType(n,a)}}}],[{key:"restore",value:function restore(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=new ICEChart(e,r.initialOption||{series:[]},r.chartOptions);return n.fromJSONObject(t,r),n}}])}();function computeBarSlots(e){var t,r=[],n={},a=_createForOfIteratorHelper(e);try{var s=function _loop(){var e=t.value;if("bar"!==e.type||e.hidden)return 1;var n=e.option.stack?"stack:".concat(e.option.stack):"single:".concat(e.id),a=r.find(function(e){return e.key===n});a||(a={key:n,members:[]},r.push(a)),a.members.push(e)};for(a.s();!(t=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}for(var l=0;l<r.length;l++){var h,u=_createForOfIteratorHelper(r[l].members);try{for(u.s();!(h=u.n()).done;){n[h.value.id]={index:l,count:r.length}}}catch(e){u.e(e)}finally{u.f()}}return n}function hiddenSliceIndexes(e,t){var r=[],n=e.series.find(function(e){return e.id===t});if(!n)return r;for(var a=0;a<n.pointCount;a++){var s=n.pointAt(a);e.hiddenSlices["".concat(t,"#").concat(s.index)]&&r.push(s.index)}return r}function isEngineThemeDark(e){try{var t=function parseHexColor(e){if("string"!=typeof e)return null;var t=e.trim();if("#"!==t.charAt(0))return null;var r=t.slice(1);3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]);return 6!==r.length?null:[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}(e&&e.getTheme&&e.getTheme().semantic.background);if(!t)return!1;var r=_slicedToArray(t.map(function(e){var t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}),3);return.2126*r[0]+.7152*r[1]+.0722*r[2]<.35}catch(e){return!1}}function toAlpha(e,t){if("string"!=typeof e)return"rgba(0,0,0,".concat(t,")");if(0===e.indexOf("#")){var r=e.slice(1);if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}return 0===e.indexOf("rgb(")?e.replace("rgb(","rgba(").replace(")",",".concat(t,")")):e}function applyRange(e,t,r,n){if(("x"===n||"xy"===n)&&r.x){var a,s=_createForOfIteratorHelper(e);try{var l=function _loop4(){var e=a.value;e!==t&&e.silent(function(){return e.setDomain("x",r.x,"link")})};for(s.s();!(a=s.n()).done;)l()}catch(e){s.e(e)}finally{s.f()}}if(("y"===n||"xy"===n)&&r.y){var h,u=_createForOfIteratorHelper(e);try{var c=function _loop5(){var e=h.value;e!==t&&e.silent(function(){return e.setDomain("y",r.y,"link")})};for(u.s();!(h=u.n()).done;)c()}catch(e){u.e(e)}finally{u.f()}}}exports.A11yMirror=Pe,exports.Annotation=B,exports.AreaSeries=te,exports.Axis=E,exports.BOOTSTRAP_CHART_THEME=a,exports.BOOTSTRAP_DARK_CHART_THEME=s,exports.BOOTSTRAP_TOKENS=r,exports.BandScale=O,exports.BarSeries=ee,exports.BoxplotSeries=de,exports.Brush=Y,exports.ChartComponent=H,exports.Crosshair=U,exports.CurveSeriesBase=ye,exports.DARK_CHART_THEME=h,exports.DEFAULT_ANIMATION_STAGES=I,exports.Emitter=Ce,exports.ExpressionError=S,exports.FunctionSeries=me,exports.FunnelSeries=le,exports.GaugeSeries=ce,exports.GraphSeries=ve,exports.GridLines=L,exports.HeatmapSeries=oe,exports.Highlight=K,exports.HitResolver=we,exports.ICEChart=je,exports.InteractionController=Me,exports.LIGHT_CHART_THEME=l,exports.Legend=W,exports.LineSeries=Q,exports.LinearScale=D,exports.LiquidSeries=be,exports.LogScale=R,exports.ParametricSeries=xe,exports.PieSeries=ne,exports.PlotArea=j,exports.RadarGrid=q,exports.RadarSeries=ae,exports.SERIES_ROLE_HINT={line:"趋势线",area:"面积趋势",bar:"柱形",scatter:"散点",pie:"扇形",radar:"雷达多边形",heatmap:"热力图单元",sankey:"桑基连线",funnel:"漏斗阶段",gauge:"仪表盘",liquid:"水位球",boxplot:"箱线图",waterfall:"瀑布柱",treemap:"矩形树图单元",graph:"关系图节点",function:"函数曲线",parametric:"参数曲线"},exports.SNAPSHOT_VERSION=1,exports.SankeySeries=se,exports.ScatterSeries=ie,exports.SeriesBase=J,exports.TimeScale=k,exports.Title=X,exports.Tooltip=G,exports.TreemapSeries=pe,exports.VISUALLY_HIDDEN_STYLE=Te,exports.WaterfallSeries=fe,exports.applyChartThemeToEngine=applyChartThemeToEngine,exports.buildDataNodes=buildDataNodes,exports.buildDataTable=buildDataTable,exports.chartThemeToEnginePatch=chartThemeToEnginePatch,exports.chartTitle=chartTitle,exports.clearCustomSeriesTypes=function clearCustomSeriesTypes(){for(var e=0,t=Object.keys(Se);e<t.length;e++){var r=t[e];delete Se[r]}},exports.compileExpression=compileExpression,exports.compileSampler=compileSampler,exports.computeBarSlots=computeBarSlots,exports.computeBoxplotSummary=computeBoxplotSummary,exports.computeLayout=computeLayout,exports.createChart=function createChart(e,t,r){return"string"==typeof t||isChartSnapshot(t)?je.restore(e,t,{chartOptions:r}):new je(e,t,r)},exports.createScale=createScale,exports.createSeriesComponent=createSeriesComponent,exports.diagnoseExpression=diagnoseExpression,exports.errorsOf=function errorsOf(e){return e.filter(function(e){return"error"===e.severity})},exports.evaluateExpression=function evaluateExpression(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return compileExpression(e).evaluate(t)},exports.forceLayout=forceLayout,exports.formatNumberTick=formatNumberTick,exports.formatTick=formatTick,exports.getMotionPreference=function getMotionPreference(){return z},exports.getSeriesTypeFactory=getSeriesTypeFactory,exports.isBuiltinSeriesType=function isBuiltinSeriesType(e){return Object.prototype.hasOwnProperty.call(ke,e)},exports.isChartSnapshot=isChartSnapshot,exports.layoutSankey=layoutSankey,exports.layoutTreemap=layoutTreemap,exports.linkCharts=function linkCharts(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.axis||"x",a=!1!==r.hover,s=!1!==r.zoom,l=!1!==r.brush,h=[],u=null,c=_createForOfIteratorHelper(e);try{var p=function _loop(){var r=t.value,c=function onHover(t){if(a&&t){u=r;var n,s=_createForOfIteratorHelper(e);try{var l=function _loop2(){var e=n.value;e!==r&&e.silent(function(){return e.showHoverAtValue(t.xValue)})};for(s.s();!(n=s.n()).done;)l()}catch(e){s.e(e)}finally{s.f()}}},p=function onLeave(){if(a&&u===r){u=null;var t,n=_createForOfIteratorHelper(e);try{var s=function _loop3(){var e=t.value;e!==r&&e.silent(function(){return e.clearHover()})};for(n.s();!(t=n.n()).done;)s()}catch(e){n.e(e)}finally{n.f()}}},v=function onZoom(t){s&&t&&applyRange(e,r,t,n)},m=function onPan(t){s&&t&&applyRange(e,r,t,n)},g=function onBrush(t){l&&t&&applyRange(e,r,t,n)};r.on("item:hover",c),r.on("item:leave",p),r.on("zoom:change",v),r.on("pan:change",m),r.on("brush:end",g),h.push(function(){r.off("item:hover",c),r.off("item:leave",p),r.off("zoom:change",v),r.off("pan:change",m),r.off("brush:end",g)})};for(c.s();!(t=c.n()).done;)p()}catch(e){c.e(e)}finally{c.f()}return{charts:e,unlink:function unlink(){for(var e=0,t=h;e<t.length;e++){(0,t[e])()}h.length=0}}},exports.listSeriesTypes=function listSeriesTypes(){return[].concat(_toConsumableArray(Object.keys(ke)),_toConsumableArray(Object.keys(Se)))},exports.mergeOptionPatch=mergeOptionPatch,exports.mixColors=mixColors,exports.normalizeAnimation=normalizeAnimation,exports.normalizeAnnotation=normalizeAnnotation,exports.normalizeOption=normalizeOption,exports.registerSeriesType=function registerSeriesType(e,t){if("string"!=typeof e||!Ae.test(e))throw new Error("[ice-chart] registerSeriesType:类型名必须是非空字符串(字母开头,可含数字 / 下划线 / 连字符),收到「".concat(String(e),"」"));if("function"!=typeof t)throw new Error("[ice-chart] registerSeriesType:factory 必须是函数");if(Object.prototype.hasOwnProperty.call(ke,e))throw new Error("[ice-chart] registerSeriesType:「".concat(e,"」是内置类型,不能覆盖(会破坏 option 的跨端可复现性)"));var r=Se[e];if(r&&r!==t)throw new Error("[ice-chart] registerSeriesType:「".concat(e,"」已经注册过另一个工厂,先 unregisterSeriesType 再注册"));Se[e]=t},exports.resolveAnnotation=resolveAnnotation,exports.resolveChartTheme=resolveChartTheme,exports.robustRange=robustRange,exports.roundRect=roundRect,exports.sampleFunctionCurve=sampleFunctionCurve,exports.sampleGraphLink=sampleGraphLink,exports.sampleLinkPath=sampleLinkPath,exports.sampleParametricCurve=sampleParametricCurve,exports.setMotionPreference=function setMotionPreference(e){z=e},exports.shouldAnimate=shouldAnimate,exports.toSerializableOption=toSerializableOption,exports.unregisterSeriesType=function unregisterSeriesType(e){return!!Object.prototype.hasOwnProperty.call(Se,e)&&(delete Se[e],!0)},exports.warningsOf=function warningsOf(e){return e.filter(function(e){return"warning"===e.severity})};
|
|
27
|
+
var e,t,r="function"==typeof Symbol?Symbol:{},n=r.iterator||"@@iterator",a=r.toStringTag||"@@toStringTag";function i(r,n,a,l){var h=n&&n.prototype instanceof Generator?n:Generator,u=Object.create(h.prototype);return _regeneratorDefine(u,"_invoke",function(r,n,a){var l,h,u,c=0,p=a||[],v=!1,m={p:0,n:0,v:e,a:d,f:d.bind(e,4),d:function(t,r){return l=t,h=0,u=e,m.n=r,s}};function d(r,n){for(h=r,u=n,t=0;!v&&c&&!a&&t<p.length;t++){var a,l=p[t],g=m.p,b=l[2];r>3?(a=b===n)&&(u=l[(h=l[4])?5:(h=3,3)],l[4]=l[5]=e):l[0]<=g&&((a=r<2&&g<l[1])?(h=0,m.v=n,m.n=l[1]):g<b&&(a=r<3||l[0]>n||n>b)&&(l[4]=r,l[5]=n,m.n=b,h=0))}if(a||r>1)return s;throw v=!0,n}return function(a,p,g){if(c>1)throw TypeError("Generator is already running");for(v&&1===p&&d(p,g),h=p,u=g;(t=h<2?e:u)||!v;){l||(h?h<3?(h>1&&(m.n=-1),d(h,u)):m.n=u:m.v=u);try{if(c=2,l){if(h||(a="next"),t=l[a]){if(!(t=t.call(l,u)))throw TypeError("iterator result is not an object");if(!t.done)return t;u=t.value,h<2&&(h=0)}else 1===h&&(t=l.return)&&t.call(l),h<2&&(u=TypeError("The iterator does not provide a '"+a+"' method"),h=1);l=e}else if((t=(v=m.n<0)?u:r.call(n,m))!==s)break}catch(t){l=e,h=1,u=t}finally{c=1}}return{value:t,done:v}}}(r,a,l),!0),u}var s={};function Generator(){}function GeneratorFunction(){}function GeneratorFunctionPrototype(){}t=Object.getPrototypeOf;var l=[][n]?t(t([][n]())):(_regeneratorDefine(t={},n,function(){return this}),t),h=GeneratorFunctionPrototype.prototype=Generator.prototype=Object.create(l);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,GeneratorFunctionPrototype):(e.__proto__=GeneratorFunctionPrototype,_regeneratorDefine(e,a,"GeneratorFunction")),e.prototype=Object.create(h),e}return GeneratorFunction.prototype=GeneratorFunctionPrototype,_regeneratorDefine(h,"constructor",GeneratorFunctionPrototype),_regeneratorDefine(GeneratorFunctionPrototype,"constructor",GeneratorFunction),GeneratorFunction.displayName="GeneratorFunction",_regeneratorDefine(GeneratorFunctionPrototype,a,"GeneratorFunction"),_regeneratorDefine(h),_regeneratorDefine(h,a,"Generator"),_regeneratorDefine(h,n,function(){return this}),_regeneratorDefine(h,"toString",function(){return"[object Generator]"}),(_regenerator=function(){return{w:i,m:f}})()}function _regeneratorDefine(e,t,r,n){var a=Object.defineProperty;try{a({},"",{})}catch(e){a=0}_regeneratorDefine=function(e,t,r,n){function o(t,r){_regeneratorDefine(e,t,function(e){return this._invoke(t,r,e)})}t?a?a(e,t,{value:r,enumerable:!n,configurable:!n,writable:!n}):e[t]=r:(o("next",0),o("throw",1),o("return",2))},_regeneratorDefine(e,t,r,n)}function _setPrototypeOf(e,t){return _setPrototypeOf=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},_setPrototypeOf(e,t)}function _slicedToArray(e,t){return function _arrayWithHoles(e){if(Array.isArray(e))return e}(e)||function _iterableToArrayLimit(e,t){var r=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var n,a,s,l,h=[],u=!0,c=!1;try{if(s=(r=r.call(e)).next,0===t){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=s.call(r)).done)&&(h.push(n.value),h.length!==t);u=!0);}catch(e){c=!0,a=e}finally{try{if(!u&&null!=r.return&&(l=r.return(),Object(l)!==l))return}finally{if(c)throw a}}return h}}(e,t)||_unsupportedIterableToArray(e,t)||function _nonIterableRest(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _superPropGet(e,t,r,n){var a=_get(_getPrototypeOf(1&n?e.prototype:e),t,r);return 2&n&&"function"==typeof a?function(e){return a.apply(r,e)}:a}function _toConsumableArray(e){return function _arrayWithoutHoles(e){if(Array.isArray(e))return _arrayLikeToArray(e)}(e)||function _iterableToArray(e){if("undefined"!=typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||_unsupportedIterableToArray(e)||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 _toPropertyKey(e){var t=function _toPrimitive(e,t){if("object"!=typeof e||!e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!=typeof n)return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"==typeof t?t:t+""}function _typeof(e){return _typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},_typeof(e)}function _unsupportedIterableToArray(e,t){if(e){if("string"==typeof e)return _arrayLikeToArray(e,t);var r={}.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(e):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?_arrayLikeToArray(e,t):void 0}}function _wrapNativeSuper(e){var t="function"==typeof Map?new Map:void 0;return _wrapNativeSuper=function(e){if(null===e||!function _isNativeFunction(e){try{return-1!==Function.toString.call(e).indexOf("[native code]")}catch(t){return"function"==typeof e}}(e))return e;if("function"!=typeof e)throw new TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,Wrapper)}function Wrapper(){return function _construct(e,t,r){if(_isNativeReflectConstruct())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);var a=new(e.bind.apply(e,n));return r&&_setPrototypeOf(a,r.prototype),a}(e,arguments,_getPrototypeOf(this).constructor)}return Wrapper.prototype=Object.create(e.prototype,{constructor:{value:Wrapper,enumerable:!1,writable:!0,configurable:!0}}),_setPrototypeOf(Wrapper,e)},_wrapNativeSuper(e)}function storeDomainOf(e){var t=e.columns||e.ring||e.chunks||e.raw;return t?{xDomain:t.xDomain,yDomain:t.yDomain,xMonotonic:t.xMonotonic,sizeExtent:t.sizeExtent}:null}function rawCategoryIndex(e,t){var r=e.categorySeq.get(t);if(void 0===r)return-1;var n=e.categories[0];if(void 0===n)return 0;var a=e.categorySeq.get(String(n));return r-(void 0===a?0:a)}function columnAccessors(e){var t=e.x,r=e.y,n=e.size,a=function yAt(e){var t=r[e];return isNaNNumber(t)?null:t};return{pointAt:function pointAt(e){var r=a(e),s=n?n[e]:NaN;return{index:e,xValue:t[e],y:r,raw:void 0,base:0,top:null===r?0:r,name:void 0,size:isNaNNumber(s)?void 0:s}},xValueAt:function xValueAt(e){return t[e]},yValueAt:a,baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=a(e);return null===t?0:t},sizeAt:function sizeAt(e){if(n){var t=n[e];return isNaNNumber(t)?void 0:t}}}}function isNaNNumber(e){return"number"!=typeof e||Number.isNaN(e)}function toNumber(e){if(null==e)return null;var t=Number(e);return isFinite(t)?t:null}function readGenericPointInto(e,t,r,n){n.xValue=t,n.y=null,n.size=void 0,n.name=void 0,n.explicitX=!1;var a=e;if(Array.isArray(e)){if(n.xValue=e[0],n.y=toNumber(e[1]),e.length>2){var s=toNumber(e[2]);n.size=null===s?void 0:s}n.explicitX=!0}else if("number"==typeof e||null===e)n.y=toNumber(e);else if(e&&"object"===_typeof(e)){var l=r.xField||"x",h=r.yField||"y";if(void 0!==e[l]?(n.xValue=e[l],n.explicitX=!0):void 0!==e.x?(n.xValue=e.x,n.explicitX=!0):void 0!==e.name&&"bar"===r.type&&(n.xValue=e.name,n.explicitX=!0),void 0!==e[h]?n.y=toNumber(e[h]):void 0!==e.y?n.y=toNumber(e.y):void 0!==e.value&&(n.y=toNumber(e.value)),void 0!==e.size){var u=toNumber(e.size);n.size=null===u?void 0:u}}return a&&"object"===_typeof(a)&&!Array.isArray(a)&&void 0!==a.name?n.name=String(a.name):"pie"===r.type&&Array.isArray(a)&&"string"==typeof a[0]&&(n.name=a[0]),n}function readGenericPoint(e,t,r){return readGenericPointInto(e,t,r,{xValue:t,y:null,explicitX:!1})}function rawItemAt(e,t){if(!(t<0||t>=e.length))return e.capacity<=0?e.data[t]:e.data[(e.start+t)%e.capacity]}function appendRawItems(e,t,r){var n={type:e.type,xField:e.xField,yField:e.yField},a={xValue:0,y:null,size:void 0,name:void 0,explicitX:!1},s=function parsedOf(e){return readGenericPointInto(e,0,n,a)},l=e.length?Number(s(rawItemAt(e,e.length-1)).xValue):-1/0,h=!1,u=function noteAdded(t){var r=s(t),n=Number(r.xValue);isFinite(n)?(n<e.xDomain[0]&&(e.xDomain[0]=n),n>e.xDomain[1]&&(e.xDomain[1]=n),n<l&&(e.xMonotonic=!1),l=n):e.xMonotonic=!1,null!==r.y&&(e.yDomain?(r.y<e.yDomain[0]&&(e.yDomain[0]=r.y),r.y>e.yDomain[1]&&(e.yDomain[1]=r.y)):e.yDomain=[r.y,r.y])},c=function noteEvicted(t){if(void 0!==t){var r=s(t),n=Number(r.xValue);!isFinite(n)||n!==e.xDomain[0]&&n!==e.xDomain[1]||(h=!0);var a=r.y;null===a||!e.yDomain||a!==e.yDomain[0]&&a!==e.yDomain[1]||(h=!0)}};if(r>0&&e.capacity!==r){for(var p=Math.min(e.length,r),v=new Array(r),m=0;m<p;m++)v[m]=rawItemAt(e,e.length-p+m);e.data=v,e.capacity=r,e.start=0,e.length=p,e.categories=[],e.categoryCounts=new Map,e.categorySeq=new Map,e.categoryNext=0;for(var g=0;g<p;g++){var b,k=readGenericPointInto(rawItemAt(e,g),0,n,a),S=String(k.xValue),A=null!==(b=e.categoryCounts.get(S))&&void 0!==b?b:0;0===A&&(e.categories.push(k.xValue),e.categorySeq.set(S,e.categoryNext++)),e.categoryCounts.set(S,A+1)}}var w=function addCategory(t){var r,n=readGenericPoint(t,0,{type:e.type,xField:e.xField,yField:e.yField}),a=String(n.xValue),s=null!==(r=e.categoryCounts.get(a))&&void 0!==r?r:0;0===s&&(e.categories.push(n.xValue),e.categorySeq.set(a,e.categoryNext++)),e.categoryCounts.set(a,s+1)},_=function removeCategory(t){var r;if(void 0!==t){var n=readGenericPoint(t,0,{type:e.type,xField:e.xField,yField:e.yField}),a=String(n.xValue),s=null!==(r=e.categoryCounts.get(a))&&void 0!==r?r:0;if(s<=1){e.categoryCounts.delete(a);var l=e.categories.findIndex(function(e){return String(e)===a}),h=e.categories.length?e.categorySeq.get(String(e.categories[0])):void 0,u=e.categorySeq.get(a);if(e.categorySeq.delete(a),l>=0&&(e.categories.splice(l,1),void 0!==u&&u!==h)){for(var c=0;c<e.categories.length;c++)e.categorySeq.set(String(e.categories[c]),c);e.categoryNext=e.categories.length}}else e.categoryCounts.set(a,s-1)}};if(e.capacity>0){var M,C=_createForOfIteratorHelper(t);try{for(C.s();!(M=C.n()).done;){var T=M.value,P=void 0,I=void 0;e.length>=e.capacity?(P=e.start,I=e.data[P],e.start=(e.start+1)%e.capacity):(P=(e.start+e.length)%e.capacity,e.length+=1),void 0!==I&&_(I),e.data[P]=T,w(T),c(I),u(T)}}catch(e){C.e(e)}finally{C.f()}}else{var N,D=_createForOfIteratorHelper(t);try{for(D.s();!(N=D.n()).done;){var O=N.value;e.data.push(O),w(O),u(O)}}catch(e){D.e(e)}finally{D.f()}e.length=e.data.length}return h&&function refreshRawDomains(e){for(var t={type:e.type,xField:e.xField,yField:e.yField},r={xValue:0,y:null,size:void 0,name:void 0,explicitX:!1},n=1/0,a=-1/0,s=1/0,l=-1/0,h=1/0,u=-1/0,c=!0,p=-1/0,v=!1,m=0;m<e.length;m++){var g=readGenericPointInto(rawItemAt(e,m),m,t,r),b=Number(g.xValue);isFinite(b)?(b<n&&(n=b),b>a&&(a=b),b<p&&(c=!1),p=b):c=!1,null!==g.y&&(g.y<s&&(s=g.y),g.y>l&&(l=g.y)),"number"==typeof g.size&&isFinite(g.size)&&(v=!0,g.size<h&&(h=g.size),g.size>u&&(u=g.size))}e.xDomain=isFinite(n)?[n,a]:[0,Math.max(0,e.length-1)],e.yDomain=isFinite(s)?[s,l]:null,e.xMonotonic=c,e.sizeExtent=v?h===u?[h,h+1]:[h,u]:null}(e),e}function rawAccessors(e){var t={type:e.type,xField:e.xField,yField:e.yField},r=function readAt(r){var n=rawItemAt(e,r);return void 0===n&&(r<0||r>=e.length)?null:readGenericPoint(n,r,t)};return{pointAt:function pointAt(t){var n=r(t);if(n)return{index:t,xValue:n.xValue,y:n.y,raw:rawItemAt(e,t),base:0,top:null===n.y?0:n.y,name:n.name,size:n.size}},xValueAt:function xValueAt(e){var t=r(e);return t?t.xValue:void 0},yValueAt:function yValueAt(e){var t=r(e);return t?t.y:null},baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=r(e);return t&&null!==t.y?t.y:0},sizeAt:function sizeAt(e){var t=r(e);return t?t.size:void 0}}}function gridAccessors(e){var t=e.xCategories.length,r=function valueAt(t){var r=e.values[t];return isNaNNumber(r)?null:r};return{pointAt:function pointAt(n){var a=t>0?n%t:n,s=t>0?(n-a)/t:0,l=r(n),h=e.yCategories[s];return{index:n,xValue:e.xCategories[a],y:l,raw:void 0,base:0,top:null===l?0:l,name:void 0===h?void 0:String(h)}},xValueAt:function xValueAt(r){return t>0?e.xCategories[r%t]:e.xCategories[r]},yValueAt:r,baseAt:function baseAt(){return 0},topAt:function topAt(e){var t=r(e);return null===t?0:t},sizeAt:function sizeAt(){}}}function createRing(e){var t=Math.max(1,Math.floor(e)||1);return{kind:"ring",capacity:t,start:0,length:0,x:new Float64Array(t),y:new Float64Array(t),xDomain:[0,1],yDomain:null,xMonotonic:!0,sizeExtent:null}}function ringSlot(e,t){return(e.start+t)%e.capacity}function ringXAt(e,t){return e.x[ringSlot(e,t)]}function ringYAt(e,t){return e.y[ringSlot(e,t)]}function ringAppend(e,t,r){var n,a=_createForOfIteratorHelper(t);try{for(a.s();!(n=a.n()).done;){var s=n.value,l=void 0;e.length>=e.capacity?(l=e.start,e.start=(e.start+1)%e.capacity):(l=(e.start+e.length)%e.capacity,e.length+=1);var h=s.x;e.x[l]=null!=h&&isFinite(h)?h:r,e.y[l]=null===s.y?NaN:s.y,r=e.x[l]+1}}catch(e){a.e(e)}finally{a.f()}}function chunkAt(e,t){if(t<0||t>=e.total)return null;var r=function chunkIndexOf(e,t){for(var r=0,n=e.sizes.length-1;r<n;){var a=r+n+1>>1;e.offsets[a]<=t?r=a:n=a-1}return r}(e,t),n=e.resident[r];return n?{columns:n,local:t-e.offsets[r]}:null}function requestChunk(e,t,r){if(!(t<0||t>=e.sizes.length))if(e.resident[t]||e.loading.has(t))touchLru(e,t);else{e.loading.add(t);var n=function settle(n){e.loading.delete(t),n&&(e.resident[t]=n,touchLru(e,t),function refreshChunkMeta(e,t){var r=e.resident[t];if(!r)return;var n=e.sizes[t];if(n){var a=r.x[0],s=r.x[n-1];isFinite(a)&&isFinite(s)&&(e.ranges[t]=[Math.min(a,s),Math.max(a,s)])}var l=e.ranges.filter(function(e){return!!e});l.length&&(e.xDomain=[Math.min.apply(Math,_toConsumableArray(l.map(function(e){return e[0]}))),Math.max.apply(Math,_toConsumableArray(l.map(function(e){return e[1]})))])}(e,t),function evictChunks(e){for(;e.lru.length>e.maxResident;){var t=e.lru.find(function(t){return!e.loading.has(t)});if(void 0===t)return;var r=e.lru.indexOf(t);e.lru.splice(r,1),e.resident[t]=null}}(e),r())};try{var a=e.load(t);a&&"function"==typeof a.then?a.then(function(e){return n(e)},function(){return n(null)}):n(a)}catch(e){n(null)}}}function chunkRangeForX(e,t,r){var n=e.sizes.length;if(!n)return{from:0,to:-1};for(var a=-1,s=-1,l=0;l<n;l++){var h=e.ranges[l];h&&(h[1]<t||h[0]>r||(a<0&&(a=l),s=l))}return a<0?{from:0,to:-1}:{from:Math.max(0,a-1),to:Math.min(n-1,s+1)}}function touchLru(e,t){var r=e.lru.indexOf(t);r>=0&&e.lru.splice(r,1),e.lru.push(t)}function chunkAccessors(e){var t=function yAt(t){var r=chunkAt(e,t);if(!r)return null;var n=r.columns.y[r.local];return Number.isNaN(n)?null:n};return{pointAt:function pointAt(r){var n=chunkAt(e,r);if(n){var a=t(r);return{index:r,xValue:n.columns.x[n.local],y:a,raw:void 0,base:0,top:null===a?0:a,name:void 0}}},xValueAt:function xValueAt(t){var r=chunkAt(e,t);return r?r.columns.x[r.local]:void 0},yValueAt:t,baseAt:function baseAt(){return 0},topAt:function topAt(e){var r=t(e);return null===r?0:r},sizeAt:function sizeAt(){}}}var t=_toConsumableArray(e.FAMILY_PALETTE),r={primary:"#0D6EFD",secondary:"#6C757D",success:"#198754",danger:"#DC3545",warning:"#FFC107",info:"#0DCAF0",light:"#F8F9FA",dark:"#212529",indigo:"#6610F2",purple:"#6F42C1",pink:"#D63384",orange:"#FD7E14",teal:"#20C997",cyan:"#0DCAF0",gray:{100:"#F8F9FA",200:"#E9ECEF",300:"#DEE2E6",400:"#CED4DA",500:"#ADB5BD",600:"#6C757D",700:"#495057",800:"#343A40",900:"#212529"},fontFamily:'system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "PingFang SC", "Microsoft YaHei", sans-serif',radius:6},n=r,a={backgroundColor:"transparent",colorPalette:t,textColor:n.dark,subTextColor:n.secondary,axisLineColor:n.gray[300],axisLabelColor:n.gray[600],splitLineColor:n.gray[200],labelHaloColor:"rgba(255,255,255,0.85)",fontFamily:n.fontFamily,fontSize:12,legend:{textColor:n.gray[700],inactiveColor:n.gray[400]},tooltip:{background:"#ffffff",borderColor:n.gray[300],textColor:n.dark,shadowColor:"rgba(33,37,41,0.18)",fontSize:12,padding:10,radius:n.radius},crosshair:{lineColor:n.gray[500],labelBackground:n.gray[700],labelColor:"#ffffff"},brush:{fill:"rgba(13,110,253,0.16)",stroke:"rgba(13,110,253,0.8)"},selection:{stroke:n.primary,dimOpacity:.3}},s={backgroundColor:"transparent",colorPalette:_toConsumableArray(e.FAMILY_PALETTE_DARK),textColor:n.gray[200],subTextColor:n.gray[500],axisLineColor:n.gray[700],axisLabelColor:n.gray[400],splitLineColor:n.gray[800],labelHaloColor:"rgba(10,18,32,0.88)",fontFamily:n.fontFamily,fontSize:12,legend:{textColor:n.gray[300],inactiveColor:n.gray[700]},tooltip:{background:n.gray[800],borderColor:n.gray[700],textColor:n.gray[100],shadowColor:"rgba(0,0,0,0.5)",fontSize:12,padding:10,radius:n.radius},crosshair:{lineColor:n.gray[600],labelBackground:n.gray[300],labelColor:n.dark},brush:{fill:"rgba(77,148,255,0.2)",stroke:"rgba(77,148,255,0.85)"},selection:{stroke:"#4D94FF",dimOpacity:.32}},l=a,h=s;function resolveChartTheme(e){var t="dark"===e||"auto"===e&&(arguments.length>1&&void 0!==arguments[1]?arguments[1]:{}).preferDark?s:a;return e&&"string"!=typeof e?_objectSpread2(_objectSpread2(_objectSpread2({},t),e),{},{legend:_objectSpread2(_objectSpread2({},t.legend),e.legend||{}),tooltip:_objectSpread2(_objectSpread2({},t.tooltip),e.tooltip||{}),crosshair:_objectSpread2(_objectSpread2({},t.crosshair),e.crosshair||{}),brush:_objectSpread2(_objectSpread2({},t.brush),e.brush||{}),selection:_objectSpread2(_objectSpread2({},t.selection),e.selection||{})}):t}function clamp$2(e,t,r){return e<t?t:e>r?r:e}function isFiniteNumber(e){return"number"==typeof e&&isFinite(e)}function extent(e){for(var t=1/0,r=-1/0,n=0;n<e.length;n++){var a=e[n];isFiniteNumber(a)&&(a<t&&(t=a),a>r&&(r=a))}if(t===1/0)return[0,1];if(t===r){var s=Math.abs(t)>1?.1*Math.abs(t):1;return[t-s,r+s]}return[t,r]}function niceStep(e,t){if(!(e>0&&t>0))return 1;var r=e/t,n=Math.pow(10,Math.floor(Math.log10(r))),a=r/n;return(a>=5?10:a>=2?5:a>=1?2:1)*n}function niceDomain(e,t){var r=_slicedToArray(e,2),n=r[0],a=r[1],s=niceStep(a-n,t);return[Math.floor(n/s)*s,Math.ceil(a/s)*s]}function round(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:10,r=Math.pow(10,t);return Math.round(e*r)/r}var u=1e3,c=6e4,p=36e5,v=24*p,m=30*v,g=365*v;function makeInterval(e,t,r,n,a){return{unit:e,ms:t*r,floor:function floor(e){var t=new Date(e);return n(t),t.getTime()},next:function next(e){var t=new Date(e);return a(t),t.getTime()}}}var b=[makeInterval("ms",1,1,function(){},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+1)}),makeInterval("ms",10,1,function(e){return e.setUTCMilliseconds(10*Math.floor(e.getUTCMilliseconds()/10))},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+10)}),makeInterval("ms",100,1,function(e){return e.setUTCMilliseconds(100*Math.floor(e.getUTCMilliseconds()/100))},function(e){return e.setUTCMilliseconds(e.getUTCMilliseconds()+100)}),makeInterval("s",1,u,function(e){return e.setUTCMilliseconds(0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+1)}),makeInterval("s",5,u,function(e){return e.setUTCSeconds(5*Math.floor(e.getUTCSeconds()/5),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+5)}),makeInterval("s",15,u,function(e){return e.setUTCSeconds(15*Math.floor(e.getUTCSeconds()/15),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+15)}),makeInterval("s",30,u,function(e){return e.setUTCSeconds(30*Math.floor(e.getUTCSeconds()/30),0)},function(e){return e.setUTCSeconds(e.getUTCSeconds()+30)}),makeInterval("m",1,c,function(e){return e.setUTCSeconds(0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+1)}),makeInterval("m",5,c,function(e){return e.setUTCMinutes(5*Math.floor(e.getUTCMinutes()/5),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+5)}),makeInterval("m",15,c,function(e){return e.setUTCMinutes(15*Math.floor(e.getUTCMinutes()/15),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+15)}),makeInterval("m",30,c,function(e){return e.setUTCMinutes(30*Math.floor(e.getUTCMinutes()/30),0,0)},function(e){return e.setUTCMinutes(e.getUTCMinutes()+30)}),makeInterval("h",1,p,function(e){return e.setUTCMinutes(0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+1)}),makeInterval("h",3,p,function(e){return e.setUTCHours(3*Math.floor(e.getUTCHours()/3),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+3)}),makeInterval("h",6,p,function(e){return e.setUTCHours(6*Math.floor(e.getUTCHours()/6),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+6)}),makeInterval("h",12,p,function(e){return e.setUTCHours(12*Math.floor(e.getUTCHours()/12),0,0,0)},function(e){return e.setUTCHours(e.getUTCHours()+12)}),makeInterval("d",1,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+1)}),makeInterval("d",2,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+2)}),makeInterval("d",7,v,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCDate(e.getUTCDate()+7)}),makeInterval("mo",1,m,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCMonth(e.getUTCMonth()+1)}),makeInterval("mo",3,m,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCMonth(e.getUTCMonth()+3)}),makeInterval("y",1,g,function(e){return e.setUTCHours(0,0,0,0)},function(e){return e.setUTCFullYear(e.getUTCFullYear()+1)})];function pad(e){return e<10?"0".concat(e):String(e)}var k=function(){function TimeScale(e,t){_classCallCheck(this,TimeScale),_defineProperty(this,"type","time");var r=Number(e[0]),n=Number(e[1]);this.domain=r===n?[r-v,n+v]:[Math.min(r,n),Math.max(r,n)],this.range=t}return _createClass(TimeScale,[{key:"map",value:function map(e){var t=toTimestamp(e),r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0];return l+(t-n)/(a-n)*(s[1]-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];return l===s?r:r+(e-s)/(l-s)*(n-r)}},{key:"pickInterval",value:function pickInterval(e){for(var t=(this.domain[1]-this.domain[0])/Math.max(1,e),r=b[0],n=1/0,a=0;a<b.length;a++){var s=Math.abs(Math.log(b[a].ms/t));s<n&&(n=s,r=b[a])}return r}},{key:"ticks",value:function ticks(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=this.pickInterval(e),r=[],n=t.floor(this.domain[0]);n<this.domain[0]&&(n=t.next(n));for(var a=0;n<=this.domain[1]&&a<1e3;a++){r.push(n);var s=t.next(n);if(s===n)break;n=s}return r}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){return this.pickInterval(5).ms}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1];return n===r?0:(toTimestamp(e)-r)/(n-r)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0];return r+e*(t[1]-r)}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){return function formatTime(e,t,r){var n=new Date(e),a=pad(n.getUTCHours()),s=pad(n.getUTCMinutes()),l=pad(n.getUTCSeconds()),h=pad(n.getUTCMonth()+1),u=pad(n.getUTCDate()),c=n.getUTCFullYear(),p=r>3*g;switch(t){case"ms":return"".concat(a,":").concat(s,":").concat(l,".").concat(pad(n.getUTCMilliseconds()));case"s":return"".concat(a,":").concat(s,":").concat(l);case"m":return"".concat(a,":").concat(s);case"h":return"".concat(a,":00");case"d":return p?"".concat(c,"-").concat(h,"-").concat(u):"".concat(h,"-").concat(u);case"mo":return p?"".concat(c,"-").concat(h):"".concat(h,"-01");default:return"".concat(c)}}(toTimestamp(e),this.pickInterval(5).unit,this.span())}},{key:"clone",value:function clone(){return new TimeScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]])}}])}();function toTimestamp(e){if(e instanceof Date)return e.getTime();if("string"==typeof e){var t=Date.parse(e);if(!isNaN(t))return t}var r=Number(e);return isFinite(r)?r:NaN}var S=function(){function ExpressionError(e,t,r){var n,a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"syntax";return _classCallCheck(this,ExpressionError),(n=_callSuper(this,ExpressionError,["[ice-chart] 表达式错误:".concat(e,"(位置 ").concat(t,")\n ").concat(r,"\n ").concat(" ".repeat(Math.max(0,t)),"^")])).name="ExpressionError",n.position=t,n.code=a,n}return _inherits(ExpressionError,_wrapNativeSuper(Error)),_createClass(ExpressionError)}(),A={pi:Math.PI,PI:Math.PI,e:Math.E,tau:2*Math.PI,TAU:2*Math.PI,inf:1/0,Infinity:1/0,nan:NaN},w={sin:1,cos:1,tan:1,asin:1,acos:1,atan:1,atan2:2,sinh:1,cosh:1,tanh:1,asinh:1,acosh:1,atanh:1,exp:1,ln:1,log:1,log2:1,log10:1,sqrt:1,cbrt:1,abs:1,sign:1,floor:1,ceil:1,round:1,trunc:1,min:2,max:2,pow:2,mod:2,hypot:2,clamp:3},_={min:Math.min,max:Math.max,pow:Math.pow,mod:function mod(e,t){return e%t},hypot:Math.hypot,clamp:function clamp(e,t,r){return Math.max(t,Math.min(r,e))},ln:Math.log,log:Math.log,log10:Math.log10,cbrt:Math.cbrt,trunc:Math.trunc,sign:Math.sign};var M=function(){return _createClass(function Parser(e){_classCallCheck(this,Parser),_defineProperty(this,"index",0),_defineProperty(this,"variables",new Set),this.source=e,this.tokens=function tokenize(e){for(var t=[],r=0,n=function isDigit(e){return e>="0"&&e<="9"},a=function isIdentStart(e){return/[A-Za-z_]/.test(e)},s=function isIdentPart(e){return/[A-Za-z0-9_]/.test(e)};r<e.length;){var l=e[r];if(" "!==l&&"\t"!==l&&"\n"!==l&&"\r"!==l)if(n(l)||"."===l&&n(e[r+1]||"")){for(var h=r;r<e.length&&(n(e[r])||"."===e[r]);)r++;if("e"===e[r]||"E"===e[r]){var u=r;if("+"!==e[++r]&&"-"!==e[r]||r++,n(e[r]||""))for(;r<e.length&&n(e[r]);)r++;else r=u}t.push({type:"num",value:e.slice(h,r),position:h})}else if(a(l)){for(var c=r;r<e.length&&s(e[r]);)r++;t.push({type:"ident",value:e.slice(c,r),position:c})}else if("+-*/%^".indexOf(l)>=0)t.push({type:"op",value:l,position:r}),r++;else if("("!==l)if(")"!==l){if(","!==l)throw new S("无法识别的字符「".concat(l,"」"),r,e,"unknown-character");t.push({type:"comma",value:l,position:r}),r++}else t.push({type:"rparen",value:l,position:r}),r++;else t.push({type:"lparen",value:l,position:r}),r++;else r++}return t.push({type:"end",value:"",position:e.length}),t}(e)},[{key:"parse",value:function parse(){if("end"===this.peek().type)throw new S("表达式是空的",0,this.source,"empty");var e=this.parseSum(),t=this.peek();if("end"!==t.type)throw new S("多余的内容「".concat(t.value,"」"),t.position,this.source);return e}},{key:"getVariables",value:function getVariables(){return Array.from(this.variables)}},{key:"peek",value:function peek(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:0;return this.tokens[Math.min(this.index+e,this.tokens.length-1)]}},{key:"next",value:function next(){return this.tokens[this.index++]}},{key:"parseSum",value:function parseSum(){for(var e=this.parseProduct();;){var t=this.peek();if("op"!==t.type||"+"!==t.value&&"-"!==t.value)return e;this.next(),e={kind:"binary",op:t.value,left:e,right:this.parseProduct()}}}},{key:"parseProduct",value:function parseProduct(){for(var e=this.parseUnary();;){var t=this.peek();if("op"===t.type&&"*/%".indexOf(t.value)>=0)this.next(),e={kind:"binary",op:t.value,left:e,right:this.parseUnary()};else{if(!this.startsAtom(t)||!this.endsAtom(e))return e;e={kind:"binary",op:"*",left:e,right:this.parseUnary()}}}}},{key:"startsAtom",value:function startsAtom(e){return"num"===e.type||"ident"===e.type||"lparen"===e.type}},{key:"endsAtom",value:function endsAtom(e){return"num"===e.kind||"var"===e.kind&&void 0!==A[e.name]}},{key:"parseUnary",value:function parseUnary(){var e=this.peek();return"op"!==e.type||"-"!==e.value&&"+"!==e.value?this.parsePower():(this.next(),{kind:"unary",op:e.value,arg:this.parseUnary()})}},{key:"parsePower",value:function parsePower(){var e=this.parseAtom(),t=this.peek();return"op"===t.type&&"^"===t.value?(this.next(),{kind:"binary",op:"^",left:e,right:this.parseUnary()}):e}},{key:"parseAtom",value:function parseAtom(){var e=this.next();if("num"===e.type){var t=Number(e.value);if(!isFinite(t))throw new S("无法解析的数字「".concat(e.value,"」"),e.position,this.source);return{kind:"num",value:t}}if("lparen"===e.type){var r=this.parseSum(),n=this.peek();if("rparen"!==n.type)throw new S("缺少右括号",n.position,this.source);return this.next(),r}if("ident"===e.type){var a=e.value;if("lparen"===this.peek().type){var s=w[a];if(void 0===s)throw new S("未知函数「".concat(a,"」"),e.position,this.source,"unknown-function");this.next();for(var l=[this.parseSum()];"comma"===this.peek().type;)this.next(),l.push(this.parseSum());var h=this.peek();if("rparen"!==h.type)throw new S("函数「".concat(a,"」缺少右括号"),h.position,this.source);if(this.next(),l.length!==s)throw new S("函数「".concat(a,"」需要 ").concat(s," 个参数,收到 ").concat(l.length," 个"),e.position,this.source,"arity");return{kind:"call",name:a,args:l}}return void 0!==A[a]?{kind:"num",value:A[a]}:(this.variables.add(a),{kind:"var",name:a})}throw new S("end"===e.type?"表达式意外结束":"这里不该出现「".concat(e.value,"」"),e.position,this.source)}}])}();function compileNode(e){switch(e.kind){case"num":return function(){return e.value};case"var":return function(t){var r=t[e.name];return"number"==typeof r?r:NaN};case"unary":var t=compileNode(e.arg);return"-"===e.op?function(e){return-t(e)}:t;case"binary":var r=compileNode(e.left),n=compileNode(e.right);switch(e.op){case"+":return function(e){return r(e)+n(e)};case"-":return function(e){return r(e)-n(e)};case"*":return function(e){return r(e)*n(e)};case"/":return function(e){return r(e)/n(e)};case"%":return function(e){return r(e)%n(e)};case"^":return function(e){return Math.pow(r(e),n(e))};default:return function(){return NaN}}case"call":var a=e.name,s=_[a]||Math[a],l=e.args.map(compileNode);return s?function(e){return s.apply(void 0,_toConsumableArray(l.map(function(t){return t(e)})))}:function(){return NaN}}}var C=new Map;function compileExpression(e){var t=String(null==e?"":e),r=C.get(t);if(r)return r;var n=new M(t),a=compileNode(n.parse()),s={source:t,variables:n.getVariables(),evaluate:function evaluate(e){return a(e||{})}};return C.set(t,s),s}function compileSampler(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=compileExpression(e),n=_objectSpread2({},t);return{setParams:function setParams(e){for(var t=0,r=Object.keys(e);t<r.length;t++){var a=r[t];n[a]=Number(e[a])}},evaluate:function evaluate(e,t){return n[e]=t,r.evaluate(n)}}}function quantile(e,t){return e.length?e[Math.min(e.length-1,Math.max(0,Math.round((e.length-1)*t)))]:NaN}function diagnoseExpression(e,t){var r=String(null==e?"":e),n=t.params||{},a=[];if(!r.trim())return a.push({code:"empty",severity:"error",message:"表达式是空的:请填写 ".concat(t.variable," 的公式,例如 ").concat("t"===t.variable?"sin(3*t)":"sin(x)/x")}),a;var s=[];try{s=compileExpression(r).variables}catch(e){return e instanceof S?(a.push({code:e.code,severity:"error",message:e.message,position:e.position}),a):(a.push({code:"syntax",severity:"error",message:String(e&&e.message?e.message:e)}),a)}var l,h=[t.variable].concat(_toConsumableArray(Object.keys(n))),u=s.filter(function(e){return e!==t.variable&&!(e in n)}),c=_createForOfIteratorHelper(u);try{for(c.s();!(l=c.n()).done;){var p=l.value;a.push({code:"unknown-variable",severity:"error",message:"未定义的变量「".concat(p,"」:可用的是 ").concat(h.join("、"),"。想当参数用请写进 series.params(会自动进 JSON 快照)。")})}}catch(e){c.e(e)}finally{c.f()}var v,m=new Set([].concat(_toConsumableArray(s),_toConsumableArray(t.additionalVariables||[]))),g=Object.keys(n).filter(function(e){return!m.has(e)}),b=_createForOfIteratorHelper(g);try{for(b.s();!(v=b.n()).done;){var k=v.value;a.push({code:"unused-parameter",severity:"warning",message:"参数「".concat(k,"」定义了但表达式没有用到,改公式或去掉它。")})}}catch(e){b.e(e)}finally{b.f()}var A=t.values;if(A&&A.length&&!a.some(function(e){return"error"===e.severity})){var w=A.filter(function(e){return"number"==typeof e&&isFinite(e)});if(w.length){var _=w.slice().sort(function(e,t){return e-t}),M=quantile(_,.02),C=quantile(_,.98);Math.abs(C-M)<1e-12&&a.push({code:"constant-value",severity:"warning",message:"输出恒为 ".concat(Number(C.toPrecision(6)),":函数与自变量无关(或恰好取到常数),画出来是一条水平线。")})}else a.push({code:"no-finite-values",severity:"error",message:"在当前区间内没有任何可绘制的值:检查是否对负数开方、对 0 取对数,或者分母整段为 0。"})}return a}var T=1e7;function robustRange(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:6,r=e.filter(function(e){return"number"==typeof e&&isFinite(e)&&Math.abs(e)<T});if(!r.length)return[-1,1];var n=r.slice().sort(function(e,t){return e-t}),a=function at(e){return n[Math.min(n.length-1,Math.max(0,Math.round((n.length-1)*e)))]},s=a(.5),l=a(.75)-a(.25),h=n[0],u=n[n.length-1];if(l>0&&(h=Math.max(h,s-t*l),u=Math.min(u,s+t*l)),!(u>h)){var c=(u+h)/2,p=Math.max(1,.2*Math.abs(c));h=c-p,u=c+p}return[h,u]}function refineSegment(e,t,r,n,a,s,l){var h=(t+n)/2;if(isFinite(h)&&h!==t&&h!==n){var u=e.evaluate(h);if(e.isBreak(u))l.push(h,NaN);else e.adaptive&&s<e.maxDepth&&e.count<e.maxSamples&&!e.isBreak(r)&&!e.isBreak(a)&&e.deviation(r,u,a)>e.tolerance&&(e.count++,refineSegment(e,t,r,h,u,s+1,l),e.emit(h,u,l),refineSegment(e,h,u,n,a,s+1,l))}}function sampleFunctionCurve(e,t,r){for(var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=Math.max(2,Math.round(n.base||240)),s=new Float64Array(a),l=new Float64Array(a),h=0;h<a;h++){var u=t+(r-t)*h/(a-1),c=e(u);s[h]=u,l[h]=isFinite(c)&&Math.abs(c)<T?c:NaN}for(var p=_slicedToArray(robustRange(Array.from(l)),2),v=p[0],m=p[1],g=Math.max(1e-9,m-v),b={tolerance:Math.max(1e-9,(void 0===n.tolerance?.0025:n.tolerance)*g),maxDepth:void 0===n.maxDepth?7:n.maxDepth,maxSamples:void 0===n.maxSamples?6e3:n.maxSamples,count:a,adaptive:!1!==n.adaptive,evaluate:function evaluate(t){return e(t)},isBreak:function isBreak(e){return!isFinite(e)||Math.abs(e)>T},deviation:function deviation(e,t,r){return Math.abs(t-(e+r)/2)},emit:function emit(e,t,r){r.push(e,t)}},k=[],S=0;S<a&&(k.push(s[S],isFinite(l[S])?l[S]:NaN),S!==a-1);S++)refineSegment(b,s[S],l[S],s[S+1],l[S+1],0,k);for(var A=[],w=0;w<k.length;w+=2)A.push([k[w],k[w+1]]);return function breakPoles(e,t){for(var r=20*Math.max(1e-9,t),n=[],a=0;a<e.length;a++){var s=e[a],l=n.length?n[n.length-1]:null;l&&isFinite(l[1])&&isFinite(s[1])&&l[1]*s[1]<0&&Math.abs(s[1]-l[1])>r&&n.push([(l[0]+s[0])/2,NaN]),n.push(s)}return n}(A,g)}function sampleParametricCurve(e,t,r,n){for(var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},s=Math.max(2,Math.round(a.base||360)),l=new Float64Array(s),h=new Float64Array(s),u=new Float64Array(s),c=0;c<s;c++){var p=r+(n-r)*c/(s-1);l[c]=p,h[c]=e(p),u[c]=t(p)}for(var v=_slicedToArray(robustRange(Array.from(h)),2),m=v[0],g=v[1],b=_slicedToArray(robustRange(Array.from(u)),2),k=b[0],S=b[1],A=Math.max(1e-9,Math.hypot(g-m,S-k)),w={tolerance:Math.max(1e-9,(void 0===a.tolerance?.0015:a.tolerance)*A),maxDepth:void 0===a.maxDepth?7:a.maxDepth,maxSamples:void 0===a.maxSamples?8e3:a.maxSamples,count:s,adaptive:!1!==a.adaptive,evaluate:function evaluate(r){return[e(r),t(r)]},isBreak:function isBreak(e){return!isFinite(e[0])||!isFinite(e[1])||Math.abs(e[0])>T||Math.abs(e[1])>T},deviation:function deviation(e,t,r){return function midDeviation(e,t,r,n,a,s){var l=r-e,h=n-t,u=l*l+h*h;if(0===u)return Math.hypot(a-e,s-t);var c=((a-e)*l+(s-t)*h)/u;return c=Math.max(0,Math.min(1,c)),Math.hypot(a-(e+c*l),s-(t+c*h))}(e[0],e[1],r[0],r[1],t[0],t[1])},emit:function emit(e,t,r){r.push(t[0],t[1])}},_=[],M=0;M<s;M++){var C=h[M],P=u[M],I=!isFinite(C)||!isFinite(P)||Math.abs(C)>T||Math.abs(P)>T;if(_.push(I?NaN:C,I?NaN:P),M===s-1)break;refineSegment(w,l[M],[h[M],u[M]],l[M+1],[h[M+1],u[M+1]],0,_)}for(var N=[],D=0;D<_.length;D+=2)N.push([_[D],_[D+1]]);return N}var P={top:12,right:16,bottom:12,left:12};function padDomain(e,t,r,n,a){var s=r&&void 0!==r.padding?Number(r.padding):.05;if(!isFinite(s)||s<=0)return[e,t];var l=t-e;if(!isFinite(l)||l<=0)return[e,t];var h=l*Math.min(.5,s);return[n?e:e-h,a?t:t+h]}var I={enter:{duration:520,delay:0,easing:"easeOutCubic",stagger:.35},update:{duration:420,delay:0,easing:"easeOutCubic",stagger:0},highlight:{duration:260,delay:0,easing:"springSnappy",stagger:0}};function normalizeAnimation(e){if(!1===e)return{enabled:!1,enter:!1,update:!1,highlight:!1};var t=e||{},r=!1!==t.enabled,n={duration:t.duration,easing:t.easing,stagger:t.stagger,delay:t.delay},a=function stage(e){if(!1===t[e])return!1;var r=_objectSpread2({},I[e]);if("enter"===e)for(var a=0,s=Object.keys(n);a<s.length;a++){var l=s[a];void 0!==n[l]&&(r[l]=n[l])}return t[e]&&"object"===_typeof(t[e])&&Object.assign(r,t[e]),r};return{enabled:r,enter:a("enter"),update:a("update"),highlight:a("highlight")}}function normalizeAnnotation(e){if(!e||"object"!==_typeof(e))return null;var t=function list(e){return Array.isArray(e)?e.filter(function(e){return e&&"object"===_typeof(e)}):[]},r=t(e.lines),n=t(e.points),a=t(e.areas);return r.length||n.length||a.length?{lines:r,points:n,areas:a}:null}function normalizeOption(e){var t,r,n,a,s,l,h,u,c,p,v,m,g=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e||!Array.isArray(e.series))throw new Error("[ice-chart] option.series 必须是数组。");var b=resolveChartTheme(e.theme,{preferDark:!!g.preferDark}),k={legend:_objectSpread2({show:e.series.length>1,position:"top",itemWidth:12,itemHeight:12,itemGap:16,selectable:!0},e.legend||{}),tooltip:_objectSpread2({show:!0,trigger:"axis"},e.tooltip||{}),crosshair:_objectSpread2({show:!0,type:"line",axis:"x",showAxisLabel:!0},e.crosshair||{}),grid:_objectSpread2({show:!0,x:!1,y:!0,lineWidth:1},e.grid||{}),interaction:{hover:_objectSpread2({enabled:!0,mode:"nearest-x",dimOthers:!1},(null===(t=e.interaction)||void 0===t?void 0:t.hover)||{}),select:_objectSpread2({enabled:!1,mode:"single",toggle:!0},(null===(r=e.interaction)||void 0===r?void 0:r.select)||{}),brush:!1!==(null===(n=e.interaction)||void 0===n?void 0:n.brush)&&_objectSpread2({enabled:!1,axes:"x",mode:"select"},(null===(a=e.interaction)||void 0===a?void 0:a.brush)||{}),zoom:!1!==(null===(s=e.interaction)||void 0===s?void 0:s.zoom)&&_objectSpread2({enabled:!0,axes:"x",wheel:!0,wheelFactor:1.2,mode:"data"},(null===(l=e.interaction)||void 0===l?void 0:l.zoom)||{}),pan:!1!==(null===(h=e.interaction)||void 0===h?void 0:h.pan)&&_objectSpread2({enabled:!1,axes:"xy"},(null===(u=e.interaction)||void 0===u?void 0:u.pan)||{}),keyboard:void 0===(null===(c=e.interaction)||void 0===c?void 0:c.keyboard)||e.interaction.keyboard},animation:normalizeAnimation(e.animation),margin:_objectSpread2(_objectSpread2({},P),e.margin||{})};k.series=e.series,k.title=e.title,k.xAxis=e.xAxis||{},k.yAxis=e.yAxis||{},k.dataZoom=e.dataZoom||null,k.theme=e.theme,k.aspect="equal"===e.aspect?"equal":"auto",k.polarGrid=e.polarGrid||null,k.annotation=normalizeAnnotation(e.annotation),k.tooltip=_objectSpread2({show:!1!==(null===(p=e.tooltip)||void 0===p?void 0:p.show)},k.tooltip),k.crosshair=_objectSpread2({show:!1!==(null===(v=e.crosshair)||void 0===v?void 0:v.show)},k.crosshair);for(var S=e.radar||null,A=e.graph||null,w=function buildSeries(e,t,r,n,a,s,l){for(var h=[],u={},c=function _loop(r){var c=e[r];if(!c||!c.type)throw new Error("[ice-chart] series[".concat(r,"] 缺少 type。"));var p=c.name;p||(p="series-".concat(r+1)),void 0!==u[p]?(u[p]+=1,p="".concat(p," (").concat(u[p],")")):u[p]=0;var v=c.id||"series-".concat(r),m=c.color||t.colorPalette[r%t.colorPalette.length];if(c.virtual){var g=l&&l.virtualColumns?l.virtualColumns:null,b=g?g.get(v):void 0,k={id:v,index:r,type:c.type,name:p,color:m,points:[],virtual:!0,hasExplicitX:!0,hidden:!1,axisIndex:0},S=b&&"raw"in b&&(void 0===c.data||b.raw.data===c.data)?b.raw:null,A=!S&&b&&void 0===c.data?b:null,w=function takeLean(){var t=_objectSpread2(_objectSpread2({},c),{},{data:void 0});return e[r]=t,t};if(S)return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,raw:S,pointCount:S.length},rawAccessors(S))),0;if(A&&"ring"in A){var _=A.ring;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,ring:_,pointCount:_.length},function ringAccessors(e){var t=function yAt(t){if(t<0||t>=e.length)return null;var r=ringYAt(e,t);return Number.isNaN(r)?null:r};return{pointAt:function pointAt(r){var n=t(r);return{index:r,xValue:ringXAt(e,r),y:n,raw:void 0,base:0,top:null===n?0:n,name:void 0}},xValueAt:function xValueAt(t){return t<0||t>=e.length?void 0:ringXAt(e,t)},yValueAt:t,baseAt:function baseAt(){return 0},topAt:function topAt(e){var r=t(e);return null===r?0:r},sizeAt:function sizeAt(){}}}(_))),0}if(A&&"chunks"in A){var M=A.chunks;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,chunks:M,pointCount:M.total},chunkAccessors(M))),0}if(A&&"grid"in A){var C=A.grid;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,grid:C,pointCount:C.values.length},gridAccessors(C))),0}if(A&&"columns"in A){var T=A.columns;return h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,columns:T,pointCount:T.y.length},columnAccessors(T))),0}if("heatmap"===c.type){var P=function buildVirtualGrid(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))},n=e.data,a=[],s=[],l=null,h=0,u=!1;if(n&&!Array.isArray(n)&&"object"===_typeof(n)&&void 0!==n.values){var c=n;Array.isArray(c.xCategories)&&a.push.apply(a,_toConsumableArray(c.xCategories)),Array.isArray(c.yCategories)&&s.push.apply(s,_toConsumableArray(c.yCategories));var p=a.length,v=s.length;p&&v||r("的矩阵需要非空的 xCategories / yCategories。");var m=p*v,g=Number(c.values.length)||0;g!==m&&r("的 values 长度(".concat(g,")应等于 ").concat(p," × ").concat(v," = ").concat(m,"。")),l=c.values instanceof Float64Array?c.values:Float64Array.from(c.values,function(e){return null==e?NaN:Number(e)}),h=m}else if(Array.isArray(n)){u=!0;for(var b=new Map,k=new Map,S=[],A=0;A<n.length;A++){var w=n[A];if(Array.isArray(w)&&!(w.length<3)){var _=b.get(w[0]);void 0===_&&(_=a.length,b.set(w[0],_),a.push(w[0]));var M=k.get(w[1]);void 0===M&&(M=s.length,k.set(w[1],M),s.push(w[1]));var C=toNumber(w[2]);null!==C&&(S.push({col:_,row:M,value:C}),h+=1)}}var T=a.length,P=s.length;T&&P||r("的矩阵是空的(没有可用的 [x类目, y类目, 值] 数据项)。"),l=new Float64Array(T*P).fill(NaN);for(var I=0,D=S;I<D.length;I++){var O=D[I];l[O.row*T+O.col]=O.value}}else r("需要 data(矩阵 { xCategories, yCategories, values } 或 [x类目, y类目, 值] 数组)。");var R=a.length,H=s.length;u&&h/Math.max(1,R*H)<N&&r("的矩阵太稀疏(".concat(h,"/").concat(R*H," 格有值):虚拟热力图按稠密矩阵存,")+"稀疏数据请用普通路径(去掉 virtual)。");for(var z=l,E=new Map,L=new Map,V=0;V<R;V++)E.set(a[V],V);for(var B=0;B<H;B++)L.set(s[B],B);for(var j=1/0,W=-1/0,X=0;X<z.length;X++){var G=z[X];Number.isNaN(G)||(G<j&&(j=G),G>W&&(W=G))}return{xCategories:a,yCategories:s,values:z,xIndex:E,yIndex:L,valueDomain:isFinite(j)?[j,W]:null}}(c,r);return g&&g.set(v,{grid:P}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),grid:P,pointCount:P.values.length},gridAccessors(P))),0}if(function isChunkedInput(e){return!!e&&!Array.isArray(e)&&"object"===_typeof(e)&&Array.isArray(e.sizes)&&"function"==typeof e.loadChunk}(c.data)){var I=function buildVirtualChunks(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))},n=e.sizes;n.length||r("的分块需要至少一块(sizes 为空)。");var a,s=_createForOfIteratorHelper(n);try{for(s.s();!(a=s.n()).done;){var l=a.value;(!isFinite(Number(l))||Number(l)<=0)&&r("的 sizes 必须是正数(收到 ".concat(JSON.stringify(l),")。"))}}catch(e){s.e(e)}finally{s.f()}"function"!=typeof e.rangeOf&&r("的分块需要 rangeOf(i) 声明每块的 x 范围(否则窗口定位要先把块 load 一遍)。");var h=e.yDomain;Array.isArray(h)&&2===h.length&&h.every(function(e){return isFinite(Number(e))})||r("的分块需要声明式 yDomain: [min, max](亿级数据不能为了自动缩放把块全加载一遍)。");return function createChunks(e){var t,r=e.sizes.map(function(e){return Math.max(0,Math.floor(e)||0)}),n=[],a=0,s=_createForOfIteratorHelper(r);try{for(s.s();!(t=s.n()).done;){var l=t.value;n.push(a),a+=l}}catch(e){s.e(e)}finally{s.f()}var h=r.map(function(t,r){return e.rangeOf(r)}),u=h.filter(function(e){return!!e});return{kind:"chunks",sizes:r,offsets:n,total:a,ranges:h,resident:r.map(function(){return null}),loading:new Set,maxResident:Math.max(1,Math.floor(e.maxResidentChunks||4)),lru:[],load:e.load,xDomain:u.length?[Math.min.apply(Math,_toConsumableArray(u.map(function(e){return e[0]}))),Math.max.apply(Math,_toConsumableArray(u.map(function(e){return e[1]})))]:[0,1],yDomain:e.yDomain,xMonotonic:!0,sizeExtent:null}}({sizes:n.map(function(e){return Number(e)}),load:function load(t){var a=e.loadChunk(t),s=function normalize(e){e&&"object"===_typeof(e)&&void 0!==e.x&&void 0!==e.y||r("的 loadChunk(".concat(t,") 必须返回 { x, y }。"));for(var a=void 0===n[t]?0:Number(n[t]),s=e.x instanceof Float64Array?e.x:Float64Array.from(e.x,function(e){return Number(e)}),l=new Float64Array(a),h=0;h<a;h++){var u=e.y[h];l[h]=null==u||""===u?NaN:Number(u)}return s.length!==a&&r("的 loadChunk(".concat(t,") 返回了 ").concat(s.length," 个 x,但 sizes[").concat(t,"] 是 ").concat(a,"。")),{x:s,y:l}};return a&&"function"==typeof a.then?a.then(s):s(a)},rangeOf:e.rangeOf,yDomain:[Number(h[0]),Number(h[1])],maxResidentChunks:e.maxResidentChunks})}(c.data,r);return g&&g.set(v,{chunks:I}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),chunks:I,pointCount:I.total},chunkAccessors(I))),0}if(function isColumnarVirtualType(e){return"scatter"===e||"line"===e||"area"===e||"heatmap"===e}(c.type)){var D=function tryBuildVirtualColumns(e,t){try{return function buildVirtualColumns(e,t){var r=function fail(e){throw new Error("[ice-chart] series[".concat(t,"].virtual ").concat(e))};"scatter"!==e.type&&"line"!==e.type&&"area"!==e.type&&r("目前只支持散点 / 折线 / 面积(scatter / line / area),收到 type: '".concat(e.type,"'。"));e.stack&&r("不支持堆叠(stack)。");var n=e.data,a=0,s=null,l=null,h=null,u=null,c=null,p=null;if(n&&!Array.isArray(n)&&"object"===_typeof(n)&&void 0!==n.x){var v=n;a=Number(v.y.length)||0,Number(v.x.length)!==a&&r("的 x / y 长度不一致(".concat(v.x.length," vs ").concat(v.y.length,")。")),s=function readX(e){return v.x[e]},l=function readY(e){return v.y[e]},h=v.size?function(e){return v.size[e]}:null,u=v.x instanceof Float64Array?v.x:null,c=v.y instanceof Float64Array?v.y:null,p=v.size instanceof Float64Array?v.size:null}else if(Array.isArray(n)){a=n.length;var m=e.xField||"x",g=e.yField||"y",b=function readRow(e){return Array.isArray(e)?{x:e[0],y:e[1],size:e.length>2?e[2]:void 0}:e&&"object"===_typeof(e)?{x:void 0!==e[m]?e[m]:void 0!==e.x?e.x:void 0,y:void 0!==e[g]?e[g]:void 0!==e.y?e.y:e.value,size:e.size}:{x:void 0,y:e,size:void 0}};s=function readX(e){var t=b(n[e]);return void 0===t.x?e:t.x},l=function readY(e){return b(n[e]).y},h=function readSize(e){return b(n[e]).size}}else r("需要 data(列式 { x, y }、元组数组或数值数组)。");var k=u&&u.length===a?u:new Float64Array(a),S=c&&c.length===a?c:new Float64Array(a);s&&l||r("的数据无法解析。");if(u&&u.length===a)for(var A=0;A<a;A++)isFinite(k[A])||r("需要数值型 x(第 ".concat(A," 项是 ").concat(JSON.stringify(k[A]),")。"));else for(var w=0;w<a;w++){var _=Number(s(w));isFinite(_)||r("需要数值型 x(第 ".concat(w," 项是 ").concat(JSON.stringify(s(w)),")。")),k[w]=_}for(var M=!1,C=p&&p.length===a?p:new Float64Array(a).fill(NaN),T=0;T<a;T++){var P=h?h(T):void 0;if(null!=P&&""!==P){var I=Number(P);isFinite(I)&&(C[T]=I,M=!0)}var N=toNumber(l(T));S[T]=null===N?NaN:N}for(var D=1/0,O=-1/0,R=1/0,H=-1/0,z=1/0,E=-1/0,L=!0,V=-1/0,B=0;B<a;B++){var j=k[B];j<D&&(D=j),j>O&&(O=j),j<V&&(L=!1),V=j;var W=S[B];Number.isNaN(W)||(W<R&&(R=W),W>H&&(H=W));var X=C[B];Number.isNaN(X)||(X<z&&(z=X),X>E&&(E=X))}isFinite(D)||(D=0,O=1);return{kind:"columns",x:k,y:S,size:M?C:null,xDomain:[D,O],yDomain:isFinite(R)?[R,H]:null,xMonotonic:L,sizeExtent:M?z===E?[z,z+1]:[z,E]:null}}(e,t)}catch(e){if((e instanceof Error?e.message:String(e)).indexOf("需要数值型 x")>=0)return null;throw e}}(c,r);if(D)return g&&g.set(v,{columns:D}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:w(),columns:D,pointCount:D.y.length},columnAccessors(D))),0}var O=function buildVirtualRawPoints(e,t){for(var r=Array.isArray(e.data)?e.data:[],n=r.length,a={type:e.type,xField:e.xField,yField:e.yField},s=1/0,l=-1/0,h=1/0,u=-1/0,c=1/0,p=-1/0,v=!0,m=-1/0,g=!1,b=[],k=new Map,S=new Map,A=0;A<n;A++){var w,_,M=readGenericPoint(r[A],A,a),C=String(M.xValue);0===(null!==(w=k.get(C))&&void 0!==w?w:0)&&(b.push(M.xValue),S.set(C,S.size)),k.set(C,(null!==(_=k.get(C))&&void 0!==_?_:0)+1);var T=Number(M.xValue);isFinite(T)?(T<s&&(s=T),T>l&&(l=T),T<m&&(v=!1),m=T):v=!1,null!==M.y&&(M.y<h&&(h=M.y),M.y>u&&(u=M.y)),"number"==typeof M.size&&isFinite(M.size)&&(g=!0,M.size<c&&(c=M.size),M.size>p&&(p=M.size))}isFinite(s)||(s=0,l=Math.max(0,n-1));return{kind:"raw",data:r,start:0,length:n,capacity:0,type:e.type,xField:e.xField,yField:e.yField,xDomain:[s,l],yDomain:isFinite(h)?[h,u]:null,xMonotonic:v,sizeExtent:g?c===p?[c,c+1]:[c,p]:null,categories:b,categoryCounts:k,categorySeq:S,categoryNext:S.size}}(c);return g&&g.set(v,{raw:O}),h.push(_objectSpread2(_objectSpread2({},k),{},{option:c,raw:O,pointCount:O.length},rawAccessors(O))),0}var R=function buildPoints(e,t,r,n,a){var s=Array.isArray(e.data)?e.data:[];if(!Array.isArray(e.data)&&e.data&&"object"===_typeof(e.data))throw new Error("[ice-chart] series 的列式 data({ x, y })需要配 virtual: true(当前 type: '".concat(e.type,"')。"));var l=[],h=!1;if("function"===e.type||"parametric"===e.type)return function buildCurvePoints(e,t){var r=[],n=e.params||{},a="function"===e.type,s=void 0===e.polarExpression||null===e.polarExpression?"":String(e.polarExpression).trim(),l=!a&&""!==s,h=a?String(e.expression||""):l?s:String(e.xExpression||""),u=a||l?"":String(e.yExpression||""),c=null,p=null;try{c=compileExpression(h),a||l||(p=compileExpression(u))}catch(e){c=null,p=null}var v=a?[-10,10]:[0,2*Math.PI],m=Array.isArray(e.domain)&&e.domain.length>=2?e.domain:null,g=m?Number(m[0]):v[0],b=m?Number(m[1]):v[1];if(a&&t&&Array.isArray(t.xDomain)&&t.xDomain.length>=2){var k=Number(t.xDomain[0]),S=Number(t.xDomain[1]);isFinite(k)&&isFinite(S)&&S>k&&(g=k,b=S)}isFinite(g)&&isFinite(b)&&b!==g||(g=v[0],b=v[1]);for(var A=Number(e.samples),w=Math.max(24,Math.min(6e3,isFinite(A)&&A>0?Math.round(A):a?240:360)),_=_objectSpread2({},n),M=a?"x":"t",C=0;C<w;C++){var T=g+(b-g)*C/(w-1);_[M]=T;var P=T,I=NaN,N=NaN;c&&(a?I=c.evaluate(_):l?(P=(N=c.evaluate(_))*Math.cos(T),I=N*Math.sin(T)):p&&(P=c.evaluate(_),I=p.evaluate(_)));var D=isFinite(P)&&isFinite(I);r.push({index:C,xValue:T,y:D?I:null,raw:a?{x:T,y:I}:l?{t:T,x:P,y:I,r:N}:{t:T,x:P,y:I},base:0,top:D?I:0,name:a?h:l?"r = ".concat(h):"(".concat(h,", ").concat(u,")")})}return{points:r,hasExplicitX:!0}}(e,a);if("graph"===e.type&&n){for(var u=Array.isArray(n.nodes)?n.nodes:[],c=Array.isArray(n.links)?n.links:[],p=function indexOf(e){return"number"==typeof e?e:u.findIndex(function(t){return t.id===e||t.name===e})},v=0;v<u.length;v++){var m=u[v],g=toNumber(m.value);l.push({index:v,xValue:m.name,y:g,raw:m,base:0,top:null===g?0:g,name:m.name})}for(var b=0;b<c.length;b++){var k=c[b],S=p(k.source),A=p(k.target),w="".concat(S>=0?u[S].name:String(k.source)," → ").concat(A>=0?u[A].name:String(k.target)),_=toNumber(k.value);l.push({index:u.length+b,xValue:w,y:null===_?1:_,raw:{__graphLink:!0,source:k.source,target:k.target,value:k.value},base:0,top:null===_?1:_,name:w})}return{points:l,hasExplicitX:!0}}if("sankey"===e.type&&r){var M,C=Array.isArray(r.nodes)?r.nodes:[],T=Array.isArray(r.links)?r.links:[],P=new Array(C.length).fill(0),I=new Array(C.length).fill(0),N=function _indexOf(e){return"number"==typeof e?e:C.findIndex(function(t){return t.name===e})},D=_createForOfIteratorHelper(T);try{for(D.s();!(M=D.n()).done;){var O=M.value,R=N(O.source),H=N(O.target),z=Number(O.value)||0;R>=0&&(I[R]+=z),H>=0&&(P[H]+=z)}}catch(e){D.e(e)}finally{D.f()}for(var E=P.map(function(e,t){return Math.max(e,I[t])}),L=0;L<C.length;L++){var V=C[L];l.push({index:L,xValue:V.name,y:E[L],raw:V,base:0,top:E[L],name:V.name})}for(var B=0;B<T.length;B++){var j=T[B],W=N(j.source),X=N(j.target),G="".concat(W>=0?C[W].name:String(j.source)," → ").concat(X>=0?C[X].name:String(j.target));l.push({index:C.length+B,xValue:G,y:Number(j.value)||0,raw:{__sankeyLink:!0,source:j.source,target:j.target,value:j.value},base:0,top:Number(j.value)||0,name:G})}return{points:l,hasExplicitX:!0}}if("radar"===e.type&&t&&Array.isArray(t.indicators)){for(var U=0;U<t.indicators.length;U++){var K=t.indicators[U],Y=s[U],q=Y&&"object"===_typeof(Y)&&!Array.isArray(Y)&&void 0!==Y.value?toNumber(Y.value):toNumber(Y);l.push({index:U,xValue:K.name,y:q,raw:Y,base:0,top:null===q?0:q,name:K.name})}return{points:l,hasExplicitX:!0}}if("heatmap"===e.type){for(var $=0;$<s.length;$++){var Z=s[$];if(!Array.isArray(Z)||Z.length<3)l.push({index:$,xValue:$,y:null,raw:Z,base:0,top:0});else{var J=toNumber(Z[2]);h=!0,l.push({index:$,xValue:Z[0],y:J,raw:Z,base:0,top:null===J?0:J,name:String(Z[1])})}}return{points:l,hasExplicitX:h}}if("boxplot"===e.type){for(var Q=0;Q<s.length;Q++){var ee=s[Q],te=Array.isArray(ee)?ee.map(function(e){return Number(e)}):null;if(te&&te.length){var ie=5===te.length?[te[0],te[1],te[2],te[3],te[4]]:computeBoxplotSummary(te);h=!0,l.push({index:Q,xValue:Q,y:ie[2],raw:ee,base:0,top:ie[2],boxplot:ie})}else l.push({index:Q,xValue:Q,y:null,raw:ee,base:0,top:0})}return{points:l,hasExplicitX:h}}if("waterfall"===e.type){for(var re=0;re<s.length;re++){var ne=s[re],ae=null,oe=void 0;if("number"==typeof ne)ae=toNumber(ne);else if(ne&&"object"===_typeof(ne)&&!Array.isArray(ne)){var se=ne;ae=toNumber(void 0===se.value?se.y:se.value),void 0!==se.name&&(oe=String(se.name))}else ae=toNumber(ne);h=!0,l.push({index:re,xValue:void 0===oe?re:oe,y:ae,raw:ne,base:0,top:null===ae?0:ae,name:oe})}return{points:l,hasExplicitX:h}}if("treemap"===e.type){var le=[],he=function visit(e,t){var r,n=_createForOfIteratorHelper(e.slice().sort(function(e,t){return treemapNodeValue(t)-treemapNodeValue(e)}));try{for(n.s();!(r=n.n()).done;){var a=r.value;le.push({node:a,depth:t}),Array.isArray(a&&a.children)&&a.children.length&&he(a.children,t+1)}}catch(e){n.e(e)}finally{n.f()}};Array.isArray(e.data)&&he(e.data,0);for(var ue=0;ue<le.length;ue++){var ce=le[ue].node,fe=treemapNodeValue(ce);l.push({index:ue,xValue:ce&&void 0!==ce.name?ce.name:ue,y:fe,raw:ce,base:0,top:fe,name:ce&&void 0!==ce.name?String(ce.name):String(ue)})}return{points:l,hasExplicitX:!0}}for(var de=0;de<s.length;de++){var pe=s[de],ve=readGenericPoint(pe,de,e);ve.explicitX&&(h=!0),l.push({index:de,xValue:ve.xValue,y:ve.y,raw:pe,base:0,top:null===ve.y?0:ve.y,name:ve.name,size:ve.size})}return{points:l,hasExplicitX:h}}(c,n,a,s,l),H=R.points,z=R.hasExplicitX;if("pie"===c.type)for(var E=0;E<H.length;E++){var L=H[E].raw,V=L&&"object"===_typeof(L)&&!Array.isArray(L)?L.color:void 0;H[E].color=V||(0===E&&c.color?c.color:t.colorPalette[E%t.colorPalette.length])}var B=_objectSpread2(_objectSpread2({id:v,index:r,type:c.type,name:p,color:m,option:c,points:H,virtual:!1,pointCount:H.length},function arrayAccessors(e){return{pointAt:function pointAt(t){return e[t]},xValueAt:function xValueAt(t){return e[t].xValue},yValueAt:function yValueAt(t){return e[t].y},baseAt:function baseAt(t){return e[t].base},topAt:function topAt(t){return e[t].top},sizeAt:function sizeAt(t){return e[t].size}}}(H)),{},{hasExplicitX:z,hidden:!1,axisIndex:0});!function applyCurveDomain(e,t,r){if("function"!==t.type&&"parametric"!==t.type)return;for(var n=[],a=[],s=0,l=e.pointCount;s<l;s++){var h=e.pointAt(s).raw;h&&"object"===_typeof(h)&&("number"==typeof h.x&&a.push(h.x),"number"==typeof h.y&&n.push(h.y))}var u=n.filter(function(e){return isFinite(e)});u.length&&(e.domainValues=robustRange(u));if("parametric"===t.type){var c=a.filter(function(e){return isFinite(e)});c.length&&(e.domainXValues=[Math.min.apply(Math,_toConsumableArray(c)),Math.max.apply(Math,_toConsumableArray(c))])}var p=t.params||{},v=[];if("function"===t.type)v=diagnoseExpression(String(t.expression||""),{variable:"x",params:p,values:n});else if(void 0!==t.polarExpression&&null!==t.polarExpression&&""!==String(t.polarExpression).trim()){for(var m=[],g=0,b=e.pointCount;g<b;g++){var k=e.pointAt(g).raw;k&&"object"===_typeof(k)&&"number"==typeof k.r&&m.push(k.r)}v=diagnoseExpression(String(t.polarExpression),{variable:"t",params:p,values:m}).map(function(e){return _objectSpread2(_objectSpread2({},e),{},{message:"r(θ):".concat(e.message)})})}else{var S=String(t.xExpression||""),A=String(t.yExpression||""),w=expressionVariables(S),_=expressionVariables(A),M=function withPrefix(e,t){return e.map(function(e){return _objectSpread2(_objectSpread2({},e),{},{message:"".concat(t,":").concat(e.message)})})};v=[].concat(_toConsumableArray(M(diagnoseExpression(S,{variable:"t",params:p,values:a,additionalVariables:_}),"x(t)")),_toConsumableArray(M(diagnoseExpression(A,{variable:"t",params:p,values:n,additionalVariables:w}),"y(t)")))}if(v.length){e.expressionDiagnostics=v;var C=v.find(function(e){return"error"===e.severity});C&&(e.expressionError=C.message)}}(B,c),h.push(B)},p=0;p<e.length;p++)c(p);return h}(e.series,b,null===(m=k.legend)||void 0===m||m.selected,S,e.sankey||null,A,g),_=0,M=w;_<M.length;_++){var C=M[_];if("waterfall"===C.type){var T=C.option.waterfall,I=void 0!==T?T:e.waterfall;void 0!==I&&(C.waterfallOption=I)}}for(var D=_objectSpread2({},g.hiddenIds||{}),O=0,R=w;O<R.length;O++){var H,z=R[O];null!==(H=k.legend)&&void 0!==H&&H.selected&&!1===k.legend.selected[z.name]&&(D[z.id]=!0),z.hidden=!!D[z.id]||!1===z.option.show}var E=w.some(function(e){return"pie"===e.type})?"polar":w.some(function(e){return"radar"===e.type})?"radar":w.some(function(e){return"sankey"===e.type})?"sankey":w.some(function(e){return"funnel"===e.type})?"funnel":w.some(function(e){return"gauge"===e.type})?"gauge":w.some(function(e){return"liquid"===e.type})?"liquid":w.some(function(e){return"treemap"===e.type})?"treemap":w.some(function(e){return"graph"===e.type})?"graph":"cartesian",L="sankey"===E&&e.sankey||null,V="funnel"===E?e.funnel||{}:null,B="gauge"===E?e.gauge||{}:null,j="liquid"===E?e.liquid||{}:null,W="treemap"===E?e.treemap||{}:null,X="graph"===E?A:null,G=_objectSpread2({},g.hiddenSlices||{}),U=S?function buildRadarDomains(e,t){for(var r=[],n=Array.isArray(e.indicators)?e.indicators.length:0,a=0;a<n;a++){var s,l=e.indicators[a]||{name:String(a)},h=-1/0,u=_createForOfIteratorHelper(t);try{for(u.s();!(s=u.n()).done;){var c=s.value;if("radar"===c.type&&!c.hidden){var p=c.pointAt(a);p&&null!==p.y&&p.y>h&&(h=p.y)}}}catch(e){u.e(e)}finally{u.f()}isFinite(h)||(h=1);var v=isFiniteNumber(l.min)?l.min:0,m=isFiniteNumber(l.max)?l.max:h;r.push([v,m>v?m:v+1])}return r}(S,w):[];"cartesian"===E||e.tooltip&&void 0!==e.tooltip.trigger||(k.tooltip.trigger="item");var K=k.xAxis;"value"===K.type&&(K.type="linear");var Y=Array.isArray(e.yAxis)?e.yAxis:[e.yAxis||{}];Y.length||Y.push({});var q,$=_createForOfIteratorHelper(Y);try{for($.s();!(q=$.n()).done;){var Z=q.value;"value"===Z.type&&(Z.type="linear")}}catch(e){$.e(e)}finally{$.f()}for(var J=0,Q=w;J<Q.length;J++){var ee=Q[J],te=Number(ee.option.yAxisIndex);ee.axisIndex=isFinite(te)?Math.max(0,Math.min(Y.length-1,Math.floor(te))):0}var ie=function isHorizontalLayout(e,t){var r="category"===t.type||Array.isArray(t.data)&&t.data.length>0;return!!r&&!("category"===e.type||Array.isArray(e.data)&&e.data.length>0)}(K,Y[0]);!ie||e.tooltip&&void 0!==e.tooltip.trigger||(k.tooltip.trigger="item"),function applyAxisCategories(e,t){if(!e||!Array.isArray(e.data)||!e.data.length)return;var r,n=e.data,a=_createForOfIteratorHelper(t);try{for(a.s();!(r=a.n()).done;){var s=r.value;if(!s.virtual)for(var l=0,h=s.pointCount;l<h;l++){var u=s.pointAt(l);u.xValue===u.index&&(void 0!==n[u.index]&&(u.xValue=n[u.index],void 0===u.name&&(u.name=String(n[u.index]))))}}}catch(e){a.e(e)}finally{a.f()}}(ie?Y[0]:K,w);var re,ne,ae,oe=ie?K.type&&"category"!==K.type?K.type:"linear":function resolveXAxisType(e,t){if(e.type)return e.type;if(t.some(function(e){return"bar"===e.type||"heatmap"===e.type||"boxplot"===e.type||"waterfall"===e.type}))return"category";var r,n=[],a=_createForOfIteratorHelper(t);try{for(a.s();!(r=a.n()).done;)for(var s=r.value,l=0,h=s.pointCount;l<h&&(n.push(s.xValueAt(l)),!(n.length>2e3));l++);}catch(e){a.e(e)}finally{a.f()}if(n.some(function(e){return e instanceof Date}))return"time";if(n.some(function(e){return"number"==typeof e&&Math.abs(e)>1e11}))return"time";if(n.some(function(e){return"string"==typeof e&&!isFinite(Number(e))}))return"category";return"linear"}(K,w),se=w.some(function(e){return!!(e.columns||e.ring||e.chunks)});if(se&&("category"===oe||ie))throw new Error("[ice-chart] 虚拟(列存)系列只支持数值型 x 轴(xAxis.type 不要写 category)。");if(w.some(function(e){return e.grid})){if("category"!==oe)throw new Error("[ice-chart] 虚拟(列存)热力图的 x 轴必须是类目轴(xAxis.type: 'category')。");var le=Y[0]&&Y[0].type;if(void 0!==le&&"category"!==le)throw new Error("[ice-chart] 虚拟(列存)热力图的 y 轴必须是类目轴(yAxis.type 不要写别的)。")}if(ie){re=buildYDomain(w,0,K,oe),ne=[];var he=function buildCategoryValues(e,t){if(Array.isArray(e.data)&&e.data.length)return e.data.slice();var r,n={},a=[],s=_createForOfIteratorHelper(t);try{for(s.s();!(r=s.n()).done;){var l=r.value;if(l.raw){var h,u=_createForOfIteratorHelper(l.raw.categories);try{for(u.s();!(h=u.n()).done;){var c=h.value,p=String(c);n[p]||(n[p]=!0,a.push(c))}}catch(e){u.e(e)}finally{u.f()}}else for(var v=0,m=l.pointCount;v<m;v++){var g=l.pointAt(v),b=void 0===g.name?g.xValue:g.name,k=String(b);n[k]||(n[k]=!0,a.push(b))}}}catch(e){s.e(e)}finally{s.f()}return a}(Y[0],w);Y[0]=_objectSpread2(_objectSpread2({},Y[0]),{},{type:"category"}),Y[0].__categories=he}else{var ue=function buildXDomain(e,t,r){if("category"===e){var n=t.find(function(e){return e.grid});if(n&&n.grid)return{domain:n.grid.xCategories.slice(),categories:n.grid.xCategories.slice()};if(Array.isArray(r.data)&&r.data.length)return{domain:r.data.slice(),categories:r.data.slice()};var a=new Map,s=[];if(1===t.length&&t[0].raw){var l=t[0].raw,h=l.categories.slice();return{domain:h,categories:h,categoryLookup:function categoryLookup(e){return rawCategoryIndex(l,e)}}}if(t.length>1&&t.every(function(e){return!!e.raw})){var u,c=[],p=_createForOfIteratorHelper(t);try{for(p.s();!(u=p.n()).done;){var v,m=u.value.raw,g=!1,b=_createForOfIteratorHelper(c);try{for(b.s();!(v=b.n()).done;){if(sameCategories(v.value,m)){g=!0;break}}}catch(e){b.e(e)}finally{b.f()}g||c.push(m)}}catch(e){p.e(e)}finally{p.f()}if(1===c.length){var k=c[0],S=k.categories.slice();return{domain:S,categories:S,categoryLookup:function categoryLookup(e){return rawCategoryIndex(k,e)}}}for(var A=0,w=c;A<w.length;A++){var _,M=_createForOfIteratorHelper(w[A].categories);try{for(M.s();!(_=M.n()).done;){var C=_.value,T=String(C);a.has(T)||(a.set(T,s.length),s.push(C))}}catch(e){M.e(e)}finally{M.f()}}return{domain:s,categories:s,categoryLookup:function categoryLookup(e){var t=a.get(e);return void 0===t?-1:t}}}var P,I=_createForOfIteratorHelper(t);try{for(I.s();!(P=I.n()).done;){var N=P.value;if(N.raw){var D,O=_createForOfIteratorHelper(N.raw.categories);try{for(O.s();!(D=O.n()).done;){var R=D.value,H=String(R);a.has(H)||(a.set(H,s.length),s.push(R))}}catch(e){O.e(e)}finally{O.f()}}else for(var z=0,E=N.pointCount;z<E;z++){var L=N.xValueAt(z),V=String(L);a.has(V)||(a.set(V,s.length),s.push(L))}}}catch(e){I.e(e)}finally{I.f()}return{domain:s,categories:s,categoryLookup:function categoryLookup(e){var t=a.get(e);return void 0===t?-1:t}}}var B,j=[],W=_createForOfIteratorHelper(t);try{for(W.s();!(B=W.n()).done;){var X=B.value,G=storeDomainOf(X);if(G)j.push(G.xDomain[0],G.xDomain[1]);else if(X.domainXValues&&X.domainXValues.length){var U,K=_createForOfIteratorHelper(X.domainXValues);try{for(K.s();!(U=K.n()).done;){var Y=U.value;isFinite(Y)&&j.push(Y)}}catch(e){K.e(e)}finally{K.f()}}else for(var q=0,$=X.pointCount;q<$;q++){var Z=X.xValueAt(q),J="time"===e?toTimestamp(Z):Number(Z);isFinite(J)&&j.push(J)}}}catch(e){W.e(e)}finally{W.f()}var Q=_slicedToArray(extent(j),2),ee=Q[0],te=Q[1],ie=isFiniteNumber(r.min),re=isFiniteNumber(r.max);ie&&(ee=r.min);re&&(te=r.max);if(!1!==r.nice){var ne=_slicedToArray(niceDomain([ee,te],r.tickCount||5),2);ee=ne[0],te=ne[1]}if("log"!==e){var ae=_slicedToArray(padDomain(ee,te,r,ie,re),2);ee=ae[0],te=ae[1]}return{domain:[ee,te],categories:[]}}(oe,w,K);re=ue.domain,ne=ue.categories,ae=ue.categoryLookup}var ce=function resolveXDomain(e,t,r,n){if(!r)return{domain:t,offset:0};if("category"!==e)return{domain:[r[0],r[1]],offset:0};var a=function at(e){if(!n)return t.indexOf(e);var r=n(String(e));return r>=0&&r<t.length?r:-1},s=a(r[0]),l=a(r[1]);return s>=0&&l>=s?{domain:t.slice(s,l+1),offset:s}:{domain:t,offset:0}}(oe,re,g.xDomain,ae),fe=ce.domain,de=ae?ce.offset:0;!function applyStacking(e){var t,r={},n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var a=t.value;if(!a.virtual)if(a.option.stack){var s="".concat(a.axisIndex,"::").concat(a.option.stack);(r[s]=r[s]||[]).push(a)}else for(var l=0,h=a.pointCount;l<h;l++){var u=a.pointAt(l);u.base=0,u.top=null===u.y?0:u.y}}}catch(e){n.e(e)}finally{n.f()}for(var c in r){var p,v={},m=_createForOfIteratorHelper(r[c]);try{for(m.s();!(p=m.n()).done;)for(var g=p.value,b=0,k=g.pointCount;b<k;b++){var S=g.pointAt(b),A=String(S.xValue),w=v[A]||0,_=null===S.y?0:S.y;S.base=w,S.top=w+_,v[A]=S.top}}catch(e){m.e(e)}finally{m.f()}}}(w),function applyWaterfall(e){var t,r=_createForOfIteratorHelper(e);try{for(r.s();!(t=r.n()).done;){var n=t.value;if("waterfall"===n.type&&!n.virtual)for(var a=0,s=0,l=n.pointCount;s<l;s++){var h=n.pointAt(s),u=h.raw,c=!(!u||"object"!==_typeof(u)||Array.isArray(u)||!u.total),p=h.y||0;c?(h.base=0,h.top=a):(h.base=a,h.top=a+p,a+=p)}}}catch(e){r.e(e)}finally{r.f()}}(w);var pe={option:K,type:oe,domain:fe,scale:null,index:0,position:"left"},ve=w.some(function(e){return"heatmap"===e.type}),ye=Y.map(function(e,t){if(ie&&0===t)return{option:e,type:"category",domain:e.__categories||[],scale:null,index:t,position:e.position||"left"};if(ve&&(void 0===e.type||"category"===e.type)){for(var r={},n=[],a=0,s=w;a<s.length;a++){var l=s[a];if("heatmap"===l.type)if(l.grid){var h,u=_createForOfIteratorHelper(l.grid.yCategories);try{for(u.s();!(h=u.n()).done;){var c=h.value,p=String(c);r[p]||(r[p]=!0,n.push(c))}}catch(e){u.e(e)}finally{u.f()}}else for(var v=0,m=l.pointCount;v<m;v++){var b=l.pointAt(v),k=String(void 0===b.name?b.xValue:b.name);r[k]||(r[k]=!0,n.push(void 0===b.name?b.xValue:b.name))}}return{option:e,type:"category",domain:n,scale:null,index:t,position:e.position||(0===t?"left":"right")}}var S=e.type||"linear",A=g.yDomains?g.yDomains[t]:0===t?g.yDomain:null;return{option:e,type:S,domain:A||buildYDomain(w,t,e,S),scale:null,index:t,position:e.position||(0===t?"left":"right")}}),me=ye[0];return function applyEqualAspect(e,t,r,n){if("equal"!==e.aspect||"cartesian"!==t)return;if("category"===r.type)return;var a=n[0];if(!a||"category"===a.type)return;var s=Number(r.domain[0]),l=Number(r.domain[1]),h=Number(a.domain[0]),u=Number(a.domain[1]);if(![s,l,h,u].every(function(e){return isFinite(e)}))return;var c=Math.abs(l-s),p=Math.abs(u-h),v=Math.max(c,p);if(!(v>0))return;if(c<v){var m=(s+l)/2;r.domain=[m-v/2,m+v/2]}if(p<v){var g=(h+u)/2;a.domain=[g-v/2,g+v/2]}}(e,E,pe,ye),ae&&pe.domain===fe&&(pe.categoryLookup=ae,pe.categoryOffset=de),{labels:_objectSpread2({chart:"图表",sector:"扇区",value:"数值",ratio:"占比",indicator:"指标",coordinate:"坐标",liquid:"水位",slice:"切片"},e.labels||{}),kind:E,orientation:ie?"horizontal":"vertical",radar:S,sankey:L,funnel:V,gauge:B,liquid:j,treemap:W,graph:X,radarDomains:U,option:k,theme:b,series:w,xAxis:pe,yAxes:ye,yAxis:me,categories:ne,visibleSeries:w.filter(function(e){return!e.hidden}),hiddenIds:D,hiddenSlices:G}}var N=.25;function expressionVariables(e){try{return compileExpression(e).variables}catch(e){return[]}}function sameCategories(e,t){var r=e.categories,n=t.categories;if(r.length!==n.length)return!1;for(var a=0;a<r.length;a++)if(r[a]!==n[a])return!1;return!0}function buildYDomain(e,t,r,n){var a,s=[],l=!1,h=_createForOfIteratorHelper(e);try{for(h.s();!(a=h.n()).done;){var u=a.value;if(!u.hidden&&u.axisIndex===t){"bar"!==u.type&&"area"!==u.type||(l=!0);var c=storeDomainOf(u);if(c)c.yDomain&&s.push(c.yDomain[0],c.yDomain[1]);else if(u.domainValues&&u.domainValues.length){var p=_slicedToArray(robustRange(u.domainValues),2),v=p[0],m=p[1];s.push(v,m)}else for(var g=0,b=u.pointCount;g<b;g++){var k=u.pointAt(g);null!==k.y&&s.push(k.y),k.boxplot&&s.push(k.boxplot[0],k.boxplot[4]),u.option.stack&&(s.push(k.base),s.push(k.top)),"waterfall"===u.type&&s.push(k.base,k.top)}}}}catch(e){h.e(e)}finally{h.f()}var S=_slicedToArray(extent(s),2),A=S[0],w=S[1];l&&(A=Math.min(A,0),w=Math.max(w,0));var _=isFiniteNumber(r.min),M=isFiniteNumber(r.max);if(_&&(A=r.min),M&&(w=r.max),!1!==r.nice&&"log"!==n){var C=_slicedToArray(niceDomain([A,w],r.tickCount||5),2);A=C[0],w=C[1]}if("log"!==n){var T=l&&!_&&Math.abs(A)<1e-12,P=l&&!M&&Math.abs(w)<1e-12,I=_slicedToArray(padDomain(A,w,r,_||T,M||P),2);A=I[0],w=I[1]}if("log"===n){var N=s.filter(function(e){return e>0});N.length?(A=Math.min.apply(Math,_toConsumableArray(N)),w=Math.max.apply(Math,_toConsumableArray(N))):(A=1,w=10),isFiniteNumber(r.min)&&r.min>0&&(A=r.min),isFiniteNumber(r.max)&&r.max>0&&(w=r.max)}return[round(A,10),round(w,10)]}function treemapNodeValue(e){if(!e)return 0;if(Array.isArray(e.children)&&e.children.length)return e.children.reduce(function(e,t){return e+treemapNodeValue(t)},0);var t=Number(e.value);return isFinite(t)&&t>0?t:0}function computeBoxplotSummary(e){var t=e.filter(function(e){return isFinite(e)}).sort(function(e,t){return e-t});if(!t.length)return[0,0,0,0,0];var r=function quantile(e){var r=(t.length-1)*e,n=Math.floor(r),a=Math.ceil(r);return n===a?t[n]:t[n]+(t[a]-t[n])*(r-n)};return[t[0],r(.25),r(.5),r(.75),t[t.length-1]]}function toSerializableOption(e){if(null==e)return e;if(Array.isArray(e))return e.map(toSerializableOption);if("function"!=typeof e){if("object"===_typeof(e)){var t={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){var n=toSerializableOption(e[r]);void 0!==n&&(t[r]=n)}return t}return e}}function chartThemeToEnginePatch(e){var t=Array.isArray(e.colorPalette)&&e.colorPalette.length?e.colorPalette:["#0D6EFD"],r=function pick(e,r){return t[e]||t[0]||r};return{palette:t,chrome:{selection:{stroke:e.selection.stroke},handle:{fill:r(0,"#0D6EFD")},linkHook:{fill:r(1,"#198754")},slot:{fill:r(1,"#198754"),hoverFill:r(2,"#FFC107")},guide:{color:r(0,"#0D6EFD")},linkLabel:{background:e.tooltip.background,fill:e.tooltip.textColor},textSelection:{color:e.brush.fill},shadow:{sm:e.tooltip.shadowColor,md:e.tooltip.shadowColor,lg:e.tooltip.shadowColor}},base:{fontFamily:{base:e.fontFamily},fontSize:{md:e.fontSize}}}}function applyChartThemeToEngine(e,t){if(!e||"function"!=typeof e.setTheme)throw new Error("applyChartThemeToEngine(ice, theme) 需要一个 ICE 实例");var r=chartThemeToEnginePatch(t);return"function"==typeof e.setThemePatch?e.setThemePatch("ice-chart",r):e.setTheme(r),e}function formatNumberTick(e,t){if(!isFinite(e))return String(e);var r=Math.abs(e);if(0!==r&&(r>=1e9||r<1e-4))return e.toExponential(1);var n=0;t>0&&t<1?n=Math.min(6,Math.ceil(-Math.log10(t))):Number.isInteger(e)||(n=2);var a=e.toFixed(n),s=_slicedToArray((n>0?a.replace(/\.?0+$/,""):a).split("."),2),l=s[0],h=s[1],u=l.replace(/\B(?=(\d{3})+(?!\d))/g,",");return h?"".concat(u,".").concat(h):u}function formatTick(e,t,r,n){if("function"==typeof n){var a=n(e,r);return null==a?"":String(a)}return"time"===t.type?t.format(e,r):"linear"===t.type||"log"===t.type?formatNumberTick(Number(e),function tickStep(e){for(var t=e.ticks(5),r=1/0,n=1;n<t.length;n++){var a=Math.abs(Number(t[n])-Number(t[n-1]));a>0&&a<r&&(r=a)}return isFinite(r)?r:0}(t)):String(e)}var D=function(){function LinearScale(e,t){_classCallCheck(this,LinearScale),_defineProperty(this,"type","linear"),this.domain=function normalize(e){var t=Number(e[0]),r=Number(e[1]);if(t===r){var n=Math.abs(t)>1?.1*Math.abs(t):1;return[t-n,r+n]}return[t,r]}(e),this.range=t}return _createClass(LinearScale,[{key:"map",value:function map(e){var t=Number(e);if(!isFinite(t))return NaN;var r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0];return l+(t-n)/(a-n)*(s[1]-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];return l===s?r:r+(e-s)/(l-s)*(n-r)}},{key:"ticks",value:function ticks(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=niceStep(n-r,e),s=[],l=Math.ceil(r/a)*a;l<=n+1e-6*a&&s.length<1e3;l+=a)s.push(round(l));return s}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){var e=this.ticks(5);return e.length>1?Math.abs(e[1]-e[0]):0}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1];return n===r?0:(Number(e)-r)/(n-r)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0];return r+e*(t[1]-r)}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){for(var r=this.ticks(5),n=1/0,a=1;a<r.length;a++){var s=Math.abs(r[a]-r[a-1]);s>0&&s<n&&(n=s)}return formatNumberTick(Number(e),isFinite(n)?n:0)}},{key:"clone",value:function clone(){return new LinearScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]])}}])}();var O=function(){function BandScale(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};_classCallCheck(this,BandScale),_defineProperty(this,"type","category"),_defineProperty(this,"indexCache",null),_defineProperty(this,"indexCacheDomain",null),this.domain=e.length?e.slice():[""],this.range=t,this.paddingInner=void 0===r.paddingInner?.2:r.paddingInner,this.paddingOuter=void 0===r.paddingOuter?.1:r.paddingOuter,this.lookup=r.categoryLookup||null;var n=Number(r.categoryOffset);this.offset=isFinite(n)&&n>0?Math.floor(n):0,this._step=this.computeStep()}return _createClass(BandScale,[{key:"computeStep",value:function computeStep(){var e=Math.max(1,this.domain.length),t=_slicedToArray(this.range,2),r=t[0],n=t[1],a=Math.abs(n-r),s=e-this.paddingInner+2*this.paddingOuter;return a/Math.max(1e-4,s)}},{key:"indexOf",value:function indexOf(e){if(null!==e&&"object"===_typeof(e)){var t=this.domain.indexOf(e);if(-1!==t)return t}var r=String(e);if(this.lookup){var n=this.lookup(r),a=n-this.offset;return n>=0&&a>=0&&a<this.domain.length?a:-1}var s=this.indices().get(r);return void 0!==s?s:-1}},{key:"indices",value:function indices(){if(this.indexCache&&this.indexCacheDomain===this.domain)return this.indexCache;for(var e=new Map,t=0;t<this.domain.length;t++){var r=String(this.domain[t]);e.has(r)||e.set(r,t)}return this.indexCache=e,this.indexCacheDomain=this.domain,e}},{key:"map",value:function map(e){return this.bandStart(e)+this.bandwidth()/2}},{key:"bandStart",value:function bandStart(e,t){var r=void 0!==t&&t>=0?t:this.indexOf(e);return r<0?NaN:_slicedToArray(this.range,1)[0]+(this.range[1]>=this.range[0]?1:-1)*(this.paddingOuter*this._step+r*this._step)}},{key:"bandwidth",value:function bandwidth(){return this._step*(1-this.paddingInner)}},{key:"step",value:function step(){return this._step}},{key:"isBand",value:function isBand(){return!0}},{key:"ticks",value:function ticks(){return this.domain.slice()}},{key:"indexAt",value:function indexAt(e){for(var t=this.bandwidth(),r=this.range[1]>=this.range[0]?1:-1,n=0;n<this.domain.length;n++){var a=this.bandStart(void 0,n),s=a+r*t,l=Math.min(a,s),h=Math.max(a,s);if(e>=l&&e<=h)return n}return-1}},{key:"invert",value:function invert(e){var t=this.indexAt(e);if(t>=0)return this.domain[t];for(var r=0,n=1/0,a=0;a<this.domain.length;a++){var s=Math.abs(this.map(this.domain[a])-e);s<n&&(n=s,r=a)}return this.domain[r]}},{key:"nearestIndex",value:function nearestIndex(e){var t=this.indexAt(e);if(t>=0)return t;for(var r=0,n=1/0,a=0;a<this.domain.length;a++){var s=Math.abs(this.map(this.domain[a])-e);s<n&&(n=s,r=a)}return r}},{key:"fractionOf",value:function fractionOf(e){var t=this.indexOf(e);return t<0?0:this.domain.length<=1?.5:(t+.5)/this.domain.length}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=this.domain.length;if(t){var r=Math.max(0,Math.min(t-1,Math.round(e*t-.5)));return this.domain[r]}}},{key:"span",value:function span(){return this.domain.length}},{key:"format",value:function format(e){return null==e?"":String(e)}},{key:"clone",value:function clone(){return new BandScale(this.domain.slice(),[this.range[0],this.range[1]],{paddingInner:this.paddingInner,paddingOuter:this.paddingOuter,categoryLookup:this.lookup||void 0,categoryOffset:this.offset})}}])}(),R=function(){function LogScale(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};_classCallCheck(this,LogScale),_defineProperty(this,"type","log"),this.base=r.logBase&&r.logBase>1?r.logBase:10;var n=Math.max(Number.MIN_VALUE,Number(e[0])),a=Math.max(1.0001*n,Number(e[1]));this.domain=[n,a],this.range=t}return _createClass(LogScale,[{key:"log",value:function log(e){return Math.log(e)/Math.log(this.base)}},{key:"map",value:function map(e){var t=Number(e);if(!(t>0))return NaN;var r=_slicedToArray(this.domain,2),n=r[0],a=r[1],s=_slicedToArray(this.range,2),l=s[0],h=s[1],u=this.log(n),c=this.log(a);return l+(this.log(t)-u)/(c-u)*(h-l)}},{key:"invert",value:function invert(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=_slicedToArray(this.range,2),s=a[0],l=a[1];if(l===s)return r;var h=this.log(r),u=h+(e-s)/(l-s)*(this.log(n)-h);return Math.pow(this.base,u)}},{key:"ticks",value:function ticks(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:5,t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=[],s=Math.floor(this.log(r)),l=Math.ceil(this.log(n)),h=l-s;if(h<=2*e)for(var u=s;u<=l;u++){var c=Math.pow(this.base,u);c>=.999999*r&&c<=1.000001*n&&a.push(c)}else for(var p=Math.max(1,Math.ceil(h/e)),v=s;v<=l;v+=p){var m=Math.pow(this.base,v);m>=.999999*r&&m<=1.000001*n&&a.push(m)}return a.length||a.push(r,n),a}},{key:"bandwidth",value:function bandwidth(){return 0}},{key:"bandStart",value:function bandStart(e){return this.map(e)}},{key:"step",value:function step(){var e=this.ticks(5);return e.length>1?Math.abs(e[1]-e[0]):0}},{key:"isBand",value:function isBand(){return!1}},{key:"indexAt",value:function indexAt(e){return-1}},{key:"fractionOf",value:function fractionOf(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=this.log(r),s=this.log(n);return s===a?0:(this.log(Math.max(Number.MIN_VALUE,Number(e)))-a)/(s-a)}},{key:"valueAtFraction",value:function valueAtFraction(e){var t=_slicedToArray(this.domain,2),r=t[0],n=t[1],a=this.log(r),s=this.log(n);return Math.pow(this.base,a+e*(s-a))}},{key:"span",value:function span(){return this.domain[1]-this.domain[0]}},{key:"format",value:function format(e,t){return formatNumberTick(Number(e),this.step())}},{key:"clone",value:function clone(){return new LogScale([this.domain[0],this.domain[1]],[this.range[0],this.range[1]],{logBase:this.base})}}])}();function createScale(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};switch(e){case"category":return new O(t,r,n);case"time":return new k(t,r,n);case"log":return new R(t,r,n);default:return new D(t,r)}}function measureTextWidth(e,t,r,n){if(!t)return 0;if(e&&"function"==typeof e.measureText)try{var a=e.font;e.font="".concat(r,"px ").concat(n);var s=e.measureText(t);if(e.font=a,s&&"number"==typeof s.width&&isFinite(s.width))return s.width}catch(e){}for(var l=0,h=0;h<t.length;h++){l+=t.charCodeAt(h)>11904?1:.55}return l*r}function computeLayout(e,t,r){for(var n=e.option.margin,a=createScale(e.xAxis.type,e.xAxis.domain,[0,Math.max(1,r.width)],{logBase:e.xAxis.option.logBase}),s=buildAxisLayout(e,"x",e.xAxis,a,t),l=e.yAxes.map(function(n){var a=createScale(n.type,n.domain,[Math.max(1,r.height),0],{logBase:n.option.logBase});return buildAxisLayout(e,"y",n,a,t)}),h=0,u=0,c=0;c<e.yAxes.length;c++){var p=e.yAxes[c],v=l[c];if(!1!==p.option.show&&"cartesian"===e.kind){var m=yAxisReserve(p,v);"right"===p.position?(v.offset=u,u+=m):(v.offset=h,h+=m)}else v.offset=0}var g=l[0],b=function buildTitleLayout(e){var t=e.option.title;if(!t||!t.text&&!t.subtext)return null;var r=e.theme,n={color:t.textStyle&&t.textStyle.color||r.textColor,fontSize:t.textStyle&&t.textStyle.fontSize||r.fontSize+4,fontWeight:t.textStyle&&t.textStyle.fontWeight||"bold"},a={color:t.subtextStyle&&t.subtextStyle.color||r.subTextColor,fontSize:t.subtextStyle&&t.subtextStyle.fontSize||r.fontSize},s="left"===t.left?"left":"right"===t.left?"right":"center";return{text:t.text||"",subtext:t.subtext||"",x:0,y:0,align:s,textStyle:n,subtextStyle:a}}(e),k=b?(b.text?1.5*b.textStyle.fontSize:0)+(b.subtext?1.4*b.subtextStyle.fontSize:0):0,S=function layoutLegend(e,t,r,n){var a=e.option.legend;if(!a||!1===a.show)return null;var s=[];if("polar"===e.kind||"funnel"===e.kind){var l,h=_createForOfIteratorHelper(e.series);try{for(h.s();!(l=h.n()).done;){var u=l.value;if("pie"===u.type||"funnel"===u.type)for(var c=0,p=u.pointCount;c<p;c++){var v=u.pointAt(c);s.push({seriesId:u.id,seriesIndex:u.index,dataIndex:v.index,name:v.name||"".concat(u.name," ").concat(v.index+1),color:v.color||u.color,hidden:!!e.hiddenSlices["".concat(u.id,"#").concat(v.index)],x:0,y:0,width:0,height:0})}}}catch(e){h.e(e)}finally{h.f()}}else{var m,g=_createForOfIteratorHelper(e.series);try{for(g.s();!(m=g.n()).done;){var b=m.value;s.push({seriesId:b.id,seriesIndex:b.index,name:b.name,color:b.color,hidden:!!b.hidden,x:0,y:0,width:0,height:0})}}catch(e){g.e(e)}finally{g.f()}}if(!s.length)return null;var k={position:a.position||"top",items:s},S=e.theme.fontSize,A=a.itemWidth||12,w=Math.max(a.itemHeight||12,1.4*S),_=a.itemGap||16,M=s.map(function(r){return{item:r,textWidth:measureTextWidth(t,r.name,S,e.theme.fontFamily)}}),C=w+4,T=e.option.margin;if("left"===k.position||"right"===k.position){for(var P=Math.max.apply(Math,_toConsumableArray(M.map(function(e){return e.textWidth})).concat([0])),I=M.length*C,N="left"===k.position?T.left:r.width-T.right-(A+6+P),D=Math.max(0,r.height-n-T.bottom),O=Math.max(n,n+(D-I)/2),R=0;R<M.length;R++){var H=M[R].item;H.x=N,H.y=O+R*C,H.width=A+6+M[R].textWidth,H.height=C}return k}var z,E=[],L=[],V=0,B=Math.max(40,r.width-T.left-T.right),j=_createForOfIteratorHelper(M);try{for(j.s();!(z=j.n()).done;){var W=z.value,X=A+6+W.textWidth;L.length&&V+_+X>B&&(E.push(L),L=[],V=0),V+=(L.length>1?_:0)+X,L.push(W)}}catch(e){j.e(e)}finally{j.f()}L.length&&E.push(L);for(var G="top"===k.position?n:r.height-T.bottom-E.length*C,U=0,K=E;U<K.length;U++){var Y,q=K[U],$=q.reduce(function(e,t,r){return e+A+6+t.textWidth+(r>0?_:0)},0),Z=(r.width-$)/2,J=_createForOfIteratorHelper(q);try{for(J.s();!(Y=J.n()).done;){var Q=Y.value;Q.item.x=Z,Q.item.y=G,Q.item.width=A+6+Q.textWidth,Q.item.height=C,Z+=Q.item.width+_}}catch(e){J.e(e)}finally{J.f()}G+=C}return k}(e,t,r,n.top+k),A=S?function legendSizeOf(e,t){var r=t.option.legend,n=t.theme.fontSize,a=r.itemWidth||12,s=Math.max(r.itemHeight||12,1.4*n)+4;if("left"===e.position||"right"===e.position){var l=e.items.map(function(e){return e.x}),h=e.items.map(function(e){return e.x+e.width}),u=l.length?Math.min.apply(Math,_toConsumableArray(l)):0,c=h.length?Math.max.apply(Math,_toConsumableArray(h)):0;return{width:Math.max(a+6,c-u),height:e.items.length*s}}var p,v=1,m=e.items.length?e.items[0].y:0,g=_createForOfIteratorHelper(e.items);try{for(g.s();!(p=g.n()).done;){var b=p.value;b.y>m&&(v+=1,m=b.y)}}catch(e){g.e(e)}finally{g.f()}return{width:0,height:v*s}}(S,e):{width:0,height:0},w=n.left,_=n.top,M=r.width-n.right,C=r.height-n.bottom;_+=k,S&&("top"===S.position?_+=A.height+8:"bottom"===S.position?C-=A.height+8:"left"===S.position?w+=A.width+8:M-=A.width+8),w+=h,M-=u,"cartesian"===e.kind&&!1!==e.xAxis.option.show&&(C-=s.labelHeight+4+6,e.xAxis.option.name&&(C-=s.nameHeight+6));var T=e.option.dataZoom&&e.option.dataZoom.slider,P=!("cartesian"!==e.kind||!e.option.dataZoom||T&&!1===T.show),I=Math.max(12,Number(T&&T.height)||26),N=null;if(P){var D=r.height-n.bottom,O=I+14;C+O>D&&(C-=C+O-D),N=C+14}var R={x:Math.round(Math.max(0,w)),y:Math.round(Math.max(0,_)),width:Math.max(1,Math.round(M-w)),height:Math.max(1,Math.round(C-_))};"cartesian"===e.kind&&function thinXAxisLabels(e,t,r,n,a){var s=e.ticks,l=e.labels,h=t.axisLength;if(!s||s.length<=2||!h||h<=0)return;var u=e.formatLabel,c="function"==typeof u,p=0;if(c)p=Number(e.sampledLabelWidth)||0;else for(var v=Math.max(1,Math.floor(s.length/64)),m=0;m<l.length;m+=v)if(l[m]){var g=measureTextWidth(r,l[m],n,a);g>p&&(p=g)}var b=function materialize(e){if(u){var t,r=_createForOfIteratorHelper(e());try{for(r.s();!(t=r.n()).done;){var n=t.value;l[n]||(l[n]=u(n))}}catch(e){r.e(e)}finally{r.f()}}};if(p<=0)return void b(_regenerator().m(function _callee(){var e;return _regenerator().w(function(t){for(;;)switch(t.n){case 0:e=0;case 1:if(!(e<l.length)){t.n=3;break}return t.n=2,e;case 2:e++,t.n=1;break;case 3:return t.a(2)}},_callee)}));var k=Math.max(p+10,64),S=h/(s.length-1||1);if(S>=k)return void b(_regenerator().m(function _callee2(){var e;return _regenerator().w(function(t){for(;;)switch(t.n){case 0:e=0;case 1:if(!(e<l.length)){t.n=3;break}return t.n=2,e;case 2:e++,t.n=1;break;case 3:return t.a(2)}},_callee2)}));for(var A=Math.max(1,Math.ceil(k/S)),w=new Set,_=0;_<s.length;_+=A)w.add(_);var M=s.length-1;if(M>0&&!w.has(M)){var C=M-M%A;(M-C)*S>=k||w.delete(C),w.add(M)}var T=p/2,P=Number(t.leftRoom)||0,I=Number(t.rightRoom)||0,N=Array.from(w).sort(function(e,t){return e-t});if(N.length){var D=N[0];D*S-T<-P&&w.delete(D);var O=N[N.length-1];O*S+T>h+I&&w.delete(O)}b(function(){return w});var R=Array.from(w).sort(function(e,t){return e-t});if(e.visible=R,c){for(var H=Math.max(1,Math.floor(l.length/64)),z=0;z<l.length;z+=H)w.has(z)||(l[z]="");var E=l.length-1;return void(E>0&&E%H!==0&&!w.has(E)&&(l[E]=""))}for(var L=0;L<l.length;L++)w.has(L)||(l[L]="")}(s,{axisLength:R.width,leftRoom:R.x,rightRoom:Math.max(0,r.width-R.x-R.width)},t,e.theme.fontSize,e.theme.fontFamily);var H=null;if("polar"===e.kind||"radar"===e.kind||"gauge"===e.kind||"liquid"===e.kind){var z,E=Math.min(R.width,R.height)/2,L=R.width/2,V=R.height/2,B="polar"===e.kind&&e.series.some(function(e){return"pie"===e.type&&!(e.option.label&&!1===e.option.label.show)})?Math.min(46,.26*E):6;z="gauge"===e.kind?Math.max(10,.94*Math.min(L-14,V-4)):"liquid"===e.kind?Math.max(10,Math.min(L,V)-3):Math.max(10,E*function polarRadiusRatio(e){if("radar"===e.kind){var t=Number(e.radar&&e.radar.radius);return isFinite(t)&&t>0?Math.max(.1,Math.min(1,t)):.72}var r,n=_createForOfIteratorHelper(e.series);try{for(n.s();!(r=n.n()).done;){var a=r.value;if("pie"===a.type){var s=Number(a.option.radius);if(isFinite(s)&&s>0)return Math.max(.1,Math.min(1,s))}}}catch(e){n.e(e)}finally{n.f()}return.92}(e)-B);var j=R.x+R.width/2,W=R.y+R.height/2;H={cx:j,cy:W,radius:z},R={x:Math.round(j-z),y:Math.round(W-z),width:Math.round(2*z),height:Math.round(2*z)}}if("cartesian"===e.kind&&"equal"===e.option.aspect){var X=Math.min(R.width,R.height);R={x:Math.round(R.x+(R.width-X)/2),y:Math.round(R.y+(R.height-X)/2),width:Math.round(X),height:Math.round(X)}}b&&(b.y=n.top);var G=P&&null!==N?{x:R.x,y:Math.round(N),width:R.width,height:Math.round(I)}:null;return{canvas:r,plot:R,titleRect:b?{x:b.x,y:b.y,width:0,height:k}:null,legendRect:S?legendBoundingRect(S):null,legend:S,title:b,polar:H,slider:G,xAxisLayout:s,yAxes:l,yAxisLayout:g,margin:n}}function yAxisReserve(e,t){var r=t.labelWidth+4+6;return e.option.name&&(r+=t.nameHeight+6),r}function buildAxisLayout(e,t,r,n,a){for(var s=r.option,l=e.theme.fontSize,h=e.theme.fontFamily,u=!1===s.show,c=n.ticks(s.tickCount||5),p=function formatLabel(e){return formatTick(c[e],n,e,s.formatter)},v=c.length>512,m=v?new Array(c.length).fill(""):[],g=0,b=Math.max(1,Math.floor(c.length/64)),k=0;k<c.length;k++){var S=k%b===0||0===k||k===c.length-1;if(!v||S){var A=p(k);if(m[k]=A,S){var w=measureTextWidth(a,A,l,h);w>g&&(g=w)}}}var _=Math.abs(Number(s.labelRotate)||0),M=_*Math.PI/180,C=g*Math.sin(M)+1.4*l,T=s.name||"",P=T?measureTextWidth(a,T,l,h):0;return u?{ticks:c,labels:m,formatLabel:v?p:void 0,sampledLabelWidth:g,offset:0,labelWidth:0,labelHeight:0,nameWidth:0,nameHeight:0}:{ticks:c,labels:m,formatLabel:v?p:void 0,sampledLabelWidth:g,offset:0,labelWidth:"y"===t?g:0,labelHeight:"x"===t?_>0?C:1.4*l:0,nameWidth:"x"===t?P:0,nameHeight:T?1.4*l:0}}function legendBoundingRect(e){if(!e.items.length)return{x:0,y:0,width:0,height:0};var t,r=1/0,n=1/0,a=-1/0,s=-1/0,l=_createForOfIteratorHelper(e.items);try{for(l.s();!(t=l.n()).done;){var h=t.value;r=Math.min(r,h.x),n=Math.min(n,h.y),a=Math.max(a,h.x+h.width),s=Math.max(s,h.y+h.height)}}catch(e){l.e(e)}finally{l.f()}return{x:r,y:n,width:a-r,height:s-n}}var H=function(){function ChartComponent(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return _classCallCheck(this,ChartComponent),_defineProperty(e=_callSuper(this,ChartComponent,[_objectSpread2({origin:"top-left",fill:!1,stroke:!1,draggable:!1,transformable:!1,linkable:!1,interactive:!1},t)]),"loopRegistered",!1),e}return _inherits(ChartComponent,e.ICEComponent),_createClass(ChartComponent,[{key:"keyboardEvtHandler",value:function keyboardEvtHandler(){}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return e>=0&&t>=0&&e<=this.state.width&&t<=this.state.height}},{key:"unit",value:function unit(){var e=this.ice;return e?1/((e.viewport&&e.viewport.scale||1)*(e.dpr||1)):1}},{key:"snap",value:function snap(e){var t=this.ice;if(!t)return e;var r=(t.viewport&&t.viewport.scale||1)*(t.dpr||1);return Math.round(e*r)/r+.5/r}},{key:"markDirty",value:function markDirty(){return this.dirty=!0,this.ice&&(this.ice.dirty=!0),this}},{key:"keepAnimating",value:function keepAnimating(){if(!this.loopRegistered){this.loopRegistered=!0;var e=_objectSpread2(_objectSpread2({},this.props.animations||{}),{},{__tick:{from:0,to:1,duration:100,loop:!0}});this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"stopAnimating",value:function stopAnimating(){if(this.loopRegistered){this.loopRegistered=!1;var e=_objectSpread2({},this.props.animations||{});for(var t in e)e[t]&&(e[t].finished=!0);delete e.__tick,this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.remove(this)}}},{key:"setFont",value:function setFont(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"normal";this.ctx.font="".concat(r," ").concat(e,"px ").concat(t)}}])}(),z="auto";function shouldAnimate(){return"instant"!==z&&("full"===z||!function prefersReducedMotion(){if("undefined"==typeof window||"function"!=typeof window.matchMedia)return!1;try{return!!window.matchMedia("(prefers-reduced-motion: reduce)").matches}catch(e){return!1}}())}var E=function(){function Axis(e){var t;return _classCallCheck(this,Axis),_defineProperty(t=_callSuper(this,Axis,[_objectSpread2({interactive:!1},e)]),"axisIndex",0),_defineProperty(t,"position","left"),_defineProperty(t,"axis",null),_defineProperty(t,"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"lastTicks",[]),_defineProperty(t,"morphFrom",[]),t.orientation=e.orientation,t.axisIndex=e.axisIndex||0,t.position=e.position||"left",t}return _inherits(Axis,H),_createClass(Axis,[{key:"edgeX",value:function edgeX(e){var t=this.layout.plot,r=e.offset||0;return"left"===this.position?t.x-r:t.x+t.width+r}},{key:"axisLayoutOf",value:function axisLayoutOf(e){return"x"===this.orientation?e.xAxisLayout:e.yAxes[this.axisIndex]||e.yAxisLayout}},{key:"tickEntries",value:function tickEntries(){var e=this,t=this.axis,r=this.layout;if(!t||!r||!t.scale)return null;var n=t.option||{},a=t.scale,s=r.plot,l=this.axisLayoutOf(r),h=l.ticks,u=l.labels||[],c=[],p=u.length===h.length,v=function emit(t){if(!p||""!==u[t]){var r=a.map(h[t]),l="x"===e.orientation?s.x+r:s.y+r;if(isFinite(l)){var v=formatTick(h[t],a,t,n.formatter)||"";c.push({key:String(h[t]),pos:l,label:v,drawn:!!v})}}};if(l.visible){var m,g=_createForOfIteratorHelper(l.visible);try{for(g.s();!(m=g.n()).done;){v(m.value)}}catch(e){g.e(e)}finally{g.f()}}else for(var b=0;b<h.length;b++)v(b);return c}},{key:"morphProgress",value:function morphProgress(){var e=Number(this.state.axisMorph);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"renderedPositions",value:function renderedPositions(){var e,t=this,r=this.morphProgress(),n=new Map,a=_createForOfIteratorHelper(this.lastTicks);try{var s=function _loop(){var a=e.value,s=t.morphFrom.find(function(e){return e.key===a.key});n.set(a.key,s?s.pos+(a.pos-s.pos)*r:a.pos)};for(a.s();!(e=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}return n}},{key:"syncTicks",value:function syncTicks(){var e=this,t=this.tickEntries();if(t&&!(t.length===this.lastTicks.length&&t.every(function(t,r){return t.key===e.lastTicks[r].key&&Math.abs(t.pos-e.lastTicks[r].pos)<.01}))){var r=0===this.lastTicks.length,n=this.renderedPositions();if(this.morphFrom=this.lastTicks.map(function(e){var t;return _objectSpread2(_objectSpread2({},e),{},{pos:null!==(t=n.get(e.key))&&void 0!==t?t:e.pos})}),this.lastTicks=t,this.setState({axisMorph:0}),r||!shouldAnimate())return this.setState({axisMorph:1}),void this.markDirty();var a=_objectSpread2({},this.props.animations||{});a.axisMorph={from:0,to:1,duration:240,easing:"easeOutCubic",startTime:void 0,finished:!1},this.props.animations=a,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"renderedTickPos",value:function renderedTickPos(e){var t=String(e),r=this.morphFrom.find(function(e){return e.key===t}),n=this.lastTicks.find(function(e){return e.key===t});return r&&n?r.pos+(n.pos-r.pos)*this.morphProgress():n?n.pos:r?r.pos:null}},{key:"morphing",value:function morphing(){return this.morphProgress()<1}},{key:"drawTick",value:function drawTick(e,t,r,n,a){if(!1!==a.showTick){var s=this.ctx;if(s.beginPath(),"x"===this.orientation)s.moveTo(e,t.y+t.height),s.lineTo(e,t.y+t.height+4*n);else{var l="left"===this.position?-1:1;s.moveTo(r,e),s.lineTo(r+4*l*n,e)}s.stroke()}}},{key:"drawTickLabel",value:function drawTickLabel(e,t,r,n,a,s){if(t){var l=this.ctx;if("x"!==this.orientation){var h="left"===this.position?-1:1;l.fillText(t,n+h*a,e)}else{var u=r.y+r.height+a;s.labelRotate?(l.save(),l.translate(e,u),l.rotate(Number(s.labelRotate)*Math.PI/180),l.textAlign="right",l.textBaseline="middle",l.fillText(t,0,0),l.restore()):l.fillText(t,e,u)}}}},{key:"doRender",value:function doRender(){if(this.axis&&this.layout&&this.theme){var e=this.axis.option;if(!1!==e.show)if(this.axis.scale){var t=this.layout.plot,r="x"===this.orientation?this.layout.xAxisLayout:this.layout.yAxes[this.axisIndex]||this.layout.yAxisLayout,n=this.ctx,a=this.theme.fontSize,s=this.unit(),l=10*s;n.beginPath(),n.save(),n.lineWidth=s,n.strokeStyle=this.theme.axisLineColor,n.fillStyle=this.theme.axisLabelColor,this.setFont(a,this.theme.fontFamily),n.textBaseline="x"===this.orientation?"top":"middle",n.textAlign="x"===this.orientation?"center":"left"===this.position?"right":"left";var h="x"===this.orientation?t.x:this.edgeX(r);if(!1!==e.showAxisLine){if(n.beginPath(),"x"===this.orientation){var u=this.snap(t.y+t.height);n.moveTo(t.x,u),n.lineTo(t.x+t.width,u)}else{var c=this.snap(h);n.moveTo(c,t.y),n.lineTo(c,t.y+t.height)}n.stroke()}var p,v="left"===this.position?-1:1,m=this.tickEntries()||[],g=this.morphProgress(),b=new Map,k=_createForOfIteratorHelper(this.morphFrom);try{for(k.s();!(p=k.n()).done;){var S=p.value;b.set(S.key,S.pos)}}catch(e){k.e(e)}finally{k.f()}var A=new Set(m.map(function(e){return e.key}));if(g<1){n.fillStyle=this.theme.axisLabelColor,n.globalAlpha=(1-g)*(1-g);var w,_=_createForOfIteratorHelper(this.morphFrom);try{for(_.s();!(w=_.n()).done;){var M=w.value;!A.has(M.key)&&M.drawn&&(this.drawTick(M.pos,t,h,s,e),this.drawTickLabel(M.pos,M.label,t,h,l,e))}}catch(e){_.e(e)}finally{_.f()}n.globalAlpha=1}var C,T=_createForOfIteratorHelper(m);try{for(T.s();!(C=T.n()).done;){var P=C.value,I=b.get(P.key),N=void 0===I?P.pos:I+(P.pos-I)*g;n.globalAlpha=void 0===I?Math.min(1,.15+.85*g):1,this.drawTick(N,t,h,s,e),P.drawn&&this.drawTickLabel(N,P.label,t,h,l,e)}}catch(e){T.e(e)}finally{T.f()}if(n.globalAlpha=1,e.name)if(this.setFont(a,this.theme.fontFamily),n.fillStyle=this.theme.subTextColor,"x"===this.orientation)if(n.textAlign="center",n.textBaseline="middle",this.layout.slider)n.textAlign="right",n.textBaseline="bottom",n.fillText(e.name,t.x+t.width,t.y+t.height-4*s);else{var D=t.y+t.height+l+r.labelHeight+6*s+.5*a;n.fillText(e.name,t.x+t.width/2,D)}else{var O=h+v*(r.labelWidth+l+r.nameHeight+4*s);n.save(),n.translate("left"===this.position?Math.max(.6*a,O):O,t.y+t.height/2),n.rotate(-Math.PI/2),n.textAlign="center",n.textBaseline="middle",n.fillText(e.name,0,0),n.restore()}n.restore()}}}}])}(),L=function(){function GridLines(e){var t;return _classCallCheck(this,GridLines),_defineProperty(t=_callSuper(this,GridLines,[_objectSpread2({interactive:!1},e)]),"xScale",null),_defineProperty(t,"yScale",null),_defineProperty(t,"horizontal",[]),_defineProperty(t,"xTicks",[]),_defineProperty(t,"plot",{x:0,y:0,width:0,height:0}),_defineProperty(t,"grid",{}),_defineProperty(t,"theme",null),_defineProperty(t,"axisX",null),_defineProperty(t,"axisYList",[]),t}return _inherits(GridLines,H),_createClass(GridLines,[{key:"syncTicks",value:function syncTicks(){if([this.axisX].concat(_toConsumableArray(this.axisYList)).filter(Boolean).some(function(e){return"function"==typeof e.morphing&&e.morphing()})){var e=_objectSpread2({},this.props.animations||{});e.axisMorph={from:0,to:1,duration:240,easing:"easeOutCubic",startTime:void 0,finished:!1},this.props.animations=e,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}}},{key:"yTickPos",value:function yTickPos(e,t,r){var n=void 0===e?null:this.axisYList[e];if(!n||"function"!=typeof n.renderedTickPos)return r;var a=n.renderedTickPos(t);return null==a?r:a}},{key:"xTickPos",value:function xTickPos(e,t){var r=this.axisX;if(!r||"function"!=typeof r.renderedTickPos)return t;var n=r.renderedTickPos(e);return null==n?t:n}},{key:"doRender",value:function doRender(){var e=this;if(this.theme&&this.xScale&&this.yScale&&!1!==this.grid.show){var t=this.plot,r=this.ctx;r.beginPath(),r.save(),r.strokeStyle=this.grid.color||this.theme.splitLineColor,r.lineWidth=(this.grid.lineWidth||1)*this.unit(),"function"==typeof r.setLineDash&&r.setLineDash((this.grid.lineDash||[]).map(function(t){return t*e.unit()}));var n=this.horizontal.length?this.horizontal:this.yScale?[{scale:this.yScale,ticks:this.yScale.ticks(5)}]:[];if(!1!==this.grid.y){r.beginPath();var a,s=_createForOfIteratorHelper(n);try{for(s.s();!(a=s.n()).done;){var l,h=a.value,u=_createForOfIteratorHelper(h.ticks);try{for(u.s();!(l=u.n()).done;){var c=l.value,p=t.y+h.scale.map(c);if(isFinite(p)){var v=this.snap(this.yTickPos(h.index,c,p));r.moveTo(t.x,v),r.lineTo(t.x+t.width,v)}}}catch(e){u.e(e)}finally{u.f()}}}catch(e){s.e(e)}finally{s.f()}r.stroke()}if(this.grid.x){r.beginPath();var m,g=_createForOfIteratorHelper(this.xTicks.length?this.xTicks:this.xScale.ticks(5));try{for(g.s();!(m=g.n()).done;){var b=m.value,k=t.x+this.xScale.map(b);if(isFinite(k)){var S=this.snap(this.xTickPos(b,k));r.moveTo(S,t.y),r.lineTo(S,t.y+t.height)}}}catch(e){g.e(e)}finally{g.f()}r.stroke()}r.restore()}}}])}(),V=[6,4];function resolveAxisValue(e,t,r,n){if(null==t||""===t)return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注缺少定位值。")};var a=e.scale;if(!a||"function"!=typeof a.map)return{ok:!1,code:"annotation:unsupported-scene",message:"当前场景没有可用于定位的坐标系。"};var s,l=a.domain||[],h=t;if("category"===e.type){var u=l.indexOf(h);if(u<0&&(u=l.findIndex(function(e){return String(e)===String(h)})),u<0){var c=Number(h);if(!(Number.isInteger(c)&&c>=0&&c<l.length))return{ok:!1,code:"annotation:unknown-category",message:"".concat(n," 轴没有类目「").concat(String(t),"」。")};u=c}h=l[u];var p=Number(a.map(h));return isFinite(p)?{ok:!0,pixel:r+p,inside:!0,label:String(h)}:{ok:!1,code:"annotation:unknown-category",message:"".concat(n," 轴定位不到「").concat(String(t),"」。")}}if("time"===e.type){if(s=toTimestamp(h),!isFinite(s))return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注的「").concat(String(t),"」不是合法时间。")}}else if(s=Number(h),!isFinite(s))return{ok:!1,code:"annotation:invalid-value",message:"".concat(n," 标注的「").concat(String(t),"」不是合法数值。")};var v=Number(a.map(s));if(!isFinite(v))return{ok:!1,code:"annotation:out-of-range",message:"".concat(n," 标注的「").concat(String(t),"」无法定位。")};var m=function domainRange(e){if(!e||!e.length)return[null,null];var t=e.map(function(e){return Number(e)});if(t.length&&t.every(function(e){return isFinite(e)}))return[Math.min.apply(Math,_toConsumableArray(t)),Math.max.apply(Math,_toConsumableArray(t))];return[0,e.length-1]}(l),g=_slicedToArray(m,2),b=g[0],k=g[1];return{ok:!0,pixel:r+v,inside:null===b||null===k||s>=b-1e-9&&s<=k+1e-9,label:String(t)}}function pickAxis(e,t,r){if("x"===t)return e.xAxis;var n=Number.isInteger(r)&&Number(r)>=0?Number(r):0;return e.yAxes[n]||e.yAxes[0]||e.xAxis}function positiveNumber(e,t){var r=Number(e);return isFinite(r)&&r>0?r:t}function textPosition(e,t){return"start"===e||"center"===e||"end"===e?e:t}function pointTextPosition(e){return"bottom"===e||"left"===e||"right"===e||"top"===e?e:"top"}function resolvedLineDash(e){return Array.isArray(e.lineDash)?e.lineDash.filter(function(e){return isFinite(Number(e))&&Number(e)>=0}).map(Number):!1===e.dashed?[]:V}function symbolOf(e){return"rect"===e||"diamond"===e||"triangle"===e?e:"circle"}function clamp$1(e,t,r){return Math.max(t,Math.min(r,e))}function plainText(e){return null==e?"":String(e)}function withAlpha(e,t){if("string"!=typeof e)return"rgba(0,0,0,".concat(t,")");if("#"===e.charAt(0)){var r=e.slice(1);if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}return 0===e.indexOf("rgb(")?e.replace("rgb(","rgba(").replace(")",",".concat(t,")")):e}function resolveAnnotation(e,t){var r={lines:[],points:[],areas:[]},n=[];if(!e||"object"!==_typeof(e))return{resolved:r,diagnostics:n};var a=Array.isArray(e.lines)?e.lines:[],s=Array.isArray(e.points)?e.points:[],l=Array.isArray(e.areas)?e.areas:[];if(!(a.length+s.length+l.length))return{resolved:r,diagnostics:n};if("cartesian"!==t.kind)return n.push({code:"annotation:unsupported-scene",severity:"warning",message:"标注需要直角坐标系(x / y 轴),当前场景没有,已跳过全部标注。",kind:"line",index:0}),{resolved:r,diagnostics:n};for(var h=t.theme,u=h.textColor,c=h.fontSize||12,p=0;p<l.length;p++){var v=l[p]||{},m="x"===v.axis?"x":"y",g="x"===m?"x":"y",b=pickAxis(t,m,v.axisIndex),k="x"===m?t.plot.x:t.plot.y,S="x"===m?t.plot.width:t.plot.height,A=resolveAxisValue(b,v.from,k,g),w=resolveAxisValue(b,v.to,k,g);if(A.ok&&w.ok){var _=k,M=k+S,C=clamp$1(A.pixel,_,M),T=clamp$1(w.pixel,_,M);Math.abs(T-C)<=0?n.push({code:"annotation:out-of-range",severity:"warning",message:"标注区间#".concat(p,":区间「").concat(plainText(v.from)," ~ ").concat(plainText(v.to),"」不在当前可视范围内,已跳过。"),kind:"area",index:p}):r.areas.push({kind:"area",index:p,axis:m,axisIndex:Number.isInteger(v.axisIndex)?Number(v.axisIndex):0,from:C,to:T,color:"string"==typeof v.color&&v.color?v.color:withAlpha(u,.1),text:plainText(v.text),textPosition:textPosition(v.textPosition,"center"),textColor:"string"==typeof v.textColor&&v.textColor?v.textColor:u,fontSize:positiveNumber(v.fontSize,c)})}else pushDiagnostic(n,A.ok?w:A,"area",p)}for(var P=0;P<a.length;P++){var I=a[P]||{},N="x"===I.axis?"x":"y",D="x"===N?"x":"y",O=pickAxis(t,N,I.axisIndex),R="x"===N?t.plot.x:t.plot.y,H=resolveAxisValue(O,I.value,R,D);if(H.ok)if(H.inside){var z="string"==typeof I.color&&I.color?I.color:u;r.lines.push({kind:"line",index:P,axis:N,axisIndex:Number.isInteger(I.axisIndex)?Number(I.axisIndex):0,pixel:H.pixel,text:plainText(I.text),color:z,lineWidth:positiveNumber(I.lineWidth,1),lineDash:resolvedLineDash(I),textPosition:textPosition(I.textPosition,"end"),textColor:"string"==typeof I.textColor&&I.textColor?I.textColor:z,fontSize:positiveNumber(I.fontSize,c)})}else pushDiagnostic(n,{ok:!1,code:"annotation:out-of-range",message:"".concat(D," 标注的「").concat(H.label,"」不在当前可视范围内,已跳过。")},"line",P);else pushDiagnostic(n,H,"line",P)}for(var E=0;E<s.length;E++){var L=s[E]||{},V=resolveAxisValue(t.xAxis,L.x,t.plot.x,"x"),B=resolveAxisValue(pickAxis(t,"y",L.axisIndex),L.y,t.plot.y,"y");if(V.ok&&B.ok&&V.inside&&B.inside){var j="string"==typeof L.color&&L.color?L.color:u;r.points.push({kind:"point",index:E,axisIndex:Number.isInteger(L.axisIndex)?Number(L.axisIndex):0,x:V.pixel,y:B.pixel,text:plainText(L.text),color:j,symbol:symbolOf(L.symbol),symbolSize:positiveNumber(L.symbolSize,8),textPosition:pointTextPosition(L.textPosition),textColor:"string"==typeof L.textColor&&L.textColor?L.textColor:j,fontSize:positiveNumber(L.fontSize,c)})}else{pushDiagnostic(n,V.ok?B.ok?V.inside?{ok:!1,code:"annotation:out-of-range",message:"y 标注的「".concat(B.label,"」不在当前可视范围内,已跳过。")}:{ok:!1,code:"annotation:out-of-range",message:"x 标注的「".concat(V.label,"」不在当前可视范围内,已跳过。")}:B:V,"point",E)}}return{resolved:r,diagnostics:n}}function pushDiagnostic(e,t,r,n){var a="line"===r?"标注线":"point"===r?"标注点":"标注区间";e.push({code:t.code,severity:"annotation:invalid-value"===t.code?"error":"warning",message:"".concat(a,"#").concat(n,":").concat(t.message),kind:r,index:n})}var B=function(){function Annotation(e){var t;return _classCallCheck(this,Annotation),_defineProperty(t=_callSuper(this,Annotation,[_objectSpread2({interactive:!1},e)]),"resolved",{lines:[],points:[],areas:[]}),_defineProperty(t,"diagnostics",[]),_defineProperty(t,"ink",[]),_defineProperty(t,"theme",null),_defineProperty(t,"option",null),_defineProperty(t,"__boxScratch",[0,0,0,0]),_defineProperty(t,"plot",{x:0,y:0,width:0,height:0}),_defineProperty(t,"xAxis",null),_defineProperty(t,"yAxes",[]),t}return _inherits(Annotation,H),_createClass(Annotation,[{key:"sync",value:function sync(e,t){this.option=e||null,this.theme=t.theme;var r=resolveAnnotation(e,t),n=r.resolved,a=r.diagnostics;this.resolved=n,this.diagnostics=a,this.markDirty()}},{key:"hasInk",get:function get(){return this.resolved.lines.length>0||this.resolved.points.length>0||this.resolved.areas.length>0}},{key:"__localBox",value:function __localBox(){var e=this.__boxScratch;return e[0]=0,e[1]=0,e[2]=this.state.width||0,e[3]=this.state.height||0,e}},{key:"doRender",value:function doRender(){if(this.theme&&this.hasInk){var e=this.plot,t=[];this.drawAreas(t,e),this.drawLines(t,e),this.drawPoints(t),this.ink=t}else this.ink=[]}},{key:"drawAreas",value:function drawAreas(e,t){var r,n=this,a=_createForOfIteratorHelper(this.resolved.areas);try{var s=function _loop(){var a=r.value,s=n.ctx;s.beginPath();var l=Math.min(a.from,a.to),h=Math.max(a.from,a.to),u="x"===a.axis?l:t.x,c="y"===a.axis?l:t.y,p="x"===a.axis?h-l:t.width,v="y"===a.axis?h-l:t.height;if(p<=0||v<=0)return 1;s.save(),s.fillStyle=a.color,s.fillRect(u,c,p,v),s.restore();var m=null;if(a.text){s.save(),n.setFont(a.fontSize,n.theme.fontFamily,"normal"),s.fillStyle=a.textColor;if("y"===a.axis){var g="start"===a.textPosition?"left":"end"===a.textPosition?"right":"center",b="start"===a.textPosition?t.x+6:"end"===a.textPosition?t.x+t.width-6:t.x+t.width/2;s.textAlign=g,s.textBaseline="middle";var k=(a.from+a.to)/2;n.strokeHalo(function(){return s.strokeText(a.text,b,k)}),s.fillText(a.text,b,k),m={kind:"area",index:a.index,x:"right"===g?b-n.textWidth(a.text,a.fontSize):"center"===g?b-n.textWidth(a.text,a.fontSize)/2:b,y:k-a.fontSize/2,width:n.textWidth(a.text,a.fontSize),height:a.fontSize,text:a.text}}else{var S=(a.from+a.to)/2;s.textAlign="center",s.textBaseline="top";var A=t.y+6;n.strokeHalo(function(){return s.strokeText(a.text,S,A)}),s.fillText(a.text,S,A),m={kind:"area",index:a.index,x:S-n.textWidth(a.text,a.fontSize)/2,y:A,width:n.textWidth(a.text,a.fontSize),height:a.fontSize,text:a.text}}s.restore()}e.push({kind:"area",index:a.index,x:u,y:c,width:p,height:v,text:a.text}),m&&e.push(m)};for(a.s();!(r=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}}},{key:"drawLines",value:function drawLines(e,t){var r,n=this,a=_createForOfIteratorHelper(this.resolved.lines);try{for(a.s();!(r=a.n()).done;){var s=r.value,l=this.ctx,h="y"===s.axis,u=this.snap(s.pixel);l.save(),l.beginPath(),l.strokeStyle=s.color,l.lineWidth=s.lineWidth*this.unit(),"function"==typeof l.setLineDash&&l.setLineDash(s.lineDash.map(function(e){return e*n.unit()})),h?(l.moveTo(t.x,u),l.lineTo(t.x+t.width,u)):(l.moveTo(u,t.y),l.lineTo(u,t.y+t.height)),l.stroke(),l.restore();var c=h?{kind:"line",index:s.index,x:t.x,y:s.pixel-1,width:t.width,height:2,text:s.text}:{kind:"line",index:s.index,x:s.pixel-1,y:t.y,width:2,height:t.height,text:s.text};e.push(c),s.text&&e.push(this.drawLineText(s,t,h))}}catch(e){a.e(e)}finally{a.f()}}},{key:"drawLineText",value:function drawLineText(e,t,r){var n=this.ctx;n.save(),this.setFont(e.fontSize,this.theme.fontFamily,"normal"),n.fillStyle=e.textColor;var a,s=this.textWidth(e.text,e.fontSize);if(r){var l="start"===e.textPosition?"left":"end"===e.textPosition?"right":"center",h="start"===e.textPosition?t.x+6:"end"===e.textPosition?t.x+t.width-6:t.x+t.width/2,u=e.pixel-e.fontSize-4<t.y,c=u?e.pixel+4:e.pixel-4;n.textAlign=l,n.textBaseline=u?"top":"bottom",this.strokeHalo(function(){return n.strokeText(e.text,h,c)}),n.fillText(e.text,h,c);var p="right"===l?h-s:"center"===l?h-s/2:h;a={kind:"line",index:e.index,x:p,y:u?c:c-e.fontSize,width:s,height:e.fontSize,text:e.text}}else{var v=e.pixel+4+s>t.x+t.width,m=v?e.pixel-4:e.pixel+4,g=t.y+6;n.textAlign=v?"right":"left",n.textBaseline="top",this.strokeHalo(function(){return n.strokeText(e.text,m,g)}),n.fillText(e.text,m,g),a={kind:"line",index:e.index,x:v?m-s:m,y:g,width:s,height:e.fontSize,text:e.text}}return n.restore(),a}},{key:"drawPoints",value:function drawPoints(e){var t,r=_createForOfIteratorHelper(this.resolved.points);try{for(r.s();!(t=r.n()).done;){var n=t.value,a=this.ctx,s=n.symbolSize/2;a.save(),a.beginPath(),a.fillStyle=n.color,"circle"===n.symbol?a.arc(n.x,n.y,s,0,2*Math.PI):"rect"===n.symbol?a.rect(n.x-s,n.y-s,n.symbolSize,n.symbolSize):"diamond"===n.symbol?(a.moveTo(n.x,n.y-s),a.lineTo(n.x+s,n.y),a.lineTo(n.x,n.y+s),a.lineTo(n.x-s,n.y),a.closePath()):(a.moveTo(n.x,n.y-s),a.lineTo(n.x+s,n.y+s),a.lineTo(n.x-s,n.y+s),a.closePath()),a.fill(),a.restore(),e.push({kind:"point",index:n.index,x:n.x-s,y:n.y-s,width:n.symbolSize,height:n.symbolSize,text:n.text}),n.text&&e.push(this.drawPointText(n))}}catch(e){r.e(e)}finally{r.f()}}},{key:"drawPointText",value:function drawPointText(e){var t=this.ctx,r=e.symbolSize/2;t.save(),this.setFont(e.fontSize,this.theme.fontFamily,"normal"),t.fillStyle=e.textColor;var n=this.textWidth(e.text,e.fontSize),a=e.x,s=e.y,l="center",h="bottom";"top"===e.textPosition?(l="center",h="bottom",s=e.y-r-3):"bottom"===e.textPosition?(l="center",h="top",s=e.y+r+3):"left"===e.textPosition?(l="right",h="middle",a=e.x-r-3):(l="left",h="middle",a=e.x+r+3),t.textAlign=l,t.textBaseline=h,this.strokeHalo(function(){return t.strokeText(e.text,a,s)}),t.fillText(e.text,a,s),t.restore();var u="right"===l?a-n:"center"===l?a-n/2:a,c=e.fontSize,p="bottom"===h?s-c:"middle"===h?s-c/2:s;return{kind:"point",index:e.index,x:u,y:p,width:n,height:c,text:e.text}}},{key:"strokeHalo",value:function strokeHalo(e){var t=this.ctx,r=this.theme?this.theme.labelHaloColor:null;if(r){var n=t.lineWidth,a=t.lineJoin,s=t.strokeStyle;t.lineWidth=3*this.unit(),t.lineJoin="round",t.strokeStyle=r,e(),t.lineWidth=n,t.lineJoin=a,t.strokeStyle=s}}},{key:"textWidth",value:function textWidth(e,t){return measureTextWidth(this.ctx,e,t,this.theme?this.theme.fontFamily:"sans-serif")}}])}(),j=function(){function PlotArea(e){var t;return _classCallCheck(this,PlotArea),_defineProperty(t=_callSuper(this,PlotArea,[_objectSpread2({interactive:!0},e)]),"background",null),_defineProperty(t,"borderColor",null),t}return _inherits(PlotArea,H),_createClass(PlotArea,[{key:"setBackground",value:function setBackground(e){return this.background=e,this.markDirty()}},{key:"doRender",value:function doRender(){this.ctx.beginPath();var e=this.state,t=e.width,r=e.height;if(this.background&&(this.ctx.fillStyle=this.background,this.ctx.fillRect(0,0,t,r)),this.borderColor){this.ctx.strokeStyle=this.borderColor,this.ctx.lineWidth=this.unit();var n=this.unit()/2;this.ctx.strokeRect(n,n,t-this.unit(),r-this.unit())}}}])}(),W=function(){function Legend(e){var t;return _classCallCheck(this,Legend),_defineProperty(t=_callSuper(this,Legend,[_objectSpread2({interactive:!0},e)]),"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"selectable",!0),_defineProperty(t,"hoverIndex",-1),t}return _inherits(Legend,H),_createClass(Legend,[{key:"items",get:function get(){return this.layout&&this.layout.legend?this.layout.legend.items:[]}},{key:"hitItem",value:function hitItem(e,t){for(var r=this.items,n=0;n<r.length;n++){var a=r[n];if(e>=a.x&&e<=a.x+a.width&&t>=a.y&&t<=a.y+a.height)return n}return-1}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return this.selectable&&this.hitItem(e,t)>=0}},{key:"doRender",value:function doRender(){if(this.theme&&this.layout&&this.layout.legend){var e=this.ctx,t=this.layout.legend.items;this.layout.legend,e.beginPath(),e.save();for(var r=0;r<t.length;r++){var n=t[r],a=n.y+n.height/2;e.globalAlpha=n.hidden?.45:1,e.fillStyle=n.color,roundRect(e,n.x,a-6,12,12,Math.min(3,6)),e.fill(),this.setFont(this.theme.fontSize,this.theme.fontFamily),e.textAlign="left",e.textBaseline="middle",e.fillStyle=n.hidden?this.theme.legend.inactiveColor:this.theme.legend.textColor,e.fillText(n.name,n.x+12+6,a),this.hoverIndex===r&&(e.globalAlpha=1,e.strokeStyle=this.theme.axisLineColor,e.lineWidth=this.unit(),roundRect(e,n.x-4,n.y+1,n.width+8,n.height-2,4),e.stroke())}e.restore()}}}])}();function roundRect(e,t,r,n,a,s){var l=Math.max(0,Math.min(s,n/2,a/2));e.beginPath(),l<=0?e.rect(t,r,n,a):(e.moveTo(t+l,r),e.lineTo(t+n-l,r),e.arcTo(t+n,r,t+n,r+l,l),e.lineTo(t+n,r+a-l),e.arcTo(t+n,r+a,t+n-l,r+a,l),e.lineTo(t+l,r+a),e.arcTo(t,r+a,t,r+a-l,l),e.lineTo(t,r+l),e.arcTo(t,r,t+l,r,l),e.closePath())}var X=function(){function Title(e){var t;return _classCallCheck(this,Title),_defineProperty(t=_callSuper(this,Title,[_objectSpread2({interactive:!1},e)]),"layout",null),_defineProperty(t,"theme",null),t}return _inherits(Title,H),_createClass(Title,[{key:"doRender",value:function doRender(){var e=this.layout&&this.layout.title;if(e&&this.theme&&this.layout){var t=this.layout.canvas,r=this.ctx,n="left"===e.align?0:"right"===e.align?t.width:t.width/2,a=e.y;r.save(),r.textAlign=e.align,r.textBaseline="top",e.text&&(this.setFont(e.textStyle.fontSize,this.theme.fontFamily,e.textStyle.fontWeight),r.fillStyle=e.textStyle.color,r.fillText(e.text,n,a),a+=1.5*e.textStyle.fontSize),e.subtext&&(this.setFont(e.subtextStyle.fontSize,this.theme.fontFamily),r.fillStyle=e.subtextStyle.color,r.fillText(e.subtext,n,a)),r.restore()}}}])}(),G=function(){function Tooltip(e){var t;return _classCallCheck(this,Tooltip),_defineProperty(t=_callSuper(this,Tooltip,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"option",{}),_defineProperty(t,"layout",null),_defineProperty(t,"content",null),_defineProperty(t,"anchor",[0,0]),_defineProperty(t,"follow",!0),_defineProperty(t,"lastRect",null),_defineProperty(t,"pendingClear",!1),t}return _inherits(Tooltip,H),_createClass(Tooltip,[{key:"show",value:function show(e,t){var r=!this.content||this.pendingClear||this.currentOpacity()<.999;return this.content=e,this.anchor=t,this.pendingClear=!1,r&&this.playFade(!0),this.markDirty()}},{key:"hide",value:function hide(){return this.content?shouldAnimate()?(this.pendingClear=!0,this.playFade(!1),this.markDirty()):(this.content=null,this.lastRect=null,this.markDirty()):this}},{key:"panelOpacity",value:function panelOpacity(){var e=Number(this.state.panelOpacity);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"currentOpacity",value:function currentOpacity(){var e=Number(this.state.panelOpacity);return isFinite(e)?Math.max(0,Math.min(1,e)):0}},{key:"playFade",value:function playFade(e){if(!shouldAnimate())return this.setState({panelOpacity:e?1:0,slideY:0}),void(e||(this.content=null,this.lastRect=null));var t=_objectSpread2({},this.props.animations||{});t.panelOpacity={from:this.currentOpacity(),to:e?1:0,duration:e?140:110,easing:e?"easeOutCubic":"easeInQuad",startTime:void 0,finished:!1},e&&(t.slideY={from:6,to:0,duration:180,easing:"easeOutCubic",startTime:void 0,finished:!1},this.state.slideY=6),this.props.animations=t,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),this.markDirty()}},{key:"doRender",value:function doRender(){if(this.lastRect=null,this.content&&this.theme&&this.layout){var e=this.panelOpacity();if(this.pendingClear&&e<=.02)return this.content=null,void(this.pendingClear=!1);var t,r=this.theme,n=this.option,a=r.tooltip,s=n.fontSize||a.fontSize,l=r.fontFamily,h=a.padding,u=1.6*s,c=this.content.rows,p=this.content.title?measureTextWidth(this.ctx,this.content.title,s,l):0,v=0,m=_createForOfIteratorHelper(c);try{for(m.s();!(t=m.n()).done;){var g=t.value,b=16+measureTextWidth(this.ctx,g.name,s,l)+16+measureTextWidth(this.ctx,g.value,s,l);b>v&&(v=b)}}catch(e){m.e(e)}finally{m.f()}var k=Math.max(p,v)+2*h,S=2*h+(this.content.title?u:0)+c.length*u,A=n.offset||[14,14],w=this.layout.canvas,_=this.layout.plot,M=this.anchor[0]+A[0],C=this.anchor[1]+A[1];M+k>w.width&&(M=this.anchor[0]-A[0]-k),M=k<=_.width-4?Math.max(_.x+2,Math.min(M,_.x+_.width-k-2)):Math.max(2,Math.min(M,Math.max(2,w.width-k-2))),C+S>w.height&&(C=this.anchor[1]-A[1]-S);var T=_.y+_.height-(s+8)/2;if(C+S>T){var P=this.anchor[1]-A[1]-S;C=P>=_.y+2?P:Math.max(_.y+2,T-S)}C=Math.max(2,Math.min(C,Math.max(2,w.height-S-2))),this.lastRect={x:M,y:C,width:k,height:S};var I=this.ctx,N=this.unit();I.beginPath(),I.save(),I.globalAlpha=e,C+=Number(this.state.slideY)||0,I.shadowColor=a.shadowColor,I.shadowBlur=10*N,I.shadowOffsetY=2*N,I.fillStyle=n.backgroundColor||a.background,roundRect(I,M,C,k,S,a.radius),I.fill(),I.shadowColor="transparent",I.shadowBlur=0,I.shadowOffsetY=0,I.strokeStyle=n.borderColor||a.borderColor,I.lineWidth=N,roundRect(I,M+N/2,C+N/2,k-N,S-N,a.radius),I.stroke(),I.fillStyle=n.textColor||a.textColor,I.textAlign="left",I.textBaseline="middle";var D=C+h+u/2;this.content.title&&(this.setFont(s,l,"bold"),I.fillText(this.content.title,M+h,D),D+=u);var O,R=_createForOfIteratorHelper(c);try{for(R.s();!(O=R.n()).done;){var H=O.value,z=D+u/2-u/2+u/2;this.setFont(s,l),I.fillStyle=H.color,roundRect(I,M+h,z-4,8,8,2),I.fill(),I.fillStyle=n.textColor||a.textColor,I.fillText(H.name,M+h+8+8,z),I.textAlign="right",I.fillText(H.value,M+k-h,z),I.textAlign="left",D+=u}}catch(e){R.e(e)}finally{R.f()}I.restore()}}}])}();var U=function(){function Crosshair(e){var t;return _classCallCheck(this,Crosshair),_defineProperty(t=_callSuper(this,Crosshair,[_objectSpread2({interactive:!1},e)]),"layout",null),_defineProperty(t,"theme",null),_defineProperty(t,"option",{}),_defineProperty(t,"pixelX",null),_defineProperty(t,"pixelY",null),_defineProperty(t,"xLabel",""),_defineProperty(t,"yLabel",""),_defineProperty(t,"lastChipRects",[]),_defineProperty(t,"followDuration",90),t}return _inherits(Crosshair,H),_createClass(Crosshair,[{key:"show",value:function show(e,t,r,n){var a=null!==this.pixelX&&null!==e&&Math.abs(this.pixelX-e)<.5&&(this.pixelY===t||null!==this.pixelY&&null!==t&&Math.abs(this.pixelY-t)<.5);return this.pixelX=e,this.pixelY=t,this.xLabel=r,this.yLabel=n,a||this.animateAxis(e,t),this.markDirty()}},{key:"drawnX",value:function drawnX(){var e=Number(this.state.axisX);return null===this.pixelX?null:isFinite(e)?e:this.pixelX}},{key:"drawnY",value:function drawnY(){var e=Number(this.state.axisY);return null===this.pixelY?null:isFinite(e)?e:this.pixelY}},{key:"animateAxis",value:function animateAxis(e,t){if(!shouldAnimate()||null===e||this.followDuration<=0)this.setState({axisX:e,axisY:t});else{var r=this.drawnX(),n=this.drawnY();if(null!==r){var a=function crosshairGlideDuration(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:5;if(!isFinite(t)||t<=0)return 0;var n=Math.abs(e);return!isFinite(n)||n<=0?0:Math.max(16,Math.min(t,n/r))}(Math.abs(e-r),this.followDuration);if(a<=0)this.setState({axisX:e,axisY:t});else{var s=_objectSpread2({},this.props.animations||{});s.axisX={from:r,to:e,duration:a,easing:"easeOutCubic",startTime:void 0,finished:!1},null!==n&&null!==t&&(s.axisY={from:n,to:t,duration:a,easing:"easeOutCubic",startTime:void 0,finished:!1}),this.props.animations=s,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this)}}else this.setState({axisX:e,axisY:t})}}},{key:"hide",value:function hide(){return null===this.pixelX&&null===this.pixelY?this:(this.pixelX=null,this.pixelY=null,this.stopAxisAnimation(),this.markDirty())}},{key:"stopAxisAnimation",value:function stopAxisAnimation(){var e=this.props.animations;if(e)for(var t in e)e[t]&&(e[t].finished=!0);this.ice&&this.ice.animationManager&&this.ice.animationManager.remove(this),this.state.axisX=null,this.state.axisY=null}},{key:"doRender",value:function doRender(){if(this.lastChipRects=[],this.layout&&this.theme&&!1!==this.option.show&&"none"!==this.option.type&&(null!==this.pixelX||null!==this.pixelY)){var e=this.layout.plot,t=this.ctx,r=this.unit(),n=this.option.axis||"x";if(t.beginPath(),t.save(),t.strokeStyle=this.option.lineColor||this.theme.crosshair.lineColor,t.lineWidth=r,"function"==typeof t.setLineDash&&t.setLineDash([3*r,3*r]),t.beginPath(),null!==this.pixelX&&"y"!==n){var a=this.snap(this.drawnX());t.moveTo(a,e.y),t.lineTo(a,e.y+e.height)}if(null!==this.pixelY&&("y"===n||"xy"===n)){var s=this.snap(this.drawnY());t.moveTo(e.x,s),t.lineTo(e.x+e.width,s)}t.stroke(),"function"==typeof t.setLineDash&&t.setLineDash([]),!1!==this.option.showAxisLabel&&(this.setFont(this.theme.fontSize,this.theme.fontFamily),t.textAlign="center",t.textBaseline="middle",null!==this.pixelX&&this.xLabel&&"y"!==n&&this.drawChip(this.snap(this.drawnX()),e.y+e.height,this.xLabel),null===this.pixelY||!this.yLabel||"y"!==n&&"xy"!==n||this.drawChip(e.x,this.snap(this.drawnY()),this.yLabel)),t.restore()}}},{key:"drawChip",value:function drawChip(e,t,r){var n=this.ctx,a=this.theme,s=n.measureText(r).width+12,l=a.fontSize+6;n.fillStyle=a.crosshair.labelBackground,this.lastChipRects.push({x:e-s/2,y:t-l/2,width:s,height:l}),n.fillRect(e-s/2,t-l/2,s,l),n.fillStyle=a.crosshair.labelColor,n.fillText(r,e,t)}}])}(),K=function(){function Highlight(e){var t;return _classCallCheck(this,Highlight),_defineProperty(t=_callSuper(this,Highlight,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"hoverItems",[]),_defineProperty(t,"selectionItems",[]),_defineProperty(t,"clipBox",null),t}return _inherits(Highlight,H),_createClass(Highlight,[{key:"setHover",value:function setHover(e){return this.hoverItems=e,this.markDirty()}},{key:"setSelection",value:function setSelection(e){return this.selectionItems=e,this.markDirty()}},{key:"setClipBox",value:function setClipBox(e){var t=this.clipBox,r=!t&&!e||!!t&&!!e&&t.x===e.x&&t.y===e.y&&t.width===e.width&&t.height===e.height;return this.clipBox=e,r?this:this.markDirty()}},{key:"doRender",value:function doRender(){if(this.theme){var e=this.ctx,t=this.unit();e.beginPath(),e.save(),this.clipBox&&(e.beginPath(),e.rect(this.clipBox.x,this.clipBox.y,this.clipBox.width,this.clipBox.height),e.clip());var r,n=_createForOfIteratorHelper(this.hoverItems);try{for(n.s();!(r=n.n()).done;){var a=r.value;if("rect"===a.shape){var s=a.width||0,l=a.height||0;if(s<=0||l<=0)continue;e.strokeStyle=a.color,e.lineWidth=Math.max(t,1.5*t),roundRect(e,a.x-s/2,a.y-l/2,s,l,Math.min(4,s/2,l/2)),e.stroke()}else{var h=Math.max(3,a.size/2+3);e.beginPath(),e.arc(a.x,a.y,h,0,2*Math.PI),e.fillStyle="rgba(255,255,255,0.55)",e.fill(),e.beginPath(),e.arc(a.x,a.y,h,0,2*Math.PI),e.strokeStyle=a.color,e.lineWidth=Math.max(t,1.5*t),e.stroke()}}}catch(e){n.e(e)}finally{n.f()}var u,c=_createForOfIteratorHelper(this.selectionItems);try{for(c.s();!(u=c.n()).done;){var p=u.value;if(e.strokeStyle=this.theme.selection.stroke,e.lineWidth=Math.max(t,1.5*t),"rect"===p.shape){var v=p.width||0,m=p.height||0;if(v<=0||m<=0)continue;roundRect(e,p.x-v/2-2,p.y-m/2-2,v+4,m+4,5),e.stroke()}else{var g=Math.max(3,p.size/2+3);e.beginPath(),e.arc(p.x,p.y,g,0,2*Math.PI),e.stroke()}}}catch(e){c.e(e)}finally{c.f()}e.restore()}}}])}(),Y=function(){function Brush(e){var t;return _classCallCheck(this,Brush),_defineProperty(t=_callSuper(this,Brush,[_objectSpread2({interactive:!1},e)]),"theme",null),_defineProperty(t,"rect",null),_defineProperty(t,"color",null),t}return _inherits(Brush,H),_createClass(Brush,[{key:"setRect",value:function setRect(e){return this.rect=e,e?this.keepAnimating():this.stopAnimating(),this.markDirty()}},{key:"doRender",value:function doRender(){if(this.rect&&this.theme){var e=this.ctx,t=this.color||this.theme.brush,r=this.unit();if(e.beginPath(),e.save(),e.fillStyle=t.fill,e.fillRect(this.rect.x,this.rect.y,this.rect.width,this.rect.height),e.strokeStyle=t.stroke,e.lineWidth=r,"function"==typeof e.setLineDash){var n=[5*r,4*r],a=n[0]+n[1]||1;e.setLineDash(n),"number"==typeof e.lineDashOffset&&(e.lineDashOffset=-Date.now()/1e3*26%a)}e.strokeRect(this.rect.x,this.rect.y,this.rect.width,this.rect.height),"function"==typeof e.setLineDash&&e.setLineDash([]),e.restore()}}}])}(),q=function(){function RadarGrid(e){var t;return _classCallCheck(this,RadarGrid),_defineProperty(t=_callSuper(this,RadarGrid,[_objectSpread2({interactive:!1},e)]),"coord",null),_defineProperty(t,"theme",null),_defineProperty(t,"layout",null),t}return _inherits(RadarGrid,H),_createClass(RadarGrid,[{key:"doRender",value:function doRender(){var e=this.coord,t=this.theme;if(e&&t){var r=this.ctx,n=this.unit(),a=e.indicators.length;if(a){var s=e.polar.cx,l=e.polar.cy,h=e.polar.radius,u=function angleOf(e){return-Math.PI/2+e/a*Math.PI*2};this.layout,r.beginPath(),r.save(),r.lineWidth=n,r.strokeStyle=t.splitLineColor;for(var c=1;c<=e.splitNumber;c++){var p=h*c/e.splitNumber;if(r.beginPath(),"circle"===e.shape)r.arc(s,l,p,0,2*Math.PI);else{for(var v=0;v<a;v++){var m=u(v),g=s+Math.cos(m)*p,b=l+Math.sin(m)*p;0===v?r.moveTo(g,b):r.lineTo(g,b)}r.closePath()}r.stroke()}r.beginPath();for(var k=0;k<a;k++){var S=u(k);r.moveTo(s,l),r.lineTo(s+Math.cos(S)*h,l+Math.sin(S)*h)}r.stroke(),this.setFont(t.fontSize,t.fontFamily),r.fillStyle=t.subTextColor,r.textBaseline="middle";for(var A=0;A<a;A++){var w=u(A),_=s+Math.cos(w)*(h+10*n),M=l+Math.sin(w)*(h+10*n),C=Math.cos(w);r.textAlign=Math.abs(C)<.2?"center":C>0?"left":"right",r.fillText(e.indicators[A].name,_,M)}r.restore()}}}}])}(),$=function(){function PolarGrid(e){var t;return _classCallCheck(this,PolarGrid),_defineProperty(t=_callSuper(this,PolarGrid,[_objectSpread2({interactive:!1},e)]),"coord",null),_defineProperty(t,"theme",null),_defineProperty(t,"layout",null),t}return _inherits(PolarGrid,H),_createClass(PolarGrid,[{key:"geometry",value:function geometry(){var e=this.coord;if(!e)return null;var t=e.plot,r=t.x+e.xScale.map(0),n=t.y+e.yScale.map(0);if(!isFinite(r)||!isFinite(n))return null;var a=Math.min(Math.abs(r-t.x),Math.abs(t.x+t.width-r),Math.abs(n-t.y),Math.abs(t.y+t.height-n));if(!(a>1))return null;var s=e.xScale.map(1)-e.xScale.map(0);return{cx:r,cy:n,radiusPx:a,rMax:Math.abs(s)>1e-9?a/Math.abs(s):0}}},{key:"doRender",value:function doRender(){var e=this.coord,t=this.theme;if(e&&t&&!1!==e.options.show){var r=this.geometry();if(r){var n=r.cx,a=r.cy,s=r.radiusPx,l=r.rMax,h=e.options,u=Math.max(1,Math.min(12,Number(h.splitNumber)||4)),c=Math.max(4,Math.min(36,Number(h.spokeCount)||12)),p=(Number(h.startAngle)||0)*Math.PI/180,v=this.unit(),m=this.ctx;m.beginPath(),m.save(),m.lineWidth=v,m.strokeStyle=t.splitLineColor;for(var g=1;g<=u;g++)m.beginPath(),m.arc(n,a,s*g/u,0,2*Math.PI),m.stroke();m.beginPath();for(var b=0;b<c;b++){var k=p+b/c*Math.PI*2;m.moveTo(n,a),m.lineTo(n+Math.cos(k)*s,a+Math.sin(k)*s)}if(m.stroke(),!1!==h.showLabels&&l>0){var S=p+Math.PI/4,A=Math.cos(S),w=Math.sin(S);this.setFont(t.fontSize,t.fontFamily),m.fillStyle=t.subTextColor,m.textBaseline="middle";for(var _=1;_<=u;_++){var M=l*_/u,C=n+A*(s*_/u),T=a+w*(s*_/u);m.textAlign=A>=0?"left":"right";var P=Math.abs(M)>=1?String(Number(M.toPrecision(3))):String(Number(M.toPrecision(2)));m.strokeStyle="transparent"===t.backgroundColor?"#ffffff":t.backgroundColor,m.lineWidth=3*v,m.strokeText(P,C+3*A*v,T+3*w*v),m.fillText(P,C+3*A*v,T+3*w*v),m.strokeStyle=t.splitLineColor,m.lineWidth=v}}m.restore()}}}}])}(),Z=function(){function DataZoomSlider(e){var t;return _classCallCheck(this,DataZoomSlider),_defineProperty(t=_callSuper(this,DataZoomSlider,[_objectSpread2({interactive:!0},e)]),"theme",null),_defineProperty(t,"start",0),_defineProperty(t,"end",1),_defineProperty(t,"activePart",null),_defineProperty(t,"handleWidth",12),t}return _inherits(DataZoomSlider,H),_createClass(DataZoomSlider,[{key:"setWindow",value:function setWindow(e,t){var r=clamp$2(e,0,1),n=clamp$2(t,0,1);return Math.abs(r-this.start)<1e-6&&Math.abs(n-this.end)<1e-6?this:(this.start=r,this.end=n,this.markDirty())}},{key:"setActive",value:function setActive(e){return this.activePart===e?this:(this.activePart=e,this.markDirty())}},{key:"hitPart",value:function hitPart(e,t){var r=this.state,n=r.width,a=r.height;if(e<0||e>n||t<0||t>a)return null;var s=this.start*n,l=this.end*n,h=this.handleWidth/2;return Math.abs(e-s)<=h?"start":Math.abs(e-l)<=h?"end":e>s&&e<l?"window":"track"}},{key:"fractionAt",value:function fractionAt(e){return clamp$2(e/(this.state.width||1),0,1)}},{key:"doRender",value:function doRender(){if(this.theme){var e=this.ctx,t=this.state,r=t.width,n=t.height,a=this.unit(),s=Math.max(4,Math.round(.34*n)),l=(n-s)/2,h=this.start*r,u=this.end*r,c=this.theme.colorPalette[0],p=this.handleWidth;e.beginPath(),e.save(),e.fillStyle=this.theme.splitLineColor,roundRect(e,0,l,r,s,s/2),e.fill(),e.fillStyle=c,e.globalAlpha=.85,roundRect(e,h,l,Math.max(2,u-h),s,s/2),e.fill(),e.globalAlpha=1;for(var v=0,m=[[h,"start"],[u,"end"]];v<m.length;v++){var g=_slicedToArray(m[v],2),b=g[0],k=g[1],S=clamp$2(b-p/2,0,Math.max(0,r-p));e.fillStyle="#ffffff",e.strokeStyle=this.activePart===k?c:this.theme.axisLineColor,e.lineWidth=(this.activePart===k?2:1)*a,roundRect(e,S,1,p,n-2,3),e.fill(),e.stroke(),e.beginPath(),e.moveTo(S+p/2-2,l-3),e.lineTo(S+p/2-2,l+s+3),e.moveTo(S+p/2+2,l-3),e.lineTo(S+p/2+2,l+s+3),e.strokeStyle=this.theme.subTextColor,e.lineWidth=a,e.stroke()}e.restore()}}}])}(),J=function(){function SeriesBase(e,t){var r;return _classCallCheck(this,SeriesBase),_defineProperty(r=_callSuper(this,SeriesBase,[_objectSpread2({interactive:!0},t)]),"chartTheme",null),_defineProperty(r,"hiddenSlices",[]),_defineProperty(r,"coord",null),_defineProperty(r,"barSlot",{index:0,count:1}),_defineProperty(r,"pixels",new Float64Array(0)),_defineProperty(r,"effective",new Float64Array(0)),_defineProperty(r,"fromEffective",null),_defineProperty(r,"renderIndices",null),_defineProperty(r,"xMonotonic",!0),_defineProperty(r,"sizeExtent",[0,1]),_defineProperty(r,"itemProgress",new Float64Array(0)),_defineProperty(r,"stagger",0),_defineProperty(r,"animationKind","enter"),_defineProperty(r,"hoverIndex",null),_defineProperty(r,"cacheKey",""),_defineProperty(r,"supportsSampling",!0),_defineProperty(r,"clipToBox",!1),_defineProperty(r,"localBoxScratch",[0,0,0,0]),r.series=e,r}return _inherits(SeriesBase,H),_createClass(SeriesBase,[{key:"setClipToBox",value:function setClipToBox(e){return this.clipToBox===e?this:(this.clipToBox=e,this.markDirty())}},{key:"__localBox",value:function __localBox(){var e=this.paintPad(),t=this.localBoxScratch;return t[0]=-e,t[1]=-e,t[2]=(this.state.width||0)+e,t[3]=(this.state.height||0)+e,t}},{key:"paintPad",value:function paintPad(){var e=this.series.option,t=!1===e.showSymbol?0:this.maxSymbolSize()/2+4;return Math.max(t,(e.lineWidth||2)+4,6)}},{key:"symbolSizeAt",value:function symbolSizeAt(e){var t=this.series.option,r=t.symbolSize;if("function"==typeof r){var n=this.series.yValueAt(e),a=NaN;try{var s=this.series.virtual?null:this.series.pointAt(e);a=Number(r(n,{dataIndex:e,data:s?s.raw:void 0,seriesName:this.series.name}))}catch(e){a=NaN}return isFinite(a)&&a>0?a:8}var l=this.series.sizeAt(e);if("number"==typeof l&&isFinite(l)){var h=Array.isArray(t.symbolSizeRange)?t.symbolSizeRange:[8,40],u=_slicedToArray(this.sizeExtent,2),c=u[0],p=u[1],v=p>c?(l-c)/(p-c):.5;return h[0]+(h[1]-h[0])*Math.max(0,Math.min(1,v))}var m=Number(r);return isFinite(m)&&m>0?m:8}},{key:"maxSymbolSize",value:function maxSymbolSize(){var e=this.series.option;if("function"==typeof e.symbolSize||this.hasPointSize()){var t=Array.isArray(e.symbolSizeRange)?e.symbolSizeRange:[8,40];return Math.max(8,Number(t[1])||40)}var r=Number(e.symbolSize);return isFinite(r)&&r>0?r:8}},{key:"hasPointSize",value:function hasPointSize(){var e=storeDomainOf(this.series);if(this.series.virtual)return!(!e||!e.sizeExtent);for(var t=this.series,r=0,n=t.pointCount;r<n;r++)if("number"==typeof t.sizeAt(r))return!0;return!1}},{key:"setCoord",value:function setCoord(e){return this.coord=e,this.cacheKey="",this.series.virtual&&this.syncVirtualMeta(),this.markDirty()}},{key:"setHiddenSlices",value:function setHiddenSlices(e){return this.hiddenSlices=e||[],this.markDirty()}},{key:"setAnimationStage",value:function setAnimationStage(e){return this.stagger=e&&isFinite(Number(e.stagger))?Math.max(0,Math.min(.95,Number(e.stagger))):0,this.animationKind=e&&"update"===e.kind?"update":"enter",this}},{key:"isEntering",value:function isEntering(){return"enter"===this.animationKind&&this.progress()<1}},{key:"progressFor",value:function progressFor(e,t){var r=this.progress();if(r>=1)return 1;if(this.stagger<=0||t<=1)return r;var n=1/(1+this.stagger),a=(r-e/(t-1)*this.stagger*n)/n;return a<=0?0:a>=1?1:a}},{key:"computeItemProgress",value:function computeItemProgress(){var e=this.series.pointCount;this.itemProgress.length!==e&&(this.itemProgress=new Float64Array(e));for(var t=0;t<e;t++)this.itemProgress[t]=this.progressFor(t,e)}},{key:"getAnimationState",value:function getAnimationState(){return this.computeItemProgress(),{progress:this.progress(),kind:this.animationKind,stagger:this.stagger,itemProgress:Array.from(this.itemProgress)}}},{key:"setHoverIndex",value:function setHoverIndex(e){var t=void 0===e?null:e;if(this.hoverIndex!==t){var r=null!==this.hoverIndex;this.hoverIndex=t;var n=this.highlightT(),a=null===t?0:1;if(!shouldAnimate())return this.setState({highlightT:a}),void this.markDirty();var s=_objectSpread2({},this.props.animations||{});s.highlightT={from:n,to:a,duration:null===t?180:260,easing:null===t?"easeOutCubic":"springSnappy",startTime:void 0,finished:!1},this.props.animations=s,this.ice&&this.ice.animationManager&&this.ice.animationManager.add(this),r||null===t||this.markDirty()}}},{key:"highlightT",value:function highlightT(){var e=Number(this.state.highlightT);return isFinite(e)?Math.max(0,Math.min(1.2,e)):0}},{key:"hoverBoost",value:function hoverBoost(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:.12,r=arguments.length>2?arguments[2]:void 0;return this.hoverIndex!==e?1:1+t*(void 0===r?this.highlightT():Math.max(0,Math.min(1,r)))}},{key:"hoverAlpha",value:function hoverAlpha(e){return this.hoverIndex!==e?0:Math.max(0,Math.min(1,this.highlightT()))}},{key:"drawHoverOverlay",value:function drawHoverOverlay(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=this.hoverAlpha(e);if(!(n<=.01||t.width<=0||t.height<=0)){var a=this.ctx,s=this.unit(),l=Number(r.radius)||0;a.save(),a.globalAlpha=n,"none"!==r.fill&&(roundRect(a,t.x,t.y,t.width,t.height,l),a.fillStyle=r.fill||"rgba(255,255,255,0.16)",a.fill()),roundRect(a,t.x,t.y,t.width,t.height,l),a.strokeStyle=r.stroke||"rgba(255,255,255,0.95)",a.lineWidth=Math.max(s,(r.lineWidth||2)*s),a.stroke(),a.restore()}}},{key:"buildSeriesKey",value:function buildSeriesKey(e){return[].concat(_toConsumableArray(e),[this.coordKey(),this.progress(),this.animationKind,this.stagger]).join("|")}},{key:"coordKey",value:function coordKey(){var e=this.coord;if(!e)return"-";var t=[];e.plot&&t.push("p".concat(e.plot.x,",").concat(e.plot.y,",").concat(e.plot.width,",").concat(e.plot.height));for(var r=0,n=["xScale","yScale"];r<n.length;r++){var a=n[r],s=e[a],l=s&&s.domain;l&&l.length&&t.push("".concat(a,"[").concat(l.length,"]:").concat(String(l[0]),"~").concat(String(l[l.length-1])))}return t.join(";")}},{key:"updateSeries",value:function updateSeries(e,t){return arguments.length>2&&void 0!==arguments[2]&&arguments[2]||(this.fromEffective=t&&this.effective.length===2*e.pointCount?new Float64Array(this.effective):null),this.series=e,this.cacheKey="",e.virtual&&this.syncVirtualMeta(),this.markDirty()}},{key:"pixelAt",value:function pixelAt(e){if(this.series.virtual)return this.virtualPixelAt(e);this.rebuildPixels();var t=this.pixels[2*e],r=this.pixels[2*e+1];return isFinite(t)&&isFinite(r)?[t,r]:null}},{key:"barRectAt",value:function barRectAt(e){return null}},{key:"containsLocalPoint",value:function containsLocalPoint(e,t){return this.hitTestIndex(e,t)>=0}},{key:"progress",value:function progress(){var e=Number(this.state.progress);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"computeEffective",value:function computeEffective(){var e=this.series,t=e.pointCount;this.effective.length!==2*t&&(this.effective=new Float64Array(2*t),this.fromEffective=null),this.computeItemProgress();for(var r=this.progress(),n=0;n<t;n++){var a=this.itemProgress[n];if(null!==this.series.yValueAt(n)){var s=e.topAt(n);if(null!=s){var l=e.baseAt(n),h=isFinite(l)?l:0,u=0,c=0;if(this.fromEffective){var p=this.fromEffective[2*n],v=this.fromEffective[2*n+1];isFinite(p)&&(u=p),isFinite(v)&&(c=v)}this.effective[2*n]=a>=1?h:u+(h-u)*a,this.effective[2*n+1]=a>=1?s:c+(s-c)*a}else this.effective[2*n]=NaN,this.effective[2*n+1]=NaN}else this.effective[2*n]=NaN,this.effective[2*n+1]=NaN}r>=1&&(this.fromEffective=null)}},{key:"rebuildPixels",value:function rebuildPixels(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(!this.series.virtual||this.series.raw){var t=this.coord;if(t){var r=this.buildCacheKey(t);if(e||r!==this.cacheKey){var n=t.xScale.domain,a=t.yScale.domain,s=this.__incrementalXDomain,l=this.__incrementalYDomain,h=function numericPair(e){return Array.isArray(e)&&2===e.length&&"number"==typeof e[0]&&"number"==typeof e[1]&&isFinite(e[0])&&isFinite(e[1])};if(!e&&h(n)&&h(a)&&h(s)&&h(l)&&n[1]-n[0]===s[1]-s[0]&&a[0]===l[0]&&a[1]===l[1]&&this.pixels.length===2*this.series.pointCount){for(var u=(s[0]-n[0])/(n[1]-n[0])*t.plot.width,c=0;c<this.pixels.length;c+=2)this.pixels[c]+=u;return this.__incrementalXDomain=[n[0],n[1]],void(this.cacheKey=r)}this.computeEffective();var p=this.series,v=p.pointCount;this.pixels.length!==2*v&&(this.pixels=new Float64Array(2*v));for(var m=t.xScale,g=t.yScale,b=!0,k=-1/0,S=0;S<v;S++){var A=m.map(p.xValueAt(S)),w=this.effective[2*S+1],_=isFinite(w)?g.map(w):NaN;this.pixels[2*S]=A,this.pixels[2*S+1]=_,isFinite(A)&&(A<k&&(b=!1),k=A)}this.xMonotonic=b,this.sizeExtent=function computeSizeExtent(e){for(var t=1/0,r=-1/0,n=0,a=e.pointCount;n<a;n++){var s=e.sizeAt(n);"number"==typeof s&&isFinite(s)&&(s<t&&(t=s),s>r&&(r=s))}return isFinite(t)?t===r?[t,t+1]:[t,r]:[0,1]}(p),this.renderIndices=this.buildRenderIndices(v,t.plot.width),this.__incrementalXDomain=Array.isArray(n)&&2===n.length?[n[0],n[1]]:null,this.__incrementalYDomain=Array.isArray(a)&&2===a.length?[a[0],a[1]]:null,this.cacheKey=r}}else this.pixels=new Float64Array(0)}else this.syncVirtualMeta()}},{key:"syncVirtualMeta",value:function syncVirtualMeta(){this.pixels.length&&(this.pixels=new Float64Array(0));var e=storeDomainOf(this.series);this.xMonotonic=!(!e||!e.xMonotonic),this.renderIndices=null,e&&e.sizeExtent&&(this.sizeExtent=e.sizeExtent)}},{key:"virtualLowerBound",value:function virtualLowerBound(e){for(var t=this.series,r=0,n=t.pointCount;r<n;){var a=r+n>>1;Number(t.xValueAt(a))<e?r=a+1:n=a}return r}},{key:"virtualUpperBound",value:function virtualUpperBound(e){for(var t=this.series,r=0,n=t.pointCount;r<n;){var a=r+n>>1;Number(t.xValueAt(a))<=e?r=a+1:n=a}return r}},{key:"virtualVisibleWindow",value:function virtualVisibleWindow(e){var t=this.coord,r=this.series.pointCount;if(!t||!r)return{i0:0,i1:-1};if(this.series.chunks)return this.chunkWindow(this.series.chunks,t,e);if(!this.xMonotonic)return{i0:0,i1:r-1};var n=t.xScale.invert(-e),a=t.xScale.invert(t.plot.width+e),s=this.virtualLowerBound(Math.min(n,a)),l=this.virtualUpperBound(Math.max(n,a));return{i0:Math.max(0,s-1),i1:Math.min(r-1,l)}}},{key:"chunkWindow",value:function chunkWindow(e,t,r){var n=this,a=t.xScale.invert(-r),s=t.xScale.invert(t.plot.width+r),l=chunkRangeForX(e,Math.min(a,s),Math.max(a,s)),h=l.from,u=l.to;if(u<h)return{i0:0,i1:-1};var c,p=_createForOfIteratorHelper(function pickChunksForWindow(e,t,r){var n=t-e+1;if(n<=0)return[];var a=Math.max(1,Math.min(Math.max(1,r),n));if(n===a){for(var s=[],l=e;l<=t;l++)s.push(l);return s}for(var h=[],u=0;u<a;u++){var c=e+Math.round(u*(n-1)/(a-1));h[h.length-1]!==c&&h.push(c)}return h}(h,u,e.maxResident));try{for(p.s();!(c=p.n()).done;){requestChunk(e,c.value,function(){return n.markDirty()})}}catch(e){p.e(e)}finally{p.f()}var v=e.offsets[h],m=e.offsets[u]+e.sizes[u]-1;return{i0:v,i1:Math.min(e.total-1,m)}}},{key:"virtualPixelAt",value:function virtualPixelAt(e){var t=this.coord,r=this.series;if(!t||e<0||e>=r.pointCount)return null;var n=r.yValueAt(e);if(null===n)return null;var a=t.xScale.map(r.xValueAt(e)),s=t.yScale.map(n);return isFinite(a)&&isFinite(s)?[a,s]:null}},{key:"virtualNearestIndexAtX",value:function virtualNearestIndexAtX(e){var t=this.coord,r=this.series,n=r.pointCount;if(!t||!n)return-1;var a=function pixelX(e){return t.xScale.map(r.xValueAt(e))},s=r.chunks;if(s){for(var l=Number(t.xScale.invert(e)),h=chunkRangeForX(s,l,l),u=h.from,c=h.to,p=-1,v=1/0,m=Math.max(0,u);m<=c&&m<s.sizes.length;m++)if(s.resident[m]){for(var g=s.offsets[m],b=Math.min(s.total-1,g+s.sizes[m]-1),k=g,S=b;k<S;){var A=k+S>>1,w=a(A);!isFinite(w)||w<e?k=A+1:S=A}for(var _=0,M=[k-1,k,k+1];_<M.length;_++){var C=M[_];if(!(C<g||C>b)){var T=a(C);if(isFinite(T)){var P=Math.abs(T-e);P<v&&(v=P,p=C)}}}}return p}if(!this.xMonotonic){for(var I=-1,N=1/0,D=0;D<n;D++){var O=a(D);if(isFinite(O)){var R=Math.abs(O-e);R<N&&(N=R,I=D)}}return I}for(var H=0,z=n-1;H<z;){var E=H+z>>1,L=a(E);!isFinite(L)||L<e?H=E+1:z=E}for(var V=-1,B=1/0,j=0,W=[H,H-1];j<W.length;j++){var X=W[j];if(!(X<0||X>=n)){var G=a(X);if(isFinite(G)){var U=Math.abs(G-e);U<B&&(B=U,V=X)}}}return V}},{key:"paintInto",value:function paintInto(e){if(!this.series.virtual)return!1;var t=this.ctx;this.ctx=e;try{return this.doRender(),!0}finally{this.ctx=t}}},{key:"virtualIndexRange",value:function virtualIndexRange(e,t){var r=this.coord,n=this.series,a=n.pointCount;if(!r||!a||!n.virtual)return{from:0,to:-1};var s=function inverted(e){return Number(r.xScale.invert(e))},l=s(Math.min(e,t)),h=s(Math.max(e,t));return isFinite(l)&&isFinite(h)?{from:this.virtualLowerBound(l),to:this.virtualUpperBound(h)-1}:{from:0,to:a-1}}},{key:"buildRenderIndices",value:function buildRenderIndices(e,t){if(!this.supportsSampling||!this.xMonotonic)return null;var r=this.series.option;if("none"===r.sampling)return null;if(!r.sampling&&e<=Math.max(2e3,3*t))return null;var n=Math.max(64,Math.min(e,Math.floor(2*t)));return e<=n+2?null:function lttbIndices(e,t,r){if(r>=t||r<=2){for(var n=[],a=0;a<t;a++)n.push(a);return n}for(var s=[0],l=(t-2)/(r-2),h=0,u=0;u<r-2;u++){var c=Math.floor((u+1)*l)+1,p=Math.floor((u+2)*l)+1;p>t&&(p=t);for(var v=0,m=0,g=0;c<p;c++){var b=e[2*c+1];isFinite(b)&&(v+=e[2*c],m+=b,g++)}g?(v/=g,m/=g):(v=e[2*(t-1)],m=e[2*(t-1)+1],isFinite(m)||(m=e[2*h+1],v=e[2*h]));for(var k=Math.floor(u*l)+1,S=Math.min(Math.floor((u+1)*l)+1,t-1),A=e[2*h],w=e[2*h+1],_=-1,M=k,C=k;C<S;C++){var T=e[2*C+1];if(isFinite(T)){var P=e[2*C],I=Math.abs((A-v)*(T-w)-(A-P)*(m-w));I>_&&(_=I,M=C)}}s.push(M),h=M}return s.push(t-1),s}(this.pixels,e,n)}},{key:"renderCount",value:function renderCount(){return this.renderIndices?this.renderIndices.length:this.pixels.length/2}},{key:"renderIndexAt",value:function renderIndexAt(e){return this.renderIndices?this.renderIndices[e]:e}},{key:"nearestIndexAtX",value:function nearestIndexAtX(e){var t=this;if(this.series.virtual)return this.virtualNearestIndexAtX(e);this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;if(!this.xMonotonic){for(var n=-1,a=1/0,s=0;s<r;s++){var l=this.pixels[2*s];if(isFinite(l)){var h=Math.abs(l-e);h<a&&(a=h,n=s)}}return n}for(var u=0,c=r-1;u<c;){var p=u+c>>1,v=this.pixels[2*p];!isFinite(v)||v<e?u=p+1:c=p}var m,g=[u,u-1].filter(function(e){return e>=0&&e<r&&isFinite(t.pixels[2*e])}),b=-1,k=1/0,S=_createForOfIteratorHelper(g);try{for(S.s();!(m=S.n()).done;){var A=m.value,w=Math.abs(this.pixels[2*A]-e);w<k&&(k=w,b=A)}}catch(e){S.e(e)}finally{S.f()}return b}},{key:"buildCacheKey",value:function buildCacheKey(e){var t=e.xScale.domain,r=e.yScale.domain;return[this.series.pointCount,this.progress(),e.plot.width,e.plot.height,String(t[0]),String(t[t.length-1]),String(r[0]),String(r[1]),this.series.pointCount?String(this.series.xValueAt(0)):""].join("|")}},{key:"eachSegment",value:function eachSegment(e){for(var t=this.pixels.length/2,r=0;r<t-1;r++){var n=this.pixels[2*r],a=this.pixels[2*r+1],s=this.pixels[2*(r+1)],l=this.pixels[2*(r+1)+1];isFinite(n)&&isFinite(a)&&isFinite(s)&&isFinite(l)&&e(n,a,s,l,r)}}},{key:"pointColor",value:function pointColor(e){return this.series.option.color||this.series.color}},{key:"lineWidthDevice",value:function lineWidthDevice(){var e=this.series.option.lineWidth;return isFinite(e)?e:2}},{key:"opacity",value:function opacity(){var e=Number(this.series.option.opacity);return isFinite(e)?Math.max(0,Math.min(1,e)):1}},{key:"beginDraw",value:function beginDraw(){this.ctx.beginPath(),this.ctx.save(),this.clipToBox&&(this.ctx.beginPath(),this.ctx.rect(0,0,this.state.width,this.state.height),this.ctx.clip()),this.ctx.lineJoin="round",this.ctx.lineCap="round",this.ctx.globalAlpha=this.opacity()}},{key:"endDraw",value:function endDraw(){this.ctx.restore()}},{key:"drawSymbol",value:function drawSymbol(e,t,r,n,a,s){var l=this.ctx,h=this.unit();l.beginPath(),"rect"===r?l.rect(e-n/2,t-n/2,n,n):l.arc(e,t,Math.max(1,n/2),0,2*Math.PI),a&&(l.fillStyle=a,l.fill()),s&&(l.strokeStyle=s,l.lineWidth=h,l.stroke())}},{key:"pointByIndex",value:function pointByIndex(e){return this.series.pointAt(e)||null}}])}();var Q=function(){function LineSeries(){var e;_classCallCheck(this,LineSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,LineSeries,[].concat(r)),"seriesType","line"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"fillArea",!1),e}return _inherits(LineSeries,J),_createClass(LineSeries,[{key:"doRender",value:function doRender(){this.series.virtual||this.rebuildPixels();var e=this.renderSequence(),t=e.pts,r=e.indices;if(t.length){var n=this.series.option,a=this.pointColor(0),s=this.unit(),l=this.lineWidthDevice()*s,h=n.symbol||"circle",u=!0===n.showSymbol||"scatter"===this.seriesType,c=this.ctx;if(this.beginDraw(),this.fillArea&&this.drawArea(a,t,r),c.beginPath(),c.strokeStyle=a,c.lineWidth=l,"function"==typeof c.setLineDash&&Array.isArray(n.lineDash)&&c.setLineDash(n.lineDash.map(function(e){return e*s})),n.smooth?this.drawSmoothLine(t,"number"==typeof n.smooth?n.smooth:.5):this.drawStraightLine(t),c.stroke(),"function"==typeof c.setLineDash&&c.setLineDash([]),u&&"none"!==h)for(var p=n.symbolFill||a,v=n.symbolStroke||"#ffffff",m=0;m<t.length;m++){var g=t[m];g&&this.drawSymbol(g[0],g[1],h,this.symbolSizeAt(r[m]),p,v)}this.endDraw()}}},{key:"renderSequence",value:function renderSequence(){if(this.series.virtual)return this.virtualRenderSequence();this.rebuildPixels();var e=[],t=[],r=this.renderCount();this.isEntering()&&(r=Math.max(1,Math.ceil(r*this.progress())));for(var n=0;n<r;n++){var a=this.renderIndexAt(n),s=this.pixels[2*a],l=this.pixels[2*a+1];isFinite(s)&&isFinite(l)?(e.push([s,l]),t.push(a)):e.length&&null!==e[e.length-1]&&(e.push(null),t.push(-1))}return{pts:e,indices:t}}},{key:"renderPoints",value:function renderPoints(){return this.renderSequence().pts.filter(function(e){return!!e})}},{key:"revealedPointCount",value:function revealedPointCount(){return this.rebuildPixels(),this.renderPoints().length}},{key:"virtualRenderSequence",value:function virtualRenderSequence(){var e=this,t=this.coord,r=this.series,n=r.pointCount,a={pts:[],indices:[]};if(!t||!n)return a;var s=this.virtualVisibleWindow(this.maxSymbolSize()),l=s.i0,h=s.i1;if(h<l)return a;var u=h-l+1,c=t.plot.width,p=this.isEntering()?Math.max(0,Math.ceil(u*this.progress())):u;if(p<=0)return a;var v=Math.min(h,l+p-1),m=u>4096?Math.max(1,Math.floor(u/(8*c))):1,g=[],b=[],k=function pushBreak(){g.length&&null!==g[g.length-1]&&(g.push(null),b.push(-1))};if(1===m){for(var S=l;S<=v;S++){var A=this.virtualPixelAt(S);A?(g.push(A),b.push(S)):k()}return{pts:g,indices:b}}for(var w=NaN,_=-1,M=-1,C=-1,T=-1,P=1/0,I=-1/0,N=function flush(){if(!(_<0)){for(var t=[],r=0,n=[_,C,T,M];r<n.length;r++){var a=n[r];a<0||t.indexOf(a)>=0||t.push(a)}t.sort(function(e,t){return e-t});for(var s=0,l=t;s<l.length;s++){var h=l[s],u=e.virtualPixelAt(h);u&&(g.push(u),b.push(h))}_=-1}},D=l;D<=v;D+=m){var O=r.yValueAt(D);if(null!==O){var R=t.xScale.map(r.xValueAt(D)),H=t.yScale.map(O);if(isFinite(R)&&isFinite(H)){var z=Math.floor(R);z===w?(M=D,H<P&&(P=H,C=D),H>I&&(I=H,T=D)):(N(),w=z,_=D,M=D,C=D,T=D,P=H,I=H)}}else N(),k(),w=NaN}return N(),{pts:g,indices:b}}},{key:"drawStraightLine",value:function drawStraightLine(e){var t,r=this.ctx,n=!1,a=_createForOfIteratorHelper(e);try{for(a.s();!(t=a.n()).done;){var s=t.value;s?n?r.lineTo(s[0],s[1]):(r.moveTo(s[0],s[1]),n=!0):n=!1}}catch(e){a.e(e)}finally{a.f()}}},{key:"drawSmoothLine",value:function drawSmoothLine(e,t){var r,n=this.ctx,a=Math.max(.05,Math.min(1,t))/3,s=[],l=function flush(){if(1===s.length)n.moveTo(s[0][0],s[0][1]);else if(s.length>1){n.moveTo(s[0][0],s[0][1]);for(var e=0;e<s.length-1;e++){var t=e>0?s[e-1]:s[e],r=s[e],l=s[e+1],h=e+2<s.length?s[e+2]:l,u=r[0]+(l[0]-t[0])*a,c=r[1]+(l[1]-t[1])*a,p=l[0]-(h[0]-r[0])*a,v=l[1]-(h[1]-r[1])*a;n.bezierCurveTo(u,c,p,v,l[0],l[1])}}s=[]},h=_createForOfIteratorHelper(e);try{for(h.s();!(r=h.n()).done;){var u=r.value;u?s.push(u):l()}}catch(e){h.e(e)}finally{h.f()}l()}},{key:"drawArea",value:function drawArea(e,t,r){var n=this.coord;if(n){var a=this.ctx,s=Number(this.series.option.areaOpacity),l=isFinite(s)?Math.max(0,Math.min(1,s)):.28,h=a.createLinearGradient?a.createLinearGradient(0,0,0,n.plot.height):null;h?(h.addColorStop(0,hexToRgba(e,l)),h.addColorStop(1,hexToRgba(e,.02)),a.fillStyle=h):a.fillStyle=hexToRgba(e,l);for(var u=0;u<t.length;)if(t[u]){for(var c=u;c<t.length&&t[c];)c+=1;if(c-u>=2){a.beginPath(),a.moveTo(t[u][0],this.baselineYForIndex(r[u]));for(var p=u;p<c;p++)a.lineTo(t[p][0],t[p][1]);for(var v=c-1;v>=u;v--)a.lineTo(t[v][0],this.baselineYForIndex(r[v]));a.closePath(),a.fill()}u=c}else u+=1}}},{key:"baselineYForIndex",value:function baselineYForIndex(e){var t=this.coord;if(!t)return 0;if(this.series.virtual){var r=t.yScale.map(0);return isFinite(r)?r:t.plot.height}var n=this.effective[2*e];return isFinite(n)?t.yScale.map(n):t.plot.height}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.virtual)return this.hitTestVirtual(e,t);this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):Math.max(8,this.maxSymbolSize()/2+4);if(r>1024&&this.xMonotonic){var s=this.nearestIndexAtX(e);if(s<0)return-1;for(var l=-1,h=a*a,u=Math.max(0,s-2),c=Math.min(r-1,s+2),p=u;p<=c;p++){var v=this.pixels[2*p],m=this.pixels[2*p+1];if(isFinite(v)&&isFinite(m)){var g=v-e,b=m-t,k=g*g+b*b;k<=h&&(h=k,l=p)}}if(l>=0)return l;for(var S=Math.max(4,this.lineWidthDevice()+4),A=Math.max(0,s-1);A<=Math.min(r-2,s);A++){if(distanceToSegment(e,t,this.pixels[2*A],this.pixels[2*A+1],this.pixels[2*(A+1)],this.pixels[2*(A+1)+1])<=S)return Math.abs(e-this.pixels[2*A])<=Math.abs(e-this.pixels[2*(A+1)])?A:A+1}return-1}for(var w=-1,_=a*a,M=0;M<r;M++){var C=this.pixels[2*M],T=this.pixels[2*M+1];if(isFinite(C)&&isFinite(T)){var P=C-e,I=T-t,N=P*P+I*I;N<=_&&(_=N,w=M)}}if(w>=0)return w;var D=Math.max(4,this.lineWidthDevice()+4),O=-1;return this.eachSegment(function(r,n,a,s,l){O>=0||distanceToSegment(e,t,r,n,a,s)<=D&&(O=Math.abs(e-r)<=Math.abs(e-a)?l:l+1)}),O}},{key:"hitTestVirtual",value:function hitTestVirtual(e,t){this.rebuildPixels();var r=this.series.pointCount;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):Math.max(8,this.maxSymbolSize()/2+4),s=this.nearestIndexAtX(e);if(s<0)return-1;for(var l=-1,h=a*a,u=Math.max(0,s-2);u<=Math.min(r-1,s+2);u++){var c=this.virtualPixelAt(u);if(c){var p=c[0]-e,v=c[1]-t,m=p*p+v*v;m<=h&&(h=m,l=u)}}if(l>=0)return l;for(var g=Math.max(4,this.lineWidthDevice()+4),b=Math.max(0,s-1);b<=Math.min(r-2,s);b++){var k=this.virtualPixelAt(b),S=this.virtualPixelAt(b+1);if(k&&S&&distanceToSegment(e,t,k[0],k[1],S[0],S[1])<=g)return Math.abs(e-k[0])<=Math.abs(e-S[0])?b:b+1}return-1}}])}();function distanceToSegment(e,t,r,n,a,s){var l=a-r,h=s-n,u=l*l+h*h;if(0===u)return Math.hypot(e-r,t-n);var c=((e-r)*l+(t-n)*h)/u;return c=Math.max(0,Math.min(1,c)),Math.hypot(e-(r+c*l),t-(n+c*h))}function hexToRgba(e,t){if(!e)return"rgba(0,0,0,".concat(t,")");if(0===e.indexOf("rgba"))return e;if(0===e.indexOf("rgb("))return e.replace("rgb(","rgba(").replace(")",",".concat(t,")"));var r=e.replace("#","");if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}var ee=function(){function BarSeries(){var e;_classCallCheck(this,BarSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,BarSeries,[].concat(r)),"seriesType","bar"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"barCacheKey",""),_defineProperty(e,"denseLow",new Float64Array(0)),_defineProperty(e,"denseHigh",new Float64Array(0)),_defineProperty(e,"denseSeen",new Uint8Array(0)),_defineProperty(e,"denseLimit",0),e}return _inherits(BarSeries,J),_createClass(BarSeries,[{key:"isHorizontal",value:function isHorizontal(){var e=this.coord;return!!e&&e.yScale.isBand()&&!e.xScale.isBand()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,this.isHorizontal()?"h":"v",String(e.yScale.domain.join(","))]);if(r!==this.barCacheKey||this.pixels.length!==2*t){this.barCacheKey=r,this.computeEffective(),this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.barRectAt(n);a?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=a.y+a.height/2):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"barRectAt",value:function barRectAt(e){var t=this.coord,r=this.series.xValueAt(e);if(!t||void 0===r)return null;this.effective.length!==2*this.series.pointCount&&this.computeEffective();var n=this.effective[2*e+1],a=this.effective[2*e];if(!isFinite(n))return null;if(this.isHorizontal()){var s=t.yScale.bandStart(r);if(!isFinite(s))return null;var l=t.yScale.bandwidth()||.6*t.yScale.step(),h=l/Math.max(1,this.barSlot.count),u=this.resolveBarWidth(l,h),c=t.yScale.range[1]>=t.yScale.range[0]?1:-1,p=s+c*(h*this.barSlot.index+(h-u)/2),v=c>0?p:p-u,m=t.xScale.map(a),g=t.xScale.map(n);return isFinite(m)&&isFinite(g)?{x:Math.min(m,g),y:v,width:Math.abs(g-m),height:u}:null}var b=t.xScale.bandStart(r);if(!isFinite(b))return null;var k=t.xScale.bandwidth()||.6*t.xScale.step(),S=k/Math.max(1,this.barSlot.count),A=this.resolveBarWidth(k,S),w=b+S*this.barSlot.index+(S-A)/2,_=t.yScale.map(a),M=t.yScale.map(n);return isFinite(_)&&isFinite(M)?{x:w,y:Math.min(_,M),width:A,height:Math.abs(M-_)}:null}},{key:"resolveBarWidth",value:function resolveBarWidth(e,t){var r=this.series.option,n=Number(r.barWidth);return!isFinite(n)||n<=0?Math.max(1,t*(1-(isFinite(Number(r.barGap))?Number(r.barGap):.2))):n<=1?Math.max(1,e*n):Math.max(1,n*this.unit())}},{key:"barColorAt",value:function barColorAt(e){var t=this.series.pointAt(e),r=t&&t.raw;return(r&&"object"===_typeof(r)&&!Array.isArray(r)?r.color:void 0)||this.pointColor(e)}},{key:"barDrawRectAt",value:function barDrawRectAt(e,t){var r=this.barRectAt(e),n=this.coord;if(!r||!n)return r;var a=this.hoverBoost(e,.08,t)-1;if(a<=0)return r;var s=this.effective[2*e];if(this.isHorizontal()){var l=r.width*a;return r.x+r.width/2>=n.xScale.map(s)?{x:r.x,y:r.y,width:r.width+l,height:r.height}:{x:r.x-l,y:r.y,width:r.width+l,height:r.height}}var h=r.height*a;return r.y+r.height/2<=n.yScale.map(s)?{x:r.x,y:r.y-h,width:r.width,height:r.height+h}:{x:r.x,y:r.y,width:r.width,height:r.height+h}}},{key:"doRender",value:function doRender(){var e=this.coord;if(e){var t=Number(this.series.option.barRadius),r=this.ctx;if(this.beginDraw(),this.shouldDrawDense(e))return this.drawDense(e),void this.endDraw();this.rebuildPixels();for(var n=0;n<this.series.pointCount;n++){var a=this.barDrawRectAt(n);if(a&&!(a.height<=0)){var s=this.barColorAt(n),l=a;if(r.beginPath(),roundRect(r,l.x,l.y,l.width,l.height,isFinite(t)?t:0),l.height>=3*this.unit()&&r.createLinearGradient){var h=this.isHorizontal()?r.createLinearGradient(l.x,0,l.x+l.width,0):r.createLinearGradient(0,l.y,0,l.y+l.height);h.addColorStop(0,hexToRgba(s,.95)),h.addColorStop(1,hexToRgba(s,.7)),r.fillStyle=h}else r.fillStyle=s;r.fill()}}this.endDraw()}}},{key:"shouldDrawDense",value:function shouldDrawDense(e){var t=this.series.pointCount,r=Math.max(1,e.plot.width);return!!e.xScale.isBand()&&t/r>2}},{key:"drawDense",value:function drawDense(e){var t=this.series.pointCount,r=e.plot;this.effective.length!==2*t&&this.computeEffective();var n=Math.max(1,Math.round(r.width));this.denseLimit!==n&&(this.denseLow=new Float64Array(n),this.denseHigh=new Float64Array(n),this.denseSeen=new Uint8Array(n),this.denseLimit=n);var a=this.denseLow,s=this.denseHigh,l=this.denseSeen;l.fill(0);for(var h=t/n,u=h>8?Math.max(1,Math.floor(h/8)):1,c=n/t,p=this.ctx,v=0;v<t;v+=u){var m=this.effective[2*v+1],g=this.effective[2*v];if(isFinite(m)&&isFinite(g)){var b=Math.max(0,Math.min(n-1,Math.floor(v*c))),k=Math.min(g,m),S=Math.max(g,m);l[b]?(k<a[b]&&(a[b]=k),S>s[b]&&(s[b]=S)):(l[b]=1,a[b]=k,s[b]=S)}}for(var A=r.width/n,w=Math.max(1,A),_=0;_<n;_++)if(l[_]){var M=Math.min(t-1,Math.max(0,Math.ceil((_+1)/c)-1)),C=this.barColorAt(M),T=e.yScale.map(s[_]),P=e.yScale.map(a[_]);isFinite(T)&&isFinite(P)&&(p.fillStyle=C,p.fillRect(_*A,Math.min(T,P),w,Math.max(1,Math.abs(P-T))))}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.series.pointCount,n=this.coord;if(n&&r&&this.shouldDrawDense(n)){var a=n.plot.width/r;if(!(a>0))return-1;for(var s=Math.round(e/a-.5),l=Math.max(0,s-2);l<=Math.min(r-1,s+2);l++){var h=this.barRectAt(l);if(h&&(e>=h.x&&e<=h.x+h.width&&t>=h.y&&t<=h.y+h.height))return l}return-1}this.rebuildPixels();for(var u=0;u<r;u++){var c=this.barRectAt(u);if(c&&(e>=c.x&&e<=c.x+c.width&&t>=c.y&&t<=c.y+c.height))return u}return-1}}])}(),te=function(){function AreaSeries(e,t){var r;return _classCallCheck(this,AreaSeries),_defineProperty(r=_callSuper(this,AreaSeries,[e,t]),"seriesType","area"),r.fillArea=!0,r}return _inherits(AreaSeries,Q),_createClass(AreaSeries)}(),ie=function(){function ScatterSeries(){var e;_classCallCheck(this,ScatterSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,ScatterSeries,[].concat(r)),"seriesType","scatter"),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"clipToBox",!0),e}return _inherits(ScatterSeries,J),_createClass(ScatterSeries,[{key:"symbolStyle",value:function symbolStyle(){var e=this.series.option,t=this.pointColor(0);return{shape:e.symbol||"circle",fill:e.symbolFill||t,stroke:e.symbolStroke||"#ffffff"}}},{key:"doRender",value:function doRender(){if(this.series.virtual)this.renderVirtual();else{this.rebuildPixels();var e=this.pixels.length/2;if(e){var t=0,r=e-1;if(this.xMonotonic&&e>2048){var n=this.__localBox(),a=this.maxSymbolSize();t=this.__lowerBoundX(n[0]-a),r=this.__upperBoundX(n[2]+a)}if(r<t)return this.beginDraw(),void this.endDraw();var s=r-t+1,l=this.coord?this.coord.plot.width:960,h=this.xMonotonic&&s>4096?Math.max(1,Math.floor(s/(2*l))):1,u=this.symbolStyle(),c=u.shape,p=u.fill,v=u.stroke;this.beginDraw();var m=this.isEntering();this.computeItemProgress();for(var g=t;g<=r;g+=h){var b=this.pixels[2*g],k=this.pixels[2*g+1];if(isFinite(b)&&isFinite(k)){var S=m?this.itemProgress[g]:1;if(!(S<=0)){var A=this.symbolSizeAt(g)*(m?.2+.8*S:1)*this.hoverBoost(g,.18);m&&S<1&&(this.ctx.globalAlpha=.25+.75*S),this.drawSymbol(b,k,c,A,p,v),m&&S<1&&(this.ctx.globalAlpha=1)}}}this.endDraw()}}}},{key:"renderVirtual",value:function renderVirtual(){var e=this.coord,t=this.series;if(e&&t.pointCount){this.rebuildPixels();var r=e.plot.width,n=this.virtualVisibleWindow(this.maxSymbolSize()),a=n.i0,s=n.i1;if(!(s<a)){var l=s-a+1,h=this.xMonotonic&&l>4096?Math.max(1,Math.floor(l/(2*r))):1,u=this.symbolStyle(),c=u.shape,p=u.fill,v=u.stroke,m=this.isEntering(),g=m?this.progress():1;if(!(m&&g<=0)){this.beginDraw();for(var b=a;b<=s;b+=h){var k=t.yValueAt(b);if(null!==k){var S=e.xScale.map(t.xValueAt(b)),A=e.yScale.map(k);if(isFinite(S)&&isFinite(A)){var w=this.symbolSizeAt(b)*(m?.2+.8*g:1)*this.hoverBoost(b,.18);m&&g<1&&(this.ctx.globalAlpha=.25+.75*g),this.drawSymbol(S,A,c,w,p,v),m&&g<1&&(this.ctx.globalAlpha=1)}}}this.endDraw()}}}}},{key:"__lowerBoundX",value:function __lowerBoundX(e){for(var t=0,r=this.pixels.length/2;t<r;){var n=t+r>>1;this.pixels[2*n]<e?t=n+1:r=n}return Math.max(0,t-1)}},{key:"__upperBoundX",value:function __upperBoundX(e){for(var t=this.pixels.length/2,r=0,n=t;r<n;){var a=r+n>>1;this.pixels[2*a]<=e?r=a+1:n=a}return Math.min(t-1,r)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.virtual)return this.hitTestVirtual(e,t);this.rebuildPixels();var r=this.series.option,n=r.hitRadius?Number(r.hitRadius):this.maxSymbolSize()/2+4,a=n*n,s=-1,l=a,h=this.pixels.length/2;if(h>1024&&this.xMonotonic){var u=this.nearestIndexAtX(e);if(u<0)return-1;for(var c=-1,p=a,v=Math.max(0,u-3);v<=Math.min(h-1,u+3);v++){var m=this.pixels[2*v]-e,g=this.pixels[2*v+1]-t,b=m*m+g*g;b<=p&&(p=b,c=v)}return c}for(var k=0;k<h;k++){var S=this.pixels[2*k],A=this.pixels[2*k+1];if(isFinite(S)&&isFinite(A)){var w=S-e,_=A-t,M=w*w+_*_;M<=l&&(l=M,s=k)}}return s}},{key:"hitTestVirtual",value:function hitTestVirtual(e,t){this.rebuildPixels();var r=this.series.pointCount;if(!r)return-1;var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):this.maxSymbolSize()/2+4,s=a*a,l=this.nearestIndexAtX(e);if(l<0)return-1;for(var h=-1,u=s,c=Math.max(0,l-3);c<=Math.min(r-1,l+3);c++){var p=this.virtualPixelAt(c);if(p){var v=p[0]-e,m=p[1]-t,g=v*v+m*m;g<=u&&(u=g,h=c)}}return h}}])}(),re=2*Math.PI;function normalizeAngle(e){return(e%re+re)%re}function shortestAngleDelta(e,t){var r=normalizeAngle(t-e);return r>Math.PI&&(r-=re),r}var ne=function(){function PieSeries(){var e;_classCallCheck(this,PieSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,PieSeries,[].concat(r)),"seriesType","pie"),_defineProperty(e,"polar",null),_defineProperty(e,"slices",new Float64Array(0)),_defineProperty(e,"pieCacheKey",""),_defineProperty(e,"sliceFrom",null),e}return _inherits(PieSeries,J),_createClass(PieSeries,[{key:"setCoord",value:function setCoord(e){return this.polar=e||null,this.pieCacheKey="",this.markDirty()}},{key:"setHiddenSlices",value:function setHiddenSlices(e){return e.join(",")!==this.hiddenSlices.join(",")&&this.slices.length&&(this.sliceFrom=new Float64Array(this.slices)),_superPropGet(PieSeries,"setHiddenSlices",this,3)([e]),this.pieCacheKey="",this}},{key:"paintPad",value:function paintPad(){var e=this.series.option.label;return e&&!1===e.show?4:48}},{key:"localCenter",value:function localCenter(){var e=this.polar;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.polar,t=this.series;if(!e)return this.pixels=new Float64Array(0),void(this.slices=new Float64Array(0));var r=this.series.option,n=[t.pointCount,r.startAngle,r.clockwise,r.roseType,r.radius,r.innerRadius,e.polar.radius,e.plot.width,this.hiddenSlices.join(","),this.progress(),t.pointCount?String(t.pointAt(0).y):""].join("|");if(n!==this.pieCacheKey){this.pieCacheKey=n;var a=t.pointCount;this.pixels.length!==2*a&&(this.pixels=new Float64Array(2*a)),this.slices.length!==4*a&&(this.slices=new Float64Array(4*a));for(var s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=0,p=0,v=0;v<a;v++)if(!(this.hiddenSlices.indexOf(v)>=0)){var m=t.pointAt(v).y||0;m>0&&(c+=m),m>p&&(p=m)}this.computeItemProgress();for(var g=!1===r.clockwise?-1:1,b=-(void 0===r.startAngle?90:Number(r.startAngle))*Math.PI/180,k=Math.max(0,Math.min(.95,Number(r.innerRadius)||0)),S=r.roseType,A=0;A<a;A++){var w=this.hiddenSlices.indexOf(A)>=0,_=w?0:t.pointAt(A).y||0,M=b,C=b+g*(c>0?_/c*re*(w?0:this.itemProgress[A]):0);b=C;var T=u;S&&p>0&&(T="area"===S?u*Math.sqrt(Math.max(0,_)/p):u*(Math.max(0,_)/p),T=Math.max(3,T));var P=u*k;this.slices[4*A]=M,this.slices[4*A+1]=C,this.slices[4*A+2]=P,this.slices[4*A+3]=T}this.blendSliceMorph(this.isEntering());for(var I=0;I<a;I++)this.writeCentroid(I,l,h)}}},{key:"blendSliceMorph",value:function blendSliceMorph(e){var t=this.sliceFrom;if(!(!t||e||t.length<this.slices.length)){var r=Math.max(0,Math.min(1,this.progress()));if(r>=1)this.sliceFrom=null;else for(var n=0;n<this.slices.length/4;n++){var a=t[4*n],s=this.slices[4*n],l=a+shortestAngleDelta(a,s)*r,h=t[4*n+1]-a,u=this.slices[4*n+1]-s;this.slices[4*n]=l,this.slices[4*n+1]=l+h+(u-h)*r;for(var c=0,p=[2,3];c<p.length;c++){var v=p[c],m=t[4*n+v];this.slices[4*n+v]=m+(this.slices[4*n+v]-m)*r}}}}},{key:"writeCentroid",value:function writeCentroid(e,t,r){var n=this.slices[4*e],a=this.slices[4*e+1],s=this.slices[4*e+2],l=this.slices[4*e+3];if(Math.abs(a-n)<=1e-9)return this.pixels[2*e]=NaN,void(this.pixels[2*e+1]=NaN);var h=(n+a)/2,u=s+.6*(l-s);this.pixels[2*e]=t+Math.cos(h)*u,this.pixels[2*e+1]=r+Math.sin(h)*u}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.polar;if(!r)return-1;this.rebuildPixels();var n=_slicedToArray(this.localCenter(),2),a=e-n[0],s=t-n[1],l=Math.hypot(a,s);if(l>r.polar.radius+4)return-1;for(var h=this.series.pointCount,u=Math.atan2(s,a),c=0;c<h;c++){var p=this.slices[4*c],v=this.slices[4*c+1],m=this.slices[4*c+2],g=this.slices[4*c+3],b=Math.abs(v-p);if(!(b<=1e-9))if(!(l<m-1))if(normalizeAngle(v>p?u-p:p-u)<=b+1e-9&&l<=g+4)return c}return-1}},{key:"doRender",value:function doRender(){var e=this,t=this.polar;if(t){this.rebuildPixels();for(var r=this.ctx,n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1],l=this.unit(),h=!1===this.series.option.clockwise?-1:1,u=this.series.pointCount,c=this.series.option.label,p=!(c&&!1===c.show)&&u>0&&u<=16,v=c&&"inside"===c.position,m=0,g=0;g<u;g++)if(!(this.hiddenSlices.indexOf(g)>=0)){var b=this.series.pointAt(g).y||0;b>0&&(m+=b)}this.beginDraw();for(var k=0;k<u;k++){var S=this.slices[4*k],A=this.slices[4*k+1],w=this.slices[4*k+2],_=this.slices[4*k+3];if(!(Math.abs(A-S)<=1e-9)){var M=this.series.pointAt(k).color||this.series.color,C=this.hoverBoost(k,1),T=C>1?7*(C-1)*this.unit():0,P=(S+A)/2,I=Math.cos(P)*T,N=Math.sin(P)*T;r.beginPath(),w>0?(r.arc(a+I,s+N,_,S,A,h<0),r.arc(a+I,s+N,w,A,S,h>0)):(r.moveTo(a+I,s+N),r.arc(a+I,s+N,_,S,A,h<0)),r.closePath(),r.fillStyle=M,r.fill(),u>1&&(r.strokeStyle="rgba(255,255,255,0.85)",r.lineWidth=l,r.stroke())}}if(p){this.setFont(this.fontSize(),this.fontFamily());for(var D=NaN,O=0,R=[],H=0;H<u;H++){var z=this.slices[4*H],E=this.slices[4*H+1],L=this.slices[4*H+2],V=this.slices[4*H+3];if(!(Math.abs(E-z)<=1e-9)){var B=this.series.pointAt(H),j=B.y||0,W=t.polar.radius,X=m>0?j/m*100:0,G={name:B.name||"".concat(this.series.name," ").concat(H+1),value:B.y,percent:X,dataIndex:H,seriesId:this.series.id,seriesName:this.series.name,color:B.color||this.series.color},U=c&&"function"==typeof c.formatter?String(c.formatter(G)):"".concat(G.name," ").concat(X.toFixed(1),"%"),K=(z+E)/2;if(v){if(isFinite(D))O=Math.abs(Math.atan2(Math.sin(K-D),Math.cos(K-D)))<.42?Math.min(3,O+1):0;else O=0;D=K;var Y=L+.62*(V-L)+O*(this.fontSize()+4),q=Math.abs(E-z)*Y;if(measureTextWidth(this.ctx,U,this.fontSize(),this.fontFamily())<=q+6){r.textAlign="center",r.textBaseline="middle",r.fillStyle="#ffffff",r.fillText(U,a+Math.cos(K)*Y,s+Math.sin(K)*Y);continue}}var $=W+8,Z=W+26,J=Math.cos(K)>=0;R.push({x1:a+Math.cos(K)*V,y1:s+Math.sin(K)*V,x2:a+Math.cos(K)*$,y2:s+Math.sin(K)*$,x3:a+Math.cos(K)*Z+(J?8:-8),y3:s+Math.sin(K)*Z,text:U,right:J})}}for(var Q=1.45*this.fontSize(),ee=function _loop(){for(var n=ie[te],a=R.filter(function(e){return e.right===n}).sort(function(e,t){return e.y3-t.y3}),h=1;h<a.length;h++)a[h].y3-a[h-1].y3<Q&&(a[h].y3=a[h-1].y3+Q);if(a.length){var u=a[a.length-1].y3-(s+t.polar.radius+2*Q);if(u>0){var c,p=_createForOfIteratorHelper(a);try{for(p.s();!(c=p.n()).done;){c.value.y3-=u}}catch(e){p.e(e)}finally{p.f()}}}var v,m=_createForOfIteratorHelper(a);try{for(m.s();!(v=m.n()).done;){var g=v.value;r.strokeStyle="rgba(148,163,184,0.9)",r.lineWidth=l,r.beginPath(),r.moveTo(g.x1,g.y1),r.lineTo(g.x2,g.y2),r.lineTo(g.x2,g.y3),r.lineTo(g.x3,g.y3),r.stroke(),r.textAlign=g.right?"left":"right",r.textBaseline="middle",r.fillStyle=e.chartTheme&&e.chartTheme.axisLabelColor||"#475569",r.fillText(g.text,g.x3+(g.right?4:-4)*l,g.y3)}}catch(e){m.e(e)}finally{m.f()}},te=0,ie=[!0,!1];te<ie.length;te++)ee()}this.endDraw()}}},{key:"fontSize",value:function fontSize(){return this.chartTheme&&this.chartTheme.fontSize||12}},{key:"fontFamily",value:function fontFamily(){return this.chartTheme&&this.chartTheme.fontFamily||"Arial"}}])}(),ae=function(){function RadarSeries(){var e;_classCallCheck(this,RadarSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,RadarSeries,[].concat(r)),"seriesType","radar"),_defineProperty(e,"radar",null),_defineProperty(e,"radarCacheKey",""),e}return _inherits(RadarSeries,J),_createClass(RadarSeries,[{key:"setCoord",value:function setCoord(e){return this.radar=e||null,this.radarCacheKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 14}},{key:"localCenter",value:function localCenter(){var e=this.radar;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.radar,t=this.series,r=t.pointCount;if(e){var n=[r,e.polar.radius,e.plot.width,this.progress(),e.domains.map(function(e){return e.join(":")}).join("|")].join("::");if(n!==this.radarCacheKey||this.pixels.length!==2*r){this.radarCacheKey=n,this.pixels.length!==2*r&&(this.pixels=new Float64Array(2*r));for(var a=_slicedToArray(this.localCenter(),2),s=a[0],l=a[1],h=this.progress(),u=0;u<r;u++){var c=-Math.PI/2+u/Math.max(1,r)*Math.PI*2,p=e.domains[u]||[0,1],v=t.pointAt(u).y,m=null==v?p[0]:v,g=p[1]-p[0],b=g>0?(m-p[0])/g:0;b=Math.max(0,Math.min(1,b)),b*=h;var k=e.polar.radius*b;this.pixels[2*u]=s+Math.cos(c)*k,this.pixels[2*u+1]=l+Math.sin(c)*k}}}else this.pixels=new Float64Array(0)}},{key:"doRender",value:function doRender(){if(this.radar){this.rebuildPixels();var e=this.pixels.length/2;if(e){var t=this.ctx,r=this.pointColor(0),n=this.unit(),a=_slicedToArray(this.localCenter(),2);a[0],a[1],this.beginDraw(),t.beginPath();for(var s=0;s<e;s++){var l=this.pixels[2*s],h=this.pixels[2*s+1];0===s?t.moveTo(l,h):t.lineTo(l,h)}t.closePath(),t.fillStyle=hexToRgba(r,.22),t.fill(),t.strokeStyle=r,t.lineWidth=this.lineWidthDevice()*n,t.stroke();for(var u=0;u<e;u++){var c=this.hoverBoost(u,.3);this.drawSymbol(this.pixels[2*u],this.pixels[2*u+1],"circle",this.symbolSizeAt(u)*c,r,"#ffffff")}this.endDraw()}}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;for(var n=this.series.option,a=n.hitRadius?Number(n.hitRadius):24,s=-1,l=a*a,h=0;h<r;h++){var u=this.pixels[2*h]-e,c=this.pixels[2*h+1]-t,p=u*u+c*c;p<=l&&(l=p,s=h)}if(s>=0)return s;if(this.containsPointInPolygon(e,t)){var v=_slicedToArray(this.localCenter(),2),m=v[0],g=v[1],b=Math.atan2(t-g,e-m),k=2*Math.PI/r,S=((b+Math.PI/2)%(2*Math.PI)+2*Math.PI)%(2*Math.PI);return Math.round(S/k)%r}return-1}},{key:"containsPointInPolygon",value:function containsPointInPolygon(e,t){for(var r=this.pixels.length/2,n=!1,a=0,s=r-1;a<r;s=a++){var l=this.pixels[2*a],h=this.pixels[2*a+1],u=this.pixels[2*s],c=this.pixels[2*s+1];h>t!=c>t&&e<(u-l)*(t-h)/(c-h)+l&&(n=!n)}return n}}])}(),oe=function(){function HeatmapSeries(){var e;_classCallCheck(this,HeatmapSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,HeatmapSeries,[].concat(r)),"seriesType","heatmap"),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"heatCacheKey",""),_defineProperty(e,"gridKey",""),_defineProperty(e,"gridX",new Float64Array(0)),_defineProperty(e,"gridY",new Float64Array(0)),_defineProperty(e,"gridCellW",1),_defineProperty(e,"gridCellH",1),_defineProperty(e,"gridVisibleCols",[]),_defineProperty(e,"gridVisibleRows",[]),_defineProperty(e,"gridBlocks",new Float64Array(0)),_defineProperty(e,"gridBlockCols",0),_defineProperty(e,"gridBlockRows",0),_defineProperty(e,"gridBlockPx",0),e}return _inherits(HeatmapSeries,J),_createClass(HeatmapSeries,[{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,String(e.yScale.domain.join(","))]);if(r!==this.heatCacheKey||this.pixels.length!==2*t){this.heatCacheKey=r,this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.cellRectAt(n);a?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=a.y+a.height/2):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"valueRange",value:function valueRange(){var e=this.series.grid;if(e)return e.valueDomain||[0,1];for(var t=1/0,r=-1/0,n=0,a=this.series.pointCount;n<a;n++){var s=this.series.pointAt(n).y;null!==s&&isFinite(s)&&(s<t&&(t=s),s>r&&(r=s))}return isFinite(t)&&isFinite(r)?t===r?[t,t+1]:[t,r]:[0,1]}},{key:"heatColors",value:function heatColors(){var e=this.series.option.heatmap||{};return{from:e.minColor||"#EFF6FF",to:e.maxColor||this.series.color}}},{key:"cellRectAt",value:function cellRectAt(e){if(this.series.grid)return this.virtualCellRect(e);var t=this.coord,r=this.series.pointAt(e);if(!t||!r)return null;var n=t.xScale.bandStart(r.xValue,void 0),a=void 0===r.name?r.index:r.name,s=t.yScale.bandStart(a,void 0);if(!isFinite(n)||!isFinite(s))return null;var l=t.xScale.bandwidth()||.8*t.xScale.step(),h=t.yScale.bandwidth()||.8*t.yScale.step(),u=t.xScale.range[1]>=t.xScale.range[0]?1:-1,c=t.yScale.range[1]>=t.yScale.range[0]?1:-1,p=Math.max(1,l),v=Math.max(1,h);return{x:u>0?n:n-p,y:c>0?s:s-v,width:p,height:v}}},{key:"doRender",value:function doRender(){var e=this.coord;if(e)if(this.series.grid)this.renderVirtual();else{var t=this.ctx,r=_slicedToArray(this.valueRange(),2),n=r[0],a=r[1],s=this.heatColors(),l=s.from,h=s.to,u=this.isEntering();this.computeItemProgress();var c=e.xScale.domain.length||1;this.beginDraw();for(var p=0;p<this.series.pointCount;p++){var v=this.series.pointAt(p),m=this.cellRectAt(p);if(m){var g=null===v.y?0:(v.y-n)/(a-n||1),b=1;if(u){var k=(p%c+Math.floor(p/c))%Math.max(1,c)/Math.max(1,c),S=this.progress();if((b=Math.max(0,Math.min(1,(S-k*(this.stagger||.35))/Math.max(.05,1-k*(this.stagger||.35)))))<=0)continue;t.globalAlpha=b}t.fillStyle=mixColors(l,h,Math.max(0,Math.min(1,g))),t.fillRect(m.x,m.y,m.width,m.height),u&&(t.globalAlpha=1)}}null!==this.hoverIndex&&this.drawHoverOverlay(this.hoverIndex,this.cellRectAt(this.hoverIndex),{radius:0}),this.endDraw()}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){if(this.series.grid)return this.hitTestGrid(e,t);for(var r=0;r<this.series.pointCount;r++){var n=this.cellRectAt(r);if(n&&(e>=n.x&&e<=n.x+n.width&&t>=n.y&&t<=n.y+n.height))return r}return-1}},{key:"paintPad",value:function paintPad(){return 4}},{key:"syncGrid",value:function syncGrid(){var e=this.coord,t=this.series.grid;if(e&&t){var r=t.xCategories.length,n=t.yCategories.length,a=function axisKey(e){return"".concat(e.domain.length,":").concat(String(e.domain[0]),"~").concat(String(e.domain[e.domain.length-1]))},s=[this.series.pointCount,e.plot.width.toFixed(2),e.plot.height.toFixed(2),a(e.xScale),a(e.yScale)].join("|");if(s!==this.gridKey){this.gridKey=s;for(var l=e.xScale.range[1]>=e.xScale.range[0]?1:-1,h=e.yScale.range[1]>=e.yScale.range[0]?1:-1,u=Math.max(.01,e.xScale.bandwidth()||.8*e.xScale.step()),c=Math.max(.01,e.yScale.bandwidth()||.8*e.yScale.step()),p=new Float64Array(r),v=new Float64Array(n),m=0;m<r;m++){var g=e.xScale.bandStart(t.xCategories[m],void 0);p[m]=l>0?g:g-u}for(var b=0;b<n;b++){var k=e.yScale.bandStart(t.yCategories[b],void 0);v[b]=h>0?k:k-c}this.gridX=p,this.gridY=v,this.gridCellW=u,this.gridCellH=c;for(var S=e.plot.width,A=e.plot.height,w=[],_=[],M=0;M<r;M++)!isFinite(p[M])||p[M]+u<-1||p[M]>S+1||w.push(M);for(var C=0;C<n;C++)!isFinite(v[C])||v[C]+c<-1||v[C]>A+1||_.push(C);this.gridVisibleCols=w,this.gridVisibleRows=_;var T=w.length*_.length,P=T<=HeatmapSeries.MAX_DIRECT_CELLS?0:Math.max(1,Math.ceil(Math.sqrt(T/HeatmapSeries.MAX_BLOCKS)));if(this.gridBlockPx=P,0===P)return this.gridBlocks=new Float64Array(0),this.gridBlockCols=0,void(this.gridBlockRows=0);for(var I=Math.max(1,Math.ceil(S/P)),N=Math.max(1,Math.ceil(A/P)),D=new Float64Array(I*N).fill(NaN),O=t.values,R=0,H=_;R<H.length;R++){var z,E=H[R],L=E*r,V=Math.min(N-1,Math.max(0,Math.floor((v[E]+c/2)/P))),B=_createForOfIteratorHelper(w);try{for(B.s();!(z=B.n()).done;){var j=z.value,W=O[L+j];if(!Number.isNaN(W)){var X=V*I+Math.min(I-1,Math.max(0,Math.floor((p[j]+u/2)/P))),G=D[X];(Number.isNaN(G)||W>G)&&(D[X]=W)}}}catch(e){B.e(e)}finally{B.f()}}this.gridBlocks=D,this.gridBlockCols=I,this.gridBlockRows=N}}}},{key:"virtualCellRect",value:function virtualCellRect(e){var t=this.series.grid;if(!this.coord||!t)return null;this.syncGrid();var r=t.xCategories.length,n=r>0?e%r:0,a=r>0?(e-n)/r:0,s=this.gridX[n],l=this.gridY[a];return isFinite(s)&&isFinite(l)?{x:s,y:l,width:Math.max(1,this.gridCellW),height:Math.max(1,this.gridCellH)}:null}},{key:"virtualPixelAt",value:function virtualPixelAt(e){var t=this.virtualCellRect(e);return t?[t.x+t.width/2,t.y+t.height/2]:null}},{key:"hitTestGrid",value:function hitTestGrid(e,t){var r=this.coord,n=this.series.grid;if(!r||!n)return-1;var a=this.state,s=a.width,l=a.height;if(e<0||t<0||e>s||t>l)return-1;var h=n.xIndex.get(String(r.xScale.invert(e))),u=n.yIndex.get(String(r.yScale.invert(t)));if(void 0===h||void 0===u)return-1;var c=u*n.xCategories.length+h;return Number.isNaN(n.values[c])?-1:c}},{key:"nearestIndexAtX",value:function nearestIndexAtX(e){var t=this.series.grid,r=this.coord;if(!t||!r)return _superPropGet(HeatmapSeries,"nearestIndexAtX",this,3)([e]);var n=r.xScale,a="function"==typeof n.nearestIndex?n.nearestIndex(e):-1;if(a<0)return-1;var s=t.xIndex.get(String(r.xScale.domain[a]));if(void 0===s)return-1;for(var l=t.xCategories.length,h=0;h<t.yCategories.length;h++){var u=h*l+s;if(!Number.isNaN(t.values[u]))return u}return-1}},{key:"renderVirtual",value:function renderVirtual(){var e=this.coord,t=this.series.grid;if(e&&t){this.syncGrid();var r=this.ctx,n=_slicedToArray(this.valueRange(),2),a=n[0],s=n[1],l=this.heatColors(),h=l.from,u=l.to,c=function ratioAt(e){var t=s-a?(e-a)/(s-a):0;return Math.max(0,Math.min(1,t))},p=t.xCategories.length,v=t.values,m=Math.max(1,this.gridCellW),g=Math.max(1,this.gridCellH);if(this.beginDraw(),0===this.gridBlockPx){var b,k=_createForOfIteratorHelper(this.gridVisibleRows);try{for(k.s();!(b=k.n()).done;){var S,A=b.value,w=this.gridY[A],_=A*p,M=_createForOfIteratorHelper(this.gridVisibleCols);try{for(M.s();!(S=M.n()).done;){var C=S.value,T=v[_+C];Number.isNaN(T)||(r.fillStyle=mixColors(h,u,c(T)),r.fillRect(this.gridX[C],w,m,g))}}catch(e){M.e(e)}finally{M.f()}}}catch(e){k.e(e)}finally{k.f()}}else for(var P=this.gridBlockPx,I=0;I<this.gridBlockRows;I++)for(var N=0;N<this.gridBlockCols;N++){var D=this.gridBlocks[I*this.gridBlockCols+N];Number.isNaN(D)||(r.fillStyle=mixColors(h,u,c(D)),r.fillRect(N*P,I*P,P,P))}if(null!==this.hoverIndex){var O=this.cellRectAt(this.hoverIndex);O&&this.drawHoverOverlay(this.hoverIndex,O,{radius:0})}this.endDraw()}}}])}();function mixColors(e,t,r){var n=parseHex$1(e),a=parseHex$1(t);if(!n||!a)return t;var s=Math.round(n[0]+(a[0]-n[0])*r),l=Math.round(n[1]+(a[1]-n[1])*r),h=Math.round(n[2]+(a[2]-n[2])*r);return"rgb(".concat(s,",").concat(l,",").concat(h,")")}function parseHex$1(e){if("string"!=typeof e)return null;var t=e.trim();if(0===t.indexOf("#"))return 3===(t=t.slice(1)).length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),6!==t.length?null:[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)];var r=t.match(/rgba?\(([^)]+)\)/);if(r){var n=r[1].split(",").map(function(e){return parseFloat(e)});return[n[0]||0,n[1]||0,n[2]||0]}return null}function layoutSankey(e,r,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{nodes:[],links:[]},s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:t,l=e.length;if(!l)return{nodes:[],links:[]};var h,u=Math.max(2,Number(a.nodeWidth)||16),c=Math.max(0,Number(a.nodePadding)||10),p=Math.max(0,void 0===Number(a.iterations)?6:Number(a.iterations)),v=function indexOf(t){return"number"==typeof t?t>=0&&t<l?t:-1:e.findIndex(function(e){return e.name===t})},m=r.map(function(e,t){return{id:t,source:v(e.source),target:v(e.target),value:Math.max(0,Number(e.value)||0),color:e.color}}).filter(function(e){return e.source>=0&&e.target>=0&&e.value>0}),g=e.map(function(){return[]}),b=e.map(function(){return[]}),k=new Array(l).fill(0),S=_createForOfIteratorHelper(m);try{for(S.s();!(h=S.n()).done;){var A=h.value;g[A.source].push(A.target),b[A.target].push(A.source),k[A.target]++}}catch(e){S.e(e)}finally{S.f()}for(var w=new Array(l).fill(0),_=[],M=0;M<l;M++)0===k[M]&&_.push(M);for(;_.length;){var C,T=_.shift(),P=_createForOfIteratorHelper(g[T]);try{for(P.s();!(C=P.n()).done;){var I=C.value;w[I]=Math.max(w[I],w[T]+1),0===--k[I]&&_.push(I)}}catch(e){P.e(e)}finally{P.f()}}for(var N=0;N<l;N++)void 0!==e[N].depth&&(w[N]=Math.max(0,Number(e[N].depth)||0));var D,O=Math.max.apply(Math,[1].concat(_toConsumableArray(w))),R=function columnX(e){return n.x+e*(n.width-u)/O},H=new Array(l).fill(0),z=new Array(l).fill(0),E=_createForOfIteratorHelper(m);try{for(E.s();!(D=E.n()).done;){var L=D.value;z[L.source]+=L.value,H[L.target]+=L.value}}catch(e){E.e(e)}finally{E.f()}for(var V=new Array(l).fill(0).map(function(e,t){return Math.max(H[t],z[t])}),B=new Array(O+1).fill(0),j=0;j<l;j++){B[w[j]]+=V[j]}for(var W=new Array(O+1).fill(0),X=0;X<l;X++)W[w[X]]++;var G,U=B.map(function(e,t){var r=n.height-c*Math.max(0,W[t]-1);return e>0?Math.max(1,r)/e:1}),K=e.map(function(e,t){var r=Math.max(2,V[t]*U[w[t]]);return{id:t,name:e.name,depth:w[t],x:R(w[t]),y:n.y,width:u,height:r,value:V[t],color:e.color||s[t%s.length]}}),Y=new Array(O+1).fill(0).map(function(){return[]}),q=_createForOfIteratorHelper(K);try{for(q.s();!(G=q.n()).done;){var $=G.value;Y[$.depth].push($.id)}}catch(e){q.e(e)}finally{q.f()}var Z,J=_createForOfIteratorHelper(Y);try{for(J.s();!(Z=J.n()).done;){var Q,ee=Z.value,te=n.y,ie=_createForOfIteratorHelper(ee);try{for(ie.s();!(Q=ie.n()).done;){var re=Q.value;K[re].y=te,te+=K[re].height+c}}catch(e){ie.e(e)}finally{ie.f()}}}catch(e){J.e(e)}finally{J.f()}for(var ne=0;ne<p;ne++){var ae,oe=_createForOfIteratorHelper(K);try{for(oe.s();!(ae=oe.n()).done;){var se,le=ae.value,he=[],ue=_createForOfIteratorHelper(m);try{for(ue.s();!(se=ue.n()).done;){var ce=se.value;ce.source===le.id?he.push({id:ce.target,weight:ce.value}):ce.target===le.id&&he.push({id:ce.source,weight:ce.value})}}catch(e){ue.e(e)}finally{ue.f()}if(he.length){for(var fe=0,de=0,pe=0,ve=he;pe<ve.length;pe++){var ye=ve[pe],me=K[ye.id];de+=(me.y+me.height/2)*ye.weight,fe+=ye.weight}var xe=fe>0?de/fe:le.y+le.height/2;le.y=xe-le.height/2}}}catch(e){oe.e(e)}finally{oe.f()}var ge,be=_createForOfIteratorHelper(Y);try{for(be.s();!(ge=be.n()).done;){var ke=ge.value;ke.sort(function(e,t){return K[e].y-K[t].y});var Se,Ae=n.y,we=_createForOfIteratorHelper(ke);try{for(we.s();!(Se=we.n()).done;){var _e=Se.value;K[_e].y=Ae,Ae+=K[_e].height+c}}catch(e){we.e(e)}finally{we.f()}}}catch(e){be.e(e)}finally{be.f()}}var Me,Ce=_createForOfIteratorHelper(Y);try{for(Ce.s();!(Me=Ce.n()).done;){var Te=Me.value,Pe=Te.length?K[Te[Te.length-1]].y+K[Te[Te.length-1]].height-(n.y+n.height):0;if(Pe>0){var Fe,Ie=_createForOfIteratorHelper(Te);try{for(Ie.s();!(Fe=Ie.n()).done;){var Ne=Fe.value;K[Ne].y=Math.max(n.y,K[Ne].y-Pe)}}catch(e){Ie.e(e)}finally{Ie.f()}}}}catch(e){Ce.e(e)}finally{Ce.f()}var De,Oe=new Array(l).fill(0),Re=new Array(l).fill(0),He=[],ze=_createForOfIteratorHelper(m.slice().sort(function(e,t){return e.source-t.source||e.target-t.target}));try{for(ze.s();!(De=ze.n()).done;){var Ee=De.value,Le=K[Ee.source],Ve=K[Ee.target],Be=Le.value>0?Le.height/Le.value:0,je=Ve.value>0?Ve.height/Ve.value:0,We=Math.max(1,Ee.value*Math.min(Be,je)),Xe=Le.y+Oe[Ee.source],Ge=Ve.y+Re[Ee.target];Oe[Ee.source]+=We,Re[Ee.target]+=We,He.push({id:Ee.id,source:Ee.source,target:Ee.target,value:Ee.value,width:We,sy:Xe,ty:Ge,color:Ee.color||Le.color})}}catch(e){ze.e(e)}finally{ze.f()}return{nodes:K,links:He}}function sampleLinkPath(e,t,r){for(var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:0,a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:16,s=[],l=e.sy+e.width/2-n,h=e.ty+e.width/2-n,u=t+.5*(r-t),c=r-.5*(r-t),p=0;p<=a;p++){var v=p/a,m=1-v,g=m*m*m*t+3*m*m*v*u+3*m*v*v*c+v*v*v*r,b=m*m*m*l+3*m*m*v*l+3*m*v*v*h+v*v*v*h;s.push([g,b])}return s}_defineProperty(oe,"MAX_DIRECT_CELLS",2e4),_defineProperty(oe,"MAX_BLOCKS",2e4);var se=function(){function SankeySeries(){var e;_classCallCheck(this,SankeySeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,SankeySeries,[].concat(r)),"seriesType","sankey"),_defineProperty(e,"sankey",null),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"sankeyCacheKey",""),e}return _inherits(SankeySeries,J),_createClass(SankeySeries,[{key:"setCoord",value:function setCoord(e){return this.sankey=e||null,this.sankeyCacheKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 24}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.sankey;if(e){var t=e.layout,r=t.nodes,n=t.links,a=r.length+n.length,s=[e.plot.x,e.plot.y],l=s[0],h=s[1],u=this.buildSeriesKey([a,l,h,e.plot.width,e.plot.height,r.length,n.length]);if(u!==this.sankeyCacheKey||this.pixels.length!==2*a){this.sankeyCacheKey=u,this.pixels=new Float64Array(2*a);var c,p=_createForOfIteratorHelper(r);try{for(p.s();!(c=p.n()).done;){var v=c.value;this.pixels[2*v.id]=v.x-l+v.width/2,this.pixels[2*v.id+1]=v.y-h+v.height/2}}catch(e){p.e(e)}finally{p.f()}var m,g=_createForOfIteratorHelper(n);try{for(g.s();!(m=g.n()).done;){var b=m.value,k=r[b.source],S=r[b.target];if(k&&S){var A=r.length+b.id;this.pixels[2*A]=(k.x+k.width+S.x)/2-l,this.pixels[2*A+1]=(b.sy+b.ty)/2+b.width/2-h}}}catch(e){g.e(e)}finally{g.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"doRender",value:function doRender(){var e=this.sankey;if(e){var t=e.layout,r=t.nodes,n=t.links,a=this.ctx,s=e.plot,l=this.unit();this.beginDraw();var h=e.options.flow;h?this.keepAnimating():this.stopAnimating();var u=Number(e.options.linkOpacity);a.globalAlpha=isFinite(u)?Math.max(0,Math.min(1,u)):.42;var c,p=_createForOfIteratorHelper(n);try{for(p.s();!(c=p.n()).done;){var v=c.value,m=r[v.source],g=r[v.target];if(m&&g){var b=m.x-s.x+m.width,k=g.x-s.x,S=v.sy-s.y,A=v.ty-s.y,w=b+.5*(k-b),_=k-.5*(k-b);if(a.beginPath(),a.moveTo(b,S),a.bezierCurveTo(w,S,_,A,k,A),a.lineTo(k,A+v.width),a.bezierCurveTo(_,A+v.width,w,S+v.width,b,S+v.width),a.closePath(),a.fillStyle=v.color,a.fill(),h){var M=Number(e.options.flowSpeed)||40;if(a.save(),a.globalAlpha=.9,a.beginPath(),a.moveTo(b,(S+A)/2),a.bezierCurveTo(w,(S+A)/2,_,(S+A)/2,k,(S+A)/2),a.strokeStyle="#ffffff",a.lineWidth=Math.max(l,Math.min(5*l,.28*v.width)),"function"==typeof a.setLineDash){var C=[6*l,10*l];a.setLineDash(C),"number"==typeof a.lineDashOffset&&(a.lineDashOffset=-Date.now()/1e3*M%(C[0]+C[1]))}a.stroke(),"function"==typeof a.setLineDash&&a.setLineDash([]),a.restore()}}}}catch(e){p.e(e)}finally{p.f()}a.globalAlpha=1;var T,P=_createForOfIteratorHelper(r);try{for(P.s();!(T=P.n()).done;){var I=T.value;a.beginPath();var N=I.x-s.x,D=I.y-s.y,O=Math.min(3,I.width/2);a.moveTo(N+O,D),a.lineTo(N+I.width-O,D),a.arcTo(N+I.width,D,N+I.width,D+O,O),a.lineTo(N+I.width,D+I.height-O),a.arcTo(N+I.width,D+I.height,N+I.width-O,D+I.height,O),a.lineTo(N+O,D+I.height),a.arcTo(N,D+I.height,N,D+I.height-O,O),a.lineTo(N,D+O),a.arcTo(N,D,N+O,D,O),a.closePath(),a.fillStyle=I.color,a.fill(),a.strokeStyle="rgba(255,255,255,0.75)",a.lineWidth=l,a.stroke()}}catch(e){P.e(e)}finally{P.f()}if(!e.options.label||!1!==e.options.label.show){var R=this.chartTheme;if(R){this.setFont(R.fontSize,R.fontFamily),a.fillStyle=R.textColor,a.textBaseline="middle";var H,z=Math.max.apply(Math,_toConsumableArray(r.map(function(e){return e.depth})).concat([0])),E=_createForOfIteratorHelper(r);try{for(E.s();!(H=E.n()).done;){var L=H.value,V=L.x-s.x,B=L.y-s.y+L.height/2;L.depth>=z?(a.textAlign="right",this.fillLabelWithHalo(L.name,V-6*l,B)):(a.textAlign="left",this.fillLabelWithHalo(L.name,V+L.width+6*l,B))}}catch(e){E.e(e)}finally{E.f()}}}this.endDraw()}}},{key:"fillLabelWithHalo",value:function fillLabelWithHalo(e,t,r){var n=this.ctx,a=this.chartTheme;n.lineWidth=3*this.unit(),n.strokeStyle=a&&a.labelHaloColor||"rgba(255,255,255,0.85)",n.lineJoin="round",n.strokeText(e,t,r),n.fillStyle=a&&a.textColor||"#212529",n.fillText(e,t,r)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.sankey;if(!r)return-1;var n,a=r.layout,s=a.nodes,l=a.links,h=r.plot,u=_createForOfIteratorHelper(s);try{for(u.s();!(n=u.n()).done;){var c=n.value,p=c.x-h.x,v=c.y-h.y;if(e>=p-2&&e<=p+c.width+2&&t>=v-2&&t<=v+c.height+2)return c.id}}catch(e){u.e(e)}finally{u.f()}var m,g=_createForOfIteratorHelper(l);try{for(g.s();!(m=g.n()).done;){var b=m.value,k=s[b.source],S=s[b.target];if(k&&S)for(var A=sampleLinkPath(b,k.x-h.x+k.width,S.x-h.x,h.y,12),w=1;w<A.length;w++){if(distanceToSegment(e,t,A[w-1][0],A[w-1][1],A[w][0],A[w][1])<=6)return s.length+b.id}}}catch(e){g.e(e)}finally{g.f()}return-1}}])}(),le=function(){function FunnelSeries(){var e;_classCallCheck(this,FunnelSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,FunnelSeries,[].concat(r)),"seriesType","funnel"),_defineProperty(e,"funnel",null),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"stageGeom",[]),_defineProperty(e,"stageRects",[]),_defineProperty(e,"funnelKey",""),_defineProperty(e,"stageFrom",null),e}return _inherits(FunnelSeries,J),_createClass(FunnelSeries,[{key:"setHiddenSlices",value:function setHiddenSlices(e){return e.join(",")!==this.hiddenSlices.join(",")&&this.stageGeom.length&&(this.stageFrom=this.stageGeom.map(function(e){return e?_objectSpread2({},e):null})),_superPropGet(FunnelSeries,"setHiddenSlices",this,3)([e]),this.funnelKey="",this}},{key:"setCoord",value:function setCoord(e){return this.funnel=e||null,this.funnelKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 12}},{key:"highlightRectAt",value:function highlightRectAt(e){return this.rebuildPixels(),this.stageRects[e]||null}},{key:"widthAt",value:function widthAt(e,t){var r=e.y1-e.y0||1,n=Math.max(0,Math.min(1,(t-e.y0)/r));return e.topWidth+(e.bottomWidth-e.topWidth)*n}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.funnel,t=this.series,r=t.pointCount;if(!e||!r)return this.pixels=new Float64Array(0),this.stageGeom=[],void(this.stageRects=[]);var n=e.options||{},a=this.buildSeriesKey([r,e.plot.width,e.plot.height,n.sort,n.minSize,n.trapezoid,this.hiddenSlices.join(",")]);if(a!==this.funnelKey||this.pixels.length!==2*r){this.funnelKey=a,this.pixels.length!==2*r&&(this.pixels=new Float64Array(2*r)),this.stageGeom=new Array(r).fill(null),this.stageRects=new Array(r).fill(null);for(var s=[],l=0;l<r;l++)this.hiddenSlices.indexOf(l)>=0||null!==t.pointAt(l).y&&s.push(l);var h=n.sort||"descending";if("none"!==h&&s.sort(function(e,r){return"ascending"===h?(t.pointAt(e).y||0)-(t.pointAt(r).y||0):(t.pointAt(r).y||0)-(t.pointAt(e).y||0)}),s.length){for(var u=Math.max(0,Number(n.gap)||2),c=Math.max(4,(e.plot.height-u*(s.length-1))/s.length),p=Math.max.apply(Math,_toConsumableArray(s.map(function(e){return t.pointAt(e).y||0})).concat([0])),v=Math.max(0,Math.min(1,void 0===n.minSize?.12:Number(n.minSize))),m=e.plot.width,g=e.plot.width/2,b=this.isEntering()?Math.max(0,Math.min(1,this.progress())):1,k=.72*m,S=s.map(function(e){var r=t.pointAt(e).y||0,n=p>0?r/p:1,a=Math.max(m*v,m*Math.max(0,Math.min(1,n)));return k+(a-k)*b}),A=!1!==n.trapezoid,w=0;w<s.length;w++){var _=s[w],M=w*(c+u),C=M+c,T=S[w],P=A&&w+1<S.length?S[w+1]:S[w],I={y0:M,y1:C,topWidth:T,bottomWidth:P,cx:g};this.stageGeom[_]=I;var N=Math.max(T,P)/2;this.stageRects[_]={x:g-N,y:M,width:2*N,height:C-M},this.pixels[2*_]=g,this.pixels[2*_+1]=(M+C)/2}this.blendStageMorph(),this.xMonotonic=!1,this.renderIndices=null}}}},{key:"blendStageMorph",value:function blendStageMorph(){var e=this.stageFrom;if(e&&!this.isEntering()){var t=Math.max(0,Math.min(1,this.progress()));if(t>=1)this.stageFrom=null;else for(var r=0;r<this.stageGeom.length;r++){var n=this.stageGeom[r],a=e[r];if(n&&a){var s=function lerp(e,r){return e+(r-e)*t};n.y0=s(a.y0,n.y0),n.y1=s(a.y1,n.y1),n.topWidth=s(a.topWidth,n.topWidth),n.bottomWidth=s(a.bottomWidth,n.bottomWidth);var l=Math.max(n.topWidth,n.bottomWidth)/2;this.stageRects[r]={x:n.cx-l,y:n.y0,width:2*l,height:n.y1-n.y0},this.pixels[2*r]=n.cx,this.pixels[2*r+1]=(n.y0+n.y1)/2}}}}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();for(var r=0;r<this.stageGeom.length;r++){var n=this.stageGeom[r];if(n&&!(t<n.y0-1||t>n.y1+1)){var a=this.widthAt(n,t)/2*this.hoverBoost(r,.06)+1;if(Math.abs(e-n.cx)<=a)return r}}return-1}},{key:"doRender",value:function doRender(){var e=this.funnel;if(e&&this.chartTheme){this.rebuildPixels();for(var t=this.ctx,r=this.unit(),n=this.chartTheme,a=(e.options||{}).labelPosition||"inside",s=0,l=0;l<this.stageGeom.length;l++)this.stageGeom[l]&&s++;for(var h=0,u=0;u<this.series.pointCount;u++)this.stageGeom[u]&&(h+=this.series.pointAt(u).y||0);this.beginDraw();for(var c=0;c<this.stageGeom.length;c++){var p=this.stageGeom[c];if(p){var v=this.series.pointAt(c).color||this.series.color,m=this.hoverBoost(c,.06),g=p.topWidth*m,b=p.bottomWidth*m;t.beginPath(),t.moveTo(p.cx-g/2,p.y0),t.lineTo(p.cx+g/2,p.y0),t.lineTo(p.cx+b/2,p.y1),t.lineTo(p.cx-b/2,p.y1),t.closePath();var k=t.createLinearGradient(0,p.y0,0,p.y1);k.addColorStop(0,hexToRgba(v,.95)),k.addColorStop(1,hexToRgba(v,.75)),t.fillStyle=k,t.fill(),t.strokeStyle="rgba(255,255,255,0.7)",t.lineWidth=r,t.stroke()}}this.setFont(n.fontSize,n.fontFamily),t.textBaseline="middle";for(var S=0;S<this.stageGeom.length;S++){var A=this.stageGeom[S];if(A){var w=this.series.pointAt(S),_=w.y||0,M=h>0?_/h*100:0,C="".concat(w.name||w.xValue," ").concat(_).concat(s>1?" ".concat(M.toFixed(1),"%"):""),T=(A.y0+A.y1)/2,P=this.widthAt(A,T);if("right"!==a)measureTextWidth(t,C,n.fontSize,n.fontFamily)+12>P?(t.textAlign="left",t.fillStyle=n.textColor,t.fillText(C,A.cx+Math.max(A.topWidth,A.bottomWidth)/2+8*r,T)):(t.textAlign="center",t.fillStyle="#ffffff",t.fillText(C,A.cx,T));else t.textAlign="left",t.fillStyle=n.textColor,t.fillText(C,A.cx+Math.max(A.topWidth,A.bottomWidth)/2+8*r,T)}}this.endDraw()}}}])}(),he=2*Math.PI,ue=Math.PI/180,ce=function(){function GaugeSeries(){var e;_classCallCheck(this,GaugeSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,GaugeSeries,[].concat(r)),"seriesType","gauge"),_defineProperty(e,"gauge",null),_defineProperty(e,"gaugeKey",""),_defineProperty(e,"fromValue",null),e}return _inherits(GaugeSeries,J),_createClass(GaugeSeries,[{key:"setCoord",value:function setCoord(e){return this.gauge=e||null,this.gaugeKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 8}},{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return t&&this.gauge&&(this.fromValue=this.renderedValue()),_superPropGet(GaugeSeries,"updateSeries",this,3)([e,t,r])}},{key:"renderedValue",value:function renderedValue(){var e=this.range().min,t=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,r=Math.max(0,Math.min(1,this.progress())),n=null===this.fromValue?e:this.fromValue;return n+(t-n)*r}},{key:"angles",value:function angles(){for(var e=this.gauge&&this.gauge.options||{},t=void 0===e.startAngle?225:Number(e.startAngle),r=void 0===e.endAngle?-45:Number(e.endAngle),n=-t*ue,a=-r*ue;a<=n;)a+=he;return{a0:n,a1:a,sweep:a-n}}},{key:"range",value:function range(){var e=this.gauge&&this.gauge.options||{},t=isFinite(Number(e.min))?Number(e.min):0,r=isFinite(Number(e.max))?Number(e.max):100;return{min:t,max:r>t?r:t+1}}},{key:"angleFor",value:function angleFor(e){var t=this.angles(),r=t.a0,n=t.sweep,a=this.range(),s=a.min,l=a.max;return r+Math.max(0,Math.min(1,(e-s)/(l-s)))*n}},{key:"localCenter",value:function localCenter(){var e=this.gauge;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.gauge;if(e){var t=e.options||{},r=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,n=this.buildSeriesKey([e.polar.radius,t.startAngle,t.endAngle,t.min,t.max,r]);if(n!==this.gaugeKey||2!==this.pixels.length){this.gaugeKey=n,2!==this.pixels.length&&(this.pixels=new Float64Array(2));var a=_slicedToArray(this.localCenter(),2),s=a[0],l=a[1],h=Number(t.pointer&&t.pointer.length||.72)*e.polar.radius,u=this.angleFor(r);this.pixels[0]=s+Math.cos(u)*h,this.pixels[1]=l+Math.sin(u)*h,this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.gauge;if(!r||!this.series.pointCount)return-1;var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];return Math.hypot(e-a,t-s)<=r.polar.radius+12?0:-1}},{key:"doRender",value:function doRender(){var e=this.gauge;if(e&&this.chartTheme){this.rebuildPixels();var t=this.ctx,r=this.chartTheme,n=e.options||{},a=this.unit(),s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=this.angles(),p=c.a0,v=c.sweep,m=this.range(),g=m.min,b=m.max,k=Math.max(2,Number(n.lineWidth)||14),S=this.renderedValue();this.beginDraw();for(var A=n.axisLineColor&&n.axisLineColor.length?n.axisLineColor:[[1,r.colorPalette[0]]],w=0,_=0;_<A.length;_++){var M=_slicedToArray(A[_],2),C=M[0],T=M[1],P=w,I=Math.max(w,Math.min(1,Number(C)));w=I,I<=P||(t.beginPath(),t.arc(l,h,u,p+P*v,p+I*v),t.strokeStyle=T,t.lineWidth=k,t.lineCap="butt",t.stroke())}var N=Math.max(1,Number(n.splitNumber)||5);this.setFont(.85*r.fontSize,r.fontFamily),t.fillStyle=r.subTextColor,t.textBaseline="middle",t.textAlign="center";for(var D=0;D<=N;D++){var O=D/N,R=p+O*v,H=u-k-2*a,z=u-k-8*a;t.beginPath(),t.moveTo(l+Math.cos(R)*H,h+Math.sin(R)*H),t.lineTo(l+Math.cos(R)*z,h+Math.sin(R)*z),t.strokeStyle=r.axisLineColor,t.lineWidth=a,t.stroke();var E=u-k-20*a;t.fillText(String(Math.round(g+O*(b-g))),l+Math.cos(R)*E,h+Math.sin(R)*E)}var L=n.pointer||{};if(!1!==L.show){var V=Math.max(.1,Number(L.length)||.72)*u,B=Math.max(1,Number(L.width)||5)*a,j=this.angleFor(S),W=l+Math.cos(j)*V,X=h+Math.sin(j)*V,G=l+Math.cos(j+Math.PI/2)*B,U=h+Math.sin(j+Math.PI/2)*B,K=l+Math.cos(j-Math.PI/2)*B,Y=h+Math.sin(j-Math.PI/2)*B;t.beginPath(),t.moveTo(W,X),t.lineTo(G,U),t.lineTo(K,Y),t.closePath(),t.fillStyle=r.textColor,t.fill(),t.beginPath(),t.arc(l,h,1.6*B,0,he),t.fillStyle=r.textColor,t.fill(),t.beginPath(),t.arc(l,h,.7*B,0,he),t.fillStyle="#ffffff",t.fill()}var q=n.detail||{},$=q.formatter?String(q.formatter(S)):"".concat(Math.round(100*S)/100),Z=Math.max(0,360-this.angles().sweep/ue)>20;if(!1!==q.show){var J=Number(q.fontSize)||Math.max(16,Math.round(.26*u));this.setFont(J,r.fontFamily,"bold"),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.textColor,t.fillText($,l,h+u*(Z?.78:.42))}var Q=n.title||{},ee=this.series.pointAt(0),te=ee&&(ee.name||void 0!==ee.xValue)?ee.name||String(ee.xValue):"";if(!1!==Q.show&&te){var ie=Number(Q.fontSize)||r.fontSize;this.setFont(ie,r.fontFamily),measureTextWidth(t,te,ie,r.fontFamily),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.subTextColor,t.fillText(te,l,h+u*(Z?.6:.68))}this.endDraw()}}}])}(),fe=function(){function BoxplotSeries(){var e;_classCallCheck(this,BoxplotSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,BoxplotSeries,[].concat(r)),"seriesType","boxplot"),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"boxCacheKey",""),e}return _inherits(BoxplotSeries,J),_createClass(BoxplotSeries,[{key:"boxWidthAt",value:function boxWidthAt(e){var t=Number(this.series.option.barWidth);return!isFinite(t)||t<=0?Math.max(4,.5*e):t<=1?Math.max(4,e*t):Math.max(4,t*this.unit())}},{key:"boxRectAt",value:function boxRectAt(e){var t=this.coord,r=this.series.pointAt(e);if(!t||!r||!r.boxplot)return null;var n=t.xScale.map(r.xValue);if(!isFinite(n))return null;var a=t.xScale.bandwidth()||.5*t.xScale.step(),s=this.boxWidthAt(a),l=_slicedToArray(r.boxplot,4),h=l[1],u=l[3],c=_slicedToArray(r.boxplot,5),p=c[0],v=c[4],m=t.yScale.map(h),g=t.yScale.map(u),b=t.yScale.map(p),k=t.yScale.map(v);return isFinite(m)&&isFinite(g)&&isFinite(b)&&isFinite(k)?{x:n-s/2,y:Math.min(m,g),width:s,height:Math.max(Math.abs(g-m),this.unit())}:null}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord,t=this.series.pointCount;if(e){var r=this.buildSeriesKey([t,e.plot.width,e.plot.height,String(e.xScale.domain.join(","))]);if(r!==this.boxCacheKey||this.pixels.length!==2*t){this.boxCacheKey=r,this.pixels.length!==2*t&&(this.pixels=new Float64Array(2*t));for(var n=0;n<t;n++){var a=this.boxRectAt(n),s=this.series.pointAt(n);a&&s&&s.boxplot?(this.pixels[2*n]=a.x+a.width/2,this.pixels[2*n+1]=e.yScale.map(s.boxplot[2])):(this.pixels[2*n]=NaN,this.pixels[2*n+1]=NaN)}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.coord;if(!r)return-1;for(var n=0;n<this.series.pointCount;n++){var a=this.series.pointAt(n),s=this.boxRectAt(n);if(a&&a.boxplot&&s){var l=s.x+s.width/2;if(!(Math.abs(e-l)>s.width/2+1)){var h=r.yScale.map(a.boxplot[0]),u=r.yScale.map(a.boxplot[4]),c=Math.min(h,u),p=Math.max(h,u);if(t>=c-2&&t<=p+2)return n}}}return-1}},{key:"doRender",value:function doRender(){var e=this,t=this.coord;if(t&&this.chartTheme){this.rebuildPixels();var r=this.ctx;this.chartTheme;var n=this.unit(),a=this.pointColor(0),s=this.isEntering();this.computeItemProgress(),this.beginDraw();for(var l=function _loop(){var l=e.series.pointAt(h),u=e.boxRectAt(h);if(!l||!l.boxplot||!u)return 0;var c=_slicedToArray(l.boxplot,5),p=c[0],v=c[1],m=c[2],g=c[3],b=c[4],k=u.x+u.width/2,S=t.yScale.map(m),A=s?e.itemProgress[h]:1;if(A<=0)return 0;var w=function lerp(e){return S+(e-S)*A},_=w(t.yScale.map(p)),M=w(t.yScale.map(b)),C=w(t.yScale.map(g)),T=w(t.yScale.map(v)),P={x:u.x,y:Math.min(C,T),width:u.width,height:Math.max(Math.abs(T-C),e.unit())};r.beginPath(),r.moveTo(k,M),r.lineTo(k,P.y),r.moveTo(k,P.y+P.height),r.lineTo(k,_),r.strokeStyle=a,r.lineWidth=n,r.stroke(),r.beginPath(),r.moveTo(k-u.width/4,M),r.lineTo(k+u.width/4,M),r.moveTo(k-u.width/4,_),r.lineTo(k+u.width/4,_),r.stroke(),r.beginPath(),r.rect(P.x,P.y,P.width,P.height),r.fillStyle=function hexWithAlpha(e,t){if(!e)return"rgba(0,0,0,".concat(t,")");var r=e.replace("#","");3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]);if(6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}(a,.28),r.fill(),r.strokeStyle=a,r.lineWidth=n,r.stroke(),r.beginPath(),r.moveTo(P.x,S),r.lineTo(P.x+P.width,S),r.lineWidth=Math.max(n,2*n),r.stroke(),e.drawHoverOverlay(h,P,{radius:1})},h=0;h<this.series.pointCount;h++)l();this.endDraw()}}}])}();var de=function(){function WaterfallSeries(){var e;_classCallCheck(this,WaterfallSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,WaterfallSeries,[].concat(r)),"seriesType","waterfall"),e}return _inherits(WaterfallSeries,ee),_createClass(WaterfallSeries,[{key:"isTotalItem",value:function isTotalItem(e){var t=this.series.pointAt(e),r=t&&t.raw;return!(!r||"object"!==_typeof(r)||Array.isArray(r)||!r.total)}},{key:"isIncrease",value:function isIncrease(e){var t=this.series.pointAt(e);return!t||(t.y||0)>=0}},{key:"barColorAt",value:function barColorAt(e){var r=waterfallOptionOf(this.series),n=this.chartTheme,a=n&&n.colorPalette||t;return this.isTotalItem(e)?r.totalColor||a[0]:this.isIncrease(e)?r.increaseColor||a[1]:r.decreaseColor||a[2]}},{key:"doRender",value:function doRender(){if(_superPropGet(WaterfallSeries,"doRender",this,3)([]),!1!==waterfallOptionOf(this.series).connector){var e=this.coord;if(e){var t=this.ctx,r=this.unit(),n=this.chartTheme,a=e.yScale.isBand&&e.yScale.isBand();t.save(),t.strokeStyle=n&&n.subTextColor||"#6C757D",t.lineWidth=r,"function"==typeof t.setLineDash&&t.setLineDash([4*r,3*r]),t.beginPath();for(var s=0;s<this.series.pointCount-1;s++){var l=this.barRectAt(s),h=this.barRectAt(s+1);if(l&&h)if(a){var u=Math.max(l.x+l.width,h.x+h.width),c=l.y+l.height/2,p=h.y+h.height/2;t.moveTo(u,c),t.lineTo(u,p)}else{var v=Math.min(l.y,h.y),m=l.x+l.width/2,g=h.x+h.width/2;t.moveTo(m,v),t.lineTo(g,v)}}t.stroke(),"function"==typeof t.setLineDash&&t.setLineDash([]),t.restore()}}}}])}();function waterfallOptionOf(e){return e&&e.waterfallOption?e.waterfallOption:e&&e.option&&e.option.waterfall||{}}var pe=function(){function TreemapSeries(){var e;_classCallCheck(this,TreemapSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,TreemapSeries,[].concat(r)),"seriesType","treemap"),_defineProperty(e,"treemap",null),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"treemapKey",""),_defineProperty(e,"morphFrom",{}),_defineProperty(e,"morphing",!1),_defineProperty(e,"rectCache",new Map),e}return _inherits(TreemapSeries,J),_createClass(TreemapSeries,[{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];if(t&&this.treemap){var n,a={},s=_createForOfIteratorHelper(this.treemap.layout);try{for(s.s();!(n=s.n()).done;){var l=n.value;a["".concat(l.depth,":").concat(l.name)]=_objectSpread2({},l.rect)}}catch(e){s.e(e)}finally{s.f()}this.morphFrom=a,this.morphing=!0}return _superPropGet(TreemapSeries,"updateSeries",this,3)([e,t,r])}},{key:"rectOf",value:function rectOf(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.rectCache,r=this.progress();if(!this.morphing)return e.rect;if(r>=1)return this.morphing=!1,e.rect;var n=t.get(e.id);if(n)return n;var a,s=this.treemap?this.treemap.layout:[],l=this.morphFrom["".concat(e.depth,":").concat(e.name)],h=e.parent>=0?s[e.parent]:null,u=h?this.morphFrom["".concat(h.depth,":").concat(h.name)]:null;if(h&&l&&u&&u.width>1&&u.height>1){var c=this.rectOf(h,t),p=(l.x-u.x)/u.width,v=(l.y-u.y)/u.height,m=l.width/u.width,g=l.height/u.height;a={x:c.x+p*c.width,y:c.y+v*c.height,width:m*c.width,height:g*c.height}}else a=l?{x:l.x+(e.rect.x-l.x)*r,y:l.y+(e.rect.y-l.y)*r,width:l.width+(e.rect.width-l.width)*r,height:l.height+(e.rect.height-l.height)*r}:e.rect;return t.set(e.id,a),a}},{key:"setCoord",value:function setCoord(e){return this.treemap=e||null,this.treemapKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 6}},{key:"highlightRectAt",value:function highlightRectAt(e){var t=this.treemap;if(!t)return null;var r=t.layout[e];if(!r)return null;var n=this.rectOf(r);return{x:n.x-t.plot.x,y:n.y-t.plot.y,width:n.width,height:n.height}}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.treemap,t=e&&e.layout||[];if(e&&t.length){var r=this.buildSeriesKey([t.length,e.plot.width,e.plot.height]);if(r!==this.treemapKey||this.pixels.length!==2*t.length){this.treemapKey=r,this.pixels=new Float64Array(2*t.length);var n,a=_createForOfIteratorHelper(t);try{for(a.s();!(n=a.n()).done;){var s=n.value,l=this.rectOf(s);this.pixels[2*s.id]=l.x-e.plot.x+l.width/2,this.pixels[2*s.id+1]=l.y-e.plot.y+l.height/2}}catch(e){a.e(e)}finally{a.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.treemap;if(!r)return-1;var n,a=-1,s=-1,l=_createForOfIteratorHelper(r.layout);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=this.rectOf(h),c=u.x-r.plot.x,p=u.y-r.plot.y;e<c||e>c+u.width||t<p||t>p+u.height||h.depth>s&&(s=h.depth,a=h.id)}}catch(e){l.e(e)}finally{l.f()}return a}},{key:"doRender",value:function doRender(){var e=this,t=this.treemap;if(t&&this.chartTheme){this.rebuildPixels();var r=this.ctx,n=this.chartTheme,a=this.unit(),s=t.plot,l=t.options||{},h=void 0===l.minLabelRatio?.02:Number(l.minLabelRatio);this.rectCache=new Map,this.beginDraw();var u,c=_createForOfIteratorHelper(t.layout);try{for(c.s();!(u=c.n()).done;){var p=u.value,v=this.rectOf(p),m=v.x-s.x,g=v.y-s.y;r.beginPath(),r.rect(m,g,v.width,v.height),r.fillStyle=p.color,r.fill(),0===p.depth&&(r.strokeStyle="rgba(255,255,255,0.9)",r.lineWidth=1.5*a,r.stroke())}}catch(e){c.e(e)}finally{c.f()}if(null!==this.hoverIndex){var b=t.layout[this.hoverIndex];if(b){var k=this.rectOf(b),S={x:k.x-s.x,y:k.y-s.y,width:k.width,height:b.hasChildren&&b.header>0?b.header:k.height};this.drawHoverOverlay(this.hoverIndex,S,{radius:0,fill:"rgba(255,255,255,0.18)"})}}var A=function fitFontSize(e,t){for(var a=n.fontSize;a>9&&!e.every(function(e){return measureTextWidth(r,e,a,n.fontFamily)<=t});)a-=1;return a};this.setFont(n.fontSize,n.fontFamily),r.textAlign="center",r.textBaseline="middle";var w,_=_createForOfIteratorHelper(t.layout);try{var M=function _loop(){var t=w.value;if(t.ratio<h)return 0;var l=e.rectOf(t),u="".concat((100*t.ratio).toFixed(1),"%");if(t.hasChildren&&t.header>0){r.textAlign="left",r.fillStyle=0===t.depth?"#ffffff":n.textColor;var c="".concat(t.name," ").concat(u),p=A([c],l.width-16*a);return(p>9||measureTextWidth(r,c,p,n.fontFamily)<=l.width-16*a)&&(e.setFont(p,n.fontFamily,"bold"),r.fillText(c,l.x-s.x+8*a,l.y-s.y+t.header/2)),0}if(l.width<44||l.height<26)return 0;var v=(l.height>=40?"".concat(t.name,"\n").concat(u):"".concat(t.name," ").concat(u)).split("\n"),m=A(v,l.width-8*a);if(Math.max.apply(Math,_toConsumableArray(v.map(function(e){return measureTextWidth(r,e,m,n.fontFamily)})))>l.width-8*a)return 0;e.setFont(m,n.fontFamily),r.textAlign="center";var g=0===t.depth?"#ffffff":n.textColor;r.fillStyle=g;for(var b=1.35*m,k=l.y-s.y+l.height/2-(v.length-1)*b/2,S=0;S<v.length;S++)r.fillText(v[S],l.x-s.x+l.width/2,k+S*b)};for(_.s();!(w=_.n()).done;)M()}catch(e){_.e(e)}finally{_.f()}this.endDraw()}}}])}();function forceLayout(e,r,n){var a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{nodes:[],links:[]},s=arguments.length>4&&void 0!==arguments[4]?arguments[4]:t,l=e.length;if(!l)return{nodes:[],links:[]};var h,u=a.layout||"force",c=_slicedToArray(Array.isArray(a.symbolSizeRange)?a.symbolSizeRange:[12,48],2),p=c[0],v=c[1],m=function indexOf(t){if("number"==typeof t)return t>=0&&t<l?t:-1;for(var r=0;r<l;r++){var n=e[r];if(n.id===t||n.name===t)return r}return-1},g=r.map(function(e,t){return{id:t,source:m(e.source),target:m(e.target),value:Number(e.value)||1,color:e.color}}).filter(function(e){return e.source>=0&&e.target>=0&&e.source!==e.target}),b=n.x+n.width/2,k=n.y+n.height/2,S=Math.max(10,Math.min(n.width,n.height)/2-v/2-4),A=e.map(function(e,t){if(isFinite(Number(e.x))&&isFinite(Number(e.y)))return{x:clamp(Number(e.x),n.x+2,n.x+n.width-2),y:clamp(Number(e.y),n.y+2,n.y+n.height-2)};var r=t/l*Math.PI*2-Math.PI/2;return{x:b+Math.cos(r)*S*.8,y:k+Math.sin(r)*S*.8}}),w=A.map(function(){return{x:0,y:0}}),_=A.map(function(e){return{x:e.x,y:e.y}}),M=new Array(l).fill(0),C=new Array(l).fill(0),T=_createForOfIteratorHelper(g);try{for(T.s();!(h=T.n()).done;){var P=h.value;M[P.source]++,M[P.target]++,C[P.source]+=P.value,C[P.target]+=P.value}}catch(e){T.e(e)}finally{T.f()}var I=Math.max.apply(Math,[1].concat(_toConsumableArray(C))),N=function sizeOf(t){var r=Number(e[t].value);if(!isFinite(r)||r<=0)return p;var n=Math.sqrt(Math.max(0,Math.min(1,C[t]/I)));return p+(v-p)*n};if("force"===u)for(var D=numberOr(a.repulsion,6e3),O=numberOr(a.edgeLength,70),R=numberOr(a.gravity,.06),H=Math.max(.1,Math.min(.98,numberOr(a.damping,.85))),z=Math.max(1,Math.floor(numberOr(a.iterations,240))),E=Math.max(8,(p+v)/6),L=0;L<z;L++){for(var V=1-L/z,B=0;B<l;B++)if(!e[B].fixed)for(var j=B+1;j<l;j++){var W=A[j].x-A[B].x,X=A[j].y-A[B].y,G=Math.hypot(W,X);G<E&&(W=W||(B%2==0?.5:-.5),X=X||(j%2==0?.5:-.5),G=Math.hypot(W,X));var U=D/(G*G)*V,K=W/G*U,Y=X/G*U;w[B].x-=K,w[B].y-=Y,e[j].fixed||(w[j].x+=K,w[j].y+=Y)}var q,$=_createForOfIteratorHelper(g);try{for($.s();!(q=$.n()).done;){var Z=q.value,J=A[Z.source],Q=A[Z.target],ee=Q.x-J.x,te=Q.y-J.y,ie=Math.max(.01,Math.hypot(ee,te)),re=.06*(ie-(O+(Z.value>1?Math.min(40,Z.value):0)))*V,ne=ee/ie*re,ae=te/ie*re;e[Z.source].fixed||(w[Z.source].x+=ne,w[Z.source].y+=ae),e[Z.target].fixed||(w[Z.target].x-=ne,w[Z.target].y-=ae)}}catch(e){$.e(e)}finally{$.f()}for(var oe=0;oe<l;oe++)e[oe].fixed||(w[oe].x+=(b-A[oe].x)*R*V,w[oe].y+=(k-A[oe].y)*R*V,w[oe].x*=H,w[oe].y*=H,A[oe].x+=w[oe].x,A[oe].y+=w[oe].y)}if("force"===u&&l>1){for(var se=1/0,le=1/0,he=-1/0,ue=-1/0,ce=0;ce<l;ce++){var fe=N(ce)/2;se=Math.min(se,A[ce].x-fe),he=Math.max(he,A[ce].x+fe),le=Math.min(le,A[ce].y-fe),ue=Math.max(ue,A[ce].y+fe)}var de=Math.max(1,he-se),pe=Math.max(1,ue-le),ve=Math.min(3,Math.min((n.width-16)/de,(n.height-16)/pe));if(isFinite(ve)&&ve>0)for(var ye=(se+he)/2,me=(le+ue)/2,xe=0;xe<l;xe++)A[xe].x=b+(A[xe].x-ye)*ve,A[xe].y=k+(A[xe].y-me)*ve}var ge=e.map(function(e,t){var r=N(t)/2,l=clamp(A[t].x,n.x+r,n.x+n.width-r),h=clamp(A[t].y,n.y+r,n.y+n.height-r);return{id:t,name:e.name,x:l,y:h,initialX:_[t].x,initialY:_[t].y,size:N(t),value:C[t],degree:M[t],color:e.color||colorOf(e,a,s,t),category:e.category,fixed:!!e.fixed}}),be=Math.max.apply(Math,[1].concat(_toConsumableArray(g.map(function(e){return e.value})))),ke=g.map(function(e){return{id:e.id,source:e.source,target:e.target,value:e.value,width:1+3*Math.sqrt(e.value/be),color:e.color||ge[e.source].color}});return{nodes:ge,links:ke}}function colorOf(e,t,r,n){if(void 0!==e.category&&Array.isArray(t.categories)){var a=t.categories.find(function(t){return t.name===e.category});if(a&&a.color)return a.color;var s=t.categories.findIndex(function(t){return t.name===e.category});if(s>=0)return r[s%r.length]}return r[n%r.length]}function numberOr(e,t){var r=Number(e);return isFinite(r)?r:t}function clamp(e,t,r){return e<t?t:e>r?r:e}function sampleGraphLink(e,t,r){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:14,a=t[e.source],s=t[e.target],l=[];if(!a||!s)return l;if(!r)return l.push([a.x,a.y],[s.x,s.y]),l;for(var h=(a.x+s.x)/2,u=(a.y+s.y)/2,c=s.x-a.x,p=s.y-a.y,v=Math.max(1,Math.hypot(c,p)),m=Math.min(30,.18*v),g=h-p/v*m,b=u+c/v*m,k=0;k<=n;k++){var S=k/n,A=1-S;l.push([A*A*a.x+2*A*S*g+S*S*s.x,A*A*a.y+2*A*S*b+S*S*s.y])}return l}var ve=function(){function GraphSeries(){var e;_classCallCheck(this,GraphSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,GraphSeries,[].concat(r)),"seriesType","graph"),_defineProperty(e,"graph",null),_defineProperty(e,"clipToBox",!1),_defineProperty(e,"graphKey",""),e}return _inherits(GraphSeries,J),_createClass(GraphSeries,[{key:"setCoord",value:function setCoord(e){return this.graph=e||null,this.graphKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 28}},{key:"nodeCount",get:function get(){return this.graph&&this.graph.layout.nodes.length||0}},{key:"moveNode",value:function moveNode(e,t,r){var n=this.graph;if(!n)return!1;var a=n.layout.nodes[e];if(!a)return!1;var s=n.plot,l=a.size/2;return a.x=Math.max(s.x+l,Math.min(s.x+s.width-l,t+s.x)),a.y=Math.max(s.y+l,Math.min(s.y+s.height-l,r+s.y)),a.fixed=!0,this.graphKey="",this.markDirty(),!0}},{key:"settle",value:function settle(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:40,t=this.graph;if(t){var r=t.options||{},n=forceLayout(t.layout.nodes.map(function(e,t){return _objectSpread2(_objectSpread2({},r.nodes&&r.nodes[t]||{name:e.name}),{},{x:e.x,y:e.y,fixed:e.fixed})}),r.links||[],t.plot,_objectSpread2(_objectSpread2({},r),{},{layout:"force",iterations:e}),this.chartTheme?this.chartTheme.colorPalette:void 0);t.layout=n,this.graphKey="",this.markDirty()}}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.graph;if(e){var t=e.layout,r=t.nodes,n=t.links,a=r.length+n.length,s=this.buildSeriesKey([a,e.plot.width,e.plot.height,r.length,n.length]);if(s!==this.graphKey||this.pixels.length!==2*a){this.graphKey=s,this.pixels.length!==2*a&&(this.pixels=new Float64Array(2*a));var l,h=_createForOfIteratorHelper(r);try{for(h.s();!(l=h.n()).done;){var u=l.value;this.pixels[2*u.id]=u.x-e.plot.x,this.pixels[2*u.id+1]=u.y-e.plot.y}}catch(e){h.e(e)}finally{h.f()}var c,p=_createForOfIteratorHelper(n);try{for(p.s();!(c=p.n()).done;){var v=c.value,m=sampleGraphLink(v,r,!1!==e.options.curve,4),g=m[Math.floor(m.length/2)]||[0,0],b=r.length+v.id;this.pixels[2*b]=g[0]-e.plot.x,this.pixels[2*b+1]=g[1]-e.plot.y}}catch(e){p.e(e)}finally{p.f()}this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.graph;if(!r)return-1;var n,a=r.layout,s=a.nodes,l=a.links,h=r.plot,u=_createForOfIteratorHelper(s);try{for(u.s();!(n=u.n()).done;){var c=n.value,p=e-(c.x-h.x),v=t-(c.y-h.y),m=c.size/2*this.hoverBoost(c.id,.28)+3;if(p*p+v*v<=m*m)return c.id}}catch(e){u.e(e)}finally{u.f()}var g,b=!1!==r.options.curve,k=_createForOfIteratorHelper(l);try{for(k.s();!(g=k.n()).done;)for(var S=g.value,A=sampleGraphLink(S,s,b,12),w=1;w<A.length;w++){if(distanceToSegment(e,t,A[w-1][0]-h.x,A[w-1][1]-h.y,A[w][0]-h.x,A[w][1]-h.y)<=6)return s.length+S.id}}catch(e){k.e(e)}finally{k.f()}return-1}},{key:"doRender",value:function doRender(){var e=this.graph;if(e&&this.chartTheme){this.rebuildPixels();var t=this.ctx,r=this.chartTheme,n=e.plot,a=this.unit(),s=e.layout,l=s.nodes,h=s.links,u=!1!==e.options.curve,c=this.isEntering(),p=c?Math.max(0,Math.min(1,this.progress())):1,v=function positionOf(e){return c?[e.initialX+(e.x-e.initialX)*p,e.initialY+(e.y-e.initialY)*p]:[e.x,e.y]},m=l.map(function(e){var t=_slicedToArray(v(e),2),r=t[0],n=t[1];return _objectSpread2(_objectSpread2({},e),{},{x:r,y:n})});this.beginDraw(),t.globalAlpha=.55;var g,b=_createForOfIteratorHelper(h);try{for(b.s();!(g=b.n()).done;){var k=g.value,S=sampleGraphLink(k,m,u,16);if(!(S.length<2)){t.beginPath(),t.moveTo(S[0][0]-n.x,S[0][1]-n.y);for(var A=1;A<S.length;A++)t.lineTo(S[A][0]-n.x,S[A][1]-n.y);t.strokeStyle=k.color,t.lineWidth=Math.max(a,k.width*a),t.stroke()}}}catch(e){b.e(e)}finally{b.f()}t.globalAlpha=1;var w,_=_createForOfIteratorHelper(l);try{for(_.s();!(w=_.n()).done;){var M=w.value,C=_slicedToArray(v(M),2),T=C[0],P=C[1],I=T-n.x,N=P-n.y,D=Math.max(2,M.size/2*this.hoverBoost(M.id,.28));t.beginPath(),t.arc(I,N,D,0,2*Math.PI),t.fillStyle=M.color,t.fill(),t.strokeStyle="rgba(255,255,255,0.85)",t.lineWidth=a*(this.hoverBoost(M.id,.28)>1?2:1),t.stroke()}}catch(e){_.e(e)}finally{_.f()}this.setFont(r.fontSize,r.fontFamily),t.textAlign="center",t.textBaseline="middle",t.fillStyle=r.textColor;var O,R=_createForOfIteratorHelper(l);try{for(R.s();!(O=R.n()).done;){var H=O.value,z=_slicedToArray(v(H),2),E=z[0],L=z[1],V=E-n.x,B=L-n.y+H.size/2+9*a;t.strokeStyle=r.labelHaloColor,t.lineWidth=3*a,t.strokeText(H.name,V,B),t.fillText(H.name,V,B)}}catch(e){R.e(e)}finally{R.f()}this.endDraw()}}},{key:"nodeSizeAt",value:function nodeSizeAt(e){var t=this.graph,r=t&&t.layout.nodes[e];return r?r.size*this.hoverBoost(e,.28):10}}])}(),ye=function(){function CurveSeriesBase(){var e;_classCallCheck(this,CurveSeriesBase);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,CurveSeriesBase,[].concat(r)),"curve",[]),_defineProperty(e,"curveKey",""),_defineProperty(e,"clipToBox",!0),_defineProperty(e,"supportsSampling",!1),_defineProperty(e,"monotonicX",!0),e}return _inherits(CurveSeriesBase,J),_createClass(CurveSeriesBase,[{key:"resolvedParams",value:function resolvedParams(){var e=_objectSpread2({},this.series.option.params||{}),t=this.series.option.sweep;if(t&&t.name){var r=Number(t.from),n=Number(t.to),a=shouldAnimate()?this.sweepPhase():0;e[t.name]=r+(n-r)*a}return e}},{key:"sweepPhase",value:function sweepPhase(){var e=this.series.option.sweep;if(!e)return 0;var t=Math.max(200,Number(e.duration)||3e3),r=(Date.now()%t+t)%t/t;return"loop"===e.mode?r:1-Math.abs(2*r-1)}},{key:"paramValue",value:function paramValue(e){var t=this.resolvedParams();return"number"==typeof t[e]?t[e]:null}},{key:"syncSweep",value:function syncSweep(){var e=this.series.option.sweep;!!(e&&e.name&&shouldAnimate()&&!1!==this.state.display)?this.keepAnimating():this.stopAnimating()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.coord;if(!e)return this.pixels=new Float64Array(0),void(this.curve=[]);this.syncSweep();var t=this.resolvedParams(),r=e.plot,n=_slicedToArray(this.parameterRange(r),2),a=n[0],s=n[1],l=this.buildSeriesKey([this.paramKey(t),r.width,r.height,Number(a).toPrecision(12),Number(s).toPrecision(12)]);if(l!==this.curveKey){this.curveKey=l;var h=this.series,u=h.pointCount;this.pixels.length!==2*u&&(this.pixels=new Float64Array(2*u));for(var c=0;c<u;c++){var p=_slicedToArray(this.evaluateAt(Number(h.xValueAt(c)),t),2),v=p[0],m=p[1],g=isFinite(v)?e.xScale.map(v):NaN,b=isFinite(m)?e.yScale.map(m):NaN;this.pixels[2*c]=g,this.pixels[2*c+1]=b}for(var k=this.sampleCurve(t,r),S=new Array(2*k.length),A=0;A<k.length;A++){var w=_slicedToArray(k[A],2),_=w[0],M=w[1];S[2*A]=isFinite(_)?e.xScale.map(_):NaN,S[2*A+1]=isFinite(M)?e.yScale.map(M):NaN}this.curve=S,this.xMonotonic=this.monotonicX,this.computeEffective(),this.renderIndices=null}}},{key:"paramKey",value:function paramKey(e){return Object.keys(e).sort().map(function(t){return"".concat(t,"=").concat(Number(e[t]).toPrecision(10))}).join(",")}},{key:"sampleCount",value:function sampleCount(){return this.rebuildPixels(),this.curve.length/2}},{key:"hitTestIndex",value:function hitTestIndex(e,t){this.rebuildPixels();var r=this.pixels.length/2;if(!r)return-1;for(var n=this.series.option,a=Math.max(6,this.lineWidthDevice()+4)+(isFinite(Number(n.hitRadius))?Number(n.hitRadius):0),s=-1,l=a*a,h=0;h<r;h++){var u=this.pixels[2*h]-e,c=this.pixels[2*h+1]-t;if(isFinite(u)&&isFinite(c)){var p=u*u+c*c;p<=l&&(l=p,s=h)}}return s}},{key:"hoverLineScale",value:function hoverLineScale(){return null===this.hoverIndex?1:1+.45*this.highlightT()}},{key:"doRender",value:function doRender(){if(this.rebuildPixels(),this.curve.length){var e=this.ctx,t=this.unit(),r=this.pointColor(0),n=this.series.option;this.beginDraw(),e.strokeStyle=r,e.lineWidth=this.lineWidthDevice()*t*this.hoverLineScale(),"function"==typeof e.setLineDash&&Array.isArray(n.lineDash)&&e.setLineDash(n.lineDash.map(function(e){return e*t})),e.beginPath();for(var a=this.isEntering()?Math.max(.001,Math.min(1,this.progress())):1,s=this.curve.length/2,l=Math.max(1,Math.ceil(s*a)),h=!1,u=0;u<l;u++){var c=this.curve[2*u],p=this.curve[2*u+1];isFinite(c)&&isFinite(p)?h?e.lineTo(c,p):(e.moveTo(c,p),h=!0):h=!1}e.stroke(),"function"==typeof e.setLineDash&&e.setLineDash([]),this.endDraw()}}},{key:"curvePoints",value:function curvePoints(){return this.rebuildPixels(),this.curve}}])}(),me=function(){function FunctionSeries(){var e;_classCallCheck(this,FunctionSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,FunctionSeries,[].concat(r)),"seriesType","function"),_defineProperty(e,"cachedSource",""),_defineProperty(e,"sampler",null),e}return _inherits(FunctionSeries,ye),_createClass(FunctionSeries,[{key:"samplerFor",value:function samplerFor(e){var t=String(this.series.option.expression||"");if(t!==this.cachedSource||!this.sampler){this.cachedSource=t;try{this.sampler=compileSampler(t)}catch(e){this.sampler={setParams:function setParams(){},evaluate:function evaluate(){return NaN}}}}var r=this.sampler;return r.setParams(e),function(e){return r.evaluate("x",e)}}},{key:"evaluateAt",value:function evaluateAt(e,t){return[e,this.samplerFor(t)(e)]}},{key:"parameterRange",value:function parameterRange(e){var t=this.coord,r=t&&t.xScale&&t.xScale.domain;if(r&&r.length>=2){var n=Number(r[0]),a=Number(r[r.length-1]);if(isFinite(n)&&isFinite(a)&&a>n)return[n,a]}var s=this.series.option.domain;return[s?Number(s[0]):-10,s?Number(s[1]):10]}},{key:"baseSampleCount",value:function baseSampleCount(){var e=Number(this.series.option.samples);return Math.max(24,Math.min(4e3,isFinite(e)&&e>0?e:240))}},{key:"sampleCurve",value:function sampleCurve(e,t){var r=this.samplerFor(e),n=_slicedToArray(this.parameterRange(t),2);return sampleFunctionCurve(r,n[0],n[1],{base:this.baseSampleCount(),adaptive:!1!==this.series.option.adaptive,tolerance:this.series.option.samplingTolerance})}}])}(),xe=function(){function ParametricSeries(){var e;_classCallCheck(this,ParametricSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,ParametricSeries,[].concat(r)),"seriesType","parametric"),_defineProperty(e,"cachedSources",""),_defineProperty(e,"samplerX",null),_defineProperty(e,"samplerY",null),_defineProperty(e,"samplerR",null),e.monotonicX=!1,e}return _inherits(ParametricSeries,ye),_createClass(ParametricSeries,[{key:"samplersFor",value:function samplersFor(e){var t=this.series.option,r=void 0===t.polarExpression||null===t.polarExpression?"":String(t.polarExpression);if(r){var n="polar\0".concat(r,"\0").concat(Object.keys(e).sort().join(","));if(n!==this.cachedSources||!this.samplerR){this.cachedSources=n;try{this.samplerR=compileSampler(r)}catch(e){this.samplerR={setParams:function setParams(){},evaluate:function evaluate(){return NaN}}}}var a=this.samplerR;return a.setParams(e),{x:function x(e){return a.evaluate("t",e)*Math.cos(e)},y:function y(e){return a.evaluate("t",e)*Math.sin(e)}}}var s=String(t.xExpression||""),l=String(t.yExpression||""),h="".concat(s,"\0").concat(l,"\0").concat(Object.keys(e).sort().join(","));if(h!==this.cachedSources||!this.samplerX||!this.samplerY){this.cachedSources=h;var u={setParams:function setParams(){},evaluate:function evaluate(){return NaN}};try{this.samplerX=compileSampler(s)}catch(e){this.samplerX=u}try{this.samplerY=compileSampler(l)}catch(e){this.samplerY=u}}var c=this.samplerX,p=this.samplerY;return c.setParams(e),p.setParams(e),{x:function x(e){return c.evaluate("t",e)},y:function y(e){return p.evaluate("t",e)}}}},{key:"evaluateAt",value:function evaluateAt(e,t){var r=this.samplersFor(t),n=r.x,a=r.y;return[n(e),a(e)]}},{key:"parameterRange",value:function parameterRange(e){var t=this.series.option.domain,r=t?Number(t[0]):0,n=t?Number(t[1]):2*Math.PI;return isFinite(r)&&isFinite(n)&&n!==r?[r,n]:[0,2*Math.PI]}},{key:"baseSampleCount",value:function baseSampleCount(){var e=Number(this.series.option.samples);return Math.max(24,Math.min(6e3,isFinite(e)&&e>0?e:360))}},{key:"sampleCurve",value:function sampleCurve(e,t){var r=this.samplersFor(e),n=r.x,a=r.y,s=_slicedToArray(this.parameterRange(t),2);return sampleParametricCurve(n,a,s[0],s[1],{base:this.baseSampleCount(),adaptive:!1!==this.series.option.adaptive,tolerance:this.series.option.samplingTolerance})}}])}(),ge=2*Math.PI,be=function(){function LiquidSeries(){var e;_classCallCheck(this,LiquidSeries);for(var t=arguments.length,r=new Array(t),n=0;n<t;n++)r[n]=arguments[n];return _defineProperty(e=_callSuper(this,LiquidSeries,[].concat(r)),"seriesType","liquid"),_defineProperty(e,"liquid",null),_defineProperty(e,"liquidKey",""),_defineProperty(e,"fromRatio",null),e}return _inherits(LiquidSeries,J),_createClass(LiquidSeries,[{key:"setCoord",value:function setCoord(e){return this.liquid=e||null,this.liquidKey="",this.markDirty()}},{key:"paintPad",value:function paintPad(){return 6}},{key:"localCenter",value:function localCenter(){var e=this.liquid;return[e.polar.cx-e.plot.x,e.polar.cy-e.plot.y]}},{key:"range",value:function range(){var e=this.liquid&&this.liquid.options||{},t=isFinite(Number(e.min))?Number(e.min):0,r=isFinite(Number(e.max))?Number(e.max):100;return{min:t,max:r>t?r:t+1}}},{key:"targetRatio",value:function targetRatio(){var e=this.range(),t=e.min,r=e.max,n=this.series.pointCount&&Number(this.series.pointAt(0).y)||0;return Math.max(0,Math.min(1,(n-t)/(r-t)))}},{key:"currentRatio",value:function currentRatio(){var e=this.targetRatio(),t=Math.max(0,Math.min(1,this.progress())),r=null===this.fromRatio?0:this.fromRatio;return r+(e-r)*t}},{key:"levelRatio",value:function levelRatio(){return this.currentRatio()}},{key:"updateSeries",value:function updateSeries(e,t){var r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];return t&&this.liquid&&(this.fromRatio=this.currentRatio()),_superPropGet(LiquidSeries,"updateSeries",this,3)([e,t,r])}},{key:"phase",value:function phase(){var e=this.liquid&&this.liquid.options||{};if(!shouldAnimate())return 0;var t=isFinite(Number(e.waveSpeed))?Number(e.waveSpeed):1.6;return Date.now()/1e3*t}},{key:"syncWave",value:function syncWave(){var e=this.targetRatio();shouldAnimate()&&e>.001&&e<.999&&!1!==this.state.display?this.keepAnimating():this.stopAnimating()}},{key:"rebuildPixels",value:function rebuildPixels(){var e=this.liquid;if(e){var t=this.series.pointCount&&Number(this.series.pointAt(0).y)||0,r=this.buildSeriesKey([e.polar.radius,e.options.min,e.options.max,t]);if(r!==this.liquidKey||2!==this.pixels.length){this.liquidKey=r,2!==this.pixels.length&&(this.pixels=new Float64Array(2));var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];this.pixels[0]=a,this.pixels[1]=s,this.xMonotonic=!1,this.renderIndices=null}}else this.pixels=new Float64Array(0)}},{key:"hitTestIndex",value:function hitTestIndex(e,t){var r=this.liquid;if(!r||!this.series.pointCount)return-1;var n=_slicedToArray(this.localCenter(),2),a=n[0],s=n[1];return Math.hypot(e-a,t-s)<=r.polar.radius+8?0:-1}},{key:"wavePath",value:function wavePath(e,t,r,n,a,s,l,h){var u=Math.max(1,2*n/64);e.beginPath(),e.moveTo(t-n,a+s*Math.sin(h));for(var c=-n+u;c<=n;c+=u)e.lineTo(t+c,a+s*Math.sin(c/l*ge+h))}},{key:"doRender",value:function doRender(){var e=this.liquid;if(e&&this.chartTheme){this.rebuildPixels(),this.syncWave();var t=this.ctx,r=this.chartTheme,n=e.options||{},a=this.unit(),s=_slicedToArray(this.localCenter(),2),l=s[0],h=s[1],u=e.polar.radius,c=Math.max(1,Number(n.borderWidth)||3)*a,p=Math.max(2,u-c),v=n.color||this.pointColor(0),m=this.currentRatio(),g=isFinite(Number(n.waveHeight))?Number(n.waveHeight):.06,b=Math.max(.15,isFinite(Number(n.waveLength))?Number(n.waveLength):1.2)*p,k=g*p,S=this.phase();this.beginDraw(),t.beginPath(),t.arc(l,h,p,0,ge),t.fillStyle=hexToRgba(v,.1),t.fill(),t.save(),t.beginPath(),t.arc(l,h,p,0,ge),t.clip();for(var A=h+p-2*p*m,w=0,_=[{phase:S,alpha:.34,ampScale:1.25},{phase:S+.6*Math.PI,alpha:.55,ampScale:1}];w<_.length;w++){var M=_[w];this.wavePath(t,l,h,p,A,k*M.ampScale,b,M.phase),t.lineTo(l+p,h+p+2*k),t.lineTo(l-p,h+p+2*k),t.closePath(),t.globalAlpha=M.alpha;var C=t.createLinearGradient?t.createLinearGradient(0,A-k,0,h+p):null;C?(C.addColorStop(0,hexToRgba(v,.95)),C.addColorStop(1,hexToRgba(v,.55)),t.fillStyle=C):t.fillStyle=v,t.fill(),t.globalAlpha=1}t.restore(),t.beginPath(),t.arc(l,h,u-c/2,0,ge),t.strokeStyle=n.borderColor||hexToRgba(v,.6),t.lineWidth=c,t.stroke();var T=n.detail||{};if(!1!==T.show){var P=this.range().min,I=P+((this.series.pointCount&&Number(this.series.pointAt(0).y)||0)-P)*Math.max(0,Math.min(1,this.progress())),N="function"==typeof T.formatter?T.formatter(I):"".concat(Number(I.toPrecision(4))).concat(void 0===n.unit?"%":n.unit),D=this.series.pointCount?this.series.pointAt(0).name:void 0;D&&!1!==n.title&&(this.setFont(r.fontSize,r.fontFamily),t.fillStyle=r.subTextColor,t.textAlign="center",t.textBaseline="middle",t.fillText(String(D),l,h-.9*(Number(T.fontSize)||.28*u)*a));var O=isFinite(Number(T.fontSize))?Number(T.fontSize):Math.max(14,.42*u);this.setFont(O*a,r.fontFamily,"bold"),t.fillStyle=n.textColor||r.textColor,t.textAlign="center",t.textBaseline="middle",t.fillText(N,l,h+(D?.18*O*a:0))}this.endDraw()}}}])}(),ke={bar:function bar(e,t){return new ee(e,t)},area:function area(e,t){return new te(e,t)},line:function line(e,t){return new Q(e,t)},scatter:function scatter(e,t){return new ie(e,t)},pie:function pie(e,t){return new ne(e,t)},radar:function radar(e,t){return new ae(e,t)},heatmap:function heatmap(e,t){return new oe(e,t)},sankey:function sankey(e,t){return new se(e,t)},funnel:function funnel(e,t){return new le(e,t)},gauge:function gauge(e,t){return new ce(e,t)},boxplot:function boxplot(e,t){return new fe(e,t)},waterfall:function waterfall(e,t){return new de(e,t)},treemap:function treemap(e,t){return new pe(e,t)},graph:function graph(e,t){return new ve(e,t)},function:function _function(e,t){return new me(e,t)},parametric:function parametric(e,t){return new xe(e,t)},liquid:function liquid(e,t){return new be(e,t)}},Se={},Ae=/^[a-zA-Z][\w-]*$/;function getSeriesTypeFactory(e){return Object.prototype.hasOwnProperty.call(ke,e)?ke[e]:Se[e]||null}function createSeriesComponent(e,t){return(getSeriesTypeFactory(String(e.type))||ke.line)(e,t)}var we=function(){return _createClass(function HitResolver(e){_classCallCheck(this,HitResolver),this.host=e},[{key:"resolveTarget",value:function resolveTarget(e,t){var r=this.host.ice,n={kind:"none",component:null,index:-1,local:[0,0],chart:[0,0]};if(!r||"function"!=typeof r.hitTest)return n;var a=_slicedToArray(r.screenToWorld(e,t),2),s=a[0],l=a[1],h=[s,l],u=r.hitTest(e,t);if(!u)return _objectSpread2(_objectSpread2({},n),{},{chart:h});var c=u.globalToLocal?u.globalToLocal(s,l):[0,0];if(u===this.host.plotArea)return{kind:"plot",component:u,index:-1,local:c,chart:h};if(u===this.host.legend)return{kind:"legend",component:u,index:this.host.legend&&"function"==typeof this.host.legend.hitItem?this.host.legend.hitItem(c[0],c[1]):-1,local:c,chart:h};if("function"==typeof u.hitTestIndex){var p=u.hitTestIndex(c[0],c[1]);return{kind:p>=0?"series":"other",component:u,index:p,local:c,chart:h}}return{kind:"other",component:u,index:-1,local:c,chart:h}}},{key:"isInsidePlot",value:function isInsidePlot(e,t){var r=this.host.layout.plot;return e>=r.x&&e<=r.x+r.width&&t>=r.y&&t<=r.y+r.height}},{key:"seriesComponentOf",value:function seriesComponentOf(e){if(!e)return null;var t,r=_createForOfIteratorHelper(this.host.seriesComponents);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(n.series===e)return n}}catch(e){r.e(e)}finally{r.f()}var a=e.id;if(null!=a){var s,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value;if(h.series&&h.series.id===a)return h}}catch(e){l.e(e)}finally{l.f()}}return null}},{key:"seriesOfComponent",value:function seriesOfComponent(e){var t,r=_createForOfIteratorHelper(this.host.norm.series);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(this.seriesComponentOf(n)===e)return n}}catch(e){r.e(e)}finally{r.f()}return null}},{key:"buildActiveItem",value:function buildActiveItem(e,t){var r=this.seriesComponentOf(e);if(!r)return null;var n=r.pixelAt(t),a=e.pointAt(t);if(!n||!a)return null;var s=this.host.layout.plot;return{series:e,point:a,pixel:[s.x+n[0],s.y+n[1]],screen:[0,0]}}},{key:"toParams",value:function toParams(e){var t=this.host.ice,r=t&&"function"==typeof t.worldToScreen?t.worldToScreen(e.pixel[0],e.pixel[1]):e.pixel;return{seriesId:e.series.id,seriesName:e.series.name,seriesIndex:e.series.index,seriesType:e.series.type,color:e.series.color,dataIndex:e.point.index,data:e.point.raw,xValue:e.point.xValue,value:e.point.y,screen:[r[0],r[1]]}}},{key:"pickColumn",value:function pickColumn(e){var t=e-this.host.layout.plot.x,r=this.host.norm.series.filter(function(e){return!e.hidden});if(!r.length)return null;var n,a=[],s=null,l=_createForOfIteratorHelper(r);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=this.seriesComponentOf(h);if(u){var c=this.nearestIndexByX(u,t);if(!(c<0)){var p=this.buildActiveItem(h,c);p&&(a.push(p),null===s&&(s=h.pointAt(c).xValue))}}}}catch(e){l.e(e)}finally{l.f()}return a.length?{dataIndex:a[0].point.index,xValue:s,pixelX:a[0].pixel[0],items:a}:null}},{key:"nearestIndexByX",value:function nearestIndexByX(e,t){return e.nearestIndexAtX(t)}},{key:"nearestByXValue",value:function nearestByXValue(e){var t,r=this.host.norm.series.filter(function(e){return!e.hidden}),n=this.host.norm.hiddenSlices||{},a=null,s=_createForOfIteratorHelper(r);try{for(s.s();!(t=s.n()).done;)for(var l=t.value,h=0;h<l.pointCount;h++)if("pie"!==l.type&&"funnel"!==l.type||!n["".concat(l.id,"#").concat(h)]){var u=valueDistance(e,l.pointAt(h).xValue);null!==u&&(!a||u<a.dist)&&(a={series:l,index:h,dist:u})}}catch(e){s.e(e)}finally{s.f()}return a?this.buildActiveItem(a.series,a.index):null}}])}();function valueDistance(e,t){var r=e instanceof Date?e.getTime():Number(e),n=t instanceof Date?t.getTime():Number(t);return isFinite(r)&&isFinite(n)?Math.abs(r-n):String(e)===String(t)?0:null}function barCountRange(e,t){var r=Math.max(1,e),n=Math.max(2,Math.ceil(r/function maxBarSpacingOf(e,t){var r=Number(e&&e.maxBarSpacing);return isFinite(r)&&r>0?r:Math.max(1,.5*t)}(t,r))),a=Math.max(n,Math.floor(r/function minBarSpacingOf(e){var t=Number(e&&e.minBarSpacing);return isFinite(t)&&t>0?t:.5}(t)));return[n,a]}function clampBarCount(e,t,r){var n=_slicedToArray(barCountRange(t,r),2),a=n[0],s=n[1];return isFinite(e)?Math.min(s,Math.max(a,e)):a}var _e=null,Me=function(){return _createClass(function InteractionController(e){_classCallCheck(this,InteractionController),_defineProperty(this,"hover",null),_defineProperty(this,"externalHover",!1),_defineProperty(this,"selection",[]),_defineProperty(this,"drag",null),_defineProperty(this,"bound",!1),_defineProperty(this,"lastDimmed",null),_defineProperty(this,"keyboardIndex",0),this.host=e,this.resolver=new we(e)},[{key:"bind",value:function bind(){if(this.bound)return this;var e=this.host.ice&&this.host.ice.evtBus;return e?(this.bound=!0,e.on("mousemove",this.onBusMove,this),e.on("mousedown",this.onBusDown,this),e.on("mouseup",this.onBusUp,this),e.on("click",this.onBusClick,this),e.on("dblclick",this.onBusDoubleClick,this),e.on("wheel",this.onBusWheel,this),e.on("keydown",this.onBusKeyDown,this),this):this}},{key:"unbind",value:function unbind(){if(this.bound){this.bound=!1;var e=this.host.ice&&this.host.ice.evtBus;e&&(e.off("mousemove",this.onBusMove,this),e.off("mousedown",this.onBusDown,this),e.off("mouseup",this.onBusUp,this),e.off("click",this.onBusClick,this),e.off("dblclick",this.onBusDoubleClick,this),e.off("wheel",this.onBusWheel,this),e.off("keydown",this.onBusKeyDown,this))}}},{key:"pointOf",value:function pointOf(e){if(!e)return null;var t="number"==typeof e.offsetX?e.offsetX:e.x,r="number"==typeof e.offsetY?e.offsetY:e.y;return"number"!=typeof t||"number"!=typeof r?null:[t,r]}},{key:"isOverCanvas",value:function isOverCanvas(e,t){var r=this.host&&this.host.ice;if(!r)return!1;var n=r.dpr||1,a=(r.canvasWidth||0)/n,s=(r.canvasHeight||0)/n;return a>0&&s>0&&(e>=0&&t>=0&&e<=a&&t<=s)}},{key:"preventDefault",value:function preventDefault(e){if(e){if("function"==typeof e.preventDefault)try{return void e.preventDefault()}catch(e){}var t=e.originalEvent;if(t&&"function"==typeof t.preventDefault)try{t.preventDefault()}catch(e){}}}},{key:"onBusMove",value:function onBusMove(e){var t=this.pointOf(e);t&&this.handlePointerMove(t[0],t[1],e)}},{key:"onBusDown",value:function onBusDown(e){var t=this.pointOf(e);t&&this.handlePointerDown(t[0],t[1],e)}},{key:"onBusUp",value:function onBusUp(e){var t=this.pointOf(e);t&&this.handlePointerUp(t[0],t[1],e)}},{key:"onBusClick",value:function onBusClick(e){var t=this.pointOf(e);t&&this.handleClick(t[0],t[1],e)}},{key:"onBusDoubleClick",value:function onBusDoubleClick(e){var t=this.pointOf(e);t&&this.handleDoubleClick(t[0],t[1],e)}},{key:"onBusWheel",value:function onBusWheel(e){var t=this.pointOf(e);t&&this.handleWheel(t[0],t[1],Number(e.deltaY)||0,e)}},{key:"onBusKeyDown",value:function onBusKeyDown(e){this.handleKeyDown(e&&e.key,e)}},{key:"refreshHover",value:function refreshHover(){var e=this.hover;if(e){var t=this.host.norm;if("item"===e.kind){var r=t.series.find(function(t){return t.id===e.item.series.id})||e.item.series,n=e.item.point.index,a=("pie"===r.type||"funnel"===r.type)&&t.hiddenSlices["".concat(r.id,"#").concat(n)];if(r.hidden||a||!r.pointAt(n))return void this.setHover(null);var s=this.resolver.buildActiveItem(r,n);return s&&this.resolver.isInsidePlot(s.pixel[0],s.pixel[1])?void this.setHover({kind:"item",item:s},this.externalHover):void this.setHover(null)}var l=this.resolver.nearestByXValue(e.column.xValue),h=l?this.resolver.pickColumn(l.pixel[0]):null;h&&("cartesian"!==t.kind||this.resolver.isInsidePlot(h.pixelX,h.items[0].pixel[1]))?this.setHover({kind:"axis",column:h},this.externalHover):this.setHover(null)}}},{key:"resolveTarget",value:function resolveTarget(e,t){return this.resolver.resolveTarget(e,t)}},{key:"handlePointerMove",value:function handlePointerMove(e,t,r){this.drag?this.updateDrag(e,t,r):this.isOverCanvas(e,t)?this.updateHover(e,t):this.hover&&!this.externalHover&&this.setHover(null)}},{key:"updateHover",value:function updateHover(e,t){var r=this.host.norm.option.interaction;if(!r||!r.hover||!1!==r.hover.enabled){var n=this.resolveTarget(e,t);if("legend"===n.kind){var a=this.host.legend;return a&&a.hoverIndex!==n.index&&(a.hoverIndex=n.index,a.markDirty()),this.clearDataVisuals(),void this.setHoverState(null)}this.resetLegendHover();var s=this.host.norm.option.tooltip&&this.host.norm.option.tooltip.trigger||"axis";if(this.resolver.isInsidePlot(n.chart[0],n.chart[1])&&"axis"===s){var l=this.resolver.pickColumn(n.chart[0]);if(l)return void this.setHover({kind:"axis",column:l})}if("series"===n.kind&&n.index>=0){var h=this.resolver.seriesOfComponent(n.component),u=h?this.resolver.buildActiveItem(h,n.index):null;if(u)return void this.setHover({kind:"item",item:u})}this.setHover(null)}}},{key:"resetLegendHover",value:function resetLegendHover(){var e=this.host.legend;e&&-1!==e.hoverIndex&&(e.hoverIndex=-1,e.markDirty())}},{key:"setHover",value:function setHover(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.externalHover=!!e&&t;var r=!!this.hover;if(this.hover=e,!e)return this.clearHoverVisuals(),this.dimOthers(null),void(r&&this.host.emit("item:leave",void 0));this.applyHoverVisuals(e),"item"===e.kind?(this.keyboardIndex=e.item.point.index,this.dimOthers(e.item.series.id),this.host.emit("item:hover",this.resolver.toParams(e.item))):(this.dimOthers(null),e.column.items[0]&&this.host.emit("item:hover",this.resolver.toParams(e.column.items[0])))}},{key:"setHoverState",value:function setHoverState(e){this.hover=e}},{key:"applyHoverVisuals",value:function applyHoverVisuals(e){var t=this,r="item"===e.kind?[e.item]:e.column.items,n=r[0];this.syncSeriesHover(r);var a=this.host.highlight;a&&a.setHover(this.hoverMarkEnabled()?r.map(function(e){return t.markFor(e)}):[]);var s=this.host.crosshair;if(s)if("cartesian"!==this.host.norm.kind||"horizontal"===this.host.norm.orientation)s.hide();else{var l=this.host.norm.option.crosshair&&this.host.norm.option.crosshair.axis||"x";s.show("y"===l?null:n.pixel[0],"x"===l?null:n.pixel[1],this.host.formatAxisValue("x",n.point.xValue),null===n.point.y?"":this.host.formatAxisValue("y",n.point.y))}var h=this.host.tooltip;if(h)if(this.host.norm.option.tooltip&&!1===this.host.norm.option.tooltip.show)h.hide();else{var u=this.buildTooltipContent(e),c="axis"===e.kind?[e.column.pixelX,n.pixel[1]]:[n.pixel[0],n.pixel[1]];h.show(u,c)}}},{key:"buildTooltipContent",value:function buildTooltipContent(e){var t=this,r="item"===e.kind?[e.item]:e.column.items,n=r[0];if(n&&"horizontal"===this.host.norm.orientation)return{title:this.host.formatAxisValue("y",n.point.xValue),rows:r.map(function(e){return{name:e.series.name,value:null===e.point.y?"-":t.host.formatAxisValue("x",e.point.y),color:e.series.color}})};if(n&&"pie"===n.series.type){for(var a=n.series,s=n.point,l=0,h=0;h<a.pointCount;h++){var u=a.pointAt(h);this.host.norm.hiddenSlices["".concat(a.id,"#").concat(u.index)]||(l+=u.y||0)}var c=s.y||0,p=l>0?c/l*100:0;return{title:a.name,rows:[{name:s.name||"".concat(this.host.norm.labels.slice," ").concat(s.index+1),value:"".concat(p.toFixed(1),"%"),color:s.color||a.color}]}}if(n&&"funnel"===n.series.type){for(var v=n.series,m=n.point,g=0,b=0;b<v.pointCount;b++){var k=v.pointAt(b);this.host.norm.hiddenSlices["".concat(v.id,"#").concat(k.index)]||(g+=k.y||0)}var S=g>0?(m.y||0)/g*100:0;return{title:m.name||this.host.formatAxisValue("x",m.xValue),rows:[{name:v.name,value:"".concat(null===m.y?"-":m.y,"(").concat(S.toFixed(1),"%)"),color:m.color||v.color}]}}if(n&&"gauge"===n.series.type){var A=n.series,w=n.point;return{title:w.name||A.name,rows:[{name:A.name,value:null===w.y?"-":String(w.y),color:A.color}]}}if(n&&"liquid"===n.series.type){var _=n.series,M=n.point,C=_.option.liquid||{},T=isFinite(Number(C.min))?Number(C.min):0,P=isFinite(Number(C.max))?Number(C.max):100,I=null===M.y?T:Number(M.y),N=P>T?Math.max(0,Math.min(1,(I-T)/(P-T))):0;return{title:M.name||_.name,rows:[{name:_.name,value:"".concat(I).concat(void 0===C.unit?"%":C.unit),color:_.color},{name:this.host.norm.labels.liquid,value:"".concat((100*N).toFixed(1),"%"),color:this.host.norm.theme.subTextColor}]}}if(n&&("function"===n.series.type||"parametric"===n.series.type)){var D,O,R=n.series,H=n.point.raw||{},z="function"===R.type,E=z?"x":"t",L=Number(z?null!==(D=H.x)&&void 0!==D?D:n.point.xValue:null!==(O=H.t)&&void 0!==O?O:n.point.xValue),V=Number(H.x),B=Number(H.y),j=function fmt(e){return isFinite(e)?String(Number(e.toPrecision(4))):"—"};return{title:"".concat(E," = ").concat(j(L)),rows:z?[{name:R.name,value:j(B),color:R.color},{name:this.host.norm.labels.coordinate,value:"(".concat(j(V),", ").concat(j(B),")"),color:this.host.norm.theme.subTextColor}]:[{name:this.host.norm.labels.coordinate,value:"(".concat(j(V),", ").concat(j(B),")"),color:R.color},{name:"y",value:j(B),color:this.host.norm.theme.subTextColor}]}}if(n&&"radar"===n.series.type){for(var W=n.series,X=[],G=0;G<W.pointCount;G++){var U=W.pointAt(G);X.push({name:U.name||"".concat(U.index+1),value:null===U.y?"-":String(U.y),color:U.index===n.point.index?W.color:this.host.norm.theme.subTextColor})}return{title:W.name,rows:X}}if(n&&"boxplot"===n.series.type){var K=n.point,Y=K.boxplot;if(Y){var q=["最小值","下四分位","中位数","上四分位","最大值"];return{title:K.name||this.host.formatAxisValue("x",K.xValue),rows:Y.map(function(e,t){return{name:q[t],value:String(e),color:n.series.color}})}}}if(n&&"waterfall"===n.series.type){var $=n.point,Z=$.y||0;return{title:$.name||this.host.formatAxisValue("x",$.xValue),rows:[{name:Z>=0?"增加":"减少",value:"".concat(Z>=0?"+":"").concat(Z),color:n.series.color},{name:"累计",value:String($.top),color:this.host.norm.theme.subTextColor}]}}if(n&&"treemap"===n.series.type){var J=n.series,Q=n.point,ee=J.pointAt(0);ee&&0===ee.index&&ee.y;for(var te=Q.y||0,ie=0,re=0;re<J.pointCount;re++){var ne=J.pointAt(re),ae=ne.raw;ae&&Array.isArray(ae.children)&&ae.children.length||(ie+=ne.y||0)}var oe=ie>0?te/ie*100:0;return{title:Q.name||String(Q.xValue),rows:[{name:J.name,value:"".concat(te,"(").concat(oe.toFixed(1),"%)"),color:n.series.color}]}}if(n&&"graph"===n.series.type){var se=this.resolver.seriesComponentOf(n.series),le=n.point,he=se&&se.nodeCount||0;if(le.index>=he){var ue=se&&se.graph?se.graph.layout.links[le.index-he]:null,ce=se&&se.graph?se.graph.layout.nodes:[];return{title:le.name,rows:[{name:"流量",value:String(ue?ue.value:le.y),color:ue?ue.color:n.series.color}].concat(_toConsumableArray(ue&&ce[ue.source]&&ce[ue.target]?[{name:"度数",value:String(ce[ue.source].degree+ce[ue.target].degree),color:this.host.norm.theme.subTextColor}]:[]))}}return{title:le.name,rows:[{name:"权重",value:null===le.y?"-":String(le.y),color:n.series.color},{name:"连接数",value:String(se&&se.graph&&se.graph.layout.nodes[le.index]?se.graph.layout.nodes[le.index].degree:0),color:this.host.norm.theme.subTextColor}]}}if(n&&"heatmap"===n.series.type){var fe=n.point;return{title:fe.name||this.host.formatAxisValue("x",fe.xValue),rows:[{name:this.host.formatAxisValue("x",fe.xValue),value:null===fe.y?"-":this.host.formatAxisValue("y",fe.y),color:fe.color||n.series.color}]}}if(n&&"sankey"===n.series.type){var de=n.point,pe=!(!de.raw||!de.raw.__sankeyLink);return{title:pe?de.name:"节点",rows:[{name:pe?"流量":de.name,value:null===de.y?"-":String(de.y),color:n.series.color}]}}var ve="item"===e.kind?e.item.point.xValue:e.column.xValue,ye=this.host.formatAxisValue("x",ve),me=r.map(function(e){return{name:e.series.name,value:null===e.point.y?"-":t.host.formatAxisValue("y",e.point.y),color:e.series.color}}),xe=this.host.norm.option.tooltip&&this.host.norm.option.tooltip.formatter;if("function"==typeof xe){var ge=xe({items:r.map(function(e){return t.resolver.toParams(e)}),dataIndex:"item"===e.kind?e.item.point.index:e.column.dataIndex,xValue:ve});if(Array.isArray(ge))return{title:void 0===ge[0]?ye:String(ge[0]),rows:ge.slice(1).map(function(e,t){return{name:String(e),value:"",color:r[t]?r[t].series.color:"#999999"}})};if("string"==typeof ge)return{title:ge,rows:[]};if(ge&&"object"===_typeof(ge)&&(void 0!==ge.title||void 0!==ge.rows))return{title:ge.title||ye,rows:ge.rows||me}}return{title:ye,rows:me}}},{key:"clearHoverVisuals",value:function clearHoverVisuals(){this.clearDataVisuals(),this.resetLegendHover()}},{key:"clearDataVisuals",value:function clearDataVisuals(){this.syncSeriesHover([]),this.host.highlight&&this.host.highlight.setHover([]),this.host.crosshair&&this.host.crosshair.hide(),this.host.tooltip&&this.host.tooltip.hide()}},{key:"hoverMarkEnabled",value:function hoverMarkEnabled(){var e=this.host.norm.option.interaction;return!(e&&e.hover&&!1===e.hover.mark)}},{key:"syncSeriesHover",value:function syncSeriesHover(e){var t,r=new Map,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){var a=t.value;r.has(a.series.id)||r.set(a.series.id,a.point.index)}}catch(e){n.e(e)}finally{n.f()}var s,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value,u=r.get(h.series.id);h.setHoverIndex(void 0===u?null:u)}}catch(e){l.e(e)}finally{l.f()}}},{key:"markFor",value:function markFor(e){var t,r,n=this.resolver.seriesComponentOf(e.series),a=this.host.layout.plot;if(n&&"bar"===e.series.type&&"function"==typeof n.barRectAt){var s=("function"==typeof n.barDrawRectAt?n.barDrawRectAt(e.point.index,1):null)||n.barRectAt(e.point.index),l=s?{x:Math.max(s.x,0),y:Math.max(s.y,0),width:Math.max(0,Math.min(s.x+s.width,a.width)-Math.max(s.x,0)),height:Math.max(0,Math.min(s.y+s.height,a.height)-Math.max(s.y,0))}:null;if(l&&l.width>0&&l.height>0)return{x:a.x+l.x+l.width/2,y:a.y+l.y+l.height/2,width:l.width,height:l.height,color:e.series.color,size:0,shape:"rect"}}return{x:e.pixel[0],y:e.pixel[1],color:e.series.color,size:(t=e.series,r=t.option&&t.option.symbolSize,isFinite(r)?Number(r):"bar"===t.type?10:8),shape:"circle"}}},{key:"dimOthers",value:function dimOthers(e){var t=this.host.norm.option.interaction,r=!!(t&&t.hover&&t.hover.dimOthers),n=r?e:null;if(n!==this.lastDimmed){this.lastDimmed=n;var a,s=this.host.norm.theme.selection.dimOpacity,l=_createForOfIteratorHelper(this.host.seriesComponents);try{for(l.s();!(a=l.n()).done;){var h=a.value,u=r&&null!==n&&h.series.id!==n;h.setState({opacity:u?s:1})}}catch(e){l.e(e)}finally{l.f()}}}},{key:"handlePointerDown",value:function handlePointerDown(e,t,r){if(!this.isOverCanvas(e,t))return!1;_e=this;var n=this.resolveTarget(e,t);if("legend"===n.kind)return!0;var a=this.host.dataZoomSlider;if(a&&n.component===a){var s=a.hitPart(n.local[0],n.local[1]);if(s){this.preventDefault(r),this.setHover(null);var l=a.fractionAt(n.local[0]);if(this.drag={mode:"slider",part:s,startX:e,startY:t,originStart:a.start,originEnd:a.end,anchorFraction:l,moved:!1},a.setActive(s),"track"===s){var h=a.end-a.start,u=clamp$2(l-h/2,0,1-h);this.host.setDomainFromFractions(u,u+h,"slider",!0),a.setActive("window"),this.drag.part="window",this.drag.originStart=u,this.drag.originEnd=u+h}return!0}}if("series"===n.kind&&n.index>=0&&n.component&&"graph"===n.component.seriesType&&"function"==typeof n.component.moveNode&&n.index<(n.component.nodeCount||0)&&(!n.component.graph||!1!==n.component.graph.options.draggable))return this.preventDefault(r),this.setHover(null),this.drag={mode:"graph-node",component:n.component,nodeIndex:n.index,startX:e,startY:t,moved:!1},!0;if(n.component&&"function"==typeof this.host.isMarkComponent&&this.host.isMarkComponent(n.component))return this.setHover(null),!1;if(!this.resolver.isInsidePlot(n.chart[0],n.chart[1]))return!1;var c=this.host.norm.option.interaction||{},p=c.brush,v=c.pan,m=!(!p||!1===p||!1===p.enabled),g=!(!v||!1===v||!v.enabled);return this.preventDefault(r),m?(this.setHover(null),this.drag={mode:"brush",startX:e,startY:t,moved:!1},this.host.brush&&this.host.brush.setRect({x:n.chart[0],y:n.chart[1],width:0,height:0}),!0):!!g&&(this.setHover(null),this.drag={mode:"pan",startX:e,startY:t,domainX:this.currentXWindow(),domainY:[this.host.norm.yAxis.domain[0],this.host.norm.yAxis.domain[1]],moved:!1},!0)}},{key:"currentXWindow",value:function currentXWindow(){var e=this.host.norm.xAxis,t=e&&e.domain;return!t||t.length<2?null:"category"===e.type?[t[0],t[t.length-1]]:[t[0],t[1]]}},{key:"handlePointerUp",value:function handlePointerUp(e,t,r){"function"==typeof this.host.finishMarkDrag&&this.host.finishMarkDrag();var n=this.drag;if(n){if(this.drag=null,"brush"===n.mode){if(!n.moved)return this.host.brush&&this.host.brush.setRect(null),void this.updateHover(e,t);var a=this.brushRange(),s=this.host.norm.option.interaction&&this.host.norm.option.interaction.brush;return s&&"zoom"===s.mode&&a&&(this.applyRange(a),this.host.brush&&this.host.brush.setRect(null)),this.host.emit("brush:end",a),void this.updateHover(e,t)}if("slider"===n.mode){var l=this.host.dataZoomSlider;return l&&l.setActive(null),void this.updateHover(e,t)}if("graph-node"===n.mode){var h=n.component;return n.moved&&h&&"function"==typeof h.settle&&h.graph&&!1!==h.graph.options.settleOnDrop&&h.settle(),void this.updateHover(e,t)}"pan"===n.mode&&this.updateHover(e,t)}}},{key:"updateDrag",value:function updateDrag(e,t,r){var n=this.drag;if(n){var a=e-n.startX,s=t-n.startY;if(n.moved||!(Math.abs(a)+Math.abs(s)<3)){n.moved=!0;var l=this.host.layout.plot,h=_slicedToArray(this.host.ice.screenToWorld(n.startX,n.startY),2),u=h[0],c=h[1],p=_slicedToArray(this.host.ice.screenToWorld(e,t),2),v=p[0],m=p[1];if("brush"!==n.mode)if("slider"!==n.mode)if("graph-node"!==n.mode){var g=this.host.norm.option.interaction&&this.host.norm.option.interaction.pan,b=g&&g.axes||"xy";if(("x"===b||"xy"===b)&&n.domainX){var k=this.shiftDomain("x",n.domainX,a);k&&this.host.setDomain("x",k,"pan")}if(("y"===b||"xy"===b)&&n.domainY){var S=this.shiftDomain("y",n.domainY,s);S&&this.host.setDomain("y",S,"pan")}}else{n.moved=!0;var A=n.component,w=_slicedToArray(this.host.ice.screenToWorld(e,t),2),_=w[0],M=w[1],C=A.globalToLocal(_,M);A.moveNode(n.nodeIndex,C[0],C[1]);var T=this.seriesOfGraphComponent(A);if(T){var P=this.resolver.buildActiveItem(T,n.nodeIndex);P&&this.setHover({kind:"item",item:P})}}else{var I=this.host.dataZoomSlider;if(!I)return;n.moved=!0;var N=_slicedToArray(this.host.ice.screenToWorld(e,t),2),D=N[0],O=N[1],R=I.globalToLocal(D,O)[0],H=I.fractionAt(R),z=n.originEnd-n.originStart,E=n.originStart,L=n.originEnd;if("start"===n.part)E=clamp$2(H,0,n.originEnd-.02);else if("end"===n.part)L=clamp$2(H,n.originStart+.02,1);else{var V=H-n.anchorFraction;L=(E=clamp$2(n.originStart+V,0,1-z))+z}this.host.setDomainFromFractions(E,L,"slider",!0)}else{var B=clamp$2(u,l.x,l.x+l.width),j=clamp$2(c,l.y,l.y+l.height),W=clamp$2(v,l.x,l.x+l.width),X=clamp$2(m,l.y,l.y+l.height);this.host.brush&&this.host.brush.setRect({x:Math.min(B,W),y:Math.min(j,X),width:Math.abs(W-B),height:Math.abs(X-j)});var G=this.brushRange();G&&this.host.emit("brush:change",G)}}}}},{key:"shiftDomain",value:function shiftDomain(e,t,r){var n=this.host.norm["x"===e?"xAxis":"yAxis"],a=n.scale;if(!a)return null;var s="x"===e?this.host.layout.plot.width:this.host.layout.plot.height;if(a.isBand()){var l=this.host.fullDomain("x"),h=l&&l.length?l:n.domain,u=h.indexOf(t[0]),c=h.indexOf(t[1]);if(u<0||c<0||h.length<=1)return null;var p=a.step()||s/Math.max(1,h.length),v=c-u,m=clamp$2(u+Math.round(-r/p),0,Math.max(0,h.length-1-v));return[h[m],h[m+v]]}var g=Number(t[1])-Number(t[0]),b=("x"===e?-1:1)*r/Math.max(1,s)*g;return[Number(t[0])+b,Number(t[1])+b]}},{key:"handleClick",value:function handleClick(e,t,r){if(this.isOverCanvas(e,t)){var n=this.resolveTarget(e,t),a=this.host.norm.option.interaction;if("legend"!==n.kind){if("series"===n.kind&&n.index>=0){var s=this.resolver.seriesOfComponent(n.component),l=s?this.resolver.buildActiveItem(s,n.index):null;if(l){var h=this.resolver.toParams(l);this.host.emit("item:click",h);var u=a&&a.select;return void(u&&u.enabled&&this.toggleSelection(l.series.id,l.point.index,u.mode||"single",!1!==u.toggle))}}if(this.resolver.isInsidePlot(n.chart[0],n.chart[1])){var c=this.host.layout.plot;this.host.emit("plot:click",{screen:[e,t],xValue:this.host.norm.xAxis.scale?this.host.norm.xAxis.scale.invert(n.chart[0]-c.x):void 0,yValue:this.host.norm.yAxis.scale?this.host.norm.yAxis.scale.invert(n.chart[1]-c.y):void 0})}else this.host.emit("chart:click",{screen:[e,t]})}else{var p=this.host.legend;if(p&&n.index>=0){var v=p.items[n.index];void 0!==v.dataIndex?this.host.toggleSlice(v.seriesId,v.dataIndex):this.host.toggleSeries(v.seriesId)}}}}},{key:"handleDoubleClick",value:function handleDoubleClick(e,t,r){if(this.isOverCanvas(e,t)){var n=this.resolveTarget(e,t);if(!("series"!==n.kind||n.index<0)){var a=this.resolver.seriesOfComponent(n.component),s=a?this.resolver.buildActiveItem(a,n.index):null;s&&this.host.emit("item:dblclick",this.resolver.toParams(s))}}}},{key:"toggleSelection",value:function toggleSelection(e,t,r,n){var a=this.selection.findIndex(function(r){return r.seriesId===e&&r.dataIndex===t});"single"===r?this.selection=a>=0&&n?[]:[{seriesId:e,dataIndex:t}]:a>=0?this.selection.splice(a,1):this.selection.push({seriesId:e,dataIndex:t}),this.refreshSelectionVisuals(),this.host.emit("select:change",this.getSelectedParams())}},{key:"clearSelection",value:function clearSelection(){this.selection.length&&(this.selection=[],this.refreshSelectionVisuals(),this.host.emit("select:change",[]))}},{key:"refreshSelectionVisuals",value:function refreshSelectionVisuals(){var e=this,t=this.host.highlight;if(t){var r,n=[],a=_createForOfIteratorHelper(this.selection);try{var s=function _loop(){var t=r.value,a=e.host.norm.series.find(function(e){return e.id===t.seriesId});if(!a)return 1;var s=e.resolver.buildActiveItem(a,t.dataIndex);s&&n.push(e.markFor(s))};for(a.s();!(r=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}t.setSelection(n)}}},{key:"getSelectedParams",value:function getSelectedParams(){var e,t=this,r=[],n=_createForOfIteratorHelper(this.selection);try{var a=function _loop2(){var n=e.value,a=t.host.norm.series.find(function(e){return e.id===n.seriesId});if(!a)return 1;var s=t.resolver.buildActiveItem(a,n.dataIndex);s&&r.push(t.resolver.toParams(s))};for(n.s();!(e=n.n()).done;)a()}catch(e){n.e(e)}finally{n.f()}return r}},{key:"brushRect",get:function get(){return this.host.brush?this.host.brush.rect:null}},{key:"brushRange",value:function brushRange(){var e=this.brushRect,t=this.host.layout.plot;if(!e||e.width<2&&e.height<2)return null;var r=this.host.norm.option.interaction&&this.host.norm.option.interaction.brush,n=r&&r.axes||"x",a={};if("x"===n||"xy"===n){var s=this.valueAtPixel("x",e.x-t.x),l=this.valueAtPixel("x",e.x+e.width-t.x),h=this.orderValues("x",s,l);h&&(a.x=h)}if("y"===n||"xy"===n){var u=this.valueAtPixel("y",e.y-t.y),c=this.valueAtPixel("y",e.y+e.height-t.y),p=this.orderValues("y",u,c);p&&(a.y=p)}return a.x||a.y?a:null}},{key:"valueAtPixel",value:function valueAtPixel(e,t){var r=this.host.norm["x"===e?"xAxis":"yAxis"],n=r.scale;if(n){if(n.isBand()){var a=n.indexAt(t),s=a>=0?a:n.nearestIndex?n.nearestIndex(t):0;return r.domain[clamp$2(s,0,r.domain.length-1)]}return n.invert(t)}}},{key:"orderValues",value:function orderValues(e,t,r){if(void 0===t||void 0===r)return null;var n=this.host.norm["x"===e?"xAxis":"yAxis"].scale;if(n&&n.isBand()){var a=this.host.norm["x"===e?"xAxis":"yAxis"].domain;return a.indexOf(t)<=a.indexOf(r)?[t,r]:[r,t]}return Number(t)<=Number(r)?[t,r]:[r,t]}},{key:"applyRange",value:function applyRange(e){e.x&&this.host.setDomain("x",e.x,"brush"),e.y&&this.host.setDomain("y",e.y,"brush")}},{key:"handleWheel",value:function handleWheel(e,t,r,n){var a=this.host.norm.option.interaction&&this.host.norm.option.interaction.zoom;if(!a||!1===a||!1===a.enabled||!1===a.wheel)return!1;var s=this.resolveTarget(e,t);if(!this.resolver.isInsidePlot(s.chart[0],s.chart[1]))return!1;this.preventDefault(n);var l=Number(a.wheelFactor)||1.2,h=r<0?l:1/l;if("viewport"===a.mode)return this.host.ice.zoomAt(e,t,h),!0;var u=a.axes||"x",c=this.host.layout.plot;if("x"===u||"xy"===u){var p=this.zoomDomain("x",s.chart[0]-c.x,h);p&&this.host.setDomain("x",p,"zoom")}if("y"===u||"xy"===u){var v=this.zoomDomain("y",s.chart[1]-c.y,h);v&&this.host.setDomain("y",v,"zoom")}return!0}},{key:"zoomDomain",value:function zoomDomain(e,t,r){var n=this.host.norm["x"===e?"xAxis":"yAxis"],a=n.scale;if(!a)return null;var s=this.host.norm.option.interaction&&this.host.norm.option.interaction.zoom,l=Number(s&&s.minSpan)||.05,h=Number(s&&s.maxSpan)||1,u=this.host.fullDomain(e),c=this.host.layout.plot,p="x"===e?c.width:c.height;if(a.isBand()){var v=u,m=v.length;if(m<=2)return null;var g=n.domain,b=Math.max(0,v.indexOf(g[0])),k=v.indexOf(g[g.length-1]),S=Math.max(2,k-b+1),A=clamp$2(t/Math.max(1,p),0,1),w=Math.min(m,clampBarCount(Math.round(S/r),c.width,s)),_=b+A*(S-1),M=Math.round(_-A*(w-1));return[v[M=clamp$2(M,0,Math.max(0,m-w))],v[M+w-1]]}var C=Number(n.domain[0]),T=Number(n.domain[1])-C,P=Number(u[1])-Number(u[0]),I=clamp$2(T/r,P*l,P*h),N=a.invert(t),D=N-(0===T?.5:(N-C)/T)*I;return[D,D+I]}},{key:"currentRange",value:function currentRange(){return{x:[this.host.norm.xAxis.domain[0],this.host.norm.xAxis.domain[1]],y:[Number(this.host.norm.yAxis.domain[0]),Number(this.host.norm.yAxis.domain[1])]}}},{key:"handleKeyDown",value:function handleKeyDown(e,t){var r=this.host.norm.option.interaction;if(r&&!1===r.keyboard)return!1;if(!e)return!1;if(_e&&_e!==this&&_e.host)return!1;if(t&&t.target&&/^(INPUT|TEXTAREA|SELECT)$/.test(t.target.tagName||""))return!1;var n=this.host.norm.series.filter(function(e){return!e.hidden});if(!n.length)return!1;var a=0;if(this.hover){var s="item"===this.hover.kind?this.hover.item.series.id:this.hover.column.items[0].series.id,l=n.findIndex(function(e){return e.id===s});l>=0&&(a=l)}var h=!1;switch(e){case"ArrowRight":case"ArrowLeft":var u=n[a];if(!u.pointCount)break;var c=this.stepVisibleIndex(u,"ArrowRight"===e?1:-1);if(c>=0){this.keyboardIndex=c;var p=this.resolver.buildActiveItem(u,c);p&&this.setHover({kind:"item",item:p})}h=c>=0;break;case"ArrowUp":case"ArrowDown":var v=n[clamp$2(a+("ArrowDown"===e?1:-1),0,n.length-1)];if(!v.pointCount)break;var m=clamp$2(this.keyboardIndex,0,v.pointCount-1),g=this.resolver.buildActiveItem(v,m);g&&this.setHover({kind:"item",item:g}),h=!0;break;case"Escape":this.setHover(null),this.clearSelection(),this.host.brush&&this.host.brush.setRect(null),h=!0;break;case"Enter":case" ":if(this.hover&&"item"===this.hover.kind){var b=this.hover.item,k=r&&r.select;this.toggleSelection(b.series.id,b.point.index,k&&k.mode||"single",!0),this.host.emit("item:click",this.resolver.toParams(b)),h=!0}}return h&&this.preventDefault(t),h}},{key:"showHoverAtValue",value:function showHoverAtValue(e){var t=this.resolver.nearestByXValue(e);t&&this.setHover({kind:"item",item:t},!0)}},{key:"clearHover",value:function clearHover(){this.setHover(null)}},{key:"seriesOfGraphComponent",value:function seriesOfGraphComponent(e){var t,r=_createForOfIteratorHelper(this.host.norm.series);try{for(r.s();!(t=r.n()).done;){var n=t.value;if(this.resolver.seriesComponentOf(n)===e)return n}}catch(e){r.e(e)}finally{r.f()}return null}},{key:"stepVisibleIndex",value:function stepVisibleIndex(e,t){var r=e.pointCount;if(!r)return-1;for(var n=clamp$2(this.keyboardIndex,0,r-1),a=0;a<r;a++){var s=n+t;if(s<0||s>=r)return-1;n=s;var l=this.resolver.buildActiveItem(e,n);if(l&&this.resolver.isInsidePlot(l.pixel[0],l.pixel[1]))return n}return-1}},{key:"destroy",value:function destroy(){this.unbind(),_e===this&&(_e=null),this.host=null}}])}();var Ce=function(){return _createClass(function Emitter(){_classCallCheck(this,Emitter),_defineProperty(this,"listeners",new Map)},[{key:"on",value:function on(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,n=this.listeners.get(e)||[];return this.off(e,t,r),n.push({fn:t,scope:r}),this.listeners.set(e,n),this}},{key:"once",value:function once(e,t){var r=this,n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null,a=function wrapper(s){r.off(e,a,n),t.call(n,s)};return a.__onceOriginal=t,this.on(e,a,n)}},{key:"off",value:function off(e,t,r){var n=this.listeners.get(e);if(!n)return this;if(!t)return this.listeners.delete(e),this;for(var a=n.length-1;a>=0;a--){var s=n[a],l=s.fn;!(l===t||l&&l.__onceOriginal===t)||void 0!==r&&s.scope!==r||n.splice(a,1)}return n.length||this.listeners.delete(e),this}},{key:"emit",value:function emit(e,t){var r=this.listeners.get(e);if(!r||!r.length)return!1;for(var n=r.slice(),a=0;a<n.length;a++)n[a].fn.call(n[a].scope,t);return!0}},{key:"hasListener",value:function hasListener(e){var t=this.listeners.get(e);return!!t&&t.length>0}},{key:"clear",value:function clear(){this.listeners.clear()}}])}();function chartTitle(e){var t=e.option.title&&e.option.title.text;return t?String(t):e.labels.chart}function buildDataTable(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=e.norm,n=chartTitle(r),a=r.series.filter(function(e){return!e.hidden&&"pie"!==e.type});if("polar"===r.kind){var s=r.series.find(function(e){return"pie"===e.type});if(!s)return{caption:n,columns:[r.labels.sector,r.labels.value,r.labels.ratio],rows:[]};for(var l=[],h=0;h<s.pointCount;h++){var u=s.pointAt(h);r.hiddenSlices["".concat(s.id,"#").concat(u.index)]||l.push(u)}var c=l.reduce(function(e,t){return e+(t.y||0)},0);return{caption:n,columns:[r.labels.sector,r.labels.value,r.labels.ratio],rows:l.map(function(e){return[e.name||"".concat(s.name," ").concat(e.index+1),null===e.y?"":String(e.y),c>0?"".concat(((e.y||0)/c*100).toFixed(1),"%"):"0%"]})}}if("radar"===r.kind){var p=r.radar&&r.radar.indicators||[];return{caption:n,columns:["指标"].concat(_toConsumableArray(a.map(function(e){return e.name}))),rows:p.map(function(e,t){return[e.name].concat(_toConsumableArray(a.map(function(e){var r=e.pointAt(t);return r&&null!==r.y?String(r.y):""})))})}}var v,m=[r.xAxis.option&&r.xAxis.option.name||"类目"].concat(_toConsumableArray(a.map(function(e){return e.name}))),g=Math.max(2,void 0===t.maxTableRows?200:Number(t.maxTableRows)||200),b=a.reduce(function(e,t){return e+t.pointCount},0),k=b>g?Math.ceil(b/g):1,S=[],A={},w=_createForOfIteratorHelper(a);try{for(w.s();!(v=w.n()).done;)for(var _=v.value,M=0,C=_.pointCount;M<C;M+=k){var T=_.pointAt(M),P=String(T.xValue);A[P]||(A[P]={x:T.xValue,cells:{}},S.push(P)),A[P].cells[_.id]=null===T.y?"":e.formatAxisValue("y",T.y)}}catch(e){w.e(e)}finally{w.f()}var I=S.map(function(t){var r=A[t];return[e.formatAxisValue("x",r.x)].concat(_toConsumableArray(a.map(function(e){return r.cells[e.id]||""})))});return{caption:k>1?"".concat(n,"(共 ").concat(b," 点,已按每 ").concat(k," 点抽样 ").concat(I.length," 行)"):n,columns:m,rows:I}}function buildDataNodes(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=Math.max(0,void 0===r.maxDataNodesPerSeries?200:r.maxDataNodesPerSeries),a=[],s=_createForOfIteratorHelper(e.norm.series);try{for(s.s();!(t=s.n()).done;){var l=t.value;if(!l.hidden){var h=e.controller&&e.controller.resolver?e.controller.resolver.seriesComponentOf(l):null;if(h)for(var u=Math.min(l.pointCount,n),c=0;c<u;c++){var p=l.pointAt(c),v=h.pixelAt(c);if(v){var m=[e.layout.plot.x+v[0],e.layout.plot.y+v[1]],g=e.ice&&"function"==typeof e.ice.worldToScreen?e.ice.worldToScreen(m[0],m[1]):m,b=seriesSymbolSize(l);a.push({id:"".concat(l.id,"#").concat(c),role:"graphic",label:"".concat(l.name,",").concat(e.formatAxisValue("x",p.xValue),",").concat(null===p.y?"无数据":e.formatAxisValue("y",p.y)),seriesId:l.id,seriesName:l.name,dataIndex:c,value:p.y,box:{x:g[0]-b/2,y:g[1]-b/2,width:b,height:b},focusable:!0})}}}}}catch(e){s.e(e)}finally{s.f()}return a}function seriesSymbolSize(e){var t=e.option.symbolSize;return"number"==typeof t&&isFinite(t)?Math.max(8,t):"bar"===e.type?12:10}var Te=["position:absolute","width:1px","height:1px","margin:-1px","padding:0","overflow:hidden","clip:rect(0 0 0 0)","clip-path:inset(50%)","white-space:nowrap","border:0"].join(";"),Pe=function(){function A11yMirror(e){_classCallCheck(this,A11yMirror),_defineProperty(this,"wrapper",null),_defineProperty(this,"live",null),_defineProperty(this,"tableEl",null),_defineProperty(this,"hoverHandler",null),_defineProperty(this,"options",{}),this.chart=e}return _createClass(A11yMirror,[{key:"listOptions",get:function get(){return this.options}},{key:"attached",get:function get(){return!!this.wrapper}},{key:"element",get:function get(){return this.wrapper}},{key:"attach",value:function attach(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=t||{};var r=this.chart.ice,n=this.chart.canvasElement,a=r&&r.root&&r.root.document;if(!a||!n||"function"!=typeof a.createElement||!n.parentNode)return!1;this.detach();var s=a.createElement("div");s.id="ice-chart-a11y-mirror-".concat(++A11yMirror.seq),s.setAttribute("style",Te),s.setAttribute("data-ice-chart-a11y","mirror"),this.tableEl=a.createElement("table");var l=a.createElement("div");return l.setAttribute("role","status"),l.setAttribute("aria-live","polite"),s.appendChild(this.tableEl),s.appendChild(l),n.parentNode.appendChild(s),n.setAttribute("aria-describedby",s.id),n.getAttribute("aria-label")||n.setAttribute("aria-label",chartTitle(this.chart.norm)),this.wrapper=s,this.live=l,this.refresh(),this.hoverHandler=function(t){t&&e.announce("".concat(t.seriesName,",").concat(e.chart.formatAxisValue("x",t.xValue),",").concat(null===t.value?"无数据":e.chart.formatAxisValue("y",t.value)))},this.chart.on("item:hover",this.hoverHandler),!0}},{key:"detach",value:function detach(){this.hoverHandler&&(this.chart.off("item:hover",this.hoverHandler),this.hoverHandler=null);var e=this.chart.canvasElement;this.wrapper&&this.wrapper.parentNode&&this.wrapper.parentNode.removeChild(this.wrapper),e&&"function"==typeof e.removeAttribute&&e.removeAttribute("aria-describedby"),this.wrapper=null,this.live=null,this.tableEl=null}},{key:"refresh",value:function refresh(){var e=this.chart.ice&&this.chart.ice.root&&this.chart.ice.root.document;if(this.wrapper&&this.tableEl&&e){for(var t=buildDataTable(this.chart,this.options);this.tableEl.firstChild;)this.tableEl.removeChild(this.tableEl.firstChild);var r=e.createElement("caption");r.textContent=t.caption,this.tableEl.appendChild(r);var n,a=e.createElement("thead"),s=e.createElement("tr"),l=_createForOfIteratorHelper(t.columns);try{for(l.s();!(n=l.n()).done;){var h=n.value,u=e.createElement("th");u.setAttribute("scope","col"),u.textContent=h,s.appendChild(u)}}catch(e){l.e(e)}finally{l.f()}a.appendChild(s),this.tableEl.appendChild(a);var c,p=e.createElement("tbody"),v=_createForOfIteratorHelper(t.rows);try{for(v.s();!(c=v.n()).done;){for(var m=c.value,g=e.createElement("tr"),b=0;b<m.length;b++){var k=e.createElement(0===b?"th":"td");0===b&&k.setAttribute("scope","row"),k.textContent=m[b],g.appendChild(k)}p.appendChild(g)}}catch(e){v.e(e)}finally{v.f()}this.tableEl.appendChild(p)}}},{key:"announce",value:function announce(e){this.live&&(this.live.textContent=e)}}])}();_defineProperty(Pe,"seq",0);function layoutTreemap(e,r){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=arguments.length>3&&void 0!==arguments[3]?arguments[3]:t,s=[],l=Math.max(0,Number(n.gap)||2),h=void 0===n.depthFade?.18:Math.max(0,Math.min(1,Number(n.depthFade)));if(!Array.isArray(e)||!e.length)return s;var u=sumValues(e);if(!(u>0))return s;var c=0,p=function visit(e,t,r,n,a){if(!(t.width<=1||t.height<=1)){var v=e.map(function(e){return{node:e,value:nodeValue(e)}}).filter(function(e){return e.value>0});if(v.length){v.sort(function(e,t){return t.value-e.value});for(var m=v.reduce(function(e,t){return e+t.value},0),g=function squarify(e,t,r){var n=[],a=_objectSpread2({},t),s=e.slice(),l=t.width*t.height/r;if(!(l>0))return n;for(;s.length;){var h=Math.min(a.width,a.height);if(!(h>0))break;for(var u=[],c=0;s.length;){var p=s[0],v=c+p.value*l,m=u.length?worstRatio(u,c,h):1/0,g=worstRatio([].concat(u,[p]),v,h);if(u.length&&g>m)break;u.push(s.shift()),c=v}for(var b=a.width>=a.height,k=c/h,S=0,A=0,w=u;A<w.length;A++){var _=w[A],M=_.value*l/k,C=b?{x:a.x,y:a.y+S,width:k,height:M}:{x:a.x+S,y:a.y,width:M,height:k};n.push({item:_,box:C}),S+=M}a=b?{x:a.x+k,y:a.y,width:Math.max(0,a.width-k),height:a.height}:{x:a.x,y:a.y+k,width:a.width,height:Math.max(0,a.height-k)}}return n}(v,t,m),b=0;b<g.length;b++){var k=g[b],S=k.item,A=k.box,w=S.node.color||shade(a,r*h),_=Array.isArray(S.node.children)?S.node.children:[],M=_.length>0,C=c++,T=M&&A.height>32?16:0;if(s.push({id:C,name:S.node.name,depth:r,parent:n,value:S.value,ratio:S.value/u,rect:A,header:T,color:w,hasChildren:M}),M){var P={x:A.x+l,y:A.y+l+T,width:Math.max(0,A.width-2*l),height:Math.max(0,A.height-2*l-T)};p(_,P,r+1,C,w)}}}}};return p(e,r,0,-1,a[0]),s.filter(function(e){return 0===e.depth}).forEach(function(e,t){var r=a[t%a.length];e.color=r,recolor(s,e.id,r,a,h)}),s}function recolor(e,t,r,n,a){var s,l=_createForOfIteratorHelper(e);try{for(l.s();!(s=l.n()).done;){var h=s.value;h.parent===t&&(h.color=shade(r,h.depth*a),recolor(e,h.id,h.color,n,a))}}catch(e){l.e(e)}finally{l.f()}}function sumValues(e){var t,r=0,n=_createForOfIteratorHelper(e);try{for(n.s();!(t=n.n()).done;){r+=nodeValue(t.value)}}catch(e){n.e(e)}finally{n.f()}return r}function nodeValue(e){if(Array.isArray(e.children)&&e.children.length)return sumValues(e.children);var t=Number(e.value);return isFinite(t)&&t>0?t:0}function worstRatio(e,t,r){if(!(t>0&&r>0))return 1/0;var n,a=0,s=1/0,l=_createForOfIteratorHelper(e);try{for(l.s();!(n=l.n()).done;){var h=n.value;h.value>a&&(a=h.value),h.value<s&&(s=h.value)}}catch(e){l.e(e)}finally{l.f()}if(!(s>0))return 1/0;var u=t,c=r;return Math.max(c*c*a/(u*u),u*u/(c*c*s))}function shade(e,t){var r=function parseHex(e){if("string"!=typeof e)return null;var t=e.trim();if(0===t.indexOf("#"))return 3===(t=t.slice(1)).length&&(t=t[0]+t[0]+t[1]+t[1]+t[2]+t[2]),6!==t.length?null:[parseInt(t.slice(0,2),16),parseInt(t.slice(2,4),16),parseInt(t.slice(4,6),16)];var r=t.match(/rgba?\(([^)]+)\)/);if(r){var n=r[1].split(",").map(function(e){return parseFloat(e)});return[n[0]||0,n[1]||0,n[2]||0]}return null}(e);if(!r)return e;var n=Math.max(0,Math.min(1,t)),a=Math.round(r[0]+(255-r[0])*n),s=Math.round(r[1]+(255-r[1])*n),l=Math.round(r[2]+(255-r[2])*n);return"rgb(".concat(a,",").concat(s,",").concat(l,")")}var Fe=10,Ie=20,Ne=100,De=300,Oe=310,Re=400,He=450,ze=500,Ee=600,Le=620,Ve=640,Be=700;function isChartSnapshot(e){return!!e&&"object"===_typeof(e)&&!Array.isArray(e)&&!!e.option&&("version"in e||"view"in e||"hidden"in e)}function finiteOrNull(e){if(null==e||""===e)return null;var t=Number(e);return isFinite(t)?t:null}function mergeOptionPatch(e,t){var r=_objectSpread2(_objectSpread2({},e),t);return Array.isArray(t&&t.series)&&Array.isArray(e&&e.series)&&(r.series=e.series.map(function(e,r){var n=t.series.find(function(t){return t&&t.id&&e&&e.id&&t.id===e.id}),a=t.series[r],s=n||(a&&!a.id?a:void 0);return s?_objectSpread2(_objectSpread2({},e),s):e})),r}var je=function(){function ICEChart(t,r){var n=this,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(_classCallCheck(this,ICEChart),_defineProperty(this,"axisYList",[]),_defineProperty(this,"legend",null),_defineProperty(this,"titleComponent",null),_defineProperty(this,"tooltip",null),_defineProperty(this,"crosshair",null),_defineProperty(this,"highlight",null),_defineProperty(this,"brushComponent",null),_defineProperty(this,"dataZoomSlider",null),_defineProperty(this,"seriesComponents",[]),_defineProperty(this,"markLayer",null),_defineProperty(this,"marks",[]),_defineProperty(this,"markSeq",0),_defineProperty(this,"syncingMarks",!1),_defineProperty(this,"fullXDomain",[]),_defineProperty(this,"fullYDomain",[]),_defineProperty(this,"fullYDomains",[]),_defineProperty(this,"emitter",new Ce),_defineProperty(this,"viewState",{x:null,y:null,yAxes:[]}),_defineProperty(this,"autoYCurve",!1),_defineProperty(this,"hiddenIds",{}),_defineProperty(this,"hiddenSlices",{}),_defineProperty(this,"seriesSignature",""),_defineProperty(this,"axisSignature",""),_defineProperty(this,"resizeObserver",null),_defineProperty(this,"destroyed",!1),_defineProperty(this,"silenceDepth",0),_defineProperty(this,"__appliedEngineThemeKey",null),_defineProperty(this,"__offThemeFollow",null),_defineProperty(this,"a11yMirror",new Pe(this)),_defineProperty(this,"virtualColumns",new Map),_defineProperty(this,"__virtualSourceVersion",1),_defineProperty(this,"domainTransition",null),_defineProperty(this,"domainFrameHandler",null),!t)throw new Error("[ice-chart] 初始化失败:缺少 canvas 元素或其 id。");this.chartOptions=a,this.option=r,this.ice=new e.ICE,this.ice.init(t,{renderMode:a.renderMode||"dirty-rect",dpr:a.dpr}),this.canvasEl=this.ice.canvasEl||t,this.registerTypes();var s=this.canvasRect();this.root=new e.ICEGroup({left:0,top:0,width:s.width,height:s.height,origin:"top-left",fill:!1,stroke:!1,interactive:!1,draggable:!1,transformable:!1,linkable:!1,clipChildren:!0,zIndex:0}),this.ice.addChild(this.root),this.plotArea=new j({left:0,top:0,width:1,height:1,zIndex:Fe}),this.grid=new L({width:s.width,height:s.height,zIndex:Ie}),this.annotation=new B({width:s.width,height:s.height,zIndex:Oe}),this.radarGrid=new q({width:s.width,height:s.height,zIndex:Ie+5}),this.polarGrid=new $({width:s.width,height:s.height,zIndex:Ie+6}),this.axisX=new E({orientation:"x",width:s.width,height:s.height,zIndex:Re}),this.axisYList=[new E({orientation:"y",width:s.width,height:s.height,zIndex:Re,axisIndex:0,position:"left"})],this.legend=new W({width:s.width,height:s.height,zIndex:ze}),this.titleComponent=new X({width:s.width,height:s.height,zIndex:He}),this.crosshair=new U({width:s.width,height:s.height,zIndex:Ee}),this.highlight=new K({width:s.width,height:s.height,zIndex:Le}),this.brushComponent=new Y({width:s.width,height:s.height,zIndex:Ve}),this.dataZoomSlider=new Z({left:0,top:0,width:s.width,height:26,zIndex:Ve+5}),this.tooltip=new G({width:s.width,height:s.height,zIndex:Be}),this.root.addChildren([this.plotArea,this.grid,this.annotation,this.radarGrid,this.polarGrid,this.axisX].concat(_toConsumableArray(this.axisYList),[this.titleComponent,this.legend,this.crosshair,this.highlight,this.brushComponent,this.dataZoomSlider,this.tooltip])),this.controller=new Me(this),this.applyOption(r,{animate:"enter",preserveView:!1}),this.controller.bind(),this.__offThemeFollow=this.ice.onThemeChange(function(e){"theme"!==e.kind||n.destroyed||n.option&&"auto"===n.option.theme&&n.rebuild(!1)}),a.autoResize&&this.observeResize()}return _createClass(ICEChart,[{key:"brush",get:function get(){return this.brushComponent}},{key:"setOption",value:function setOption(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.applyOption(e,{animate:void 0===t.animate||t.animate,preserveView:!1!==t.preserveView}),this}},{key:"getOption",value:function getOption(){return this.option}},{key:"expressionDiagnostics",value:function expressionDiagnostics(){var e,t=[],r=_createForOfIteratorHelper(this.norm.series);try{for(r.s();!(e=r.n()).done;){var n=e.value;n.expressionDiagnostics&&n.expressionDiagnostics.length&&t.push({seriesId:n.id,diagnostics:n.expressionDiagnostics})}}catch(e){r.e(e)}finally{r.f()}return t}},{key:"expressionErrors",value:function expressionErrors(){var e,t=[],r=_createForOfIteratorHelper(this.norm.series);try{for(r.s();!(e=r.n()).done;){var n=e.value;if(n.expressionDiagnostics){var a,s=_createForOfIteratorHelper(n.expressionDiagnostics);try{for(s.s();!(a=s.n()).done;){var l=a.value;"error"===l.severity&&t.push({seriesId:n.id,message:l.message})}}catch(e){s.e(e)}finally{s.f()}}}}catch(e){r.e(e)}finally{r.f()}return t}},{key:"annotationDiagnostics",value:function annotationDiagnostics(){return this.annotation?this.annotation.diagnostics.slice():[]}},{key:"annotationErrors",value:function annotationErrors(){return this.annotationDiagnostics().filter(function(e){return"error"===e.severity})}},{key:"setData",value:function setData(e,t){var r=(this.option.series||[]).map(function(e,t){return{item:e,index:t}}).find(function(t){return"number"==typeof e?t.index===e:t.item.id===e||t.item.name===e});if(!r)throw new Error("[ice-chart] 找不到系列:".concat(e));return r.item.data=t,this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("data:change",{seriesId:r.item.id,seriesIndex:r.index}),this}},{key:"appendData",value:function appendData(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null==e)throw new Error("[ice-chart] appendData 需要系列 id / name / 下标。");var n=(this.option.series||[]).map(function(e,t){return{item:e,index:t}}).find(function(t){return"number"==typeof e?t.index===e:t.item.id===e||t.item.name===e});if(!n)throw new Error("[ice-chart] 找不到系列:".concat(e));var a=Array.isArray(t)?t:[];if(!a.length)return this;if(n.item.virtual)return this.appendToVirtualSeries(n.item,n.index,a,r);var s=n.item.data;if(void 0!==s&&!Array.isArray(s))throw new Error("[ice-chart] 列式输入({ x, y })不支持 appendData(系列 ".concat(n.item.name||n.item.id||n.index,"):请用 setData 重新给一份数据。"));var l=(s||[]).concat(a),h=Number(r.maxPoints);return n.item.data=isFinite(h)&&h>0&&l.length>h?l.slice(l.length-h):l,this.applyOption(this.option,{animate:!0===r.animate,preserveView:!0}),this.emit("data:change",{seriesId:n.item.id,seriesIndex:n.index}),this}},{key:"appendToVirtualSeries",value:function appendToVirtualSeries(e,t,r,n){var a=this.norm.series.find(function(r){return r.id===(e.id||"series-".concat(t))||r.index===t});if(!a)throw new Error("[ice-chart] appendData:找不到已归一化的系列「".concat(e.id||t,"」。"));if(a.grid)throw new Error("[ice-chart] 虚拟(列存)热力图是稠密矩阵,不支持 appendData(系列 ".concat(e.name||e.id||t,"):请用 setData 重新给一份数据。"));var s,l=Number(n.maxPoints),h=isFinite(l)&&l>0?Math.floor(l):0,u=this.virtualColumns.get(a.id);if(u&&"raw"in u){var c=appendRawItems(u.raw,r,h);if(this.virtualColumns.set(a.id,{raw:c}),c.capacity>0&&void 0!==a.option.data){var p=_objectSpread2(_objectSpread2({},a.option),{},{data:void 0}),v=this.option.series;if(Array.isArray(v)){var m=v.findIndex(function(e,t){return(e&&e.id)===a.id||t===a.index});m>=0&&(v[m]=p)}a.option=p}return this.applyOption(this.option,{animate:!0===n.animate,preserveView:!0}),this.emit("data:change",{seriesId:a.id,seriesIndex:a.index}),this}if(u&&"ring"in u)s=u.ring;else{var g=a.pointCount,b=Math.max(1,h||g);s=createRing(b);for(var k=g-Math.min(g,b);k<g;k++)ringAppend(s,[{x:Number(a.xValueAt(k)),y:a.yValueAt(k)}],0)}if(h&&h!==s.capacity){for(var S=createRing(h),A=Math.min(s.length,h),w=s.length-A;w<s.length;w++){var _=ringYAt(s,w);ringAppend(S,[{x:ringXAt(s,w),y:Number.isNaN(_)?null:_}],0)}s=S}return ringAppend(s,r.map(function(t){if(Array.isArray(t))return{x:finiteOrNull(t[0]),y:finiteOrNull(t[1])};if(t&&"object"===_typeof(t)){var r=e.xField||"x",n=e.yField||"y";return{x:finiteOrNull(void 0!==t[r]?t[r]:t.x),y:finiteOrNull(void 0!==t[n]?t[n]:t.value)}}return{x:void 0,y:finiteOrNull(t)}}),s.length?function ringLastX(e){if(!e.length)return 0;var t=ringXAt(e,e.length-1);return isFinite(t)?t:0}(s)+1:0),function refreshRingDomains(e){for(var t=1/0,r=-1/0,n=1/0,a=-1/0,s=!0,l=-1/0,h=0;h<e.length;h++){var u=ringXAt(e,h);if(isFinite(u)){u<t&&(t=u),u>r&&(r=u),u<l&&(s=!1),l=u;var c=ringYAt(e,h);Number.isNaN(c)||(c<n&&(n=c),c>a&&(a=c))}}e.xDomain=isFinite(t)?[t,r]:[0,1],e.yDomain=isFinite(n)?[n,a]:null,e.xMonotonic=s}(s),this.virtualColumns.set(a.id,{ring:s}),this.applyOption(this.option,{animate:!0===n.animate,preserveView:!0}),this.emit("data:change",{seriesId:a.id,seriesIndex:a.index}),this}},{key:"createVirtualSource",value:function createVirtualSource(t){var r=this,n="number"==typeof t?this.norm.series[t]:this.norm.series.find(function(e){return e.id===t||e.name===t});if(!n)throw new Error("[ice-chart] createVirtualSource:找不到系列「".concat(t,"」。"));if(!n.virtual)throw new Error("[ice-chart] createVirtualSource 只支持虚拟(列存)系列:普通系列本来就是真组件。");var a=this.seriesComponents.find(function(e){return e&&e.series&&e.series.id===n.id});if(!a)throw new Error("[ice-chart] createVirtualSource:系列「".concat(n.id,"」还没有渲染组件。"));var s=new Float64Array(4),l=function readHalo(){return r.norm&&r.norm.theme?r.norm.theme.labelHaloColor:n.color},h=function symbolSize(){var e=n.option,t=Number(e.symbolSize);return isFinite(t)&&t>0?t:8};return{count:n.pointCount,get version(){return function readVersion(){return r.__virtualSourceVersion}()},boxAt:function boxAt(e,t){var r=a.pixelAt(e);if(!r)return t[0]=NaN,t[1]=NaN,t[2]=NaN,void(t[3]=NaN);var n=h()/2;t[0]=r[0]-n,t[1]=r[1]-n,t[2]=r[0]+n,t[3]=r[1]+n},forEachInBox:function forEachInBox(e,t,r,n,s){for(var l=a.virtualIndexRange(e,r),h=l.from,u=l.to,c=Math.max(0,h);c<=u;c++){var p=a.pixelAt(c);p&&(p[1]<t||p[1]>n||s(c))}},hitTest:function hitTest(e,t){return a.hitTestIndex(e,t)},paint:function paint(e){return a.paintInto(e)},materialize:function materialize(t){var r=a.pixelAt(t);if(!r)return null;var u=h();s[0]=r[0],s[1]=r[1];var c=new e.ICEStar({left:r[0]-u/2,top:r[1]-u/2,outerRadius:u/2,innerRadius:u/5,spikes:5,style:{fillStyle:n.color,strokeStyle:l(),lineWidth:1}});return c.__iceChartDataIndex=t,c.__iceChartSeriesId=n.id,c}}}},{key:"setDomain",value:function setDomain(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"api";if(this.destroyed)return this;var n="x"!==e||"zoom"!==r&&"brush"!==r?t:this.guardInteractiveXWindow(t),a=this.clampDomain(e,n,r);if(!a)return this;"x"===e?this.viewState.x=a:this.viewState.y=a,this.rebuild(!1);var s=this.currentRange();return this.emit("pan"===r?"pan:change":"zoom:change",s),this}},{key:"numericXProbe",value:function numericXProbe(){var e,t=[],r=[],n=_createForOfIteratorHelper(this.norm.series);try{for(n.s();!(e=n.n()).done;){var a=e.value;if(!a.hidden){var s=storeDomainOf(a);if(s&&s.xMonotonic)r.push(a);else for(var l=0,h=a.pointCount;l<h;l++){var u=Number(a.xValueAt(l));isFinite(u)&&t.push(u)}}}}catch(e){n.e(e)}finally{n.f()}t.sort(function(e,t){return e-t});for(var c=[],p=0;p<t.length;p++)p>0&&t[p]===t[p-1]||c.push(t[p]);var v=function lowerBound(e,t,r){for(var n=0,a=t;n<a;){var s=n+a>>1;Number(e[s])<r?n=s+1:a=s}return n},m=function upperBound(e,t,r){for(var n=0,a=t;n<a;){var s=n+a>>1;Number(e[s])<=r?n=s+1:a=s}return n},g=function seriesLowerBound(e,t){for(var r=0,n=e.pointCount;r<n;){var a=r+n>>1;Number(e.xValueAt(a))<t?r=a+1:n=a}return r},b=function seriesUpperBound(e,t){for(var r=0,n=e.pointCount;r<n;){var a=r+n>>1;Number(e.xValueAt(a))<=t?r=a+1:n=a}return r};return{total:c.length+r.reduce(function(e,t){return e+t.pointCount},0),countIn:function countIn(e,t){for(var n=m(c,c.length,t)-v(c,c.length,e),a=0,s=r;a<s.length;a++){var l=s[a];n+=b(l,t)-g(l,e)}return n},leftOf:function leftOf(e){var t,n=v(c,c.length,e)-1;n>=0&&(t=c[n]);for(var a=0,s=r;a<s.length;a++){var l=s[a],h=g(l,e)-1;if(!(h<0)){var u=Number(l.xValueAt(h));(void 0===t||u>t)&&(t=u)}}return t},rightOf:function rightOf(e){var t,n=m(c,c.length,e);n<c.length&&(t=c[n]);for(var a=0,s=r;a<s.length;a++){var l=s[a],h=b(l,e);if(!(h>=l.pointCount)){var u=Number(l.xValueAt(h));(void 0===t||u<t)&&(t=u)}}return t}}}},{key:"guardInteractiveXWindow",value:function guardInteractiveXWindow(e){if("category"===this.norm.xAxis.type){var t=this.fullXDomain;if(t.length<2)return e;var r=t.indexOf(e[0]),n=t.indexOf(e[1]);return r<0&&n<0?e:(r<0&&(r=0),n<0&&(n=t.length-1),n-r>=1?e:(r>0?r-=1:n<t.length-1&&(n+=1),[t[r],t[n]]))}var a=this.numericXProbe();if(a.total<2)return e;var s=a.total>=3?2:1,l=Number(e[0]),h=Number(e[1]);if(!isFinite(l)||!isFinite(h)||h<=l)return e;for(var u=a.countIn(l,h),c=0;u<s&&c<4;){c+=1;var p=a.leftOf(l),v=a.rightOf(h);if(void 0===p&&void 0===v)break;(void 0===p?1/0:l-p)<=(void 0===v?1/0:v-h)?l=p:h=v,u=a.countIn(l,h)}return u>=s?[l,h]:e}},{key:"addMark",value:function addMark(t){var r=this,n=t.id||"mark-".concat(++this.markSeq);if(this.marks.some(function(e){return e.id===n}))throw new Error("[ice-chart] addMark:id「".concat(n,"」已经存在"));if(!t||!t.component)throw new Error("[ice-chart] addMark:必须提供 component(一个引擎图元实例)");var a=t.type||"point";if("point"!==a&&"xLine"!==a&&"yLine"!==a&&"xBand"!==a&&"yBand"!==a)throw new Error("[ice-chart] addMark:不支持的 type「".concat(String(a),"」"));var s={id:n,spec:_objectSpread2(_objectSpread2({},t),{},{id:n}),component:t.component,dragging:!1};return this.marks.push(s),this.ensureMarkLayer().addChild(t.component),"function"==typeof t.component.on&&t.component.on(e.ICE_EVENT_NAME_CONSTS.AFTER_MOVE,function(e){if(!r.syncingMarks){var t=e&&isFinite(e.left)&&isFinite(e.top)?{left:Number(e.left),top:Number(e.top)}:void 0,n=r.markDataAt(s,t);"point"===a?(s.spec.x=n.xValue,s.spec.y=n.yValue):"xLine"===a||"xBand"===a?"xLine"===a?s.spec.x=n.xValue:s.spec.x0=n.xValue:"yLine"===a?s.spec.y=n.yValue:s.spec.y0=n.yValue,s.dragging=!0,r.syncMarks(),r.emit("mark:drag",n),"function"==typeof s.spec.onDrag&&s.spec.onDrag(n)}}),this.syncMarks(),this.markHandle(s)}},{key:"getMark",value:function getMark(e){var t=this.marks.find(function(t){return t.id===e});return t?this.markHandle(t):null}},{key:"getMarks",value:function getMarks(){var e=this;return this.marks.map(function(t){return e.markHandle(t)})}},{key:"removeMark",value:function removeMark(e){var t=this.marks.findIndex(function(t){return t.id===e});if(t<0)return!1;var r=_slicedToArray(this.marks.splice(t,1),1)[0];return this.markLayer&&r.component&&this.markLayer.removeChild(r.component),!0}},{key:"clearMarks",value:function clearMarks(){var e,t=_createForOfIteratorHelper(this.marks);try{for(t.s();!(e=t.n()).done;){var r=e.value;this.markLayer&&r.component&&this.markLayer.removeChild(r.component)}}catch(e){t.e(e)}finally{t.f()}this.marks=[]}},{key:"isMarkComponent",value:function isMarkComponent(e){return!!e&&this.marks.some(function(t){return t.component===e})}},{key:"finishMarkDrag",value:function finishMarkDrag(){var e,t=_createForOfIteratorHelper(this.marks);try{for(t.s();!(e=t.n()).done;){var r=e.value;r.dragging&&(r.dragging=!1,this.emit("mark:dragend",this.markDataAt(r)))}}catch(e){t.e(e)}finally{t.f()}}},{key:"ensureMarkLayer",value:function ensureMarkLayer(){if(this.markLayer)return this.markLayer;var t=this.layout?this.layout.canvas:this.canvasRect(),r=new e.ICEGroup({left:0,top:0,width:t.width,height:t.height,origin:"top-left",fill:!1,stroke:!1,interactive:!1,draggable:!1,transformable:!1,linkable:!1,zIndex:De});return this.root.addChild(r),this.markLayer=r,r}},{key:"markHandle",value:function markHandle(e){var t=this,r={id:e.id,spec:e.spec,component:e.component,update:function update(n){return Object.assign(e.spec,n),t.syncMarks(),r},toData:function toData(){return t.markDataAt(e)},remove:function remove(){t.removeMark(e.id)}};return r}},{key:"markAxis",value:function markAxis(e){if(e.seriesId){var t=this.norm.series.find(function(t){return t.id===e.seriesId||t.name===e.seriesId});if(t)return this.norm.yAxes[t.axisIndex]||this.norm.yAxis}return this.norm.yAxes[0]||this.norm.yAxis}},{key:"markBox",value:function markBox(e,t){var r=e.type||"point",n=this.layout.plot,a=this.norm.xAxis.scale,s=this.markAxis(e),l=s&&s.scale,h=Number(e.dx)||0,u=Number(e.dy)||0,c=function px(e){return n.x+Number(a.map(e))+h},p=function py(e){return n.y+Number(l.map(e))+u},v=t.width||1,m=t.height||1;if("xLine"===r)return{left:c(e.x)-v/2,top:n.y+u,width:v,height:n.height};if("yLine"===r)return{left:n.x+h,top:p(e.y)-m/2,width:n.width,height:m};if("xBand"===r){var g=c(e.x0),b=c(e.x1);return{left:Math.min(g,b),top:n.y+u,width:Math.abs(b-g),height:n.height}}if("yBand"===r){var k=p(e.y0),S=p(e.y1);return{left:n.x+h,top:Math.min(k,S),width:n.width,height:Math.abs(S-k)}}var A=c(e.x),w=p(e.y);return{left:A-v/2,top:w-m/2,width:v,height:m,anchor:[A,w]}}},{key:"markDataAt",value:function markDataAt(e,t){var r,n,a=e.spec,s=a.type||"point",l=this.layout.plot,h=this.norm.xAxis.scale,u=this.markAxis(a),c=u&&u.scale,p=e.component.state||{},v=p.width||0,m=p.height||0,g=t?t.left:p.left,b=t?t.top:p.top;"point"===s?(r=g+v/2,n=b+m/2):"xLine"===s||"xBand"===s?(r=g+v/2,n=l.y+l.height/2):(r=l.x+l.width/2,n=b+m/2);var k=h&&"function"==typeof h.invert?h.invert(r-l.x):null,S=c&&"function"==typeof c.invert?Number(c.invert(n-l.y)):NaN;return{id:e.id,xValue:k,yValue:"xLine"!==s&&"xBand"!==s&&isFinite(S)?S:void 0,pixel:[r,n]}}},{key:"syncMarks",value:function syncMarks(){if(this.marks.length&&this.norm&&this.layout){var e=this.layout.plot;this.syncingMarks=!0;try{var t,r=_createForOfIteratorHelper(this.marks);try{for(r.s();!(t=r.n()).done;){var n=t.value,a=n.component.state||{},s=this.markBox(n.spec,{width:a.width||0,height:a.height||0});if([s.left,s.top,s.width,s.height].every(function(e){return isFinite(e)})){var l=!1!==n.spec.hideWhenOutOfView,h=s.anchor||[s.left+s.width/2,s.top+s.height/2],u=!(isFinite(h[0])&&isFinite(h[1]))||h[0]<e.x-s.width||h[0]>e.x+e.width+s.width||h[1]<e.y-s.height||h[1]>e.y+e.height+s.height,c=Math.round(s.left),p=Math.round(s.top),v=Math.max(1,Math.round(s.width)),m=Math.max(1,Math.round(s.height));a.left===c&&a.top===p||(n.component.setPosition(c,p),!0),a.width===v&&a.height===m||(n.component.setState({width:v,height:m}),!0),n.component.setState({display:!l||!u})}else n.component.setState({display:!1})}}catch(e){r.e(e)}finally{r.f()}}finally{this.syncingMarks=!1}this.markLayer&&this.markLayer.setState({width:this.layout.canvas.width,height:this.layout.canvas.height})}}},{key:"resetZoom",value:function resetZoom(){return this.viewState={x:null,y:null,yAxes:[]},this.rebuild(!0),this.emit("zoom:change",this.currentRange()),this}},{key:"toggleSeries",value:function toggleSeries(e,t){var r=this.norm.series.find(function(t){return t.id===e});if(!r)return this;var n=!!this.hiddenIds[e],a=void 0===t?!n:!t;return this.hiddenIds[e]=a,this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("legend:toggle",{seriesId:e,seriesName:r.name,seriesIndex:r.index,selected:!a}),this}},{key:"isSeriesSelected",value:function isSeriesSelected(e){return!this.hiddenIds[e]}},{key:"toggleSlice",value:function toggleSlice(e,t,r){var n=this.norm.series.find(function(t){return t.id===e});if(!n||"pie"!==n.type&&"funnel"!==n.type)return this;var a="".concat(e,"#").concat(t),s=!!this.hiddenSlices[a],l=void 0===r?!s:!r;this.hiddenSlices[a]=l;var h=n.pointAt(t);return this.applyOption(this.option,{animate:!0,preserveView:!0}),this.emit("legend:toggle",{seriesId:e,seriesName:h&&h.name||"".concat(n.name," ").concat(t+1),seriesIndex:n.index,selected:!l,dataIndex:t}),this}},{key:"showHoverAt",value:function showHoverAt(e,t){var r=this.norm.series.find(function(t){return t.id===e});if(!r)return this;var n=this.controller.resolver.buildActiveItem(r,t);return n&&this.controller.setHover({kind:"item",item:n}),this}},{key:"showHoverAtValue",value:function showHoverAtValue(e){return this.controller.showHoverAtValue(e),this}},{key:"clearHover",value:function clearHover(){return this.controller.clearHover(),this}},{key:"getSelection",value:function getSelection(){return this.controller.getSelectedParams()}},{key:"clearSelection",value:function clearSelection(){return this.controller.clearSelection(),this}},{key:"getDomain",value:function getDomain(e){return"x"===e?this.norm.xAxis.domain.slice():this.norm.yAxis.domain.slice()}},{key:"getAxisDomain",value:function getAxisDomain(e){var t=this.norm.yAxes[e];return t?t.domain.slice():this.norm.yAxis.domain.slice()}},{key:"setAxisDomain",value:function setAxisDomain(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"api";if(0===e)return this.setDomain("y",t,r);if(this.destroyed)return this;var n=this.clampAxisDomain(e,t,r);return n?(this.viewState.yAxes[e]=n,this.rebuild(!1),this.emit("pan"===r?"pan:change":"zoom:change",this.currentRange()),this):this}},{key:"fullDomain",value:function fullDomain(e){return("x"===e?this.fullXDomain:this.fullYDomain).slice()}},{key:"canvasElement",get:function get(){return this.canvasEl}},{key:"getDataTable",value:function getDataTable(){return buildDataTable(this,arguments.length>0&&void 0!==arguments[0]?arguments[0]:{})}},{key:"getA11yTree",value:function getA11yTree(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t="function"==typeof this.ice.getAccessibilityTree?this.ice.getAccessibilityTree():[];return[].concat(_toConsumableArray(t),_toConsumableArray(buildDataNodes(this,e)))}},{key:"attachA11yMirror",value:function attachA11yMirror(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return this.a11yMirror.attach(e)}},{key:"detachA11yMirror",value:function detachA11yMirror(){this.a11yMirror.detach()}},{key:"a11yMirrorAttached",get:function get(){return this.a11yMirror.attached}},{key:"announceA11y",value:function announceA11y(e){this.a11yMirror.announce(e)}},{key:"on",value:function on(e,t,r){return this.emitter.on(e,t,r),this}},{key:"once",value:function once(e,t,r){return this.emitter.once(e,t,r),this}},{key:"off",value:function off(e,t,r){return this.emitter.off(e,t,r),this}},{key:"emit",value:function emit(e,t){return!(this.silenceDepth>0)&&this.emitter.emit(e,t)}},{key:"silent",value:function silent(e){this.silenceDepth++;try{return e()}finally{this.silenceDepth--}}},{key:"resize",value:function resize(e,t){return this.destroyed?this:(this.ice.fitCanvasToDisplaySize(e,t),this.ice.canvasWidth>0&&this.ice.canvasHeight>0?(this.rebuild(!1),this):this)}},{key:"destroy",value:function destroy(){this.destroyed||(this.destroyed=!0,this.__offThemeFollow&&(this.__offThemeFollow(),this.__offThemeFollow=null),this.stopDomainTransition(),this.a11yMirror.detach(),this.controller.destroy(),this.resizeObserver&&"function"==typeof this.resizeObserver.disconnect&&(this.resizeObserver.disconnect(),this.resizeObserver=null),this.emitter.clear(),this.ice.destroy())}},{key:"nextFrame",value:function nextFrame(){var t=this;return new Promise(function(r){var n=t.ice.evtBus;if(n){var a=function handler(){n.off(e.ICE_EVENT_NAME_CONSTS.ROUND_FINISH,a,null),r()};n.on(e.ICE_EVENT_NAME_CONSTS.ROUND_FINISH,a,null),t.ice.dirty=!0}else r()})}},{key:"render",value:function render(){return this.ice.dirty=!0,this.nextFrame()}},{key:"formatAxisValue",value:function formatAxisValue(e,t){var r="x"===e?this.norm.xAxis:this.norm.yAxis,n=r.scale;if(!n)return String(t);var a=r.domain.indexOf(t);return formatTick(t,n,a<0?0:a,r.option.formatter)}},{key:"toDataURL",value:function toDataURL(e,t){return this.ice&&"function"==typeof this.ice.toDataURL?this.ice.toDataURL(e,t):""}},{key:"toBlob",value:function toBlob(e,t,r){this.ice&&"function"==typeof this.ice.toBlob?this.ice.toBlob(e,t,r):e(null)}},{key:"toJSON",value:function toJSON(){return{version:1,option:toSerializableOption(this.option),view:{x:this.viewState.x,y:this.viewState.y,yAxes:this.viewState.yAxes},hidden:_objectSpread2({},this.hiddenIds),hiddenSlices:_objectSpread2({},this.hiddenSlices)}}},{key:"toJSONString",value:function toJSONString(){return JSON.stringify(this.toJSON())}},{key:"fromJSONString",value:function fromJSONString(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=JSON.parse(e);return this.loadSnapshot(r,t),this}},{key:"fromJSONObject",value:function fromJSONObject(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.loadSnapshot(e,t),this}},{key:"loadSnapshot",value:function loadSnapshot(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(e){var r="string"==typeof e?JSON.parse(e):e,n=r.option||r;if("number"==typeof r.version&&r.version>1)throw new Error("[ice-chart] 快照版本 ".concat(r.version," 高于当前实现支持的 ").concat(1,",请升级 ice-chart 后再还原。"));var a=(Array.isArray(n&&n.series)?n.series:[]).findIndex(function(e){return e&&e.virtual&&!e.data});if(a>=0)throw new Error("[ice-chart] 快照里的 series[".concat(a,"] 是虚拟(列存)系列,数据不在快照里,无法还原:请用 setData 重新给一份数据(虚拟化省内存的代价就是不进快照)。"));var s=t.optionPatch?mergeOptionPatch(n,t.optionPatch):n;this.hiddenIds=r.hidden||{},this.hiddenSlices=r.hiddenSlices||{};var l=r.view||{};this.viewState={x:l.x||null,y:l.y||null,yAxes:l.yAxes||[]},this.applyOption(s,{animate:!1,preserveView:!0})}}},{key:"applyOption",value:function applyOption(e,t){this.option=e;var r=this.norm?this.norm.yAxis.domain.slice():null,n=normalizeOption(e,{hiddenIds:this.hiddenIds,hiddenSlices:this.hiddenSlices,preferDark:isEngineThemeDark(this.ice),virtualColumns:this.virtualColumns});if("auto"!==e.theme){var a=JSON.stringify(n.theme);a!==this.__appliedEngineThemeKey&&(applyChartThemeToEngine(this.ice,n.theme),this.__appliedEngineThemeKey=a)}if(this.fullXDomain=n.xAxis.domain.slice(),this.fullYDomain=n.yAxis.domain.slice(),this.fullYDomains=n.yAxes.map(function(e){return e.domain.slice()}),this.autoYCurve=(e.series||[]).some(function(e){return!!e&&"function"===e.type}),!t.preserveView){this.viewState={x:null,y:null,yAxes:[]};var s=this.initialWindow(n);s&&(this.viewState.x=s)}if(this.hiddenIds=n.hiddenIds,this.hiddenSlices=n.hiddenSlices,this.rebuild("enter"===t.animate?"enter":!1!==t.animate&&"update"),"update"===("enter"===t.animate?"enter":!1!==t.animate&&"update")&&shouldAnimate()&&r&&this.norm&&"cartesian"===this.norm.kind&&2===this.norm.yAxis.domain.length){var l=this.norm.yAxis.domain;(Math.abs(Number(r[0])-Number(l[0]))>1e-9||Math.abs(Number(r[1])-Number(l[1]))>1e-9)&&this.startDomainTransition([Number(r[0]),Number(r[1])],[Number(l[0]),Number(l[1])])}}},{key:"initialWindow",value:function initialWindow(e){var t=e.option.dataZoom;if(!t||void 0===t.start&&void 0===t.end)return null;var r=clamp$2(Number(void 0===t.start?0:t.start)/100,0,1),n=clamp$2(Number(void 0===t.end?100:t.end)/100,0,1);if(r<=0&&n>=1)return null;var a=e.xAxis.domain;if("category"===e.xAxis.type){var s=a.length,l=clamp$2(Math.floor(r*s),0,Math.max(0,s-2)),h=clamp$2(Math.ceil(n*s)-1,l+1,s-1);return[a[l],a[h]]}var u=Number(a[0]),c=Number(a[1])-u;return[u+c*r,u+c*n]}},{key:"startDomainTransition",value:function startDomainTransition(t,r){var n=this;if(this.domainTransition={from:t,to:r},!this.domainFrameHandler){var a=this.ice.evtBus;a&&(this.domainFrameHandler=function(){return n.stepDomainTransition()},a.on(e.ICE_EVENT_NAME_CONSTS.ICE_FRAME_EVENT,this.domainFrameHandler,this))}}},{key:"stepDomainTransition",value:function stepDomainTransition(){var e=this.domainTransition;if(e&&!this.destroyed){var t,r=0,n=_createForOfIteratorHelper(this.seriesComponents);try{for(n.s();!(t=n.n()).done;){var a=t.value,s=Number(a.state.progress);isFinite(s)&&s>r&&(r=s)}}catch(e){n.e(e)}finally{n.f()}if(r>=1)return this.domainTransition=null,this.stopDomainTransition(),void this.rebuild(!1);var l=e.to.map(function(t,n){var a=e.from[n];return isFinite(a)?a+(t-a)*r:t});this.rebuild(!1,l)}else this.stopDomainTransition()}},{key:"stopDomainTransition",value:function stopDomainTransition(){if(this.domainFrameHandler){var t=this.ice&&this.ice.evtBus;t&&t.off(e.ICE_EVENT_NAME_CONSTS.ICE_FRAME_EVENT,this.domainFrameHandler,this),this.domainFrameHandler=null}}},{key:"rebuild",value:function rebuild(e,t){var r=this;if(!this.destroyed){var n=this.canvasRect(),a=this.fullYDomains.map(function(e,t){var n=0===t?r.viewState.y:r.viewState.yAxes[t];return n&&2===n.length?n:e}),s=normalizeOption(this.option,{hiddenIds:this.hiddenIds,hiddenSlices:this.hiddenSlices,preferDark:isEngineThemeDark(this.ice),virtualColumns:this.virtualColumns,xDomain:this.viewState.x&&2===this.viewState.x.length?[this.viewState.x[0],this.viewState.x[1]]:null,yDomain:!this.autoYCurve||this.viewState.y||t&&2===t.length?t&&2===t.length?[Number(t[0]),Number(t[1])]:a[0]&&2===a[0].length?[Number(a[0][0]),Number(a[0][1])]:null:null,yDomains:a.map(function(e){return(!r.autoYCurve||r.viewState.y||t&&2===t.length)&&e&&2===e.length?[Number(e[0]),Number(e[1])]:null})});if(this.norm=s,this.__virtualSourceVersion+=1,this.virtualColumns.size){var l,h=new Set,u=_createForOfIteratorHelper(s.series);try{for(u.s();!(l=u.n()).done;){var c=l.value;c.virtual&&h.add(c.id)}}catch(e){u.e(e)}finally{u.f()}for(var p=0,v=Array.from(this.virtualColumns.keys());p<v.length;p++){var m=v[p];h.has(m)||this.virtualColumns.delete(m)}}this.autoYCurve&&(this.fullYDomain=s.yAxis.domain.slice(),this.fullYDomains=s.yAxes.map(function(e){return e.domain.slice()})),this.layout=computeLayout(s,this.ice.ctx,n),this.buildScales(s),this.root.state.ariaLabel=chartTitle(s),this.syncComponents(!t&&e),this.syncMarks(),this.ice.dirty=!0,this.controller&&this.controller.refreshHover(),this.a11yMirror.attached&&this.a11yMirror.refresh()}}},{key:"buildScales",value:function buildScales(e){var t=this.layout.plot;e.xAxis.scale=createScale(e.xAxis.type,e.xAxis.domain,[0,Math.max(1,t.width)],{logBase:e.xAxis.option.logBase,categoryLookup:e.xAxis.categoryLookup,categoryOffset:e.xAxis.categoryOffset});var r,n=_createForOfIteratorHelper(e.yAxes);try{for(n.s();!(r=n.n()).done;){var a=r.value;a.scale=createScale(a.type,a.domain,[Math.max(1,t.height),0],{logBase:a.option.logBase})}}catch(e){n.e(e)}finally{n.f()}}},{key:"syncComponents",value:function syncComponents(e){var t,r=this.norm,n=this.layout,a=n.canvas,s=n.plot,l=r.theme;this.root.state.width===a.width&&this.root.state.height===a.height||this.root.setState({width:a.width,height:a.height});var h=n.polar,u="cartesian"!==r.kind;null===(t=this.highlight)||void 0===t||t.setClipBox(u?null:{x:s.x,y:s.y,width:s.width,height:s.height}),this.plotArea.setState({left:s.x,top:s.y,width:s.width,height:s.height}),this.plotArea.setBackground("transparent"===l.backgroundColor?null:l.backgroundColor),this.grid.setState({width:a.width,height:a.height}),this.grid.setState({display:!u}),this.grid.xScale=r.xAxis.scale,this.grid.yScale=r.yAxis.scale;var c=n.xAxisLayout;this.grid.xTicks=c.visible?c.visible.filter(function(e){return!c.labels||""!==c.labels[e]}).map(function(e){return c.ticks[e]}):c.ticks.filter(function(e,t){return!c.labels||""!==c.labels[t]}),this.grid.horizontal=r.yAxes.map(function(e,t){return{axis:e,axisLayout:n.yAxes[t],index:t}}).filter(function(e){return void 0===e.axis.option.showGrid?0===e.index:!1!==e.axis.option.showGrid}).map(function(e){return{scale:e.axis.scale,ticks:e.axisLayout.ticks,index:e.index}}),this.grid.plot=s,this.grid.grid=r.option.grid||{},this.grid.theme=l,this.grid.markDirty(),this.radarGrid.setState({width:a.width,height:a.height,display:"radar"===r.kind}),this.radarGrid.theme=l,this.radarGrid.coord="radar"===r.kind&&h&&r.radar?{polar:h,plot:s,indicators:r.radar.indicators.map(function(e,t){return{name:e.name,max:r.radarDomains[t]?r.radarDomains[t][1]:1}}),shape:r.radar.shape||"polygon",splitNumber:Math.max(1,Number(r.radar.splitNumber)||4)}:null,this.radarGrid.markDirty();var p=r.option.polarGrid,v="cartesian"===r.kind&&!!p&&"equal"===r.option.aspect;this.polarGrid.setState({width:a.width,height:a.height,display:v}),this.polarGrid.theme=l,this.polarGrid.layout=n,this.polarGrid.coord=v?{plot:s,xScale:r.xAxis.scale,yScale:r.yAxis.scale,options:!0===p?{}:p}:null,this.polarGrid.markDirty(),this.syncAxisComponents();for(var m=0;m<this.axisYList.length;m++){var g=this.axisYList[m];g.setState({width:a.width,height:a.height,display:!u}),g.layout=n,g.theme=l,g.axis=r.yAxes[m]||r.yAxis,g.axisIndex=m,g.position=r.yAxes[m]&&r.yAxes[m].position||"left",g.syncTicks(),g.markDirty()}var b=this.axisX;b.setState({width:a.width,height:a.height,display:!u}),b.layout=n,b.theme=l,b.axis=r.xAxis,b.syncTicks(),b.markDirty(),this.grid.axisX=this.axisX,this.grid.axisYList=this.axisYList,this.grid.syncTicks(),this.annotation.setState({width:a.width,height:a.height,display:!0}),this.annotation.plot=s,this.annotation.xAxis=r.xAxis,this.annotation.yAxes=r.yAxes,this.annotation.sync(r.option.annotation,{kind:r.kind,plot:s,xAxis:r.xAxis,yAxes:r.yAxes,theme:l}),this.legend&&(this.legend.setState({width:a.width,height:a.height}),this.legend.layout=n,this.legend.theme=l,this.legend.selectable=!1!==r.option.legend.selectable,this.legend.markDirty()),this.titleComponent&&(this.titleComponent.setState({width:a.width,height:a.height}),this.titleComponent.layout=n,this.titleComponent.theme=l,this.titleComponent.markDirty());for(var k=0,S=[this.crosshair,this.highlight,this.brushComponent,this.tooltip];k<S.length;k++){var A=S[k];A&&(A.setState({width:a.width,height:a.height}),A.theme=l,A.markDirty())}if(this.tooltip&&(this.tooltip.layout=n),this.crosshair){this.crosshair.layout=n,this.crosshair.option=r.option.crosshair||{};var w=Number(this.crosshair.option.followDuration);this.crosshair.followDuration=isFinite(w)&&w>=0?Math.min(400,w):90}if(this.crosshair&&this.crosshair.setState({display:!u}),this.brushComponent){var _=r.option.interaction&&r.option.interaction.brush;this.brushComponent.color=_&&!1!==_&&_.color?{fill:toAlpha(_.color,.16),stroke:_.color}:null}if(this.dataZoomSlider){var M=n.slider;if(M){this.dataZoomSlider.setState({left:M.x,top:M.y,width:M.width,height:M.height,display:!0});var C=_slicedToArray(this.domainFractions(),2),T=C[0],P=C[1];this.dataZoomSlider.setWindow(T,P)}else this.dataZoomSlider.setState({display:!1});this.dataZoomSlider.theme=l,this.dataZoomSlider.markDirty()}this.syncSeries(e)}},{key:"domainFractions",value:function domainFractions(){var e=this.fullXDomain,t=this.norm.xAxis.domain;if(!e||e.length<2||!t||t.length<2)return[0,1];if("category"===this.norm.xAxis.type){var r=e.length;if(r<=1)return[0,1];var n=Math.max(0,this.categoryIndexOf(e,t[0])),a=this.categoryIndexOf(e,t[t.length-1]);return[n/r,((a<0?r-1:a)+1)/r]}var s=Number(e[0]),l=Number(e[1])-s||1;return[(Number(t[0])-s)/l,(Number(t[1])-s)/l]}},{key:"categoryIndexOf",value:function categoryIndexOf(e,t){var r=this.norm&&this.norm.xAxis?this.norm.xAxis.categoryLookup:void 0;if(r){var n=r(String(t));return n>=0&&n<e.length?n:-1}return e.indexOf(t)}},{key:"setDomainFromFractions",value:function setDomainFromFractions(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"slider",n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];if("cartesian"!==this.norm.kind)return this;var a=_slicedToArray(this.domainFractions(),2),s=a[0],l=a[1];if(Math.abs(s-e)<1e-4&&Math.abs(l-t)<1e-4)return this;var h=this.fullXDomain;if("category"===this.norm.xAxis.type){var u=h.length;if(u<2)return this;var c=Math.round(e*u),p=Math.round(t*u)-1;c=Math.max(0,Math.min(u-1,c)),(p=Math.max(0,Math.min(u-1,p)))<=c&&(p=Math.min(u-1,c+1));var v=[h[c],h[p]];return this.setDomain("x",n?this.guardInteractiveXWindow(v):v,r)}var m=Number(h[0]),g=Number(h[1])-m,b=[m+g*e,m+g*t];return this.setDomain("x",n?this.guardInteractiveXWindow(b):b,r)}},{key:"syncAxisComponents",value:function syncAxisComponents(){var e=this.norm.yAxes,t=e.length,r=e.map(function(e){return e.position}).join("|");if(this.axisSignature!==r){var n,a=_createForOfIteratorHelper(this.axisYList);try{for(a.s();!(n=a.n()).done;){var s=n.value;this.root.removeChild(s)}}catch(e){a.e(e)}finally{a.f()}var l=this.layout.canvas;this.axisYList=e.map(function(e,t){return new E({orientation:"y",width:l.width,height:l.height,zIndex:Re+t,axisIndex:t,position:e.position})}),this.root.addChildren(this.axisYList),this.axisSignature=r}for(;this.axisYList.length>t;){var h=this.axisYList.pop();this.root.removeChild(h)}}},{key:"syncSeries",value:function syncSeries(e){var t=this.norm,r=this.layout.plot,n=t.series.map(function(e){return"".concat(e.id,":").concat(e.type)}).join("|"),a=computeBarSlots(t.series);if(n!==this.seriesSignature){var s,l=_createForOfIteratorHelper(this.seriesComponents);try{for(l.s();!(s=l.n()).done;){var h=s.value;this.root.removeChild(h)}}catch(e){l.e(e)}finally{l.f()}this.seriesComponents=t.series.map(function(e,t){return createSeriesComponent(e,{left:r.x,top:r.y,width:r.width,height:r.height,zIndex:Ne+t})}),this.root.addChildren(this.seriesComponents),this.seriesSignature=n}for(var u=0;u<this.seriesComponents.length;u++){var c=this.seriesComponents[u],p=t.series[u],v=!p.hidden,m=t.yAxes[p.axisIndex]||t.yAxis,g=this.layout.polar,b="pie"===p.type?{polar:g,plot:r,canvas:this.layout.canvas}:"radar"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,domains:t.radarDomains}:"funnel"===p.type?{plot:r,canvas:this.layout.canvas,options:t.funnel||{}}:"gauge"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,options:t.gauge||{}}:"liquid"===p.type?{polar:g,plot:r,canvas:this.layout.canvas,options:t.liquid||{}}:"treemap"===p.type?{plot:r,canvas:this.layout.canvas,layout:layoutTreemap(Array.isArray(p.option.data)?p.option.data:[],r,t.treemap||{},t.theme.colorPalette),options:t.treemap||{}}:"graph"===p.type&&t.graph?{plot:r,canvas:this.layout.canvas,layout:forceLayout(t.graph.nodes||[],t.graph.links||[],r,t.graph,t.theme.colorPalette),options:t.graph}:"sankey"===p.type&&t.sankey?{plot:r,canvas:this.layout.canvas,layout:layoutSankey(t.sankey.nodes||[],t.sankey.links||[],r,t.sankey,t.theme.colorPalette),options:t.sankey}:{plot:r,canvas:this.layout.canvas,xScale:t.xAxis.scale,yScale:m.scale,yAxisIndex:p.axisIndex,theme:t.theme};if(c.setState({left:r.x,top:r.y,width:r.width,height:r.height,display:v,zIndex:Ne+u,interactive:v}),c.barSlot=a[p.id]||{index:0,count:1},c.chartTheme=t.theme,c.state.ariaLabel="".concat(p.name," 系列,共 ").concat(p.pointCount," 个数据点"),c.updateSeries(p,!!e&&!this.viewState.x,!!this.domainTransition),"pie"!==p.type&&"funnel"!==p.type||c.setHiddenSlices(hiddenSliceIndexes(t,p.id)),"cartesian"===t.kind&&c.setClipToBox(!0),c.setCoord(b),c.markDirty(),e&&v){var k=t.option.animation;if(k&&!1!==k.enabled){var S=k["enter"===e?"enter":"update"];S&&this.playStage(c,_objectSpread2(_objectSpread2({},S),{},{kind:"enter"===e?"enter":"update"}))}}}}},{key:"playStage",value:function playStage(e,t){if(!shouldAnimate())return e.setAnimationStage(t),e.setState({progress:1}),void e.markDirty();e.setAnimationStage(t);var r=_objectSpread2({},e.props.animations||{});r.progress={from:0,to:1,duration:Math.max(1,Number(t.duration)||480),delay:Number(t.delay)||0,easing:t.easing||"easeOutCubic",startTime:void 0,finished:!1},e.props.animations=r,e.setState({progress:0}),this.ice.animationManager&&this.ice.animationManager.add(e)}},{key:"playEnter",value:function playEnter(e,t,r){this.playStage(e,{duration:t,easing:r,stagger:0})}},{key:"finishAnimations",value:function finishAnimations(){this.domainTransition=null,this.stopDomainTransition();var e,t=_createForOfIteratorHelper([].concat(_toConsumableArray(this.seriesComponents),[this.axisX],_toConsumableArray(this.axisYList),[this.grid,this.tooltip,this.crosshair]));try{for(t.s();!(e=t.n()).done;){var r=e.value;if(r){var n=r.props.animations;if(n)for(var a in n)0!==a.indexOf("__")&&n[a]&&(n[a].finished=!0);var s=!!n&&Object.keys(n).some(function(e){return 0===e.indexOf("__")});this.ice.animationManager&&!s&&this.ice.animationManager.remove(r),r.props&&r.props.animations&&r.props.animations.axisMorph&&r.setState({axisMorph:1}),Number(r.state.progress)<1&&r.setState({progress:1}),r.markDirty()}}}catch(e){t.e(e)}finally{t.f()}return this.ice.dirty=!0,this}},{key:"currentRange",value:function currentRange(){return{x:[this.norm.xAxis.domain[0],this.norm.xAxis.domain[this.norm.xAxis.domain.length-1]],y:[Number(this.norm.yAxis.domain[0]),Number(this.norm.yAxis.domain[1])]}}},{key:"clampDomain",value:function clampDomain(e,t,r){return"y"===e?this.clampAxisDomain(0,t,r):this.clampAxisDomain(-1,t,r)}},{key:"clampAxisDomain",value:function clampAxisDomain(e,t,r){var n=e<0?this.fullXDomain:this.fullYDomains[e];if(!n||n.length<2||!t||t.length<2)return null;var a=e<0?this.norm.xAxis:this.norm.yAxes[e];if(!a)return null;if("category"===a.type){var s=n,l=this.categoryIndexOf(s,t[0]),h=this.categoryIndexOf(s,t[1]);if(l<0&&h<0)return null;if(l<0||h<0){var u=Math.max(1,a.domain.length-1);h<0?(h=s.length-1,l=Math.max(0,h-u)):(l=0,h=Math.min(s.length-1,u))}if(l>h){var c=l;l=h,h=c}if(h-l<1)return null;if("zoom"===r||"brush"===r){var p=h-l+1,v=this.norm.option.interaction&&this.norm.option.interaction.zoom,m=clampBarCount(p,this.layout.plot.width,v&&!1!==v?v:void 0);if(m!==p){var g=(l+h)/2,b=Math.round(g-(m-1)/2);if(b=Math.max(0,Math.min(b,s.length-m)),l=Math.max(0,b),(h=Math.min(s.length-1,l+m-1))-l<1)return null}}return[s[l],s[h]]}var k=Number(n[0]),S=Number(n[1]),A=Number(t[0]),w=Number(t[1]);if(!isFinite(A)||!isFinite(w)||w<=A)return null;var _=.001*(S-k);if(w-A<_)return null;if("pan"===r){var M=.25*(w-A),C=A,T=w;return T<k+M&&(C+=k+M-T,T=k+M),C>S-M&&(T-=C-(S-M),C=S-M),[C,T]}var P=Math.max(k,A),I=Math.min(S,w);return I<=P||I-P<_?null:[P,I]}},{key:"canvasRect",value:function canvasRect(){var e=this.ice&&this.ice.dpr||1,t=(this.ice&&this.ice.canvasWidth?this.ice.canvasWidth:this.canvasEl?this.canvasEl.width:0)/e,r=(this.ice&&this.ice.canvasHeight?this.ice.canvasHeight:this.canvasEl?this.canvasEl.height:0)/e;return{x:0,y:0,width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(r))}}},{key:"observeResize",value:function observeResize(){var e=this,t="undefined"!=typeof window?window.ResizeObserver:null;if(t&&this.canvasEl){var r=this.canvasEl.parentNode||this.canvasEl;this.resizeObserver=new t(function(){e.resize()}),this.resizeObserver.observe(r)}}},{key:"registerTypes",value:function registerTypes(){for(var e=0,t=[["ice-chart:PlotArea",j],["ice-chart:GridLines",L],["ice-chart:Annotation",B],["ice-chart:Axis",E],["ice-chart:Legend",W],["ice-chart:Title",X],["ice-chart:Tooltip",G],["ice-chart:Crosshair",U],["ice-chart:Highlight",K],["ice-chart:Brush",Y]];e<t.length;e++){var r=_slicedToArray(t[e],2),n=r[0],a=r[1];this.ice.registerType(n,a)}}}],[{key:"restore",value:function restore(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},n=new ICEChart(e,r.initialOption||{series:[]},r.chartOptions);return n.fromJSONObject(t,r),n}}])}();function computeBarSlots(e){var t,r=[],n={},a=_createForOfIteratorHelper(e);try{var s=function _loop(){var e=t.value;if("bar"!==e.type||e.hidden)return 1;var n=e.option.stack?"stack:".concat(e.option.stack):"single:".concat(e.id),a=r.find(function(e){return e.key===n});a||(a={key:n,members:[]},r.push(a)),a.members.push(e)};for(a.s();!(t=a.n()).done;)s()}catch(e){a.e(e)}finally{a.f()}for(var l=0;l<r.length;l++){var h,u=_createForOfIteratorHelper(r[l].members);try{for(u.s();!(h=u.n()).done;){n[h.value.id]={index:l,count:r.length}}}catch(e){u.e(e)}finally{u.f()}}return n}function hiddenSliceIndexes(e,t){var r=[],n=e.series.find(function(e){return e.id===t});if(!n)return r;for(var a=0;a<n.pointCount;a++){var s=n.pointAt(a);e.hiddenSlices["".concat(t,"#").concat(s.index)]&&r.push(s.index)}return r}function isEngineThemeDark(e){try{var t=function parseHexColor(e){if("string"!=typeof e)return null;var t=e.trim();if("#"!==t.charAt(0))return null;var r=t.slice(1);3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]);return 6!==r.length?null:[parseInt(r.slice(0,2),16),parseInt(r.slice(2,4),16),parseInt(r.slice(4,6),16)]}(e&&e.getTheme&&e.getTheme().semantic.background);if(!t)return!1;var r=_slicedToArray(t.map(function(e){var t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}),3);return.2126*r[0]+.7152*r[1]+.0722*r[2]<.35}catch(e){return!1}}function toAlpha(e,t){if("string"!=typeof e)return"rgba(0,0,0,".concat(t,")");if(0===e.indexOf("#")){var r=e.slice(1);if(3===r.length&&(r=r[0]+r[0]+r[1]+r[1]+r[2]+r[2]),6!==r.length)return e;var n=parseInt(r.slice(0,2),16),a=parseInt(r.slice(2,4),16),s=parseInt(r.slice(4,6),16);return"rgba(".concat(n,",").concat(a,",").concat(s,",").concat(t,")")}return 0===e.indexOf("rgb(")?e.replace("rgb(","rgba(").replace(")",",".concat(t,")")):e}function applyRange(e,t,r,n){if(("x"===n||"xy"===n)&&r.x){var a,s=_createForOfIteratorHelper(e);try{var l=function _loop4(){var e=a.value;e!==t&&e.silent(function(){return e.setDomain("x",r.x,"link")})};for(s.s();!(a=s.n()).done;)l()}catch(e){s.e(e)}finally{s.f()}}if(("y"===n||"xy"===n)&&r.y){var h,u=_createForOfIteratorHelper(e);try{var c=function _loop5(){var e=h.value;e!==t&&e.silent(function(){return e.setDomain("y",r.y,"link")})};for(u.s();!(h=u.n()).done;)c()}catch(e){u.e(e)}finally{u.f()}}}exports.A11yMirror=Pe,exports.Annotation=B,exports.AreaSeries=te,exports.Axis=E,exports.BOOTSTRAP_CHART_THEME=a,exports.BOOTSTRAP_DARK_CHART_THEME=s,exports.BOOTSTRAP_TOKENS=r,exports.BandScale=O,exports.BarSeries=ee,exports.BoxplotSeries=fe,exports.Brush=Y,exports.ChartComponent=H,exports.Crosshair=U,exports.CurveSeriesBase=ye,exports.DARK_CHART_THEME=h,exports.DEFAULT_ANIMATION_STAGES=I,exports.Emitter=Ce,exports.ExpressionError=S,exports.FunctionSeries=me,exports.FunnelSeries=le,exports.GaugeSeries=ce,exports.GraphSeries=ve,exports.GridLines=L,exports.HeatmapSeries=oe,exports.Highlight=K,exports.HitResolver=we,exports.ICEChart=je,exports.InteractionController=Me,exports.LIGHT_CHART_THEME=l,exports.Legend=W,exports.LineSeries=Q,exports.LinearScale=D,exports.LiquidSeries=be,exports.LogScale=R,exports.ParametricSeries=xe,exports.PieSeries=ne,exports.PlotArea=j,exports.RadarGrid=q,exports.RadarSeries=ae,exports.SERIES_ROLE_HINT={line:"趋势线",area:"面积趋势",bar:"柱形",scatter:"散点",pie:"扇形",radar:"雷达多边形",heatmap:"热力图单元",sankey:"桑基连线",funnel:"漏斗阶段",gauge:"仪表盘",liquid:"水位球",boxplot:"箱线图",waterfall:"瀑布柱",treemap:"矩形树图单元",graph:"关系图节点",function:"函数曲线",parametric:"参数曲线"},exports.SNAPSHOT_VERSION=1,exports.SankeySeries=se,exports.ScatterSeries=ie,exports.SeriesBase=J,exports.TimeScale=k,exports.Title=X,exports.Tooltip=G,exports.TreemapSeries=pe,exports.VISUALLY_HIDDEN_STYLE=Te,exports.WaterfallSeries=de,exports.applyChartThemeToEngine=applyChartThemeToEngine,exports.buildDataNodes=buildDataNodes,exports.buildDataTable=buildDataTable,exports.chartThemeToEnginePatch=chartThemeToEnginePatch,exports.chartTitle=chartTitle,exports.clearCustomSeriesTypes=function clearCustomSeriesTypes(){for(var e=0,t=Object.keys(Se);e<t.length;e++){var r=t[e];delete Se[r]}},exports.compileExpression=compileExpression,exports.compileSampler=compileSampler,exports.computeBarSlots=computeBarSlots,exports.computeBoxplotSummary=computeBoxplotSummary,exports.computeLayout=computeLayout,exports.createChart=function createChart(e,t,r){return"string"==typeof t||isChartSnapshot(t)?je.restore(e,t,{chartOptions:r}):new je(e,t,r)},exports.createScale=createScale,exports.createSeriesComponent=createSeriesComponent,exports.diagnoseExpression=diagnoseExpression,exports.errorsOf=function errorsOf(e){return e.filter(function(e){return"error"===e.severity})},exports.evaluateExpression=function evaluateExpression(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return compileExpression(e).evaluate(t)},exports.forceLayout=forceLayout,exports.formatNumberTick=formatNumberTick,exports.formatTick=formatTick,exports.getMotionPreference=function getMotionPreference(){return z},exports.getSeriesTypeFactory=getSeriesTypeFactory,exports.isBuiltinSeriesType=function isBuiltinSeriesType(e){return Object.prototype.hasOwnProperty.call(ke,e)},exports.isChartSnapshot=isChartSnapshot,exports.layoutSankey=layoutSankey,exports.layoutTreemap=layoutTreemap,exports.linkCharts=function linkCharts(e){var t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n=r.axis||"x",a=!1!==r.hover,s=!1!==r.zoom,l=!1!==r.brush,h=[],u=null,c=_createForOfIteratorHelper(e);try{var p=function _loop(){var r=t.value,c=function onHover(t){if(a&&t){u=r;var n,s=_createForOfIteratorHelper(e);try{var l=function _loop2(){var e=n.value;e!==r&&e.silent(function(){return e.showHoverAtValue(t.xValue)})};for(s.s();!(n=s.n()).done;)l()}catch(e){s.e(e)}finally{s.f()}}},p=function onLeave(){if(a&&u===r){u=null;var t,n=_createForOfIteratorHelper(e);try{var s=function _loop3(){var e=t.value;e!==r&&e.silent(function(){return e.clearHover()})};for(n.s();!(t=n.n()).done;)s()}catch(e){n.e(e)}finally{n.f()}}},v=function onZoom(t){s&&t&&applyRange(e,r,t,n)},m=function onPan(t){s&&t&&applyRange(e,r,t,n)},g=function onBrush(t){l&&t&&applyRange(e,r,t,n)};r.on("item:hover",c),r.on("item:leave",p),r.on("zoom:change",v),r.on("pan:change",m),r.on("brush:end",g),h.push(function(){r.off("item:hover",c),r.off("item:leave",p),r.off("zoom:change",v),r.off("pan:change",m),r.off("brush:end",g)})};for(c.s();!(t=c.n()).done;)p()}catch(e){c.e(e)}finally{c.f()}return{charts:e,unlink:function unlink(){for(var e=0,t=h;e<t.length;e++){(0,t[e])()}h.length=0}}},exports.listSeriesTypes=function listSeriesTypes(){return[].concat(_toConsumableArray(Object.keys(ke)),_toConsumableArray(Object.keys(Se)))},exports.mergeOptionPatch=mergeOptionPatch,exports.mixColors=mixColors,exports.normalizeAnimation=normalizeAnimation,exports.normalizeAnnotation=normalizeAnnotation,exports.normalizeOption=normalizeOption,exports.registerSeriesType=function registerSeriesType(e,t){if("string"!=typeof e||!Ae.test(e))throw new Error("[ice-chart] registerSeriesType:类型名必须是非空字符串(字母开头,可含数字 / 下划线 / 连字符),收到「".concat(String(e),"」"));if("function"!=typeof t)throw new Error("[ice-chart] registerSeriesType:factory 必须是函数");if(Object.prototype.hasOwnProperty.call(ke,e))throw new Error("[ice-chart] registerSeriesType:「".concat(e,"」是内置类型,不能覆盖(会破坏 option 的跨端可复现性)"));var r=Se[e];if(r&&r!==t)throw new Error("[ice-chart] registerSeriesType:「".concat(e,"」已经注册过另一个工厂,先 unregisterSeriesType 再注册"));Se[e]=t},exports.resolveAnnotation=resolveAnnotation,exports.resolveChartTheme=resolveChartTheme,exports.robustRange=robustRange,exports.roundRect=roundRect,exports.sampleFunctionCurve=sampleFunctionCurve,exports.sampleGraphLink=sampleGraphLink,exports.sampleLinkPath=sampleLinkPath,exports.sampleParametricCurve=sampleParametricCurve,exports.setMotionPreference=function setMotionPreference(e){z=e},exports.shouldAnimate=shouldAnimate,exports.toSerializableOption=toSerializableOption,exports.unregisterSeriesType=function unregisterSeriesType(e){return!!Object.prototype.hasOwnProperty.call(Se,e)&&(delete Se[e],!0)},exports.warningsOf=function warningsOf(e){return e.filter(function(e){return"warning"===e.severity})};
|