highcharts
Version:
JavaScript charting framework
105 lines (103 loc) • 98.9 kB
JavaScript
/*
Highcharts JS v10.2.0 (2022-07-05)
(c) 2009-2021 Torstein Honsi
License: www.highcharts.com/license
*/
(function(f){"object"===typeof module&&module.exports?(f["default"]=f,module.exports=f):"function"===typeof define&&define.amd?define("highcharts/highcharts-more",["highcharts"],function(A){f(A);f.Highcharts=A;return f}):f("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(f){function A(f,b,e,a){f.hasOwnProperty(b)||(f[b]=a.apply(null,e),"function"===typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:b,module:f[b]}})))}f=f?f._modules:{};A(f,
"Extensions/Pane.js",[f["Core/Chart/Chart.js"],f["Series/CenteredUtilities.js"],f["Core/Globals.js"],f["Core/Pointer.js"],f["Core/Utilities.js"]],function(f,b,e,a,d){function p(c,t,h){return Math.sqrt(Math.pow(c-h[0],2)+Math.pow(t-h[1],2))<=h[2]/2}var l=d.addEvent,k=d.extend,y=d.merge,B=d.pick,c=d.splat;f.prototype.collectionsWithUpdate.push("pane");d=function(){function g(c,h){this.options=this.chart=this.center=this.background=void 0;this.coll="pane";this.defaultOptions={center:["50%","50%"],size:"85%",
innerSize:"0%",startAngle:0};this.defaultBackgroundOptions={shape:"circle",borderWidth:1,borderColor:"#cccccc",backgroundColor:{linearGradient:{x1:0,y1:0,x2:0,y2:1},stops:[[0,"#ffffff"],[1,"#e6e6e6"]]},from:-Number.MAX_VALUE,innerRadius:0,to:Number.MAX_VALUE,outerRadius:"105%"};this.init(c,h)}g.prototype.init=function(c,h){this.chart=h;this.background=[];h.pane.push(this);this.setOptions(c)};g.prototype.setOptions=function(c){this.options=y(this.defaultOptions,this.chart.angular?{background:{}}:void 0,
c)};g.prototype.render=function(){var g=this.options,h=this.options.background,z=this.chart.renderer;this.group||(this.group=z.g("pane-group").attr({zIndex:g.zIndex||0}).add());this.updateCenter();if(h)for(h=c(h),g=Math.max(h.length,this.background.length||0),z=0;z<g;z++)h[z]&&this.axis?this.renderBackground(y(this.defaultBackgroundOptions,h[z]),z):this.background[z]&&(this.background[z]=this.background[z].destroy(),this.background.splice(z,1))};g.prototype.renderBackground=function(c,h){var g="animate",
a={"class":"highcharts-pane "+(c.className||"")};this.chart.styledMode||k(a,{fill:c.backgroundColor,stroke:c.borderColor,"stroke-width":c.borderWidth});this.background[h]||(this.background[h]=this.chart.renderer.path().add(this.group),g="attr");this.background[h][g]({d:this.axis.getPlotBandPath(c.from,c.to,c)}).attr(a)};g.prototype.updateCenter=function(c){this.center=(c||this.axis||{}).center=b.getCenter.call(this)};g.prototype.update=function(c,g){y(!0,this.options,c);this.setOptions(this.options);
this.render();this.chart.axes.forEach(function(c){c.pane===this&&(c.pane=null,c.update({},g))},this)};return g}();f.prototype.getHoverPane=function(c){var g=this,h;c&&g.pane.forEach(function(a){var z=c.chartX-g.plotLeft,d=c.chartY-g.plotTop;p(g.inverted?d:z,g.inverted?z:d,a.center)&&(h=a)});return h};l(f,"afterIsInsidePlot",function(c){this.polar&&(c.isInsidePlot=this.pane.some(function(g){return p(c.x,c.y,g.center)}))});l(a,"beforeGetHoverData",function(c){var g=this.chart;g.polar?(g.hoverPane=g.getHoverPane(c),
c.filter=function(h){return h.visible&&!(!c.shared&&h.directTouch)&&B(h.options.enableMouseTracking,!0)&&(!g.hoverPane||h.xAxis.pane===g.hoverPane)}):g.hoverPane=void 0});l(a,"afterGetHoverData",function(c){var g=this.chart;c.hoverPoint&&c.hoverPoint.plotX&&c.hoverPoint.plotY&&g.hoverPane&&!p(c.hoverPoint.plotX,c.hoverPoint.plotY,g.hoverPane.center)&&(c.hoverPoint=void 0)});e.Pane=d;return e.Pane});A(f,"Series/AreaRange/AreaRangePoint.js",[f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],
function(f,b){var e=this&&this.__extends||function(){var a=function(d,b){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var g in c)c.hasOwnProperty(g)&&(a[g]=c[g])};return a(d,b)};return function(d,b){function k(){this.constructor=d}a(d,b);d.prototype=null===b?Object.create(b):(k.prototype=b.prototype,new k)}}();f=f.seriesTypes.area.prototype;var a=f.pointClass.prototype,d=b.defined,p=b.isNumber;return function(b){function k(){var a=null!==
b&&b.apply(this,arguments)||this;a.high=void 0;a.low=void 0;a.options=void 0;a.plotHigh=void 0;a.plotLow=void 0;a.plotHighX=void 0;a.plotLowX=void 0;a.plotX=void 0;a.series=void 0;return a}e(k,b);k.prototype.setState=function(){var k=this.state,b=this.series,c=b.chart.polar;d(this.plotHigh)||(this.plotHigh=b.yAxis.toPixels(this.high,!0));d(this.plotLow)||(this.plotLow=this.plotY=b.yAxis.toPixels(this.low,!0));b.stateMarkerGraphic&&(b.lowerStateMarkerGraphic=b.stateMarkerGraphic,b.stateMarkerGraphic=
b.upperStateMarkerGraphic);this.graphic=this.upperGraphic;this.plotY=this.plotHigh;c&&(this.plotX=this.plotHighX);a.setState.apply(this,arguments);this.state=k;this.plotY=this.plotLow;this.graphic=this.lowerGraphic;c&&(this.plotX=this.plotLowX);b.stateMarkerGraphic&&(b.upperStateMarkerGraphic=b.stateMarkerGraphic,b.stateMarkerGraphic=b.lowerStateMarkerGraphic,b.lowerStateMarkerGraphic=void 0);a.setState.apply(this,arguments)};k.prototype.haloPath=function(){var b=this.series.chart.polar,d=[];this.plotY=
this.plotLow;b&&(this.plotX=this.plotLowX);this.isInside&&(d=a.haloPath.apply(this,arguments));this.plotY=this.plotHigh;b&&(this.plotX=this.plotHighX);this.isTopInside&&(d=d.concat(a.haloPath.apply(this,arguments)));return d};k.prototype.isValid=function(){return p(this.low)&&p(this.high)};return k}(f.pointClass)});A(f,"Series/AreaRange/AreaRangeSeries.js",[f["Series/AreaRange/AreaRangePoint.js"],f["Core/Globals.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=
this&&this.__extends||function(){var c=function(a,g){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,C){c.__proto__=C}||function(c,C){for(var a in C)C.hasOwnProperty(a)&&(c[a]=C[a])};return c(a,g)};return function(a,g){function h(){this.constructor=a}c(a,g);a.prototype=null===g?Object.create(g):(h.prototype=g.prototype,new h)}}();b=b.noop;var p=e.seriesTypes,l=p.area,k=p.area.prototype,y=p.column.prototype,B=a.defined,c=a.extend,g=a.isArray,t=a.pick,h=a.merge,z={lineWidth:1,threshold:null,
tooltip:{pointFormat:'<span style="color:{series.color}">\u25cf</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'},trackByArea:!0,dataLabels:{align:void 0,verticalAlign:void 0,xLow:0,xHigh:0,yLow:0,yHigh:0}};a=function(a){function b(){var c=null!==a&&a.apply(this,arguments)||this;c.data=void 0;c.options=void 0;c.points=void 0;c.lowerStateMarkerGraphic=void 0;c.xAxis=void 0;return c}d(b,a);b.prototype.toYData=function(c){return[c.low,c.high]};b.prototype.highToXY=function(c){var a=
this.chart,C=this.xAxis.postTranslate(c.rectPlotX||0,this.yAxis.len-c.plotHigh);c.plotHighX=C.x-a.plotLeft;c.plotHigh=C.y-a.plotTop;c.plotLowX=c.plotX};b.prototype.translate=function(){var c=this,a=c.yAxis;k.translate.apply(c);c.points.forEach(function(C){var g=C.high,r=C.plotY;C.isNull?C.plotY=null:(C.plotLow=r,C.plotHigh=a.translate(c.dataModify?c.dataModify.modifyValue(g):g,0,1,0,1),c.dataModify&&(C.yBottom=C.plotHigh))});this.chart.polar&&this.points.forEach(function(a){c.highToXY(a);a.tooltipPos=
[(a.plotHighX+a.plotLowX)/2,(a.plotHigh+a.plotLow)/2]})};b.prototype.getGraphPath=function(c){var a=[],g=[],h=k.getGraphPath,r=this.options,q=this.chart.polar,v=q&&!1!==r.connectEnds,b=r.connectNulls,d,z=r.step;c=c||this.points;for(d=c.length;d--;){var e=c[d];var n=q?{plotX:e.rectPlotX,plotY:e.yBottom,doCurve:!1}:{plotX:e.plotX,plotY:e.plotY,doCurve:!1};e.isNull||v||b||c[d+1]&&!c[d+1].isNull||g.push(n);var m={polarPlotY:e.polarPlotY,rectPlotX:e.rectPlotX,yBottom:e.yBottom,plotX:t(e.plotHighX,e.plotX),
plotY:e.plotHigh,isNull:e.isNull};g.push(m);a.push(m);e.isNull||v||b||c[d-1]&&!c[d-1].isNull||g.push(n)}c=h.call(this,c);z&&(!0===z&&(z="left"),r.step={left:"right",center:"center",right:"left"}[z]);a=h.call(this,a);g=h.call(this,g);r.step=z;r=[].concat(c,a);!this.chart.polar&&g[0]&&"M"===g[0][0]&&(g[0]=["L",g[0][1],g[0][2]]);this.graphPath=r;this.areaPath=c.concat(g);r.isArea=!0;r.xMap=c.xMap;this.areaPath.xMap=c.xMap;return r};b.prototype.drawDataLabels=function(){var a=this.points,h=a.length,C=
[],b=this.options.dataLabels,r=this.chart.inverted,q,v;if(b){if(g(b)){var d=b[0]||{enabled:!1};var z=b[1]||{enabled:!1}}else d=c({},b),d.x=b.xHigh,d.y=b.yHigh,z=c({},b),z.x=b.xLow,z.y=b.yLow;if(d.enabled||this._hasPointLabels){for(q=h;q--;)if(v=a[q]){var t=d.inside?v.plotHigh<v.plotLow:v.plotHigh>v.plotLow;v.y=v.high;v._plotY=v.plotY;v.plotY=v.plotHigh;C[q]=v.dataLabel;v.dataLabel=v.dataLabelUpper;v.below=t;r?d.align||(d.align=t?"right":"left"):d.verticalAlign||(d.verticalAlign=t?"top":"bottom")}this.options.dataLabels=
d;k.drawDataLabels&&k.drawDataLabels.apply(this,arguments);for(q=h;q--;)if(v=a[q])v.dataLabelUpper=v.dataLabel,v.dataLabel=C[q],delete v.dataLabels,v.y=v.low,v.plotY=v._plotY}if(z.enabled||this._hasPointLabels){for(q=h;q--;)if(v=a[q])t=z.inside?v.plotHigh<v.plotLow:v.plotHigh>v.plotLow,v.below=!t,r?z.align||(z.align=t?"left":"right"):z.verticalAlign||(z.verticalAlign=t?"bottom":"top");this.options.dataLabels=z;k.drawDataLabels&&k.drawDataLabels.apply(this,arguments)}if(d.enabled)for(q=h;q--;)if(v=
a[q])v.dataLabels=[v.dataLabelUpper,v.dataLabel].filter(function(c){return!!c});this.options.dataLabels=b}};b.prototype.alignDataLabel=function(){y.alignDataLabel.apply(this,arguments)};b.prototype.drawPoints=function(){var a=this.points.length,g;k.drawPoints.apply(this,arguments);for(g=0;g<a;){var h=this.points[g];h.origProps={plotY:h.plotY,plotX:h.plotX,isInside:h.isInside,negative:h.negative,zone:h.zone,y:h.y};h.lowerGraphic=h.graphic;h.graphic=h.upperGraphic;h.plotY=h.plotHigh;B(h.plotHighX)&&
(h.plotX=h.plotHighX);h.y=t(h.high,h.origProps.y);h.negative=h.y<(this.options.threshold||0);this.zones.length&&(h.zone=h.getZone());this.chart.polar||(h.isInside=h.isTopInside="undefined"!==typeof h.plotY&&0<=h.plotY&&h.plotY<=this.yAxis.len&&0<=h.plotX&&h.plotX<=this.xAxis.len);g++}k.drawPoints.apply(this,arguments);for(g=0;g<a;)h=this.points[g],h.upperGraphic=h.graphic,h.graphic=h.lowerGraphic,h.origProps&&(c(h,h.origProps),delete h.origProps),g++};b.defaultOptions=h(l.defaultOptions,z);return b}(l);
c(a.prototype,{deferTranslatePolar:!0,pointArrayMap:["low","high"],pointClass:f,pointValKey:"low",setStackedPoints:b});e.registerSeriesType("arearange",a);"";return a});A(f,"Series/AreaSplineRange/AreaSplineRangeSeries.js",[f["Series/AreaRange/AreaRangeSeries.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e){var a=this&&this.__extends||function(){var a=function(b,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,a){c.__proto__=a}||function(c,a){for(var g in a)a.hasOwnProperty(g)&&
(c[g]=a[g])};return a(b,d)};return function(b,d){function c(){this.constructor=b}a(b,d);b.prototype=null===d?Object.create(d):(c.prototype=d.prototype,new c)}}(),d=b.seriesTypes.spline.prototype,p=e.merge;e=e.extend;var l=function(b){function d(){var a=null!==b&&b.apply(this,arguments)||this;a.options=void 0;a.data=void 0;a.points=void 0;return a}a(d,b);d.defaultOptions=p(f.defaultOptions);return d}(f);e(l.prototype,{getPointSpline:d.getPointSpline});b.registerSeriesType("areasplinerange",l);"";return l});
A(f,"Series/BoxPlot/BoxPlotSeries.js",[f["Series/Column/ColumnSeries.js"],f["Core/Globals.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,a){c.__proto__=a}||function(c,a){for(var h in a)a.hasOwnProperty(h)&&(c[h]=a[h])};return a(b,c)};return function(b,c){function g(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(g.prototype=
c.prototype,new g)}}();b=b.noop;var p=a.extend,l=a.merge,k=a.pick;a=function(a){function b(){var c=null!==a&&a.apply(this,arguments)||this;c.data=void 0;c.options=void 0;c.points=void 0;return c}d(b,a);b.prototype.pointAttribs=function(){return{}};b.prototype.translate=function(){var c=this.yAxis,g=this.pointArrayMap;a.prototype.translate.apply(this);this.points.forEach(function(a){g.forEach(function(h){null!==a[h]&&(a[h+"Plot"]=c.translate(a[h],0,1,0,1))});a.plotHigh=a.highPlot})};b.prototype.drawPoints=
function(){var c=this,a=c.options,b=c.chart,h=b.renderer,d,e,f,l,E,C,D=0,r,q,v,L,H=!1!==c.doQuartiles,G,p=c.options.whiskerLength;c.points.forEach(function(g){var m=g.graphic,z=m?"animate":"attr",n=g.shapeArgs,t={},J={},y={},K={},B=g.color||c.color;"undefined"!==typeof g.plotY&&(r=Math.round(n.width),q=Math.floor(n.x),v=q+r,L=Math.round(r/2),d=Math.floor(H?g.q1Plot:g.lowPlot),e=Math.floor(H?g.q3Plot:g.lowPlot),f=Math.floor(g.highPlot),l=Math.floor(g.lowPlot),m||(g.graphic=m=h.g("point").add(c.group),
g.stem=h.path().addClass("highcharts-boxplot-stem").add(m),p&&(g.whiskers=h.path().addClass("highcharts-boxplot-whisker").add(m)),H&&(g.box=h.path(void 0).addClass("highcharts-boxplot-box").add(m)),g.medianShape=h.path(void 0).addClass("highcharts-boxplot-median").add(m)),b.styledMode||(J.stroke=g.stemColor||a.stemColor||B,J["stroke-width"]=k(g.stemWidth,a.stemWidth,a.lineWidth),J.dashstyle=g.stemDashStyle||a.stemDashStyle||a.dashStyle,g.stem.attr(J),p&&(y.stroke=g.whiskerColor||a.whiskerColor||B,
y["stroke-width"]=k(g.whiskerWidth,a.whiskerWidth,a.lineWidth),y.dashstyle=g.whiskerDashStyle||a.whiskerDashStyle||a.dashStyle,g.whiskers.attr(y)),H&&(t.fill=g.fillColor||a.fillColor||B,t.stroke=a.lineColor||B,t["stroke-width"]=a.lineWidth||0,t.dashstyle=g.boxDashStyle||a.boxDashStyle||a.dashStyle,g.box.attr(t)),K.stroke=g.medianColor||a.medianColor||B,K["stroke-width"]=k(g.medianWidth,a.medianWidth,a.lineWidth),K.dashstyle=g.medianDashStyle||a.medianDashStyle||a.dashStyle,g.medianShape.attr(K)),
C=g.stem.strokeWidth()%2/2,D=q+L+C,m=[["M",D,e],["L",D,f],["M",D,d],["L",D,l]],g.stem[z]({d:m}),H&&(C=g.box.strokeWidth()%2/2,d=Math.floor(d)+C,e=Math.floor(e)+C,q+=C,v+=C,m=[["M",q,e],["L",q,d],["L",v,d],["L",v,e],["L",q,e],["Z"]],g.box[z]({d:m})),p&&(C=g.whiskers.strokeWidth()%2/2,f+=C,l+=C,G=/%$/.test(p)?L*parseFloat(p)/100:p/2,m=[["M",D-G,f],["L",D+G,f],["M",D-G,l],["L",D+G,l]],g.whiskers[z]({d:m})),E=Math.round(g.medianPlot),C=g.medianShape.strokeWidth()%2/2,E+=C,m=[["M",q,E],["L",v,E]],g.medianShape[z]({d:m}))})};
b.prototype.toYData=function(c){return[c.low,c.q1,c.median,c.q3,c.high]};b.defaultOptions=l(f.defaultOptions,{threshold:null,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Maximum: {point.high}<br/>Upper quartile: {point.q3}<br/>Median: {point.median}<br/>Lower quartile: {point.q1}<br/>Minimum: {point.low}<br/>'},whiskerLength:"50%",fillColor:"#ffffff",lineWidth:1,medianWidth:2,whiskerWidth:2});return b}(f);p(a.prototype,{pointArrayMap:["low","q1",
"median","q3","high"],pointValKey:"high",drawDataLabels:b,setStackedPoints:b});e.registerSeriesType("boxplot",a);"";return a});A(f,"Series/Bubble/BubbleLegendDefaults.js",[],function(){return{borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"10px",color:"#000000"},x:0,y:0},maxSize:60,minSize:10,
legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0}});A(f,"Series/Bubble/BubbleLegendItem.js",[f["Core/Color/Color.js"],f["Core/FormatUtilities.js"],f["Core/Globals.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=f.parse,p=e.noop,l=a.arrayMax,k=a.arrayMin,y=a.isNumber,B=a.merge,c=a.pick,g=a.stableSort;"";return function(){function a(c,a){this.options=this.symbols=this.visible=this.selected=this.ranges=
this.movementX=this.maxLabel=this.legendSymbol=this.legendItemWidth=this.legendItemHeight=this.legendItem=this.legendGroup=this.legend=this.fontMetrics=this.chart=void 0;this.setState=p;this.init(c,a)}a.prototype.init=function(c,a){this.options=c;this.visible=!0;this.chart=a.chart;this.legend=a};a.prototype.addToLegend=function(c){c.splice(this.options.legendIndex,0,this)};a.prototype.drawLegendSymbol=function(a){var h=this.chart,b=this.options,d=c(a.options.itemDistance,20),e=b.ranges,k=b.connectorDistance;
this.fontMetrics=h.renderer.fontMetrics(b.labels.style.fontSize);e&&e.length&&y(e[0].value)?(g(e,function(c,a){return a.value-c.value}),this.ranges=e,this.setOptions(),this.render(),a=this.getMaxLabelSize(),e=this.ranges[0].radius,h=2*e,k=k-e+a.width,k=0<k?k:0,this.maxLabel=a,this.movementX="left"===b.labels.align?k:0,this.legendItemWidth=h+k+d,this.legendItemHeight=h+this.fontMetrics.h/2):a.options.bubbleLegend.autoRanges=!0};a.prototype.setOptions=function(){var a=this.ranges,g=this.options,b=this.chart.series[g.seriesIndex],
e=this.legend.baseline,k={zIndex:g.zIndex,"stroke-width":g.borderWidth},f={zIndex:g.zIndex,"stroke-width":g.connectorWidth},C={align:this.legend.options.rtl||"left"===g.labels.align?"right":"left",zIndex:g.zIndex},D=b.options.marker.fillOpacity,r=this.chart.styledMode;a.forEach(function(h,v){r||(k.stroke=c(h.borderColor,g.borderColor,b.color),k.fill=c(h.color,g.color,1!==D?d(b.color).setOpacity(D).get("rgba"):b.color),f.stroke=c(h.connectorColor,g.connectorColor,b.color));a[v].radius=this.getRangeRadius(h.value);
a[v]=B(a[v],{center:a[0].radius-a[v].radius+e});r||B(!0,a[v],{bubbleAttribs:B(k),connectorAttribs:B(f),labelAttribs:C})},this)};a.prototype.getRangeRadius=function(c){var a=this.options;return this.chart.series[this.options.seriesIndex].getRadius.call(this,a.ranges[a.ranges.length-1].value,a.ranges[0].value,a.minSize,a.maxSize,c)};a.prototype.render=function(){var c=this.chart.renderer,a=this.options.zThreshold;this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]});this.legendSymbol=
c.g("bubble-legend");this.legendItem=c.g("bubble-legend-item");this.legendSymbol.translateX=0;this.legendSymbol.translateY=0;this.ranges.forEach(function(c){c.value>=a&&this.renderRange(c)},this);this.legendSymbol.add(this.legendItem);this.legendItem.add(this.legendGroup);this.hideOverlappingLabels()};a.prototype.renderRange=function(c){var a=this.options,g=a.labels,b=this.chart,h=b.series[a.seriesIndex],d=b.renderer,e=this.symbols;b=e.labels;var k=c.center,r=Math.abs(c.radius),q=a.connectorDistance||
0,v=g.align,f=a.connectorWidth,H=this.ranges[0].radius||0,t=k-r-a.borderWidth/2+f/2,l=this.fontMetrics;l=l.f/2-(l.h-l.f)/2;var n=d.styledMode;q=this.legend.options.rtl||"left"===v?-q:q;"center"===v&&(q=0,a.connectorDistance=0,c.labelAttribs.align="center");v=t+a.labels.y;var m=H+q+a.labels.x;e.bubbleItems.push(d.circle(H,k+((t%1?1:.5)-(f%2?0:.5)),r).attr(n?{}:c.bubbleAttribs).addClass((n?"highcharts-color-"+h.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(a.className||"")).add(this.legendSymbol));
e.connectors.push(d.path(d.crispLine([["M",H,t],["L",H+q,t]],a.connectorWidth)).attr(n?{}:c.connectorAttribs).addClass((n?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(a.connectorClassName||"")).add(this.legendSymbol));c=d.text(this.formatLabel(c),m,v+l).attr(n?{}:c.labelAttribs).css(n?{}:g.style).addClass("highcharts-bubble-legend-labels "+(a.labels.className||"")).add(this.legendSymbol);b.push(c);c.placed=!0;c.alignAttr={x:m,y:v+l}};a.prototype.getMaxLabelSize=
function(){var c,a;this.symbols.labels.forEach(function(g){a=g.getBBox(!0);c=c?a.width>c.width?a:c:a});return c||{}};a.prototype.formatLabel=function(c){var a=this.options,g=a.labels.formatter;a=a.labels.format;var d=this.chart.numberFormatter;return a?b.format(a,c):g?g.call(c):d(c.value,1)};a.prototype.hideOverlappingLabels=function(){var c=this.chart,a=this.symbols;!this.options.labels.allowOverlap&&a&&(c.hideOverlappingLabels(a.labels),a.labels.forEach(function(c,g){c.newOpacity?c.newOpacity!==
c.oldOpacity&&a.connectors[g].show():a.connectors[g].hide()}))};a.prototype.getRanges=function(){var a=this.legend.bubbleLegend,g=a.options.ranges,b,d=Number.MAX_VALUE,e=-Number.MAX_VALUE;a.chart.series.forEach(function(a){a.isBubble&&!a.ignoreSeries&&(b=a.zData.filter(y),b.length&&(d=c(a.options.zMin,Math.min(d,Math.max(k(b),!1===a.options.displayNegative?a.options.zThreshold:-Number.MAX_VALUE))),e=c(a.options.zMax,Math.max(e,l(b)))))});var f=d===e?[{value:e}]:[{value:d},{value:(d+e)/2},{value:e,
autoRanges:!0}];g.length&&g[0].radius&&f.reverse();f.forEach(function(c,a){g&&g[a]&&(f[a]=B(g[a],c))});return f};a.prototype.predictBubbleSizes=function(){var c=this.chart,a=this.fontMetrics,g=c.legend.options,b=g.floating,d=(g="horizontal"===g.layout)?c.legend.lastLineHeight:0,e=c.plotSizeX,k=c.plotSizeY,D=c.series[this.options.seriesIndex],r=D.getPxExtremes();c=Math.ceil(r.minPxSize);r=Math.ceil(r.maxPxSize);var q=Math.min(k,e);D=D.options.maxSize;if(b||!/%$/.test(D))a=r;else if(D=parseFloat(D),
a=(q+d-a.h/2)*D/100/(D/100+1),g&&k-a>=e||!g&&e-a>=k)a=r;return[c,Math.ceil(a)]};a.prototype.updateRanges=function(c,a){var g=this.legend.options.bubbleLegend;g.minSize=c;g.maxSize=a;g.ranges=this.getRanges()};a.prototype.correctSizes=function(){var c=this.legend,a=this.chart.series[this.options.seriesIndex].getPxExtremes();1<Math.abs(Math.ceil(a.maxPxSize)-this.options.maxSize)&&(this.updateRanges(this.options.minSize,a.maxPxSize),c.render())};return a}()});A(f,"Series/Bubble/BubbleLegendComposition.js",
[f["Series/Bubble/BubbleLegendDefaults.js"],f["Series/Bubble/BubbleLegendItem.js"],f["Core/DefaultOptions.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=e.setOptions,p=a.addEvent,l=a.objectEach,k=a.wrap,y;(function(a){function c(c,a,b){var d=this.legend,r=0<=g(this);if(d&&d.options.enabled&&d.bubbleLegend&&d.options.bubbleLegend.autoRanges&&r){var q=d.bubbleLegend.options;r=d.bubbleLegend.predictBubbleSizes();d.bubbleLegend.updateRanges(r[0],r[1]);q.placed||(d.group.placed=!1,d.allItems.forEach(function(c){c.legendGroup.translateY=
null}));d.render();this.getMargins();this.axes.forEach(function(c){c.visible&&c.render();q.placed||(c.setScale(),c.updateNames(),l(c.ticks,function(c){c.isNew=!0;c.isNewLabel=!0}))});q.placed=!0;this.getMargins();c.call(this,a,b);d.bubbleLegend.correctSizes();y(d,e(d))}else c.call(this,a,b),d&&d.options.enabled&&d.bubbleLegend&&(d.render(),y(d,e(d)))}function g(c){c=c.series;for(var a=0;a<c.length;){if(c[a]&&c[a].isBubble&&c[a].visible&&c[a].zData.length)return a;a++}return-1}function e(c){c=c.allItems;
var a=[],g=c.length,b,r=0;for(b=0;b<g;b++)if(c[b].legendItemHeight&&(c[b].itemHeight=c[b].legendItemHeight),c[b]===c[g-1]||c[b+1]&&c[b]._legendItemPos[1]!==c[b+1]._legendItemPos[1]){a.push({height:0});var d=a[a.length-1];for(r;r<=b;r++)c[r].itemHeight>d.height&&(d.height=c[r].itemHeight);d.step=b}return a}function h(c){var a=this.bubbleLegend,d=this.options,h=d.bubbleLegend,r=g(this.chart);a&&a.ranges&&a.ranges.length&&(h.ranges.length&&(h.autoRanges=!!h.ranges[0].autoRanges),this.destroyItem(a));
0<=r&&d.enabled&&h.enabled&&(h.seriesIndex=r,this.bubbleLegend=new b(h,this),this.bubbleLegend.addToLegend(c.allItems))}function z(){var c=this.chart,a=this.visible,b=this.chart.legend;b&&b.bubbleLegend&&(this.visible=!a,this.ignoreSeries=a,c=0<=g(c),b.bubbleLegend.visible!==c&&(b.update({bubbleLegend:{enabled:c}}),b.bubbleLegend.visible=c),this.visible=a)}function y(c,a){var g=c.options.rtl,b,r,d,h=0;c.allItems.forEach(function(c,q){b=c.legendGroup.translateX;r=c._legendItemPos[1];if((d=c.movementX)||
g&&c.ranges)d=g?b-c.options.maxSize/2:b+d,c.legendGroup.attr({translateX:d});q>a[h].step&&h++;c.legendGroup.attr({translateY:Math.round(r+a[h].height/2)});c._legendItemPos[1]=r+a[h].height/2})}var B=[];a.compose=function(a,g,b){-1===B.indexOf(a)&&(B.push(a),d({legend:{bubbleLegend:f}}),k(a.prototype,"drawChartBox",c));-1===B.indexOf(g)&&(B.push(g),p(g,"afterGetAllItems",h));-1===B.indexOf(b)&&(B.push(b),p(b,"legendItemClick",z))}})(y||(y={}));return y});A(f,"Series/Bubble/BubblePoint.js",[f["Core/Series/Point.js"],
f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e){var a=this&&this.__extends||function(){var a=function(b,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d])};return a(b,d)};return function(b,d){function e(){this.constructor=b}a(b,d);b.prototype=null===d?Object.create(d):(e.prototype=d.prototype,new e)}}();e=e.extend;b=function(b){function d(){var a=null!==b&&b.apply(this,arguments)||
this;a.options=void 0;a.series=void 0;return a}a(d,b);d.prototype.haloPath=function(a){return f.prototype.haloPath.call(this,0===a?0:(this.marker?this.marker.radius||0:0)+a)};return d}(b.seriesTypes.scatter.prototype.pointClass);e(b.prototype,{ttBelow:!1});return b});A(f,"Series/Bubble/BubbleSeries.js",[f["Core/Axis/Axis.js"],f["Series/Bubble/BubbleLegendComposition.js"],f["Series/Bubble/BubblePoint.js"],f["Core/Color/Color.js"],f["Core/Globals.js"],f["Core/Series/Series.js"],f["Core/Series/SeriesRegistry.js"],
f["Core/Utilities.js"]],function(f,b,e,a,d,p,l,k){var y=this&&this.__extends||function(){var c=function(a,r){c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(c,a){c.__proto__=a}||function(c,a){for(var r in a)a.hasOwnProperty(r)&&(c[r]=a[r])};return c(a,r)};return function(a,r){function b(){this.constructor=a}c(a,r);a.prototype=null===r?Object.create(r):(b.prototype=r.prototype,new b)}}(),B=a.parse;a=d.noop;var c=l.seriesTypes;d=c.column;var g=c.scatter;c=k.addEvent;var t=k.arrayMax,
h=k.arrayMin,z=k.clamp,J=k.extend,I=k.isNumber,K=k.merge,E=k.pick;k=function(c){function a(){var a=null!==c&&c.apply(this,arguments)||this;a.data=void 0;a.maxPxSize=void 0;a.minPxSize=void 0;a.options=void 0;a.points=void 0;a.radii=void 0;a.yData=void 0;a.zData=void 0;return a}y(a,c);a.prototype.animate=function(a){!a&&this.points.length<this.options.animationLimit&&this.points.forEach(function(a){var c=a.graphic;c&&c.width&&(this.hasRendered||c.attr({x:a.plotX,y:a.plotY,width:1,height:1}),c.animate(this.markerAttribs(a),
this.options.animation))},this)};a.prototype.getRadii=function(){var a=this,c=this.zData,b=this.yData,g=[],d=this.chart.bubbleZExtremes;var h=this.getPxExtremes();var e=h.minPxSize,k=h.maxPxSize;if(!d){var m=Number.MAX_VALUE,f=-Number.MAX_VALUE,t;this.chart.series.forEach(function(c){c.bubblePadding&&(c.visible||!a.chart.options.chart.ignoreHiddenSeries)&&(c=(c.onPoint||c).getZExtremes())&&(m=Math.min(m||c.zMin,c.zMin),f=Math.max(f||c.zMax,c.zMax),t=!0)});t?(d={zMin:m,zMax:f},this.chart.bubbleZExtremes=
d):d={zMin:0,zMax:0}}var w=0;for(h=c.length;w<h;w++){var z=c[w];g.push(this.getRadius(d.zMin,d.zMax,e,k,z,b&&b[w]))}this.radii=g};a.prototype.getRadius=function(a,c,b,g,d,h){var r=this.options,q="width"!==r.sizeBy,m=r.zThreshold,e=c-a,v=.5;if(null===h||null===d)return null;if(I(d)){r.sizeByAbsoluteValue&&(d=Math.abs(d-m),e=Math.max(c-m,Math.abs(a-m)),a=0);if(d<a)return b/2-1;0<e&&(v=(d-a)/e)}q&&0<=v&&(v=Math.sqrt(v));return Math.ceil(b+v*(g-b))/2};a.prototype.hasData=function(){return!!this.processedXData.length};
a.prototype.pointAttribs=function(a,c){var b=this.options.marker.fillOpacity;a=p.prototype.pointAttribs.call(this,a,c);1!==b&&(a.fill=B(a.fill).setOpacity(b).get("rgba"));return a};a.prototype.translate=function(){c.prototype.translate.call(this);this.getRadii();this.translateBubble()};a.prototype.translateBubble=function(){for(var a=this.data,c=this.radii,b=this.getPxExtremes().minPxSize,g=a.length;g--;){var d=a[g],h=c?c[g]:0;I(h)&&h>=b/2?(d.marker=J(d.marker,{radius:h,width:2*h,height:2*h}),d.dlBox=
{x:d.plotX-h,y:d.plotY-h,width:2*h,height:2*h}):(d.shapeArgs=d.dlBox=void 0,d.plotY=0,d.marker={width:0,height:0})}};a.prototype.getPxExtremes=function(){var a=Math.min(this.chart.plotWidth,this.chart.plotHeight),c=function(c){if("string"===typeof c){var b=/%$/.test(c);c=parseInt(c,10)}return b?a*c/100:c},b=c(E(this.options.minSize,8));c=Math.max(c(E(this.options.maxSize,"20%")),b);return{minPxSize:b,maxPxSize:c}};a.prototype.getZExtremes=function(){var c=this.options,a=(this.zData||[]).filter(I);
if(a.length){var b=E(c.zMin,z(h(a),!1===c.displayNegative?c.zThreshold||0:-Number.MAX_VALUE,Number.MAX_VALUE));c=E(c.zMax,t(a));if(I(b)&&I(c))return{zMin:b,zMax:c}}};a.compose=b.compose;a.defaultOptions=K(g.defaultOptions,{dataLabels:{formatter:function(){var c=this.series.chart.numberFormatter,a=this.point.z;return I(a)?c(a,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,
maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"});return a}(g);J(k.prototype,{alignDataLabel:d.prototype.alignDataLabel,applyZones:a,bubblePadding:!0,buildKDTree:a,directTouch:!0,isBubble:!0,pointArrayMap:["y","z"],pointClass:e,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"});c(k,"updatedData",function(c){delete c.target.chart.bubbleZExtremes});
f.prototype.beforePadding=function(){var c=this,a=this.len,b=this.chart,g=0,d=a,h=this.isXAxis,e=h?"xData":"yData",k=this.min,f=this.max-k,n=a/f,m;this.series.forEach(function(a){if(a.bubblePadding&&(a.visible||!b.options.chart.ignoreHiddenSeries)){m=c.allowZoomOutside=!0;var r=a[e];h&&((a.onPoint||a).getRadii(0,0,a),a.onPoint&&(a.radii=a.onPoint.radii));if(0<f)for(var q=r.length;q--;)if(I(r[q])&&c.dataMin<=r[q]&&r[q]<=c.max){var v=a.radii&&a.radii[q]||0;g=Math.min((r[q]-k)*n-v,g);d=Math.max((r[q]-
k)*n+v,d)}}});m&&0<f&&!this.logarithmic&&(d-=a,n*=(a+Math.max(0,g)-Math.min(d,a))/a,[["min","userMin",g],["max","userMax",d]].forEach(function(a){"undefined"===typeof E(c.options[a[0]],c[a[1]])&&(c[a[0]]+=a[2]/n)}))};l.registerSeriesType("bubble",k);"";"";return k});A(f,"Series/ColumnRange/ColumnRangePoint.js",[f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b){var e=this&&this.__extends||function(){var a=function(b,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&
function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return a(b,d)};return function(b,d){function e(){this.constructor=b}a(b,d);b.prototype=null===d?Object.create(d):(e.prototype=d.prototype,new e)}}(),a=f.seriesTypes;f=a.column.prototype.pointClass.prototype;var d=b.extend,p=b.isNumber;b=function(a){function b(){var b=null!==a&&a.apply(this,arguments)||this;b.options=void 0;b.series=void 0;return b}e(b,a);b.prototype.isValid=function(){return p(this.low)};
return b}(a.arearange.prototype.pointClass);d(b.prototype,{setState:f.setState});return b});A(f,"Series/ColumnRange/ColumnRangeSeries.js",[f["Series/ColumnRange/ColumnRangePoint.js"],f["Core/Globals.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=this&&this.__extends||function(){var a=function(c,b){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return a(c,
b)};return function(c,b){function d(){this.constructor=c}a(c,b);c.prototype=null===b?Object.create(b):(d.prototype=b.prototype,new d)}}();b=b.noop;var p=e.seriesTypes,l=p.arearange,k=p.column,y=p.column.prototype,B=a.clamp;p=a.extend;var c=a.merge,g=a.pick,t={pointRange:null,marker:null,states:{hover:{halo:!1}}};a=function(a){function b(){return null!==a&&a.apply(this,arguments)||this}d(b,a);b.prototype.setOptions=function(){c(!0,arguments[0],{stacking:void 0});return l.prototype.setOptions.apply(this,
arguments)};b.prototype.translate=function(){var a=this,c=this.yAxis,b=this.xAxis,d=b.startAngleRad,h=this.chart,e=this.xAxis.isRadial,r=Math.max(h.chartWidth,h.chartHeight)+999,q,f,k,t,l;y.translate.apply(this);this.points.forEach(function(v){var n=v.shapeArgs||{},m=a.options.minPointLength;v.plotHigh=t=B(c.translate(v.high,0,1,0,1),-r,r);v.plotLow=B(v.plotY,-r,r);l=t;q=g(v.rectPlotY,v.plotY)-t;Math.abs(q)<m?(f=m-q,q+=f,l-=f/2):0>q&&(q*=-1,l-=q);e&&a.polar?(k=v.barX+d,v.shapeType="arc",v.shapeArgs=
a.polar.arc(l+q,l,k,k+v.pointWidth)):(n.height=q,n.y=l,m=n.x,m=void 0===m?0:m,n=n.width,n=void 0===n?0:n,v.tooltipPos=h.inverted?[c.len+c.pos-h.plotLeft-l-q/2,b.len+b.pos-h.plotTop-m-n/2,q]:[b.left-h.plotLeft+m+n/2,c.pos-h.plotTop+l+q/2,q])})};b.prototype.pointAttribs=function(){return y.pointAttribs.apply(this,arguments)};b.prototype.translate3dPoints=function(){return y.translate3dPoints.apply(this,arguments)};b.prototype.translate3dShapes=function(){return y.translate3dShapes.apply(this,arguments)};
b.defaultOptions=c(k.defaultOptions,l.defaultOptions,t);return b}(l);p(a.prototype,{directTouch:!0,pointClass:f,trackerGroups:["group","dataLabelsGroup"],adjustForMissingColumns:y.adjustForMissingColumns,animate:y.animate,crispCol:y.crispCol,drawGraph:b,drawPoints:y.drawPoints,getSymbol:b,drawTracker:y.drawTracker,getColumnMetrics:y.getColumnMetrics});e.registerSeriesType("columnrange",a);"";return a});A(f,"Series/ColumnPyramid/ColumnPyramidSeries.js",[f["Series/Column/ColumnSeries.js"],f["Core/Series/SeriesRegistry.js"],
f["Core/Utilities.js"]],function(f,b,e){var a=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return a(b,c)};return function(b,c){function d(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(d.prototype=c.prototype,new d)}}(),d=f.prototype,p=e.clamp,l=e.merge,k=e.pick;e=function(b){function e(){var a=null!==b&&b.apply(this,arguments)||
this;a.data=void 0;a.options=void 0;a.points=void 0;return a}a(e,b);e.prototype.translate=function(){var a=this,b=a.chart,e=a.options,h=a.dense=2>a.closestPointRange*a.xAxis.transA;h=a.borderWidth=k(e.borderWidth,h?0:1);var f=a.yAxis,l=e.threshold,B=a.translatedThreshold=f.getThreshold(l),y=k(e.minPointLength,5),E=a.getColumnMetrics(),C=E.width,D=a.barW=Math.max(C,1+2*h),r=a.pointXOffset=E.offset;b.inverted&&(B-=.5);e.pointPadding&&(D=Math.ceil(D));d.translate.apply(a);a.points.forEach(function(c){var d=
k(c.yBottom,B),g=999+Math.abs(d),h=p(c.plotY,-g,f.len+g);g=c.plotX+r;var q=D/2,t=Math.min(h,d);d=Math.max(h,d)-t;var n;c.barX=g;c.pointWidth=C;c.tooltipPos=b.inverted?[f.len+f.pos-b.plotLeft-h,a.xAxis.len-g-q,d]:[g+q,h+f.pos-b.plotTop,d];h=l+(c.total||c.y);"percent"===e.stacking&&(h=l+(0>c.y)?-100:100);h=f.toPixels(h,!0);var m=(n=b.plotHeight-h-(b.plotHeight-B))?q*(t-h)/n:0;var z=n?q*(t+d-h)/n:0;n=g-m+q;m=g+m+q;var u=g+z+q;z=g-z+q;var w=t-y;var x=t+d;0>c.y&&(w=t,x=t+d+y);b.inverted&&(u=f.width-t,
n=h-(f.width-B),m=q*(h-u)/n,z=q*(h-(u-d))/n,n=g+q+m,m=n-2*m,u=g-z+q,z=g+z+q,w=t,x=t+d-y,0>c.y&&(x=t+d+y));c.shapeType="path";c.shapeArgs={x:n,y:w,width:m-n,height:d,d:[["M",n,w],["L",m,w],["L",u,x],["L",z,x],["Z"]]}})};e.defaultOptions=l(f.defaultOptions,{});return e}(f);b.registerSeriesType("columnpyramid",e);"";return e});A(f,"Series/ErrorBar/ErrorBarSeries.js",[f["Series/BoxPlot/BoxPlotSeries.js"],f["Series/Column/ColumnSeries.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,
b,e,a){var d=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return a(b,c)};return function(b,c){function d(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(d.prototype=c.prototype,new d)}}(),p=e.seriesTypes.arearange,l=a.merge;a=a.extend;var k=function(a){function e(){var c=null!==a&&a.apply(this,arguments)||this;c.data=void 0;
c.options=void 0;c.points=void 0;return c}d(e,a);e.prototype.getColumnMetrics=function(){return this.linkedParent&&this.linkedParent.columnMetrics||b.prototype.getColumnMetrics.call(this)};e.prototype.drawDataLabels=function(){var a=this.pointValKey;p&&(p.prototype.drawDataLabels.call(this),this.data.forEach(function(c){c.y=c[a]}))};e.prototype.toYData=function(a){return[a.low,a.high]};e.defaultOptions=l(f.defaultOptions,{color:"#000000",grouping:!1,linkedTo:":previous",tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.low}</b> - <b>{point.high}</b><br/>'},
whiskerWidth:null});return e}(f);a(k.prototype,{pointArrayMap:["low","high"],pointValKey:"high",doQuartiles:!1});e.registerSeriesType("errorbar",k);"";return k});A(f,"Series/Gauge/GaugePoint.js",[f["Core/Series/SeriesRegistry.js"]],function(f){var b=this&&this.__extends||function(){var b=function(a,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d])};return b(a,d)};return function(a,d){function e(){this.constructor=
a}b(a,d);a.prototype=null===d?Object.create(d):(e.prototype=d.prototype,new e)}}();return function(e){function a(){var a=null!==e&&e.apply(this,arguments)||this;a.options=void 0;a.series=void 0;a.shapeArgs=void 0;return a}b(a,e);a.prototype.setState=function(a){this.state=a};return a}(f.series.prototype.pointClass)});A(f,"Series/Gauge/GaugeSeries.js",[f["Series/Gauge/GaugePoint.js"],f["Core/Globals.js"],f["Core/Series/SeriesRegistry.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=this&&this.__extends||
function(){var a=function(c,b){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,c){a.__proto__=c}||function(a,c){for(var b in c)c.hasOwnProperty(b)&&(a[b]=c[b])};return a(c,b)};return function(c,b){function d(){this.constructor=c}a(c,b);c.prototype=null===b?Object.create(b):(d.prototype=b.prototype,new d)}}();b=b.noop;var p=e.series,l=e.seriesTypes.column,k=a.clamp,y=a.isNumber,B=a.extend,c=a.merge,g=a.pick,t=a.pInt;a=function(a){function b(){var c=null!==a&&a.apply(this,arguments)||
this;c.data=void 0;c.points=void 0;c.options=void 0;c.yAxis=void 0;return c}d(b,a);b.prototype.translate=function(){var a=this.yAxis,b=this.options,d=a.center;this.generatePoints();this.points.forEach(function(g){var h=c(b.dial,g.dial),e=t(h.radius)*d[2]/200,r=t(h.baseLength)*e/100,f=t(h.rearLength)*e/100,v=h.baseWidth,l=h.topWidth,p=b.overshoot,z=a.startAngleRad+a.translate(g.y,void 0,void 0,void 0,!0);if(y(p)||!1===b.wrap)p=y(p)?p/180*Math.PI:0,z=k(z,a.startAngleRad-p,a.endAngleRad+p);z=180*z/Math.PI;
g.shapeType="path";g.shapeArgs={d:h.path||[["M",-f,-v/2],["L",r,-v/2],["L",e,-l/2],["L",e,l/2],["L",r,v/2],["L",-f,v/2],["Z"]],translateX:d[0],translateY:d[1],rotation:z};g.plotX=d[0];g.plotY=d[1]})};b.prototype.drawPoints=function(){var a=this,b=a.chart,d=a.yAxis.center,g=a.pivot,h=a.options,e=h.pivot,r=b.renderer;a.points.forEach(function(d){var g=d.graphic,e=d.shapeArgs,f=e.d,q=c(h.dial,d.dial);g?(g.animate(e),e.d=f):d.graphic=r[d.shapeType](e).attr({rotation:e.rotation,zIndex:1}).addClass("highcharts-dial").add(a.group);
if(!b.styledMode)d.graphic[g?"animate":"attr"]({stroke:q.borderColor,"stroke-width":q.borderWidth,fill:q.backgroundColor})});g?g.animate({translateX:d[0],translateY:d[1]}):e&&(a.pivot=r.circle(0,0,e.radius).attr({zIndex:2}).addClass("highcharts-pivot").translate(d[0],d[1]).add(a.group),b.styledMode||a.pivot.attr({fill:e.backgroundColor,stroke:e.borderColor,"stroke-width":e.borderWidth}))};b.prototype.animate=function(a){var c=this;a||c.points.forEach(function(a){var b=a.graphic;b&&(b.attr({rotation:180*
c.yAxis.startAngleRad/Math.PI}),b.animate({rotation:a.shapeArgs.rotation},c.options.animation))})};b.prototype.render=function(){this.group=this.plotGroup("group","series",this.visible?"inherit":"hidden",this.options.zIndex,this.chart.seriesGroup);p.prototype.render.call(this);this.group.clip(this.chart.clipRect)};b.prototype.setData=function(a,c){p.prototype.setData.call(this,a,!1);this.processData();this.generatePoints();g(c,!0)&&this.chart.redraw()};b.prototype.hasData=function(){return!!this.points.length};
b.defaultOptions=c(p.defaultOptions,{dataLabels:{borderColor:"#cccccc",borderRadius:3,borderWidth:1,crop:!1,defer:!1,enabled:!0,verticalAlign:"top",y:15,zIndex:2},dial:{backgroundColor:"#000000",baseLength:"70%",baseWidth:3,borderColor:"#cccccc",borderWidth:0,radius:"80%",rearLength:"10%",topWidth:1},pivot:{radius:5,borderWidth:0,borderColor:"#cccccc",backgroundColor:"#000000"},tooltip:{headerFormat:""},showInLegend:!1});return b}(p);B(a.prototype,{angular:!0,directTouch:!0,drawGraph:b,drawTracker:l.prototype.drawTracker,
fixedBox:!0,forceDL:!0,noSharedTooltip:!0,pointClass:f,trackerGroups:["group","dataLabelsGroup"]});e.registerSeriesType("gauge",a);"";return a});A(f,"Series/PackedBubble/PackedBubblePoint.js",[f["Core/Chart/Chart.js"],f["Core/Series/Point.js"],f["Core/Series/SeriesRegistry.js"]],function(f,b,e){var a=this&&this.__extends||function(){var a=function(b,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d])};
return a(b,d)};return function(b,d){function e(){this.constructor=b}a(b,d);b.prototype=null===d?Object.create(d):(e.prototype=d.prototype,new e)}}();return function(d){function e(){var a=null!==d&&d.apply(this,arguments)||this;a.degree=NaN;a.mass=NaN;a.radius=NaN;a.options=void 0;a.series=void 0;a.value=null;return a}a(e,d);e.prototype.destroy=function(){this.series.layout&&this.series.layout.removeElementFromCollection(this,this.series.layout.nodes);return b.prototype.destroy.apply(this,arguments)};
e.prototype.firePointEvent=function(){var a=this.series.options;if(this.isParentNode&&a.parentNode){var d=a.allowPointSelect;a.allowPointSelect=a.parentNode.allowPointSelect;b.prototype.firePointEvent.apply(this,arguments);a.allowPointSelect=d}else b.prototype.firePointEvent.apply(this,arguments)};e.prototype.select=function(){var a=this.series.chart;this.isParentNode?(a.getSelectedPoints=a.getSelectedParentNodes,b.prototype.select.apply(this,arguments),a.getSelectedPoints=f.prototype.getSelectedPoints):
b.prototype.select.apply(this,arguments)};return e}(e.seriesTypes.bubble.prototype.pointClass)});A(f,"Series/Networkgraph/DraggableNodes.js",[f["Core/Chart/Chart.js"],f["Core/Globals.js"],f["Core/Utilities.js"]],function(f,b,e){var a=e.addEvent;b.dragNodesMixin={onMouseDown:function(a,b){b=this.chart.pointer.normalize(b);a.fixedPosition={chartX:b.chartX,chartY:b.chartY,plotX:a.plotX,plotY:a.plotY};a.inDragMode=!0},onMouseMove:function(a,b){if(a.fixedPosition&&a.inDragMode){var d=this.chart,e=d.pointer.normalize(b);
b=a.fixedPosition.chartX-e.chartX;e=a.fixedPosition.chartY-e.chartY;var f=void 0,p=void 0,c=d.graphLayoutsLookup;if(5<Math.abs(b)||5<Math.abs(e))f=a.fixedPosition.plotX-b,p=a.fixedPosition.plotY-e,d.isInsidePlot(f,p)&&(a.plotX=f,a.plotY=p,a.hasDragged=!0,this.redrawHalo(a),c.forEach(function(a){a.restartSimulation()}))}},onMouseUp:function(a,b){a.fixedPosition&&(a.hasDragged&&(this.layout.enableSimulation?this.layout.start():this.chart.redraw()),a.inDragMode=a.hasDragged=!1,this.options.fixedDraggable||
delete a.fixedPosition)},redrawHalo:function(a){a&&this.halo&&this.halo.attr({d:a.haloPath(this.options.states.hover.halo.size)})}};a(f,"load",function(){var b=this,e,f,k;b.container&&(e=a(b.container,"mousedown",function(d){var e=b.hoverPoint;e&&e.series&&e.series.hasDraggableNodes&&e.series.options.draggable&&(e.series.onMouseDown(e,d),f=a(b.container,"mousemove",function(a){return e&&e.series&&e.series.onMouseMove(e,a)}),k=a(b.container.ownerDocument,"mouseup",function(a){f();k();return e&&e.series&&
e.series.onMouseUp(e,a)}))}));a(b,"destroy",function(){e()})})});A(f,"Series/Networkgraph/Integrations.js",[f["Core/Globals.js"]],function(f){f.networkgraphIntegrations={verlet:{attractiveForceFunction:function(b,e){return(e-b)/b},repulsiveForceFunction:function(b,e){return(e-b)/b*(e>b?1:0)},barycenter:function(){var b=this.options.gravitationalConstant,e=this.barycenter.xFactor,a=this.barycenter.yFactor;e=(e-(this.box.left+this.box.width)/2)*b;a=(a-(this.box.top+this.box.height)/2)*b;this.nodes.forEach(function(b){b.fixedPosition||
(b.plotX-=e/b.mass/b.degree,b.plotY-=a/b.mass/b.degree)})},repulsive:function(b,e,a){e=e*this.diffTemperature/b.mass/b.degree;b.fixedPosition||(b.plotX+=a.x*e,b.plotY+=a.y*e)},attractive:function(b,e,a){var d=b.getMass(),f=-a.x*e*this.diffTemperature;e=-a.y*e*this.diffTemperature;b.fromNode.fixedPosition||(b.fromNode.plotX-=f*d.fromNode/b.fromNode.degree,b.fromNode.plotY-=e*d.fromNode/b.fromNode.degree);b.toNode.fixedPosition||(b.toNode.plotX+=f*d.toNode/b.toNode.degree,b.toNode.plotY+=e*d.toNode/
b.toNode.degree)},integrate:function(b,e){var a=-b.options.friction,d=b.options.maxSpeed,f=(e.plotX+e.dispX-e.prevX)*a;a*=e.plotY+e.dispY-e.prevY;var l=Math.abs,k=l(f)/(f||1);l=l(a)/(a||1);f=k*Math.min(d,Math.abs(f));a=l*Math.min(d,Math.abs(a));e.prevX=e.plotX+e.dispX;e.prevY=e.plotY+e.dispY;e.plotX+=f;e.plotY+=a;e.temperature=b.vectorLength({x:f,y:a})},getK:function(b){return Math.pow(b.box.width*b.box.height/b.nodes.length,.5)}},euler:{attractiveForceFunction:function(b,e){return b*b/e},repulsiveForceFunction:function(b,
e){return e*e/b},barycenter:function(){var b=this.options.gravitationalConstant,e=this.barycenter.xFactor,a=this.barycenter.yFactor;this.nodes.forEach(function(d){if(!d.fixedPosition){var f=d.getDegree();f*=1+f/2;d.dispX+=(e-d.plotX)*b*f/d.degree;d.dispY+=(a-d.plotY)*b*f/d.degree}})},repulsive:function(b,e,a,d){b.dispX+=a.x/d*e/b.degree;b.dispY+=a.y/d*e/b.degree},attractive:function(b,e,a,d){var f=b.getMass(),l=a.x/d*e;e*=a.y/d;b.fromNode.fixedPosition||(b.fromNode.dispX-=l*f.fromNode/b.fromNode.degree,
b.fromNode.dispY-=e*f.fromNode/b.fromNode.degree);b.toNode.fixedPosition||(b.toNode.dispX+=l*f.toNode/b.toNode.degree,b.toNode.dispY+=e*f.toNode/b.toNode.degree)},integrate:function(b,e){e.dispX+=e.dispX*b.options.friction;e.dispY+=e.dispY*b.options.friction;var a=e.temperature=b.vectorLength({x:e.dispX,y:e.dispY});0!==a&&(e.plotX+=e.dispX/a*Math.min(Math.abs(e.dispX),b.temperature),e.plotY+=e.dispY/a*Math.min(Math.abs(e.dispY),b.temperature))},getK:function(b){return Math.pow(b.box.width*b.box.height/
b.nodes.length,.3)}}}});A(f,"Series/Networkgraph/QuadTree.js",[f["Core/Globals.js"],f["Core/Utilities.js"]],function(f,b){b=b.extend;var e=f.QuadTreeNode=function(a){this.box=a;this.boxSize=Math.min(a.width,a.height);this.nodes=[];this.body=this.isInternal=!1;this.isEmpty=!0};b(e.prototype,{insert:function(a,b){this.isInternal?this.nodes[this.getBoxPosition(a)].insert(a,b-1):(this.isEmpty=!1,this.body?b?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,
b-1),this.body=!0),this.nodes[this.getBoxPosition(a)].insert(a,b-1)):(b=new e({top:a.plotX,left:a.plotY,width:.1,height:.1}),b.body=a,b.isInternal=!1,this.nodes.push(b)):(this.isInternal=!1,this.body=a))},updateMassAndCenter:function(){var a=0,b=0,e=0;this.isInternal?(this.nodes.forEach(function(d){d.isEmpty||(a+=d.mass,b+=d.plotX*d.mass,e+=d.plotY*d.mass)}),b/=a,e/=a):this.body&&(a=this.body.mass,b=this.body.plotX,e=this.body.plotY);this.mass=a;this.plotX=b;this.plotY=e},divideBox:function(){var a=
this.box.width/2,b=this.box.height/2;this.nodes[0]=new e({left:this.box.left,top:this.box.top,width:a,height:b});this.nodes[1]=new e({left:this.box.left+a,top:this.box.top,width:a,height:b});this.nodes[2]=new e({left:this.box.left+a,top:this.box.top+b,width:a,height:b});this.nodes[3]=new e({left:this.box.left,top:this.box.top+b,width:a,height:b})},getBoxPosition:function(a){var b=a.plotY<this.box.top+this.box.height/2;return a.plotX<this.box.left+this.box.width/2?b?0:3:b?1:2}});f=f.QuadTree=function(a,
b,f,l){this.box={left:a,top:b,width:f,height:l};this.maxDepth=25;this.root=new e(this.box,"0");this.root.isInternal=!0;this.root.isRoot=!0;this.root.divideBox()};b(f.prototype,{insertNodes:function(a){a.forEach(function(a){this.root.insert(a,this.maxDepth)},this)},visitNodeRecursive:function(a,b,e){var d;a||(a=this.root);a===this.root&&b&&(d=b(a));!1!==d&&(a.nodes.forEach(function(a){if(a.isInternal){b&&(d=b(a));if(!1===d)return;this.visitNodeRecursive(a,b,e)}else a.body&&b&&b(a.body);e&&e(a)},this),
a===this.root&&e&&e(a))},calculateMassAndCenter:function(){this.visitNodeRecursive(null,null,function(a){a.updateMassAndCenter()})}})});A(f,"Series/Networkgraph/Layouts.js",[f["Core/Chart/Chart.js"],f["Core/Animation/AnimationUtilities.js"],f["Core/Globals.js"],f["Core/Utilities.js"]],function(f,b,e,a){var d=b.setAnimation;b=a.addEvent;var p=a.clamp,l=a.defined,k=a.extend,y=a.isFunction,B=a.pick;e.layouts={"reingold-fruchterman":function(){}};k(e.layouts["reingold-fruchterman"].prototype,{init:function(a){this.options=
a;this.nodes=[];this.links=[];this.series=[];this.box={x:0,y:0,width:0,height:0};this.setInitialRendering(!0);this.integration=e.networkgraphIntegrations[a.integration];this.enableSimulation=a.enableSimulation;this.attractiveForce=B(a.attractiveForce,this.integration.attractiveForceFunction);this.repulsiveForce=B(a.repulsiveForce,this.integration.repulsiveForceFunction);this.approximation=a.approximation},updateSimulation:function(a){this.enableSimulation=B(a,this.options.enableSimulation)},start:function(){var a=
this.series,b=this.options;this.currentStep=0;this.forces=a[0]&&a[0].forces||[];this.chart=a[0]&&a[0].chart;this.initialRendering&&(this.initPositions(),a.forEach(function(a){a.finishedAnimating=!0;a.render()}));this.setK();this.resetSimulation(b);this.enableSimulation&&this.step()},step:function(){var a=this,b=this.series;a.currentStep++;"barnes-hut"===a.approximation&&(a.createQuadTree(),a.quadTree.calculateMassAndCenter());a.forces.forEach(function(c){a[c+"Forces"](a.temperature)});a.applyLimits(a.temperature);
a.temperature=a.coolDown(a.startTemperature,a.diffTemperature,a.currentStep);a.prevSystemTemperature=a.systemTemperature;a.systemTemperature=a.getSystemTemperature();a