gantt.js 107 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225
  1. /*
  2. Highcharts Gantt JS v9.1.0 (2021-05-03)
  3. Gantt series
  4. (c) 2016-2021 Lars A. V. Cabrera
  5. License: www.highcharts.com/license
  6. */
  7. (function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/gantt",["highcharts"],function(E){a(E);a.Highcharts=E;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function E(a,l,r,u){a.hasOwnProperty(l)||(a[l]=u.apply(null,r))}a=a?a._modules:{};E(a,"Series/XRange/XRangePoint.js",[a["Core/Series/Point.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,l,
  8. r){var u=this&&this.__extends||function(){var a=function(v,q){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(q,f){q.__proto__=f}||function(q,f){for(var x in f)f.hasOwnProperty(x)&&(q[x]=f[x])};return a(v,q)};return function(v,q){function C(){this.constructor=v}a(v,q);v.prototype=null===q?Object.create(q):(C.prototype=q.prototype,new C)}}();r=r.extend;l=function(l){function v(){var q=null!==l&&l.apply(this,arguments)||this;q.options=void 0;q.series=void 0;return q}u(v,l);v.getColorByCategory=
  9. function(q,a){var f=q.options.colors||q.chart.options.colors;q=a.y%(f?f.length:q.chart.options.chart.colorCount);return{colorIndex:q,color:f&&f[q]}};v.prototype.resolveColor=function(){var q=this.series;if(q.options.colorByPoint&&!this.options.color){var a=v.getColorByCategory(q,this);q.chart.styledMode||(this.color=a.color);this.options.colorIndex||(this.colorIndex=a.colorIndex)}else this.color||(this.color=q.color)};v.prototype.init=function(){a.prototype.init.apply(this,arguments);this.y||(this.y=
  10. 0);return this};v.prototype.setState=function(){a.prototype.setState.apply(this,arguments);this.series.drawPoint(this,this.series.getAnimationVerb())};v.prototype.getLabelConfig=function(){var q=a.prototype.getLabelConfig.call(this),l=this.series.yAxis.categories;q.x2=this.x2;q.yCategory=this.yCategory=l&&l[this.y];return q};v.prototype.isValid=function(){return"number"===typeof this.x&&"number"===typeof this.x2};return v}(l.seriesTypes.column.prototype.pointClass);r(l.prototype,{tooltipDateKeys:["x",
  11. "x2"]});return l});E(a,"Series/XRange/XRangeComposition.js",[a["Core/Axis/Axis.js"],a["Core/Utilities.js"]],function(a,l){var r=l.addEvent,u=l.pick;r(a,"afterGetSeriesExtremes",function(){var a=this.series,l;if(this.isXAxis){var q=u(this.dataMax,-Number.MAX_VALUE);a.forEach(function(a){a.x2Data&&a.x2Data.forEach(function(f){f>q&&(q=f,l=!0)})});l&&(this.dataMax=q)}})});E(a,"Series/XRange/XRangeSeries.js",[a["Core/Globals.js"],a["Core/Color/Color.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"],
  12. a["Series/XRange/XRangePoint.js"]],function(a,l,r,u,y){var v=this&&this.__extends||function(){var b=function(c,n){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,b){n.__proto__=b}||function(n,b){for(var c in b)b.hasOwnProperty(c)&&(n[c]=b[c])};return b(c,n)};return function(c,n){function e(){this.constructor=c}b(c,n);c.prototype=null===n?Object.create(n):(e.prototype=n.prototype,new e)}}(),q=l.parse,C=r.series,f=r.seriesTypes.column,x=f.prototype,h=u.clamp,k=u.correctFloat,d=u.defined;
  13. l=u.extend;var B=u.find,w=u.isNumber,g=u.isObject,p=u.merge,e=u.pick;u=function(b){function c(){var n=null!==b&&b.apply(this,arguments)||this;n.data=void 0;n.options=void 0;n.points=void 0;return n}v(c,b);c.prototype.init=function(){f.prototype.init.apply(this,arguments);this.options.stacking=void 0};c.prototype.getColumnMetrics=function(){function b(){c.series.forEach(function(b){var n=b.xAxis;b.xAxis=b.yAxis;b.yAxis=n})}var c=this.chart;b();var e=x.getColumnMetrics.call(this);b();return e};c.prototype.cropData=
  14. function(b,c,e,g){c=C.prototype.cropData.call(this,this.x2Data,c,e,g);c.xData=b.slice(c.start,c.end);return c};c.prototype.findPointIndex=function(b){var n=this.cropped,c=this.cropStart,e=this.points,g=b.id;if(g)var p=(p=B(e,function(b){return b.id===g}))?p.index:void 0;"undefined"===typeof p&&(p=(p=B(e,function(n){return n.x===b.x&&n.x2===b.x2&&!n.touched}))?p.index:void 0);n&&w(p)&&w(c)&&p>=c&&(p-=c);return p};c.prototype.translatePoint=function(b){var c=this.xAxis,n=this.yAxis,f=this.columnMetrics,
  15. k=this.options,x=k.minPointLength||0,B=(b.shapeArgs&&b.shapeArgs.width||0)/2,a=this.pointXOffset=f.offset,D=b.plotX,t=e(b.x2,b.x+(b.len||0)),A=c.translate(t,0,0,0,1);t=Math.abs(A-D);var m=this.chart.inverted,z=e(k.borderWidth,1)%2/2,H=f.offset,L=Math.round(f.width);x&&(x-=t,0>x&&(x=0),D-=x/2,A+=x/2);D=Math.max(D,-10);A=h(A,-10,c.len+10);d(b.options.pointWidth)&&(H-=(Math.ceil(b.options.pointWidth)-L)/2,L=Math.ceil(b.options.pointWidth));k.pointPlacement&&w(b.plotY)&&n.categories&&(b.plotY=n.translate(b.y,
  16. 0,1,0,1,k.pointPlacement));k={x:Math.floor(Math.min(D,A))+z,y:Math.floor(b.plotY+H)+z,width:Math.round(Math.abs(A-D)),height:L,r:this.options.borderRadius};b.shapeArgs=k;m?b.tooltipPos[1]+=a+B:b.tooltipPos[0]-=B+a-k.width/2;B=k.x;a=B+k.width;0>B||a>c.len?(B=h(B,0,c.len),a=h(a,0,c.len),x=a-B,b.dlBox=p(k,{x:B,width:a-B,centerX:x?x/2:null})):b.dlBox=null;B=b.tooltipPos;a=m?1:0;x=m?0:1;f=this.columnMetrics?this.columnMetrics.offset:-f.width/2;B[a]=m?B[a]+k.width/2:B[a]+(c.reversed?-1:0)*k.width;B[x]=
  17. h(B[x]+(m?-1:1)*f,0,n.len-1);if(n=b.partialFill)g(n)&&(n=n.amount),w(n)||(n=0),b.partShapeArgs=p(k,{r:this.options.borderRadius}),D=Math.max(Math.round(t*n+b.plotX-D),0),b.clipRectArgs={x:c.reversed?k.x+t-D:k.x,y:k.y,width:D,height:k.height}};c.prototype.translate=function(){x.translate.apply(this,arguments);this.points.forEach(function(b){this.translatePoint(b)},this)};c.prototype.drawPoint=function(b,c){var n=this.options,G=this.chart.renderer,d=b.graphic,f=b.shapeType,w=b.shapeArgs,k=b.partShapeArgs,
  18. D=b.clipRectArgs,t=b.partialFill,A=n.stacking&&!n.borderRadius,m=b.state,z=n.states[m||"normal"]||{},H="undefined"===typeof m?"attr":c;m=this.pointAttribs(b,m);z=e(this.chart.options.chart.animation,z.animation);if(b.isNull||!1===b.visible)d&&(b.graphic=d.destroy());else{if(d)d.rect[c](w);else b.graphic=d=G.g("point").addClass(b.getClassName()).add(b.group||this.group),d.rect=G[f](p(w)).addClass(b.getClassName()).addClass("highcharts-partfill-original").add(d);k&&(d.partRect?(d.partRect[c](p(k)),
  19. d.partialClipRect[c](p(D))):(d.partialClipRect=G.clipRect(D.x,D.y,D.width,D.height),d.partRect=G[f](k).addClass("highcharts-partfill-overlay").add(d).clip(d.partialClipRect)));this.chart.styledMode||(d.rect[c](m,z).shadow(n.shadow,null,A),k&&(g(t)||(t={}),g(n.partialFill)&&(t=p(n.partialFill,t)),b=t.fill||q(m.fill).brighten(-.3).get()||q(b.color||this.color).brighten(-.3).get(),m.fill=b,d.partRect[H](m,z).shadow(n.shadow,null,A)))}};c.prototype.drawPoints=function(){var b=this,c=b.getAnimationVerb();
  20. b.points.forEach(function(e){b.drawPoint(e,c)})};c.prototype.getAnimationVerb=function(){return this.chart.pointCount<(this.options.animationLimit||250)?"animate":"attr"};c.prototype.isPointInside=function(c){var e=c.shapeArgs,n=c.plotX,g=c.plotY;return e?"undefined"!==typeof n&&"undefined"!==typeof g&&0<=g&&g<=this.yAxis.len&&0<=(e.x||0)+(e.width||0)&&n<=this.xAxis.len:b.prototype.isPointInside.apply(this,arguments)};c.defaultOptions=p(f.defaultOptions,{colorByPoint:!0,dataLabels:{formatter:function(){var b=
  21. this.point.partialFill;g(b)&&(b=b.amount);if(w(b)&&0<b)return k(100*b)+"%"},inside:!0,verticalAlign:"middle"},tooltip:{headerFormat:'<span style="font-size: 10px">{point.x} - {point.x2}</span><br/>',pointFormat:'<span style="color:{point.color}">\u25cf</span> {series.name}: <b>{point.yCategory}</b><br/>'},borderRadius:3,pointRange:0});return c}(f);l(u.prototype,{type:"xrange",parallelArrays:["x","x2","y"],requireSorting:!1,animate:C.prototype.animate,cropShoulder:1,getExtremesFromAll:!0,autoIncrement:a.noop,
  22. buildKDTree:a.noop,pointClass:y});r.registerSeriesType("xrange",u);"";return u});E(a,"Series/Gantt/GanttPoint.js",[a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,l){var r=this&&this.__extends||function(){var a=function(l,q){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,f){a.__proto__=f}||function(a,f){for(var x in f)f.hasOwnProperty(x)&&(a[x]=f[x])};return a(l,q)};return function(l,q){function r(){this.constructor=l}a(l,q);l.prototype=null===q?Object.create(q):
  23. (r.prototype=q.prototype,new r)}}(),u=l.pick;return function(a){function l(){var q=null!==a&&a.apply(this,arguments)||this;q.options=void 0;q.series=void 0;return q}r(l,a);l.setGanttPointAliases=function(a){function l(f,x){"undefined"!==typeof x&&(a[f]=x)}l("x",u(a.start,a.x));l("x2",u(a.end,a.x2));l("partialFill",u(a.completed,a.partialFill))};l.prototype.applyOptions=function(q,r){q=a.prototype.applyOptions.call(this,q,r);l.setGanttPointAliases(q);return q};l.prototype.isValid=function(){return("number"===
  24. typeof this.start||"number"===typeof this.x)&&("number"===typeof this.end||"number"===typeof this.x2||this.milestone)};return l}(a.seriesTypes.xrange.prototype.pointClass)});E(a,"Gantt/Tree.js",[a["Core/Utilities.js"]],function(a){var l=a.extend,r=a.isNumber,u=a.pick,y=function(a,l){var f=a.reduce(function(f,h){var k=u(h.parent,"");"undefined"===typeof f[k]&&(f[k]=[]);f[k].push(h);return f},{});Object.keys(f).forEach(function(a,h){var k=f[a];""!==a&&-1===l.indexOf(a)&&(k.forEach(function(d){h[""].push(d)}),
  25. delete h[a])});return f},v=function(a,C,f,x,h,k){var d=0,B=0,w=k&&k.after,g=k&&k.before;C={data:x,depth:f-1,id:a,level:f,parent:C};var p,e;"function"===typeof g&&g(C,k);g=(h[a]||[]).map(function(b){var c=v(b.id,a,f+1,b,h,k),n=b.start;b=!0===b.milestone?n:b.end;p=!r(p)||n<p?n:p;e=!r(e)||b>e?b:e;d=d+1+c.descendants;B=Math.max(c.height+1,B);return c});x&&(x.start=u(x.start,p),x.end=u(x.end,e));l(C,{children:g,descendants:d,height:B});"function"===typeof w&&w(C,k);return C};return{getListOfParents:y,
  26. getNode:v,getTree:function(a,l){var f=a.map(function(f){return f.id});a=y(a,f);return v("",null,1,null,a,l)}}});E(a,"Core/Axis/TreeGridTick.js",[a["Core/Color/Palette.js"],a["Core/Utilities.js"]],function(a,l){var r=l.addEvent,u=l.isObject,y=l.isNumber,v=l.pick,q=l.wrap,C;(function(f){function x(){this.treeGrid||(this.treeGrid=new w(this))}function h(g,d){g=g.treeGrid;var e=!g.labelIcon,b=d.renderer,c=d.xy,n=d.options,G=n.width||0,p=n.height||0,f=c.x-G/2-(n.padding||0);c=c.y-p/2;var w=d.collapsed?
  27. 90:180,k=d.show&&y(c),h=g.labelIcon;h||(g.labelIcon=h=b.path(b.symbols[n.type](n.x||0,n.y||0,G,p)).addClass("highcharts-label-icon").add(d.group));h.attr({y:k?0:-9999});b.styledMode||h.attr({cursor:"pointer",fill:v(d.color,a.neutralColor60),"stroke-width":1,stroke:n.lineColor,strokeWidth:n.lineWidth||0});h[e?"attr":"animate"]({translateX:f,translateY:c,rotation:w})}function k(g,d,e,b,c,n,G,f,w){var p=v(this.options&&this.options.labels,n);n=this.pos;var k=this.axis,h="treegrid"===k.options.type;g=
  28. g.apply(this,[d,e,b,c,p,G,f,w]);h&&(d=p&&u(p.symbol,!0)?p.symbol:{},p=p&&y(p.indentation)?p.indentation:0,n=(n=(k=k.treeGrid.mapOfPosToGridNode)&&k[n])&&n.depth||1,g.x+=(d.width||0)+2*(d.padding||0)+(n-1)*p);return g}function d(d){var g=this,e=g.pos,b=g.axis,c=g.label,n=b.treeGrid.mapOfPosToGridNode,G=b.options,f=v(g.options&&g.options.labels,G&&G.labels),k=f&&u(f.symbol,!0)?f.symbol:{},w=(n=n&&n[e])&&n.depth;G="treegrid"===G.type;var a=-1<b.tickPositions.indexOf(e);e=b.chart.styledMode;G&&n&&c&&
  29. c.element&&c.addClass("highcharts-treegrid-node-level-"+w);d.apply(g,Array.prototype.slice.call(arguments,1));G&&c&&c.element&&n&&n.descendants&&0<n.descendants&&(b=b.treeGrid.isCollapsed(n),h(g,{color:!e&&c.styles&&c.styles.color||"",collapsed:b,group:c.parentGroup,options:k,renderer:c.renderer,show:a,xy:c.xy}),k="highcharts-treegrid-node-"+(b?"expanded":"collapsed"),c.addClass("highcharts-treegrid-node-"+(b?"collapsed":"expanded")).removeClass(k),e||c.css({cursor:"pointer"}),[c,g.treeGrid.labelIcon].forEach(function(b){b&&
  30. !b.attachedTreeGridEvents&&(r(b.element,"mouseover",function(){c.addClass("highcharts-treegrid-node-active");c.renderer.styledMode||c.css({textDecoration:"underline"})}),r(b.element,"mouseout",function(){var b=u(f.style)?f.style:{};c.removeClass("highcharts-treegrid-node-active");c.renderer.styledMode||c.css({textDecoration:b.textDecoration})}),r(b.element,"click",function(){g.treeGrid.toggleCollapse()}),b.attachedTreeGridEvents=!0)}))}var B=!1;f.compose=function(g){B||(r(g,"init",x),q(g.prototype,
  31. "getLabelPosition",k),q(g.prototype,"renderLabel",d),g.prototype.collapse=function(g){this.treeGrid.collapse(g)},g.prototype.expand=function(g){this.treeGrid.expand(g)},g.prototype.toggleCollapse=function(g){this.treeGrid.toggleCollapse(g)},B=!0)};var w=function(){function g(g){this.tick=g}g.prototype.collapse=function(g){var e=this.tick,b=e.axis,c=b.brokenAxis;c&&b.treeGrid.mapOfPosToGridNode&&(e=b.treeGrid.collapse(b.treeGrid.mapOfPosToGridNode[e.pos]),c.setBreaks(e,v(g,!0)))};g.prototype.expand=
  32. function(g){var e=this.tick,b=e.axis,c=b.brokenAxis;c&&b.treeGrid.mapOfPosToGridNode&&(e=b.treeGrid.expand(b.treeGrid.mapOfPosToGridNode[e.pos]),c.setBreaks(e,v(g,!0)))};g.prototype.toggleCollapse=function(g){var e=this.tick,b=e.axis,c=b.brokenAxis;c&&b.treeGrid.mapOfPosToGridNode&&(e=b.treeGrid.toggleCollapse(b.treeGrid.mapOfPosToGridNode[e.pos]),c.setBreaks(e,v(g,!0)))};return g}();f.Additions=w})(C||(C={}));return C});E(a,"Mixins/TreeSeries.js",[a["Core/Color/Color.js"],a["Core/Utilities.js"]],
  33. function(a,l){var r=l.extend,u=l.isArray,y=l.isNumber,v=l.isObject,q=l.merge,C=l.pick;return{getColor:function(f,x){var h=x.index,k=x.mapOptionsToLevel,d=x.parentColor,B=x.parentColorIndex,w=x.series,g=x.colors,p=x.siblings,e=w.points,b=w.chart.options.chart,c;if(f){e=e[f.i];f=k[f.level]||{};if(k=e&&f.colorByPoint){var n=e.index%(g?g.length:b.colorCount);var G=g&&g[n]}if(!w.chart.styledMode){g=e&&e.options.color;b=f&&f.color;if(c=d)c=(c=f&&f.colorVariation)&&"brightness"===c.key?a.parse(d).brighten(h/
  34. p*c.to).get():d;c=C(g,b,G,c,w.color)}var N=C(e&&e.options.colorIndex,f&&f.colorIndex,n,B,x.colorIndex)}return{color:c,colorIndex:N}},getLevelOptions:function(f){var a=null;if(v(f)){a={};var h=y(f.from)?f.from:1;var k=f.levels;var d={};var B=v(f.defaults)?f.defaults:{};u(k)&&(d=k.reduce(function(d,g){if(v(g)&&y(g.level)){var f=q({},g);var e="boolean"===typeof f.levelIsConstant?f.levelIsConstant:B.levelIsConstant;delete f.levelIsConstant;delete f.level;g=g.level+(e?0:h-1);v(d[g])?r(d[g],f):d[g]=f}return d},
  35. {}));k=y(f.to)?f.to:1;for(f=0;f<=k;f++)a[f]=q({},B,v(d[f])?d[f]:{})}return a},setTreeValues:function k(a,h){var d=h.before,B=h.idRoot,w=h.mapIdToNode[B],g=h.points[a.i],p=g&&g.options||{},e=0,b=[];a.levelDynamic=a.level-(("boolean"===typeof h.levelIsConstant?h.levelIsConstant:1)?0:w.level);a.name=C(g&&g.name,"");a.visible=B===a.id||("boolean"===typeof h.visible?h.visible:!1);"function"===typeof d&&(a=d(a,h));a.children.forEach(function(c,n){var g=r({},h);r(g,{index:n,siblings:a.children.length,visible:a.visible});
  36. c=k(c,g);b.push(c);c.visible&&(e+=c.val)});a.visible=0<e||a.visible;d=C(p.value,e);a.children=b;a.childrenTotal=e;a.isLeaf=a.visible&&!e;a.val=d;return a},updateRootId:function(a){if(v(a)){var h=v(a.options)?a.options:{};h=C(a.rootNode,h.rootId,"");v(a.userOptions)&&(a.userOptions.rootId=h);a.rootNode=h}return h}}});E(a,"Core/Axis/GridAxis.js",[a["Core/Axis/Axis.js"],a["Core/Globals.js"],a["Core/Axis/Tick.js"],a["Core/Utilities.js"]],function(a,l,r,u){var y=u.addEvent,v=u.defined,q=u.erase,C=u.find,
  37. f=u.isArray,x=u.isNumber,h=u.merge,k=u.pick,d=u.timeUnits,B=u.wrap,w=l.Chart;"";a.prototype.getMaxLabelDimensions=function(e,b){var c={width:0,height:0};b.forEach(function(b){b=e[b];if(u.isObject(b,!0)){var n=u.isObject(b.label,!0)?b.label:{};b=n.getBBox?n.getBBox().height:0;n.textStr&&!x(n.textPxLength)&&(n.textPxLength=n.getBBox().width);var g=x(n.textPxLength)?Math.round(n.textPxLength):0;n.textStr&&(g=Math.round(n.getBBox().width));c.height=Math.max(b,c.height);c.width=Math.max(g,c.width)}});
  38. return c};l.dateFormats.W=function(e){e=new this.Date(e);var b=(this.get("Day",e)+6)%7,c=new this.Date(e.valueOf());this.set("Date",c,this.get("Date",e)-b+3);b=new this.Date(this.get("FullYear",c),0,1);4!==this.get("Day",b)&&(this.set("Month",e,0),this.set("Date",e,1+(11-this.get("Day",b))%7));return(1+Math.floor((c.valueOf()-b.valueOf())/6048E5)).toString()};l.dateFormats.E=function(e){return this.dateFormat("%a",e,!0).charAt(0)};y(w,"afterSetChartSize",function(){this.axes.forEach(function(e){(e.grid&&
  39. e.grid.columns||[]).forEach(function(b){b.setAxisSize();b.setAxisTranslation()})})});y(r,"afterGetLabelPosition",function(e){var b=this.label,c=this.axis,n=c.reversed,g=c.chart,d=c.options.grid||{},a=c.options.labels,f=a.align,k=p.Side[c.side],w=e.tickmarkOffset,h=c.tickPositions,D=this.pos-w;h=x(h[e.index+1])?h[e.index+1]-w:c.max+w;var t=c.tickSize("tick");w=t?t[0]:0;t=t?t[1]/2:0;if(!0===d.enabled){if("top"===k){d=c.top+c.offset;var A=d-w}else"bottom"===k?(A=g.chartHeight-c.bottom+c.offset,d=A+w):
  40. (d=c.top+c.len-c.translate(n?h:D),A=c.top+c.len-c.translate(n?D:h));"right"===k?(k=g.chartWidth-c.right+c.offset,n=k+w):"left"===k?(n=c.left+c.offset,k=n-w):(k=Math.round(c.left+c.translate(n?h:D))-t,n=Math.round(c.left+c.translate(n?D:h))-t);this.slotWidth=n-k;e.pos.x="left"===f?k:"right"===f?n:k+(n-k)/2;e.pos.y=A+(d-A)/2;g=g.renderer.fontMetrics(a.style.fontSize,b.element);b=b.getBBox().height;a.useHTML?e.pos.y+=g.b+-(b/2):(b=Math.round(b/g.h),e.pos.y+=(g.b-(g.h-g.f))/2+-((b-1)*g.h/2));e.pos.x+=
  41. c.horiz&&a.x||0}});y(r,"labelFormat",function(e){var b=e.axis,c=e.value;if(b.options.grid&&b.options.grid.enabled){var n=b.tickPositions,g=(b.linkedParent||b).series[0],d=c===n[0];n=c===n[n.length-1];var a=g&&C(g.options.data,function(e){return e[b.isXAxis?"x":"y"]===c}),f=void 0;a&&g.is("gantt")&&(f=h(a),l.seriesTypes.gantt.prototype.pointClass.setGanttPointAliases(f));e.isFirst=d;e.isLast=n;e.point=f}});var g=function(){function e(b){this.axis=b}e.prototype.isOuterAxis=function(){var b=this.axis,
  42. c=b.grid.columnIndex,e=b.linkedParent&&b.linkedParent.grid.columns||b.grid.columns,g=c?b.linkedParent:b,d=-1,a=0;b.chart[b.coll].forEach(function(c,e){c.side!==b.side||c.options.isInternal||(a=e,c===g&&(d=e))});return a===d&&(x(c)?e.length===c:!0)};e.prototype.renderBorder=function(b){var c=this.axis,e=c.chart.renderer,g=c.options;b=e.path(b).addClass("highcharts-axis-line").add(c.axisBorder);e.styledMode||b.attr({stroke:g.lineColor,"stroke-width":g.lineWidth,zIndex:7});return b};return e}(),p=function(){function e(){}
  43. e.compose=function(b){a.keepProps.push("grid");B(b.prototype,"unsquish",e.wrapUnsquish);y(b,"init",e.onInit);y(b,"afterGetOffset",e.onAfterGetOffset);y(b,"afterGetTitlePosition",e.onAfterGetTitlePosition);y(b,"afterInit",e.onAfterInit);y(b,"afterRender",e.onAfterRender);y(b,"afterSetAxisTranslation",e.onAfterSetAxisTranslation);y(b,"afterSetOptions",e.onAfterSetOptions);y(b,"afterSetOptions",e.onAfterSetOptions2);y(b,"afterSetScale",e.onAfterSetScale);y(b,"afterTickSize",e.onAfterTickSize);y(b,"trimTicks",
  44. e.onTrimTicks);y(b,"destroy",e.onDestroy)};e.onAfterGetOffset=function(){var b=this.grid;(b&&b.columns||[]).forEach(function(b){b.getOffset()})};e.onAfterGetTitlePosition=function(b){if(!0===(this.options.grid||{}).enabled){var c=this.axisTitle,n=this.height,g=this.horiz,d=this.left,a=this.offset,f=this.opposite,w=this.options,h=this.top,p=this.width,D=this.tickSize(),t=c&&c.getBBox().width,A=w.title.x,m=w.title.y,z=k(w.title.margin,g?5:10);c=this.chart.renderer.fontMetrics(w.title.style.fontSize,
  45. c).f;D=(g?h+n:d)+(g?1:-1)*(f?-1:1)*(D?D[0]/2:0)+(this.side===e.Side.bottom?c:0);b.titlePosition.x=g?d-(t||0)/2-z+A:D+(f?p:0)+a+A;b.titlePosition.y=g?D-(f?n:0)+(f?c:-c)/2+a+m:h-z+m}};e.onAfterInit=function(){var b=this.chart,c=this.options.grid;c=void 0===c?{}:c;var e=this.userOptions;if(c.enabled){var g=this.options;g.labels.align=k(g.labels.align,"center");this.categories||(g.showLastLabel=!1);this.labelRotation=0;g.labels.rotation=0}if(c.columns){g=this.grid.columns=[];for(var d=this.grid.columnIndex=
  46. 0;++d<c.columns.length;){var f=h(e,c.columns[c.columns.length-d-1],{linkedTo:0,type:"category",scrollbar:{enabled:!1}});delete f.grid.columns;f=new a(this.chart,f);f.grid.isColumn=!0;f.grid.columnIndex=d;q(b.axes,f);q(b[this.coll],f);g.push(f)}}};e.onAfterRender=function(){var b=this.grid,c=this.options;if(!0===(c.grid||{}).enabled){this.maxLabelDimensions=this.getMaxLabelDimensions(this.ticks,this.tickPositions);this.rightWall&&this.rightWall.destroy();if(this.grid&&this.grid.isOuterAxis()&&this.axisLine&&
  47. (c=c.lineWidth)){c=this.getLinePath(c);var g=c[0],d=c[1],a=((this.tickSize("tick")||[1])[0]-1)*(this.side===e.Side.top||this.side===e.Side.left?-1:1);"M"===g[0]&&"L"===d[0]&&(this.horiz?(g[2]+=a,d[2]+=a):(g[1]+=a,d[1]+=a));!this.horiz&&this.chart.marginRight&&(g=[g,["L",this.left,g[2]]],a=["L",this.chart.chartWidth-this.chart.marginRight,this.toPixels(this.max+this.tickmarkOffset)],d=[["M",d[1],this.toPixels(this.max+this.tickmarkOffset)],a],this.grid.upperBorder||0===this.min%1||(this.grid.upperBorder=
  48. this.grid.renderBorder(g)),this.grid.upperBorder&&this.grid.upperBorder.animate({d:g}),this.grid.lowerBorder||0===this.max%1||(this.grid.lowerBorder=this.grid.renderBorder(d)),this.grid.lowerBorder&&this.grid.lowerBorder.animate({d:d}));this.grid.axisLineExtra?this.grid.axisLineExtra.animate({d:c}):this.grid.axisLineExtra=this.grid.renderBorder(c);this.axisLine[this.showAxis?"show":"hide"](!0)}(b&&b.columns||[]).forEach(function(b){b.render()});!this.horiz&&this.chart.hasRendered&&(this.scrollbar||
  49. this.linkedParent&&this.linkedParent.scrollbar)&&(b=this.max,c=this.tickmarkOffset,d=this.tickPositions[this.tickPositions.length-1],g=this.tickPositions[0],this.min-g>c?this.ticks[g].label.hide():this.ticks[g].label.show(),d-b>c?this.ticks[d].label.hide():this.ticks[d].label.show(),d-b<c&&0<d-b&&this.ticks[d].isLast?this.ticks[d].mark.hide():this.ticks[d-1]&&this.ticks[d-1].mark.show())}};e.onAfterSetAxisTranslation=function(){var b=this.tickPositions&&this.tickPositions.info,c=this.options,e=this.userOptions.labels||
  50. {};(c.grid||{}).enabled&&(this.horiz?(this.series.forEach(function(b){b.options.pointRange=0}),b&&c.dateTimeLabelFormats&&c.labels&&!v(e.align)&&(!1===c.dateTimeLabelFormats[b.unitName].range||1<b.count)&&(c.labels.align="left",v(e.x)||(c.labels.x=3))):"treegrid"!==this.options.type&&this.grid&&this.grid.columns&&(this.minPointOffset=this.tickInterval))};e.onAfterSetOptions=function(b){var c=this.options;b=b.userOptions;var e=c&&u.isObject(c.grid,!0)?c.grid:{};if(!0===e.enabled){var g=h(!0,{className:"highcharts-grid-axis "+
  51. (b.className||""),dateTimeLabelFormats:{hour:{list:["%H:%M","%H"]},day:{list:["%A, %e. %B","%a, %e. %b","%E"]},week:{list:["Week %W","W%W"]},month:{list:["%B","%b","%o"]}},grid:{borderWidth:1},labels:{padding:2,style:{fontSize:"13px"}},margin:0,title:{text:null,reserveSpace:!1,rotation:0},units:[["millisecond",[1,10,100]],["second",[1,10]],["minute",[1,5,15]],["hour",[1,6]],["day",[1]],["week",[1]],["month",[1]],["year",null]]},b);"xAxis"===this.coll&&(v(b.linkedTo)&&!v(b.tickPixelInterval)&&(g.tickPixelInterval=
  52. 350),v(b.tickPixelInterval)||!v(b.linkedTo)||v(b.tickPositioner)||v(b.tickInterval)||(g.tickPositioner=function(b,c){var e=this.linkedParent&&this.linkedParent.tickPositions&&this.linkedParent.tickPositions.info;if(e){var n=void 0,a=void 0,f=void 0,D,t=g.units;for(D=0;D<t.length;D++)if(t[D][0]===e.unitName){n=D;break}t[n+1]?(f=t[n+1][0],a=(t[n+1][1]||[1])[0]):"year"===e.unitName&&(f="year",a=10*e.count);e=d[f];this.tickInterval=e*a;return this.getTimeTicks({unitRange:e,count:a,unitName:f},b,c,this.options.startOfWeek)}}));
  53. h(!0,this.options,g);this.horiz&&(c.minPadding=k(b.minPadding,0),c.maxPadding=k(b.maxPadding,0));x(c.grid.borderWidth)&&(c.tickWidth=c.lineWidth=e.borderWidth)}};e.onAfterSetOptions2=function(b){b=(b=b.userOptions)&&b.grid||{};var c=b.columns;b.enabled&&c&&h(!0,this.options,c[c.length-1])};e.onAfterSetScale=function(){(this.grid.columns||[]).forEach(function(b){b.setScale()})};e.onAfterTickSize=function(b){var c=a.defaultLeftAxisOptions,e=this.horiz,g=this.maxLabelDimensions,d=this.options.grid;d=
  54. void 0===d?{}:d;d.enabled&&g&&(c=2*Math.abs(c.labels.x),e=e?d.cellHeight||c+g.height:c+g.width,f(b.tickSize)?b.tickSize[0]=e:b.tickSize=[e,0])};e.onDestroy=function(b){var c=this.grid;(c.columns||[]).forEach(function(c){c.destroy(b.keepEvents)});c.columns=void 0};e.onInit=function(b){b=b.userOptions||{};var c=b.grid||{};c.enabled&&v(c.borderColor)&&(b.tickColor=b.lineColor=c.borderColor);this.grid||(this.grid=new g(this))};e.onTrimTicks=function(){var b=this.options,c=this.categories,e=this.tickPositions,
  55. g=e[0],d=e[e.length-1],a=this.linkedParent&&this.linkedParent.min||this.min,f=this.linkedParent&&this.linkedParent.max||this.max,k=this.tickInterval;!0!==(b.grid||{}).enabled||c||!this.horiz&&!this.isLinked||(g<a&&g+k>a&&!b.startOnTick&&(e[0]=a),d>f&&d-k<f&&!b.endOnTick&&(e[e.length-1]=f))};e.wrapUnsquish=function(b){var c=this.options.grid;return!0===(void 0===c?{}:c).enabled&&this.categories?this.tickInterval:b.apply(this,Array.prototype.slice.call(arguments,1))};return e}();(function(e){e=e.Side||
  56. (e.Side={});e[e.top=0]="top";e[e.right=1]="right";e[e.bottom=2]="bottom";e[e.left=3]="left"})(p||(p={}));p.compose(a);return p});E(a,"Core/Axis/BrokenAxis.js",[a["Core/Axis/Axis.js"],a["Core/Series/Series.js"],a["Extensions/Stacking.js"],a["Core/Utilities.js"]],function(a,l,r,u){var y=u.addEvent,v=u.find,q=u.fireEvent,C=u.isArray,f=u.isNumber,x=u.pick,h=function(){function k(d){this.hasBreaks=!1;this.axis=d}k.isInBreak=function(d,a){var f=d.repeat||Infinity,g=d.from,k=d.to-d.from;a=a>=g?(a-g)%f:f-
  57. (g-a)%f;return d.inclusive?a<=k:a<k&&0!==a};k.lin2Val=function(d){var a=this.brokenAxis;a=a&&a.breakArray;if(!a||!f(d))return d;var h;for(h=0;h<a.length;h++){var g=a[h];if(g.from>=d)break;else g.to<d?d+=g.len:k.isInBreak(g,d)&&(d+=g.len)}return d};k.val2Lin=function(d){var a=this.brokenAxis;a=a&&a.breakArray;if(!a||!f(d))return d;var h=d,g;for(g=0;g<a.length;g++){var p=a[g];if(p.to<=d)h-=p.len;else if(p.from>=d)break;else if(k.isInBreak(p,d)){h-=d-p.from;break}}return h};k.prototype.findBreakAt=function(d,
  58. a){return v(a,function(a){return a.from<d&&d<a.to})};k.prototype.isInAnyBreak=function(d,a){var h=this.axis,g=h.options.breaks||[],p=g.length,e;if(p&&f(d)){for(;p--;)if(k.isInBreak(g[p],d)){var b=!0;e||(e=x(g[p].showPoints,!h.isXAxis))}var c=b&&a?b&&!e:b}return c};k.prototype.setBreaks=function(d,h){var w=this,g=w.axis,p=C(d)&&!!d.length;g.isDirty=w.hasBreaks!==p;w.hasBreaks=p;g.options.breaks=g.userOptions.breaks=d;g.forceRedraw=!0;g.series.forEach(function(e){e.isDirty=!0});p||g.val2lin!==k.val2Lin||
  59. (delete g.val2lin,delete g.lin2val);p&&(g.userOptions.ordinal=!1,g.lin2val=k.lin2Val,g.val2lin=k.val2Lin,g.setExtremes=function(e,b,c,g,d){if(w.hasBreaks){for(var n,f=this.options.breaks;n=w.findBreakAt(e,f);)e=n.to;for(;n=w.findBreakAt(b,f);)b=n.from;b<e&&(b=e)}a.prototype.setExtremes.call(this,e,b,c,g,d)},g.setAxisTranslation=function(){a.prototype.setAxisTranslation.call(this);w.unitLength=void 0;if(w.hasBreaks){var e=g.options.breaks||[],b=[],c=[],d=0,h,p=g.userMin||g.min,B=g.userMax||g.max,l=
  60. x(g.pointRangePadding,0),r;e.forEach(function(b){h=b.repeat||Infinity;f(p)&&f(B)&&(k.isInBreak(b,p)&&(p+=b.to%h-p%h),k.isInBreak(b,B)&&(B-=B%h-b.from%h))});e.forEach(function(c){v=c.from;h=c.repeat||Infinity;if(f(p)&&f(B)){for(;v-h>p;)v-=h;for(;v<p;)v+=h;for(r=v;r<B;r+=h)b.push({value:r,move:"in"}),b.push({value:r+c.to-c.from,move:"out",size:c.breakSize})}});b.sort(function(b,c){return b.value===c.value?("in"===b.move?0:1)-("in"===c.move?0:1):b.value-c.value});var u=0;var v=p;b.forEach(function(b){u+=
  61. "in"===b.move?1:-1;1===u&&"in"===b.move&&(v=b.value);0===u&&f(v)&&(c.push({from:v,to:b.value,len:b.value-v-(b.size||0)}),d+=b.value-v-(b.size||0))});w.breakArray=c;f(p)&&f(B)&&f(g.min)&&(w.unitLength=B-p-d+l,q(g,"afterBreaks"),g.staticScale?g.transA=g.staticScale:w.unitLength&&(g.transA*=(B-g.min+l)/w.unitLength),l&&(g.minPixelPadding=g.transA*(g.minPointOffset||0)),g.min=p,g.max=B)}});x(h,!0)&&g.chart.redraw()};return k}();u=function(){function a(){}a.compose=function(d,a){d.keepProps.push("brokenAxis");
  62. var k=l.prototype;k.drawBreaks=function(g,a){var e=this,b=e.points,c,d,h,k;if(g&&g.brokenAxis&&g.brokenAxis.hasBreaks){var p=g.brokenAxis;a.forEach(function(a){c=p&&p.breakArray||[];d=g.isXAxis?g.min:x(e.options.threshold,g.min);b.forEach(function(b){k=x(b["stack"+a.toUpperCase()],b[a]);c.forEach(function(c){if(f(d)&&f(k)){h=!1;if(d<c.from&&k>c.to||d>c.from&&k<c.from)h="pointBreak";else if(d<c.from&&k>c.from&&k<c.to||d>c.from&&k>c.to&&k<c.from)h="pointInBreak";h&&q(g,h,{point:b,brk:c})}})})})}};k.gappedPath=
  63. function(){var g=this.currentDataGrouping,d=g&&g.gapSize;g=this.options.gapSize;var e=this.points.slice(),b=e.length-1,c=this.yAxis,a;if(g&&0<b)for("value"!==this.options.gapUnit&&(g*=this.basePointRange),d&&d>g&&d>=this.basePointRange&&(g=d),a=void 0;b--;)a&&!1!==a.visible||(a=e[b+1]),d=e[b],!1!==a.visible&&!1!==d.visible&&(a.x-d.x>g&&(a=(d.x+a.x)/2,e.splice(b+1,0,{isNull:!0,x:a}),c.stacking&&this.options.stacking&&(a=c.stacking.stacks[this.stackKey][a]=new r(c,c.options.stackLabels,!1,a,this.stack),
  64. a.total=0)),a=d);return this.getGraphPath(e)};y(d,"init",function(){this.brokenAxis||(this.brokenAxis=new h(this))});y(d,"afterInit",function(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)});y(d,"afterSetTickPositions",function(){var g=this.brokenAxis;if(g&&g.hasBreaks){var a=this.tickPositions,e=this.tickPositions.info,b=[],c;for(c=0;c<a.length;c++)g.isInAnyBreak(a[c])||b.push(a[c]);this.tickPositions=b;this.tickPositions.info=e}});y(d,"afterSetOptions",
  65. function(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)});y(a,"afterGeneratePoints",function(){var g=this.options.connectNulls,a=this.points,e=this.xAxis,b=this.yAxis;if(this.isDirty)for(var c=a.length;c--;){var d=a[c],f=!(null===d.y&&!1===g)&&(e&&e.brokenAxis&&e.brokenAxis.isInAnyBreak(d.x,!0)||b&&b.brokenAxis&&b.brokenAxis.isInAnyBreak(d.y,!0));d.visible=f?!1:!1!==d.options.visible}});y(a,"afterRender",function(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,
  66. x(this.pointArrayMap,["y"]))})};return a}();u.compose(a,l);return u});E(a,"Core/Axis/TreeGridAxis.js",[a["Core/Axis/Axis.js"],a["Core/Axis/Tick.js"],a["Gantt/Tree.js"],a["Core/Axis/TreeGridTick.js"],a["Mixins/TreeSeries.js"],a["Core/Utilities.js"]],function(a,l,r,u,y,v){var q=y.getLevelOptions,C=v.addEvent,f=v.find,x=v.fireEvent,h=v.isArray,k=v.isObject,d=v.isString,B=v.merge,w=v.pick,g=v.wrap,p;(function(e){function b(b,c){var e=b.collapseStart||0;b=b.collapseEnd||0;b>=c&&(e-=.5);return{from:e,to:b,
  67. showPoints:!1}}function c(b,c,e){var a=[],m=[],z={},t={},g=-1,h="boolean"===typeof c?c:!1;b=r.getTree(b,{after:function(b){b=t[b.pos];var z=0,c=0;b.children.forEach(function(b){c+=(b.descendants||0)+1;z=Math.max((b.height||0)+1,z)});b.descendants=c;b.height=z;b.collapsed&&m.push(b)},before:function(b){var m=k(b.data,!0)?b.data:{},c=d(m.name)?m.name:"",e=z[b.parent];e=k(e,!0)?t[e.pos]:null;var A=function(b){return b.name===c},H;h&&k(e,!0)&&(H=f(e.children,A))?(A=H.pos,H.nodes.push(b)):A=g++;t[A]||
  68. (t[A]=H={depth:e?e.depth+1:0,name:c,id:m.id,nodes:[b],children:[],pos:A},-1!==A&&a.push(c),k(e,!0)&&e.children.push(H));d(b.id)&&(z[b.id]=b);H&&!0===m.collapsed&&(H.collapsed=!0);b.pos=A}});t=function(b,m){var z=function(b,c,e){var t=c+(-1===c?0:m-1),a=(t-c)/2,g=c+a;b.nodes.forEach(function(b){var m=b.data;k(m,!0)&&(m.y=c+(m.seriesIndex||0),delete m.seriesIndex);b.pos=g});e[g]=b;b.pos=g;b.tickmarkOffset=a+.5;b.collapseStart=t+.5;b.children.forEach(function(b){z(b,t+1,e);t=(b.collapseEnd||0)-.5});
  69. b.collapseEnd=t+.5;return e};return z(b["-1"],-1,{})}(t,e);return{categories:a,mapOfIdToNode:z,mapOfPosToGridNode:t,collapsedNodes:m,tree:b}}function a(b){b.target.axes.filter(function(b){return"treegrid"===b.options.type}).forEach(function(e){var t=e.options||{},a=t.labels,m=t.uniqueNames,z=0;t=t.max;if(!e.treeGrid.mapOfPosToGridNode||e.series.some(function(b){return!b.hasRendered||b.isDirtyData||b.isDirty})){var g=e.series.reduce(function(b,c){c.visible&&((c.options.data||[]).forEach(function(m){c.options.keys&&
  70. c.options.keys.length&&(m=c.pointClass.prototype.optionsToObject.call({series:c},m),c.pointClass.setGanttPointAliases(m));k(m,!0)&&(m.seriesIndex=z,b.push(m))}),!0===m&&z++);return b},[]);if(t&&g.length<t)for(var d=g.length;d<=t;d++)g.push({name:d+"\u200b"});t=c(g,m||!1,!0===m?z:1);e.categories=t.categories;e.treeGrid.mapOfPosToGridNode=t.mapOfPosToGridNode;e.hasNames=!0;e.treeGrid.tree=t.tree;e.series.forEach(function(b){var m=(b.options.data||[]).map(function(m){h(m)&&b.options.keys&&b.options.keys.length&&
  71. g.forEach(function(b){0<=m.indexOf(b.x)&&0<=m.indexOf(b.x2)&&(m=b)});return k(m,!0)?B(m):m});b.visible&&b.setData(m,!1)});e.treeGrid.mapOptionsToLevel=q({defaults:a,from:1,levels:a&&a.levels,to:e.treeGrid.tree&&e.treeGrid.tree.height});"beforeRender"===b.type&&(e.treeGrid.collapsedNodes=t.collapsedNodes)}})}function p(b,c){var e=this.treeGrid.mapOptionsToLevel||{},a=this.ticks,m=a[c],z;if("treegrid"===this.options.type&&this.treeGrid.mapOfPosToGridNode){var g=this.treeGrid.mapOfPosToGridNode[c];(e=
  72. e[g.depth])&&(z={labels:e});m?(m.parameters.category=g.name,m.options=z,m.addLabel()):a[c]=new l(this,c,void 0,void 0,{category:g.name,tickmarkOffset:g.tickmarkOffset,options:z})}else b.apply(this,Array.prototype.slice.call(arguments,1))}function v(b){var c=this.options,e=b.apply(this,Array.prototype.slice.call(arguments,1));if("treegrid"===c.type&&this.treeGrid.mapOfPosToGridNode){var a=this.treeGrid.mapOfPosToGridNode[-1].height||0;e.width+=c.labels.indentation*(a-1)}return e}function y(b,e,g){var t=
  73. this,m="treegrid"===g.type;t.treeGrid||(t.treeGrid=new F(t));m&&(C(e,"beforeRender",a),C(e,"beforeRedraw",a),C(e,"addSeries",function(b){b.options.data&&(b=c(b.options.data,g.uniqueNames||!1,1),t.treeGrid.collapsedNodes=(t.treeGrid.collapsedNodes||[]).concat(b.collapsedNodes))}),C(t,"foundExtremes",function(){t.treeGrid.collapsedNodes&&t.treeGrid.collapsedNodes.forEach(function(b){var m=t.treeGrid.collapse(b);t.brokenAxis&&(t.brokenAxis.setBreaks(m,!1),t.treeGrid.collapsedNodes&&(t.treeGrid.collapsedNodes=
  74. t.treeGrid.collapsedNodes.filter(function(m){return b.collapseStart!==m.collapseStart||b.collapseEnd!==m.collapseEnd})))})}),C(t,"afterBreaks",function(){"yAxis"===t.coll&&!t.staticScale&&t.chart.options.chart.height&&(t.isDirty=!0)}),g=B({grid:{enabled:!0},labels:{align:"left",levels:[{level:void 0},{level:1,style:{fontWeight:"bold"}}],symbol:{type:"triangle",x:-5,y:-5,height:10,width:10,padding:5}},uniqueNames:!1},g,{reversed:!0,grid:{columns:void 0}}));b.apply(t,[e,g]);m&&(t.hasNames=!0,t.options.showLastLabel=
  75. !0)}function K(b){var c=this.options;"treegrid"===c.type?(this.min=w(this.userMin,c.min,this.dataMin),this.max=w(this.userMax,c.max,this.dataMax),x(this,"foundExtremes"),this.setAxisTranslation(),this.tickmarkOffset=.5,this.tickInterval=1,this.tickPositions=this.treeGrid.mapOfPosToGridNode?this.treeGrid.getTickPositions():[]):b.apply(this,Array.prototype.slice.call(arguments,1))}var I=!1;e.compose=function(b){I||(g(b.prototype,"generateTick",p),g(b.prototype,"getMaxLabelDimensions",v),g(b.prototype,
  76. "init",y),g(b.prototype,"setTickInterval",K),u.compose(l),I=!0)};var F=function(){function c(b){this.axis=b}c.prototype.setCollapsedStatus=function(b){var c=this.axis,e=c.chart;c.series.forEach(function(m){var c=m.options.data;if(b.id&&c){var t=e.get(b.id);m=c[m.data.indexOf(t)];t&&m&&(t.collapsed=b.collapsed,m.collapsed=b.collapsed)}})};c.prototype.collapse=function(c){var e=this.axis,g=e.options.breaks||[],m=b(c,e.max);g.push(m);c.collapsed=!0;e.treeGrid.setCollapsedStatus(c);return g};c.prototype.expand=
  77. function(c){var e=this.axis,g=e.options.breaks||[],m=b(c,e.max);c.collapsed=!1;e.treeGrid.setCollapsedStatus(c);return g.reduce(function(b,c){c.to===m.to&&c.from===m.from||b.push(c);return b},[])};c.prototype.getTickPositions=function(){var b=this.axis,c=Math.floor(b.min/b.tickInterval)*b.tickInterval,e=Math.ceil(b.max/b.tickInterval)*b.tickInterval;return Object.keys(b.treeGrid.mapOfPosToGridNode||{}).reduce(function(m,z){z=+z;!(z>=c&&z<=e)||b.brokenAxis&&b.brokenAxis.isInAnyBreak(z)||m.push(z);
  78. return m},[])};c.prototype.isCollapsed=function(c){var e=this.axis,g=e.options.breaks||[],m=b(c,e.max);return g.some(function(b){return b.from===m.from&&b.to===m.to})};c.prototype.toggleCollapse=function(b){return this.isCollapsed(b)?this.expand(b):this.collapse(b)};return c}();e.Additions=F})(p||(p={}));a.prototype.utils={getNode:r.getNode};p.compose(a);return p});E(a,"Extensions/CurrentDateIndication.js",[a["Core/Axis/Axis.js"],a["Core/Color/Palette.js"],a["Core/Utilities.js"],a["Core/Axis/PlotLineOrBand.js"]],
  79. function(a,l,r,u){var y=r.addEvent,v=r.merge;r=r.wrap;var q={color:l.highlightColor20,width:2,label:{format:"%a, %b %d %Y, %H:%M",formatter:function(a,f){return this.axis.chart.time.dateFormat(f||"",a)},rotation:0,style:{fontSize:"10px"}}};y(a,"afterSetOptions",function(){var a=this.options,f=a.currentDateIndicator;f&&(f="object"===typeof f?v(q,f):v(q),f.value=Date.now(),f.className="highcharts-current-date-indicator",a.plotLines||(a.plotLines=[]),a.plotLines.push(f))});y(u,"render",function(){this.label&&
  80. this.label.attr({text:this.getLabelText(this.options.label)})});r(u.prototype,"getLabelText",function(a,f){var l=this.options;return l&&l.className&&-1!==l.className.indexOf("highcharts-current-date-indicator")&&l.label&&"function"===typeof l.label.formatter?(l.value=Date.now(),l.label.formatter.call(this,l.value,l.label.format)):a.call(this,f)})});E(a,"Extensions/StaticScale.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Utilities.js"]],function(a,l,r){var u=r.addEvent,y=r.defined,
  81. v=r.isNumber,q=r.pick;u(a,"afterSetOptions",function(){var a=this.chart.options.chart;!this.horiz&&v(this.options.staticScale)&&(!a.height||a.scrollablePlotArea&&a.scrollablePlotArea.minHeight)&&(this.staticScale=this.options.staticScale)});l.prototype.adjustHeight=function(){"adjustHeight"!==this.redrawTrigger&&((this.axes||[]).forEach(function(a){var f=a.chart,l=!!f.initiatedScale&&f.options.animation,h=a.options.staticScale;if(a.staticScale&&y(a.min)){var k=q(a.brokenAxis&&a.brokenAxis.unitLength,
  82. a.max+a.tickInterval-a.min)*h;k=Math.max(k,h);h=k-f.plotHeight;!f.scrollablePixelsY&&1<=Math.abs(h)&&(f.plotHeight=k,f.redrawTrigger="adjustHeight",f.setSize(void 0,f.chartHeight+h,l));a.series.forEach(function(a){(a=a.sharedClipKey&&f.sharedClips[a.sharedClipKey])&&a.attr(f.inverted?{width:f.plotHeight}:{height:f.plotHeight})})}}),this.initiatedScale=!0);this.redrawTrigger=null};u(l,"render",l.prototype.adjustHeight)});E(a,"Extensions/ArrowSymbols.js",[a["Core/Renderer/SVG/SVGRenderer.js"]],function(a){a.prototype.symbols.arrow=
  83. function(a,r,u,y){return[["M",a,r+y/2],["L",a+u,r],["L",a,r+y/2],["L",a+u,r+y]]};a.prototype.symbols["arrow-half"]=function(l,r,u,y){return a.prototype.symbols.arrow(l,r,u/2,y)};a.prototype.symbols["triangle-left"]=function(a,r,u,y){return[["M",a+u,r],["L",a,r+y/2],["L",a+u,r+y],["Z"]]};a.prototype.symbols["arrow-filled"]=a.prototype.symbols["triangle-left"];a.prototype.symbols["triangle-left-half"]=function(l,r,u,y){return a.prototype.symbols["triangle-left"](l,r,u/2,y)};a.prototype.symbols["arrow-filled-half"]=
  84. a.prototype.symbols["triangle-left-half"]});E(a,"Gantt/Connection.js",[a["Core/Globals.js"],a["Core/Options.js"],a["Core/Series/Point.js"],a["Core/Utilities.js"]],function(a,l,r,u){function y(a){var d=a.shapeArgs;return d?{xMin:d.x||0,xMax:(d.x||0)+(d.width||0),yMin:d.y||0,yMax:(d.y||0)+(d.height||0)}:(d=a.graphic&&a.graphic.getBBox())?{xMin:a.plotX-d.width/2,xMax:a.plotX+d.width/2,yMin:a.plotY-d.height/2,yMax:a.plotY+d.height/2}:null}"";var v=u.defined,q=u.error,C=u.extend,f=u.merge,x=u.objectEach,
  85. h=a.deg2rad,k=Math.max,d=Math.min;C(l.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});l=function(){function a(a,g,d){this.toPoint=this.pathfinder=this.graphics=this.fromPoint=this.chart=void 0;this.init(a,g,d)}a.prototype.init=function(a,g,d){this.fromPoint=a;this.toPoint=g;this.options=d;this.chart=a.series.chart;this.pathfinder=this.chart.pathfinder};
  86. a.prototype.renderPath=function(a,g,d){var e=this.chart,b=e.styledMode,c=e.pathfinder,f=!e.options.chart.forExport&&!1!==d,h=this.graphics&&this.graphics.path;c.group||(c.group=e.renderer.g().addClass("highcharts-pathfinder-group").attr({zIndex:-1}).add(e.seriesGroup));c.group.translate(e.plotLeft,e.plotTop);h&&h.renderer||(h=e.renderer.path().add(c.group),b||h.attr({opacity:0}));h.attr(g);a={d:a};b||(a.opacity=1);h[f?"animate":"attr"](a,d);this.graphics=this.graphics||{};this.graphics.path=h};a.prototype.addMarker=
  87. function(a,g,d){var e=this.fromPoint.series.chart,b=e.pathfinder;e=e.renderer;var c="start"===a?this.fromPoint:this.toPoint,f=c.getPathfinderAnchorPoint(g);if(g.enabled&&((d="start"===a?d[1]:d[d.length-2])&&"M"===d[0]||"L"===d[0])){d={x:d[1],y:d[2]};d=c.getRadiansToVector(d,f);f=c.getMarkerVector(d,g.radius,f);d=-d/h;if(g.width&&g.height){var k=g.width;var p=g.height}else k=p=2*g.radius;this.graphics=this.graphics||{};f={x:f.x-k/2,y:f.y-p/2,width:k,height:p,rotation:d,rotationOriginX:f.x,rotationOriginY:f.y};
  88. this.graphics[a]?this.graphics[a].animate(f):(this.graphics[a]=e.symbol(g.symbol).addClass("highcharts-point-connecting-path-"+a+"-marker").attr(f).add(b.group),e.styledMode||this.graphics[a].attr({fill:g.color||this.fromPoint.color,stroke:g.lineColor,"stroke-width":g.lineWidth,opacity:0}).animate({opacity:1},c.series.options.animation))}};a.prototype.getPath=function(a){var d=this.pathfinder,h=this.chart,e=d.algorithms[a.type],b=d.chartObstacles;if("function"!==typeof e)return q('"'+a.type+'" is not a Pathfinder algorithm.'),
  89. {path:[],obstacles:[]};e.requiresObstacles&&!b&&(b=d.chartObstacles=d.getChartObstacles(a),h.options.connectors.algorithmMargin=a.algorithmMargin,d.chartObstacleMetrics=d.getObstacleMetrics(b));return e(this.fromPoint.getPathfinderAnchorPoint(a.startMarker),this.toPoint.getPathfinderAnchorPoint(a.endMarker),f({chartObstacles:b,lineObstacles:d.lineObstacles||[],obstacleMetrics:d.chartObstacleMetrics,hardBounds:{xMin:0,xMax:h.plotWidth,yMin:0,yMax:h.plotHeight},obstacleOptions:{margin:a.algorithmMargin},
  90. startDirectionX:d.getAlgorithmStartDirection(a.startMarker)},a))};a.prototype.render=function(){var a=this.fromPoint,g=a.series,h=g.chart,e=h.pathfinder,b=f(h.options.connectors,g.options.connectors,a.options.connectors,this.options),c={};h.styledMode||(c.stroke=b.lineColor||a.color,c["stroke-width"]=b.lineWidth,b.dashStyle&&(c.dashstyle=b.dashStyle));c["class"]="highcharts-point-connecting-path highcharts-color-"+a.colorIndex;b=f(c,b);v(b.marker.radius)||(b.marker.radius=d(k(Math.ceil((b.algorithmMargin||
  91. 8)/2)-1,1),5));a=this.getPath(b);h=a.path;a.obstacles&&(e.lineObstacles=e.lineObstacles||[],e.lineObstacles=e.lineObstacles.concat(a.obstacles));this.renderPath(h,c,g.options.animation);this.addMarker("start",f(b.marker,b.startMarker),h);this.addMarker("end",f(b.marker,b.endMarker),h)};a.prototype.destroy=function(){this.graphics&&(x(this.graphics,function(a){a.destroy()}),delete this.graphics)};return a}();a.Connection=l;C(r.prototype,{getPathfinderAnchorPoint:function(a){var d=y(this);switch(a.align){case "right":var g=
  92. "xMax";break;case "left":g="xMin"}switch(a.verticalAlign){case "top":var f="yMin";break;case "bottom":f="yMax"}return{x:g?d[g]:(d.xMin+d.xMax)/2,y:f?d[f]:(d.yMin+d.yMax)/2}},getRadiansToVector:function(a,d){var g;v(d)||(g=y(this))&&(d={x:(g.xMin+g.xMax)/2,y:(g.yMin+g.yMax)/2});return Math.atan2(d.y-a.y,a.x-d.x)},getMarkerVector:function(a,d,g){var f=2*Math.PI,e=y(this),b=e.xMax-e.xMin,c=e.yMax-e.yMin,h=Math.atan2(c,b),k=!1;b/=2;var l=c/2,w=e.xMin+b;e=e.yMin+l;for(var B=w,x=e,r=1,q=1;a<-Math.PI;)a+=
  93. f;for(;a>Math.PI;)a-=f;f=Math.tan(a);a>-h&&a<=h?(q=-1,k=!0):a>h&&a<=Math.PI-h?q=-1:a>Math.PI-h||a<=-(Math.PI-h)?(r=-1,k=!0):r=-1;k?(B+=r*b,x+=q*b*f):(B+=c/(2*f)*r,x+=q*l);g.x!==w&&(B=g.x);g.y!==e&&(x=g.y);return{x:B+d*Math.cos(a),y:x-d*Math.sin(a)}}});return l});E(a,"Gantt/PathfinderAlgorithms.js",[a["Core/Utilities.js"]],function(a){function l(a,f,d){d=d||0;var h=a.length-1;f-=1e-7;for(var k,g;d<=h;)if(k=h+d>>1,g=f-a[k].xMin,0<g)d=k+1;else if(0>g)h=k-1;else return k;return 0<d?d-1:0}function r(a,
  94. f){for(var d=l(a,f.x+1)+1;d--;){var h;if(h=a[d].xMax>=f.x)h=a[d],h=f.x<=h.xMax&&f.x>=h.xMin&&f.y<=h.yMax&&f.y>=h.yMin;if(h)return d}return-1}function u(a){var f=[];if(a.length){f.push(["M",a[0].start.x,a[0].start.y]);for(var d=0;d<a.length;++d)f.push(["L",a[d].end.x,a[d].end.y])}return f}function y(a,f){a.yMin=C(a.yMin,f.yMin);a.yMax=q(a.yMax,f.yMax);a.xMin=C(a.xMin,f.xMin);a.xMax=q(a.xMax,f.xMax)}var v=a.pick,q=Math.min,C=Math.max,f=Math.abs;a=function(a,k,d){function h(b,a,c,e,d){b={x:b.x,y:b.y};
  95. b[a]=c[e||a]+(d||0);return b}function l(b,a,c){var e=f(a[c]-b[c+"Min"])>f(a[c]-b[c+"Max"]);return h(a,c,b,c+(e?"Max":"Min"),e?1:-1)}var g=[],p=v(d.startDirectionX,f(k.x-a.x)>f(k.y-a.y))?"x":"y",e=d.chartObstacles,b=r(e,a);d=r(e,k);if(-1<d){var c=e[d];d=l(c,k,p);c={start:d,end:k};var n=d}else n=k;-1<b&&(e=e[b],d=l(e,a,p),g.push({start:a,end:d}),d[p]>=a[p]===d[p]>=n[p]&&(p="y"===p?"x":"y",k=a[p]<k[p],g.push({start:d,end:h(d,p,e,p+(k?"Max":"Min"),k?1:-1)}),p="y"===p?"x":"y"));a=g.length?g[g.length-1].end:
  96. a;d=h(a,p,n);g.push({start:a,end:d});p=h(d,"y"===p?"x":"y",n);g.push({start:d,end:p});g.push(c);return{path:u(g),obstacles:g}};a.requiresObstacles=!0;var x=function(a,k,d){function h(b,a,m){var c,e=b.x<a.x?1:-1;if(b.x<a.x){var d=b;var g=a}else d=a,g=b;if(b.y<a.y){var t=b;var f=a}else t=a,f=b;for(c=0>e?q(l(F,g.x),F.length-1):0;F[c]&&(0<e&&F[c].xMin<=g.x||0>e&&F[c].xMax>=d.x);){if(F[c].xMin<=g.x&&F[c].xMax>=d.x&&F[c].yMin<=f.y&&F[c].yMax>=t.y)return m?{y:b.y,x:b.x<a.x?F[c].xMin-1:F[c].xMax+1,obstacle:F[c]}:
  97. {x:b.x,y:b.y<a.y?F[c].yMin-1:F[c].yMax+1,obstacle:F[c]};c+=e}return a}function x(b,a,m,c,e){var d=e.soft,z=e.hard,g=c?"x":"y",t={x:a.x,y:a.y},H={x:a.x,y:a.y};e=b[g+"Max"]>=d[g+"Max"];d=b[g+"Min"]<=d[g+"Min"];var A=b[g+"Max"]>=z[g+"Max"];z=b[g+"Min"]<=z[g+"Min"];var k=f(b[g+"Min"]-a[g]),n=f(b[g+"Max"]-a[g]);m=10>f(k-n)?a[g]<m[g]:n<k;H[g]=b[g+"Min"];t[g]=b[g+"Max"];b=h(a,H,c)[g]!==H[g];a=h(a,t,c)[g]!==t[g];m=b?a?m:!0:a?!1:m;m=d?e?m:!0:e?!1:m;return z?A?m:!0:A?!1:m}function g(b,a,c){if(b.x===a.x&&b.y===
  98. a.y)return[];var m=c?"x":"y",e=d.obstacleOptions.margin;var t={soft:{xMin:N,xMax:J,yMin:K,yMax:I},hard:d.hardBounds};var f=r(F,b);if(-1<f){f=F[f];t=x(f,b,a,c,t);y(f,d.hardBounds);var A=c?{y:b.y,x:f[t?"xMax":"xMin"]+(t?1:-1)}:{x:b.x,y:f[t?"yMax":"yMin"]+(t?1:-1)};var k=r(F,A);-1<k&&(k=F[k],y(k,d.hardBounds),A[m]=t?C(f[m+"Max"]-e+1,(k[m+"Min"]+f[m+"Max"])/2):q(f[m+"Min"]+e-1,(k[m+"Max"]+f[m+"Min"])/2),b.x===A.x&&b.y===A.y?(n&&(A[m]=t?C(f[m+"Max"],k[m+"Max"])+1:q(f[m+"Min"],k[m+"Min"])-1),n=!n):n=!1);
  99. b=[{start:b,end:A}]}else m=h(b,{x:c?a.x:b.x,y:c?b.y:a.y},c),b=[{start:b,end:{x:m.x,y:m.y}}],m[c?"x":"y"]!==a[c?"x":"y"]&&(t=x(m.obstacle,m,a,!c,t),y(m.obstacle,d.hardBounds),t={x:c?m.x:m.obstacle[t?"xMax":"xMin"]+(t?1:-1),y:c?m.obstacle[t?"yMax":"yMin"]+(t?1:-1):m.y},c=!c,b=b.concat(g({x:m.x,y:m.y},t,c)));return b=b.concat(g(b[b.length-1].end,a,!c))}function p(b,a,c){var m=q(b.xMax-a.x,a.x-b.xMin)<q(b.yMax-a.y,a.y-b.yMin);c=x(b,a,c,m,{soft:d.hardBounds,hard:d.hardBounds});return m?{y:a.y,x:b[c?"xMax":
  100. "xMin"]+(c?1:-1)}:{x:a.x,y:b[c?"yMax":"yMin"]+(c?1:-1)}}var e=v(d.startDirectionX,f(k.x-a.x)>f(k.y-a.y)),b=e?"x":"y",c=[],n=!1,G=d.obstacleMetrics,N=q(a.x,k.x)-G.maxWidth-10,J=C(a.x,k.x)+G.maxWidth+10,K=q(a.y,k.y)-G.maxHeight-10,I=C(a.y,k.y)+G.maxHeight+10,F=d.chartObstacles;var M=l(F,N);G=l(F,J);F=F.slice(M,G+1);if(-1<(G=r(F,k))){var D=p(F[G],k,a);c.push({end:k,start:D});k=D}for(;-1<(G=r(F,k));)M=0>k[b]-a[b],D={x:k.x,y:k.y},D[b]=F[G][M?b+"Max":b+"Min"]+(M?1:-1),c.push({end:k,start:D}),k=D;a=g(a,
  101. k,e);a=a.concat(c.reverse());return{path:u(a),obstacles:a}};x.requiresObstacles=!0;return{fastAvoid:x,straight:function(a,f){return{path:[["M",a.x,a.y],["L",f.x,f.y]],obstacles:[{start:a,end:f}]}},simpleConnect:a}});E(a,"Gantt/Pathfinder.js",[a["Gantt/Connection.js"],a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Core/Options.js"],a["Core/Series/Point.js"],a["Core/Utilities.js"],a["Gantt/PathfinderAlgorithms.js"]],function(a,l,r,u,y,v,q){function C(b){var a=b.shapeArgs;return a?{xMin:a.x||0,xMax:(a.x||
  102. 0)+(a.width||0),yMin:a.y||0,yMax:(a.y||0)+(a.height||0)}:(a=b.graphic&&b.graphic.getBBox())?{xMin:b.plotX-a.width/2,xMax:b.plotX+a.width/2,yMin:b.plotY-a.height/2,yMax:b.plotY+a.height/2}:null}function f(a){for(var c=a.length,d=0,f,k,h=[],n=function(a,c,e){e=g(e,10);var d=a.yMax+e>c.yMin-e&&a.yMin-e<c.yMax+e,m=a.xMax+e>c.xMin-e&&a.xMin-e<c.xMax+e,z=d?a.xMin>c.xMax?a.xMin-c.xMax:c.xMin-a.xMax:Infinity,f=m?a.yMin>c.yMax?a.yMin-c.yMax:c.yMin-a.yMax:Infinity;return m&&d?e?n(a,c,Math.floor(e/2)):Infinity:
  103. b(z,f)};d<c;++d)for(f=d+1;f<c;++f)k=n(a[d],a[f]),80>k&&h.push(k);h.push(80);return e(Math.floor(h.sort(function(b,a){return b-a})[Math.floor(h.length/10)]/2-1),1)}function x(b){if(b.options.pathfinder||b.series.reduce(function(b,a){a.options&&w(!0,a.options.connectors=a.options.connectors||{},a.options.pathfinder);return b||a.options&&a.options.pathfinder},!1))w(!0,b.options.connectors=b.options.connectors||{},b.options.pathfinder),d('WARNING: Pathfinder options have been renamed. Use "chart.connectors" or "series.connectors" instead.')}
  104. "";var h=v.addEvent,k=v.defined,d=v.error,B=v.extend,w=v.merge,g=v.pick,p=v.splat,e=Math.max,b=Math.min;B(u.defaultOptions,{connectors:{type:"straight",lineWidth:1,marker:{enabled:!1,align:"center",verticalAlign:"middle",inside:!1,lineWidth:1},startMarker:{symbol:"diamond"},endMarker:{symbol:"arrow-filled"}}});var c=function(){function b(b){this.lineObstacles=this.group=this.connections=this.chartObstacleMetrics=this.chartObstacles=this.chart=void 0;this.init(b)}b.prototype.init=function(b){this.chart=
  105. b;this.connections=[];h(b,"redraw",function(){this.pathfinder.update()})};b.prototype.update=function(b){var c=this.chart,e=this,d=e.connections;e.connections=[];c.series.forEach(function(b){b.visible&&!b.options.isInternal&&b.points.forEach(function(b){var m=b.options;m&&m.dependency&&(m.connect=m.dependency);var d;m=b.options&&b.options.connect&&p(b.options.connect);b.visible&&!1!==b.isInside&&m&&m.forEach(function(m){d=c.get("string"===typeof m?m:m.to);d instanceof y&&d.series.visible&&d.visible&&
  106. !1!==d.isInside&&e.connections.push(new a(b,d,"string"===typeof m?{}:m))})})});for(var g=0,f=void 0,h=void 0,k=d.length,t=e.connections.length;g<k;++g){h=!1;for(f=0;f<t;++f)if(d[g].fromPoint===e.connections[f].fromPoint&&d[g].toPoint===e.connections[f].toPoint){e.connections[f].graphics=d[g].graphics;h=!0;break}h||d[g].destroy()}delete this.chartObstacles;delete this.lineObstacles;e.renderConnections(b)};b.prototype.renderConnections=function(b){b?this.chart.series.forEach(function(b){var a=function(){var a=
  107. b.chart.pathfinder;(a&&a.connections||[]).forEach(function(a){a.fromPoint&&a.fromPoint.series===b&&a.render()});b.pathfinderRemoveRenderEvent&&(b.pathfinderRemoveRenderEvent(),delete b.pathfinderRemoveRenderEvent)};!1===b.options.animation?a():b.pathfinderRemoveRenderEvent=h(b,"afterAnimate",a)}):this.connections.forEach(function(b){b.render()})};b.prototype.getChartObstacles=function(b){for(var a=[],c=this.chart.series,e=g(b.algorithmMargin,0),d,h=0,n=c.length;h<n;++h)if(c[h].visible&&!c[h].options.isInternal){var p=
  108. 0,t=c[h].points.length,A=void 0;for(A=void 0;p<t;++p)A=c[h].points[p],A.visible&&(A=C(A))&&a.push({xMin:A.xMin-e,xMax:A.xMax+e,yMin:A.yMin-e,yMax:A.yMax+e})}a=a.sort(function(b,a){return b.xMin-a.xMin});k(b.algorithmMargin)||(d=b.algorithmMargin=f(a),a.forEach(function(b){b.xMin-=d;b.xMax+=d;b.yMin-=d;b.yMax+=d}));return a};b.prototype.getObstacleMetrics=function(b){for(var a=0,c=0,e,d,g=b.length;g--;)e=b[g].xMax-b[g].xMin,d=b[g].yMax-b[g].yMin,a<e&&(a=e),c<d&&(c=d);return{maxHeight:c,maxWidth:a}};
  109. b.prototype.getAlgorithmStartDirection=function(b){var a="top"!==b.verticalAlign&&"bottom"!==b.verticalAlign;return"left"!==b.align&&"right"!==b.align?a?void 0:!1:a?!0:void 0};return b}();c.prototype.algorithms=q;r.Pathfinder=c;B(y.prototype,{getPathfinderAnchorPoint:function(b){var a=C(this);switch(b.align){case "right":var c="xMax";break;case "left":c="xMin"}switch(b.verticalAlign){case "top":var e="yMin";break;case "bottom":e="yMax"}return{x:c?a[c]:(a.xMin+a.xMax)/2,y:e?a[e]:(a.yMin+a.yMax)/2}},
  110. getRadiansToVector:function(b,a){var c;k(a)||(c=C(this))&&(a={x:(c.xMin+c.xMax)/2,y:(c.yMin+c.yMax)/2});return Math.atan2(a.y-b.y,b.x-a.x)},getMarkerVector:function(b,a,c){var e=2*Math.PI,d=C(this),g=d.xMax-d.xMin,f=d.yMax-d.yMin,h=Math.atan2(f,g),k=!1;g/=2;var t=f/2,A=d.xMin+g;d=d.yMin+t;for(var m=A,z=d,H=1,L=1;b<-Math.PI;)b+=e;for(;b>Math.PI;)b-=e;e=Math.tan(b);b>-h&&b<=h?(L=-1,k=!0):b>h&&b<=Math.PI-h?L=-1:b>Math.PI-h||b<=-(Math.PI-h)?(H=-1,k=!0):H=-1;k?(m+=H*g,z+=L*g*e):(m+=f/(2*e)*H,z+=L*t);c.x!==
  111. A&&(m=c.x);c.y!==d&&(z=c.y);return{x:m+a*Math.cos(b),y:z-a*Math.sin(b)}}});l.prototype.callbacks.push(function(b){!1!==b.options.connectors.enabled&&(x(b),this.pathfinder=new c(this),this.pathfinder.update(!0))});return c});E(a,"Series/Gantt/GanttSeries.js",[a["Series/Gantt/GanttPoint.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,l,r){var u=this&&this.__extends||function(){var a=function(f,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,d){a.__proto__=
  112. d}||function(a,d){for(var g in d)d.hasOwnProperty(g)&&(a[g]=d[g])};return a(f,d)};return function(f,d){function h(){this.constructor=f}a(f,d);f.prototype=null===d?Object.create(d):(h.prototype=d.prototype,new h)}}(),y=l.series,v=l.seriesTypes.xrange,q=r.extend,C=r.isNumber,f=r.merge,x=r.splat;r=function(a){function h(){var d=null!==a&&a.apply(this,arguments)||this;d.data=void 0;d.options=void 0;d.points=void 0;return d}u(h,a);h.prototype.drawPoint=function(a,f){var d=this.options,g=this.chart.renderer,
  113. h=a.shapeArgs,e=a.plotY,b=a.graphic,c=a.selected&&"select",k=d.stacking&&!d.borderRadius;if(a.options.milestone)if(C(e)&&null!==a.y&&!1!==a.visible){h=g.symbols.diamond(h.x||0,h.y||0,h.width||0,h.height||0);if(b)b[f]({d:h});else a.graphic=g.path(h).addClass(a.getClassName(),!0).add(a.group||this.group);this.chart.styledMode||a.graphic.attr(this.pointAttribs(a,c)).shadow(d.shadow,null,k)}else b&&(a.graphic=b.destroy());else v.prototype.drawPoint.call(this,a,f)};h.prototype.translatePoint=function(a){v.prototype.translatePoint.call(this,
  114. a);if(a.options.milestone){var d=a.shapeArgs;var f=d.height||0;a.shapeArgs={x:(d.x||0)-f/2,y:d.y,width:f,height:f}}};h.defaultOptions=f(v.defaultOptions,{grouping:!1,dataLabels:{enabled:!0},tooltip:{headerFormat:'<span style="font-size: 10px">{series.name}</span><br/>',pointFormat:null,pointFormatter:function(){var a=this.series,f=a.chart.tooltip,h=a.xAxis,g=a.tooltipOptions.dateTimeLabelFormats,k=h.options.startOfWeek,e=a.tooltipOptions,b=e.xDateFormat,c=this.options.milestone,n="<b>"+(this.name||
  115. this.yCategory)+"</b>";if(e.pointFormat)return this.tooltipFormatter(e.pointFormat);b||(b=x(f.getDateFormat(h.closestPointRange,this.start,k,g))[0]);f=a.chart.time.dateFormat(b,this.start);a=a.chart.time.dateFormat(b,this.end);n+="<br/>";return c?n+(f+"<br/>"):n+("Start: "+f+"<br/>End: ")+(a+"<br/>")}},connectors:{type:"simpleConnect",animation:{reversed:!0},startMarker:{enabled:!0,symbol:"arrow-filled",radius:4,fill:"#fa0",align:"left"},endMarker:{enabled:!1,align:"right"}}});return h}(v);q(r.prototype,
  116. {keyboardMoveVertical:!1,pointArrayMap:["start","end","y"],pointClass:a,setData:y.prototype.setData});l.registerSeriesType("gantt",r);"";return r});E(a,"Core/Chart/GanttChart.js",[a["Core/Chart/Chart.js"],a["Core/Options.js"],a["Core/Utilities.js"]],function(a,l,r){var u=this&&this.__extends||function(){var a=function(f,h){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,d){a.__proto__=d}||function(a,d){for(var f in d)d.hasOwnProperty(f)&&(a[f]=d[f])};return a(f,h)};return function(f,
  117. h){function k(){this.constructor=f}a(f,h);f.prototype=null===h?Object.create(h):(k.prototype=h.prototype,new k)}}(),y=l.getOptions,v=r.isArray,q=r.merge,C=r.splat;a=function(a){function f(){return null!==a&&a.apply(this,arguments)||this}u(f,a);f.prototype.init=function(f,k){var d=f.series,h=y(),l;v(f.xAxis)||(f.xAxis=[f.xAxis||{},{}]);f.xAxis=f.xAxis.map(function(a,d){1===d&&(l=0);return q(h.xAxis,{grid:{enabled:!0},opposite:!0,linkedTo:l},a,{type:"datetime"})});f.yAxis=C(f.yAxis||{}).map(function(a){return q(h.yAxis,
  118. {grid:{enabled:!0},staticScale:50,reversed:!0,type:a.categories?a.type:"treegrid"},a)});delete f.series;f=q(!0,{chart:{type:"gantt"},title:{text:null},legend:{enabled:!1},navigator:{series:{type:"gantt"},yAxis:{type:"category"}}},f,{isGantt:!0});f.series=d;a.prototype.init.call(this,f,k)};return f}(a);(function(a){a.ganttChart=function(f,h,k){return new a(f,h,k)}})(a||(a={}));return a});E(a,"Core/Axis/ScrollbarAxis.js",[a["Core/Utilities.js"]],function(a){var l=a.addEvent,r=a.defined,u=a.pick;return function(){function a(){}
  119. a.compose=function(a,q){var v=function(a){var f=u(a.options&&a.options.min,a.min),h=u(a.options&&a.options.max,a.max);return{axisMin:f,axisMax:h,scrollMin:r(a.dataMin)?Math.min(f,a.min,a.dataMin,u(a.threshold,Infinity)):f,scrollMax:r(a.dataMax)?Math.max(h,a.max,a.dataMax,u(a.threshold,-Infinity)):h}};l(a,"afterInit",function(){var a=this;a.options&&a.options.scrollbar&&a.options.scrollbar.enabled&&(a.options.scrollbar.vertical=!a.horiz,a.options.startOnTick=a.options.endOnTick=!1,a.scrollbar=new q(a.chart.renderer,
  120. a.options.scrollbar,a.chart),l(a.scrollbar,"changed",function(f){var h=v(a),k=h.axisMax,d=h.scrollMin,l=h.scrollMax-d;r(h.axisMin)&&r(k)&&(a.horiz&&!a.reversed||!a.horiz&&a.reversed?(h=d+l*this.to,d+=l*this.from):(h=d+l*(1-this.from),d+=l*(1-this.to)),this.shouldUpdateExtremes(f.DOMType)?a.setExtremes(d,h,!0,"mousemove"!==f.DOMType&&"touchmove"!==f.DOMType,f):this.setRange(this.from,this.to))}))});l(a,"afterRender",function(){var a=v(this),l=a.scrollMin,h=a.scrollMax;a=this.scrollbar;var k=this.axisTitleMargin+
  121. (this.titleOffset||0),d=this.chart.scrollbarsOffsets,q=this.options.margin||0;a&&(this.horiz?(this.opposite||(d[1]+=k),a.position(this.left,this.top+this.height+2+d[1]-(this.opposite?q:0),this.width,this.height),this.opposite||(d[1]+=q),k=1):(this.opposite&&(d[0]+=k),a.position(this.left+this.width+2+d[0]-(this.opposite?0:q),this.top,this.width,this.height),this.opposite&&(d[0]+=q),k=0),d[k]+=a.size+a.options.margin,isNaN(l)||isNaN(h)||!r(this.min)||!r(this.max)||this.min===this.max?a.setRange(0,
  122. 1):(d=(this.min-l)/(h-l),l=(this.max-l)/(h-l),this.horiz&&!this.reversed||!this.horiz&&this.reversed?a.setRange(d,l):a.setRange(1-l,1-d)))});l(a,"afterGetOffset",function(){var a=this.horiz?2:1,l=this.scrollbar;l&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[a]+=l.size+l.options.margin)})};return a}()});E(a,"Core/Scrollbar.js",[a["Core/Axis/Axis.js"],a["Core/Globals.js"],a["Core/Color/Palette.js"],a["Core/Axis/ScrollbarAxis.js"],a["Core/Utilities.js"],a["Core/Options.js"]],function(a,
  123. l,r,u,y,v){var q=y.addEvent,C=y.correctFloat,f=y.defined,x=y.destroyObjectProperties,h=y.fireEvent,k=y.merge,d=y.pick,B=y.removeEvent;y=v.defaultOptions;var w=l.isTouchDevice,g=l.swapXY=function(a,e){e&&a.forEach(function(a){for(var b=a.length,e,d=0;d<b;d+=2)e=a[d+1],"number"===typeof e&&(a[d+1]=a[d+2],a[d+2]=e)});return a};v=function(){function a(a,b,c){this._events=[];this.from=this.chartY=this.chartX=0;this.scrollbar=this.group=void 0;this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=
  124. 0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions={};this.y=this.x=0;this.chart=c;this.options=b;this.renderer=c.renderer;this.init(a,b,c)}a.prototype.addEvents=function(){var a=this.options.inverted?[1,0]:[0,1],b=this.scrollbarButtons,c=this.scrollbarGroup.element,d=this.track.element,g=this.mouseDownHandler.bind(this),f=this.mouseMoveHandler.bind(this),h=this.mouseUpHandler.bind(this);a=[[b[a[0]].element,
  125. "click",this.buttonToMinClick.bind(this)],[b[a[1]].element,"click",this.buttonToMaxClick.bind(this)],[d,"click",this.trackClick.bind(this)],[c,"mousedown",g],[c.ownerDocument,"mousemove",f],[c.ownerDocument,"mouseup",h]];l.hasTouch&&a.push([c,"touchstart",g],[c.ownerDocument,"touchmove",f],[c.ownerDocument,"touchend",h]);a.forEach(function(a){q.apply(null,a)});this._events=a};a.prototype.buttonToMaxClick=function(a){var b=(this.to-this.from)*d(this.options.step,.2);this.updatePosition(this.from+b,
  126. this.to+b);h(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.buttonToMinClick=function(a){var b=C(this.to-this.from)*d(this.options.step,.2);this.updatePosition(C(this.from-b),C(this.to-b));h(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.cursorToScrollbarPosition=function(a){var b=this.options;b=b.minWidth>this.calculatedWidth?b.minWidth:0;return{chartX:(a.chartX-this.x-this.xOffset)/(this.barWidth-b),chartY:(a.chartY-
  127. this.y-this.yOffset)/(this.barWidth-b)}};a.prototype.destroy=function(){var a=this.chart.scroller;this.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(a){this[a]&&this[a].destroy&&(this[a]=this[a].destroy())},this);a&&this===a.scrollbar&&(a.scrollbar=null,x(a.scrollbarButtons))};a.prototype.drawScrollbarButton=function(a){var b=this.renderer,c=this.scrollbarButtons,e=this.options,d=this.size;var f=b.g().add(this.group);c.push(f);f=b.rect().addClass("highcharts-scrollbar-button").add(f);
  128. this.chart.styledMode||f.attr({stroke:e.buttonBorderColor,"stroke-width":e.buttonBorderWidth,fill:e.buttonBackgroundColor});f.attr(f.crisp({x:-.5,y:-.5,width:d+1,height:d+1,r:e.buttonBorderRadius},f.strokeWidth()));f=b.path(g([["M",d/2+(a?-1:1),d/2-3],["L",d/2+(a?-1:1),d/2+3],["L",d/2+(a?2:-2),d/2]],e.vertical)).addClass("highcharts-scrollbar-arrow").add(c[a]);this.chart.styledMode||f.attr({fill:e.buttonArrowColor})};a.prototype.init=function(e,b,c){this.scrollbarButtons=[];this.renderer=e;this.userOptions=
  129. b;this.options=k(a.defaultOptions,b);this.chart=c;this.size=d(this.options.size,this.options.height);b.enabled&&(this.render(),this.addEvents())};a.prototype.mouseDownHandler=function(a){a=this.chart.pointer.normalize(a);a=this.cursorToScrollbarPosition(a);this.chartX=a.chartX;this.chartY=a.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};a.prototype.mouseMoveHandler=function(a){var b=this.chart.pointer.normalize(a),c=this.options.vertical?"chartY":"chartX",e=this.initPositions||
  130. [];!this.grabbedCenter||a.touches&&0===a.touches[0][c]||(b=this.cursorToScrollbarPosition(b)[c],c=this[c],c=b-c,this.hasDragged=!0,this.updatePosition(e[0]+c,e[1]+c),this.hasDragged&&h(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a}))};a.prototype.mouseUpHandler=function(a){this.hasDragged&&h(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};a.prototype.position=
  131. function(a,b,c,d){var e=this.options.vertical,g=0,f=this.rendered?"animate":"attr";this.x=a;this.y=b+this.trackBorderWidth;this.width=c;this.xOffset=this.height=d;this.yOffset=g;e?(this.width=this.yOffset=c=g=this.size,this.xOffset=b=0,this.barWidth=d-2*c,this.x=a+=this.options.margin):(this.height=this.xOffset=d=b=this.size,this.barWidth=c-2*d,this.y+=this.options.margin);this.group[f]({translateX:a,translateY:this.y});this.track[f]({width:c,height:d});this.scrollbarButtons[1][f]({translateX:e?0:
  132. c-b,translateY:e?d-g:0})};a.prototype.removeEvents=function(){this._events.forEach(function(a){B.apply(null,a)});this._events.length=0};a.prototype.render=function(){var a=this.renderer,b=this.options,c=this.size,d=this.chart.styledMode,f;this.group=f=a.g("scrollbar").attr({zIndex:b.zIndex,translateY:-99999}).add();this.track=a.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:b.trackBorderRadius||0,height:c,width:c}).add(f);d||this.track.attr({fill:b.trackBackgroundColor,stroke:b.trackBorderColor,
  133. "stroke-width":b.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=a.g().add(f);this.scrollbar=a.rect().addClass("highcharts-scrollbar-thumb").attr({height:c,width:c,r:b.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=a.path(g([["M",-3,c/4],["L",-3,2*c/3],["M",0,c/4],["L",0,2*c/3],["M",3,c/4],["L",3,2*c/3]],b.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);d||(this.scrollbar.attr({fill:b.barBackgroundColor,
  134. stroke:b.barBorderColor,"stroke-width":b.barBorderWidth}),this.scrollbarRifles.attr({stroke:b.rifleColor,"stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth%2/2,-this.scrollbarStrokeWidth%2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};a.prototype.setRange=function(a,b){var c=this.options,d=c.vertical,e=c.minWidth,g=this.barWidth,h,k=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?
  135. "attr":"animate";if(f(g)){a=Math.max(a,0);var l=Math.ceil(g*a);this.calculatedWidth=h=C(g*Math.min(b,1)-l);h<e&&(l=(g-e+h)*a,h=e);e=Math.floor(l+this.xOffset+this.yOffset);g=h/2-.5;this.from=a;this.to=b;d?(this.scrollbarGroup[k]({translateY:e}),this.scrollbar[k]({height:h}),this.scrollbarRifles[k]({translateY:g}),this.scrollbarTop=e,this.scrollbarLeft=0):(this.scrollbarGroup[k]({translateX:e}),this.scrollbar[k]({width:h}),this.scrollbarRifles[k]({translateX:g}),this.scrollbarLeft=e,this.scrollbarTop=
  136. 0);12>=h?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===c.showFull&&(0>=a&&1<=b?this.group.hide():this.group.show());this.rendered=!0}};a.prototype.shouldUpdateExtremes=function(a){return d(this.options.liveRedraw,l.svg&&!l.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===a||"touchend"===a||!f(a)};a.prototype.trackClick=function(a){var b=this.chart.pointer.normalize(a),c=this.to-this.from,d=this.y+this.scrollbarTop,e=this.x+this.scrollbarLeft;this.options.vertical&&b.chartY>d||
  137. !this.options.vertical&&b.chartX>e?this.updatePosition(this.from+c,this.to+c):this.updatePosition(this.from-c,this.to-c);h(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.update=function(a){this.destroy();this.init(this.chart.renderer,k(!0,this.options,a),this.chart)};a.prototype.updatePosition=function(a,b){1<b&&(a=C(1-C(b-a)),b=1);0>a&&(b=C(b-a),a=0);this.from=a;this.to=b};a.defaultOptions={height:w?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,
  138. margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:r.neutralColor20,barBorderWidth:1,barBorderColor:r.neutralColor20,buttonArrowColor:r.neutralColor80,buttonBackgroundColor:r.neutralColor10,buttonBorderColor:r.neutralColor20,buttonBorderWidth:1,rifleColor:r.neutralColor80,trackBackgroundColor:r.neutralColor5,trackBorderColor:r.neutralColor5,trackBorderWidth:1};return a}();l.Scrollbar||(y.scrollbar=k(!0,v.defaultOptions,y.scrollbar),l.Scrollbar=v,u.compose(a,v));return l.Scrollbar});E(a,"Extensions/RangeSelector.js",
  139. [a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Core/Options.js"],a["Core/Color/Palette.js"],a["Core/Renderer/SVG/SVGElement.js"],a["Core/Utilities.js"]],function(a,l,r,u,y,v,q){function C(a){if(-1!==a.indexOf("%L"))return"text";var b="aAdewbBmoyY".split("").some(function(b){return-1!==a.indexOf("%"+b)}),c="HkIlMS".split("").some(function(b){return-1!==a.indexOf("%"+b)});return b&&c?"datetime-local":b?"date":c?"time":"text"}var f=u.defaultOptions,x=q.addEvent,h=q.createElement,
  140. k=q.css,d=q.defined,B=q.destroyObjectProperties,w=q.discardElement,g=q.extend,p=q.find,e=q.fireEvent,b=q.isNumber,c=q.merge,n=q.objectEach,G=q.pad,E=q.pick,J=q.pInt,K=q.splat;g(f,{rangeSelector:{allButtonsEnabled:!1,buttons:void 0,buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%b %e, %Y",inputDateParser:void 0,
  141. inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:y.highlightColor80,cursor:"pointer"},labelStyle:{color:y.neutralColor60}}});g(f.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"\u2192"});var I=function(){function l(a){this.buttons=void 0;this.buttonOptions=l.prototype.defaultButtons;this.initialButtonGroupWidth=0;this.options=void 0;this.chart=a;this.init(a)}
  142. l.prototype.clickButton=function(c,g){var m=this.chart,f=this.buttonOptions[c],t=m.xAxis[0],h=m.scroller&&m.scroller.getUnionExtremes()||t||{},k=h.dataMin,A=h.dataMax,l=t&&Math.round(Math.min(t.max,E(A,t.max))),n=f.type;h=f._range;var q,p=f.dataGrouping;if(null!==k&&null!==A){m.fixedRange=h;this.setSelected(c);p&&(this.forcedDataGrouping=!0,a.prototype.setDataGrouping.call(t||{chart:this.chart},p,!1),this.frozenStates=f.preserveDataGrouping);if("month"===n||"year"===n)if(t){n={range:f,max:l,chart:m,
  143. dataMin:k,dataMax:A};var r=t.minFromRange.call(n);b(n.newMax)&&(l=n.newMax)}else h=f;else if(h)r=Math.max(l-h,k),l=Math.min(r+h,A);else if("ytd"===n)if(t)"undefined"===typeof A&&(k=Number.MAX_VALUE,A=Number.MIN_VALUE,m.series.forEach(function(a){a=a.xData;k=Math.min(a[0],k);A=Math.max(a[a.length-1],A)}),g=!1),l=this.getYTDExtremes(A,k,m.time.useUTC),r=q=l.min,l=l.max;else{this.deferredYTDClick=c;return}else"all"===n&&t&&(r=k,l=A);d(r)&&(r+=f._offsetMin);d(l)&&(l+=f._offsetMax);this.dropdown&&(this.dropdown.selectedIndex=
  144. c+1);if(t)t.setExtremes(r,l,E(g,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:f});else{var v=K(m.options.xAxis)[0];var u=v.range;v.range=h;var w=v.min;v.min=q;x(m,"load",function(){v.range=u;v.min=w})}e(this,"afterBtnClick")}};l.prototype.setSelected=function(a){this.selected=this.options.selected=a};l.prototype.init=function(a){var b=this,c=a.options.rangeSelector,d=c.buttons||b.defaultButtons.slice(),g=c.selected,f=function(){var a=b.minInput,c=b.maxInput;a&&a.blur&&e(a,"blur");
  145. c&&c.blur&&e(c,"blur")};b.chart=a;b.options=c;b.buttons=[];b.buttonOptions=d;this.eventsToUnbind=[];this.eventsToUnbind.push(x(a.container,"mousedown",f));this.eventsToUnbind.push(x(a,"resize",f));d.forEach(b.computeButtonRange);"undefined"!==typeof g&&d[g]&&this.clickButton(g,!1);this.eventsToUnbind.push(x(a,"load",function(){a.xAxis&&a.xAxis[0]&&x(a.xAxis[0],"setExtremes",function(c){this.max-this.min!==a.fixedRange&&"rangeSelectorButton"!==c.trigger&&"updatedData"!==c.trigger&&b.forcedDataGrouping&&
  146. !b.frozenStates&&this.setDataGrouping(!1,!1)})}))};l.prototype.updateButtonStates=function(){var a=this,c=this.chart,m=this.dropdown,d=c.xAxis[0],e=Math.round(d.max-d.min),g=!d.hasVisibleSeries,f=c.scroller&&c.scroller.getUnionExtremes()||d,h=f.dataMin,k=f.dataMax;c=a.getYTDExtremes(k,h,c.time.useUTC);var l=c.min,n=c.max,r=a.selected,q=b(r),p=a.options.allButtonsEnabled,v=a.buttons;a.buttonOptions.forEach(function(b,c){var f=b._range,z=b.type,t=b.count||1,H=v[c],A=0,L=b._offsetMax-b._offsetMin;b=
  147. c===r;var O=f>k-h,P=f<d.minRange,u=!1,w=!1;f=f===e;("month"===z||"year"===z)&&e+36E5>=864E5*{month:28,year:365}[z]*t-L&&e-36E5<=864E5*{month:31,year:366}[z]*t+L?f=!0:"ytd"===z?(f=n-l+L===e,u=!b):"all"===z&&(f=d.max-d.min>=k-h,w=!b&&q&&f);z=!p&&(O||P||w||g);t=b&&f||f&&!q&&!u||b&&a.frozenStates;z?A=3:t&&(q=!0,A=2);H.state!==A&&(H.setState(A),m&&(m.options[c+1].disabled=z,2===A&&(m.selectedIndex=c+1)),0===A&&r===c&&a.setSelected())})};l.prototype.computeButtonRange=function(a){var b=a.type,c=a.count||
  148. 1,d={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(d[b])a._range=d[b]*c;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*c;a._offsetMin=E(a.offsetMin,0);a._offsetMax=E(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};l.prototype.getInputValue=function(a){a="min"===a?this.minInput:this.maxInput;var b=this.chart.options.rangeSelector,c=this.chart.time;return a?("text"===a.type&&b.inputDateParser||this.defaultInputDateParser)(a.value,c.useUTC,c):0};l.prototype.setInputValue=
  149. function(a,b){var c=this.options,e=this.chart.time,g="min"===a?this.minInput:this.maxInput;a="min"===a?this.minDateBox:this.maxDateBox;if(g){var f=g.getAttribute("data-hc-time");f=d(f)?Number(f):void 0;d(b)&&(d(f)&&g.setAttribute("data-hc-time-previous",f),g.setAttribute("data-hc-time",b),f=b);g.value=e.dateFormat(this.inputTypeFormats[g.type]||c.inputEditDateFormat,f);a&&a.attr({text:e.dateFormat(c.inputDateFormat,f)})}};l.prototype.setInputExtremes=function(a,b,c){if(a="min"===a?this.minInput:this.maxInput){var d=
  150. this.inputTypeFormats[a.type],m=this.chart.time;d&&(b=m.dateFormat(d,b),a.min!==b&&(a.min=b),c=m.dateFormat(d,c),a.max!==c&&(a.max=c))}};l.prototype.showInput=function(a){var b="min"===a?this.minDateBox:this.maxDateBox;if((a="min"===a?this.minInput:this.maxInput)&&b&&this.inputGroup){var c="text"===a.type,d=this.inputGroup,e=d.translateX;d=d.translateY;var g=this.options.inputBoxWidth;k(a,{width:c?b.width+(g?-2:20)+"px":"auto",height:c?b.height-2+"px":"auto",border:"2px solid silver"});c&&g?k(a,{left:e+
  151. b.x+"px",top:d+"px"}):k(a,{left:Math.min(Math.round(b.x+e-(a.offsetWidth-b.width)/2),this.chart.chartWidth-a.offsetWidth)+"px",top:d-1-(a.offsetHeight-b.height)/2+"px"})}};l.prototype.hideInput=function(a){(a="min"===a?this.minInput:this.maxInput)&&k(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};l.prototype.defaultInputDateParser=function(a,c,d){var m=a.split("/").join("-").split(" ").join("T");-1===m.indexOf("T")&&(m+="T00:00");if(c)m+="Z";else{var e;if(e=r.isSafari)e=m,e=!(6<e.length&&(e.lastIndexOf("-")===
  152. e.length-6||e.lastIndexOf("+")===e.length-6));e&&(e=(new Date(m)).getTimezoneOffset()/60,m+=0>=e?"+"+G(-e)+":00":"-"+G(e)+":00")}m=Date.parse(m);b(m)||(a=a.split("-"),m=Date.UTC(J(a[0]),J(a[1])-1,J(a[2])));d&&c&&b(m)&&(m+=d.getTimezoneOffset(m));return m};l.prototype.drawInput=function(a){function d(){var c=l.getInputValue(a),d=m.xAxis[0],e=m.scroller&&m.scroller.xAxis?m.scroller.xAxis:d,g=e.dataMin;e=e.dataMax;var f=l.maxInput,z=l.minInput;c!==Number(u.getAttribute("data-hc-time-previous"))&&b(c)&&
  153. (u.setAttribute("data-hc-time-previous",c),O&&f&&b(g)?c>Number(f.getAttribute("data-hc-time"))?c=void 0:c<g&&(c=g):z&&b(e)&&(c<Number(z.getAttribute("data-hc-time"))?c=void 0:c>e&&(c=e)),"undefined"!==typeof c&&d.setExtremes(O?c:d.min,O?d.max:c,void 0,void 0,{trigger:"rangeSelectorInput"}))}var m=this.chart,e=this.div,t=this.inputGroup,l=this,n=m.renderer.style||{},q=m.renderer,p=m.options.rangeSelector,O="min"===a,v=f.lang[O?"rangeSelectorFrom":"rangeSelectorTo"];v=q.label(v,0).addClass("highcharts-range-label").attr({padding:v?
  154. 2:0}).add(t);q=q.label("",0).addClass("highcharts-range-input").attr({padding:2,width:p.inputBoxWidth,height:p.inputBoxHeight,"text-align":"center"}).on("click",function(){l.showInput(a);l[a+"Input"].focus()});m.styledMode||q.attr({stroke:p.inputBoxBorderColor,"stroke-width":1});q.add(t);var u=h("input",{name:a,className:"highcharts-range-selector"},void 0,e);u.setAttribute("type",C(p.inputDateFormat||"%b %e, %Y"));m.styledMode||(v.css(c(n,p.labelStyle)),q.css(c({color:y.neutralColor80},n,p.inputStyle)),
  155. k(u,g({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:n.fontSize,fontFamily:n.fontFamily,top:"-9999em"},p.inputStyle)));u.onfocus=function(){l.showInput(a)};u.onblur=function(){u===r.doc.activeElement&&d();l.hideInput(a);l.setInputValue(a);u.blur()};var w=!1;u.onchange=function(){w||(d(),l.hideInput(a),u.blur())};u.onkeypress=function(a){13===a.keyCode&&d()};u.onkeydown=function(a){w=!0;38!==a.keyCode&&40!==a.keyCode||
  156. d()};u.onkeyup=function(){w=!1};return{dateBox:q,input:u,label:v}};l.prototype.getPosition=function(){var a=this.chart,b=a.options.rangeSelector;a="top"===b.verticalAlign?a.plotTop-a.axisOffset[0]:0;return{buttonTop:a+b.buttonPosition.y,inputTop:a+b.inputPosition.y-10}};l.prototype.getYTDExtremes=function(a,b,c){var d=this.chart.time,m=new d.Date(a),e=d.get("FullYear",m);c=c?d.Date.UTC(e,0,1):+new d.Date(e,0,1);b=Math.max(b,c);m=m.getTime();return{max:Math.min(a||m,m),min:b}};l.prototype.render=function(a,
  157. b){var c=this.chart,e=c.renderer,g=c.container,f=c.options,k=f.rangeSelector,l=E(f.chart.style&&f.chart.style.zIndex,0)+1;f=k.inputEnabled;if(!1!==k.enabled){this.rendered||(this.group=e.g("range-selector-group").attr({zIndex:7}).add(),this.div=h("div",void 0,{position:"relative",height:0,zIndex:l}),this.buttonOptions.length&&this.renderButtons(),g.parentNode&&g.parentNode.insertBefore(this.div,g),f&&(this.inputGroup=e.g("input-group").add(this.group),e=this.drawInput("min"),this.minDateBox=e.dateBox,
  158. this.minLabel=e.label,this.minInput=e.input,e=this.drawInput("max"),this.maxDateBox=e.dateBox,this.maxLabel=e.label,this.maxInput=e.input));if(f&&(this.setInputValue("min",a),this.setInputValue("max",b),a=c.scroller&&c.scroller.getUnionExtremes()||c.xAxis[0]||{},d(a.dataMin)&&d(a.dataMax)&&(c=c.xAxis[0].minRange||0,this.setInputExtremes("min",a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-c),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+c,a.dataMax)),this.inputGroup)){var t=
  159. 0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=a.getBBox().width;b&&(a.attr({x:t}),t+=b+k.inputSpacing)}})}this.alignElements();this.rendered=!0}};l.prototype.renderButtons=function(){var a=this,b=this.buttons,d=this.options,g=f.lang,k=this.chart.renderer,l=c(d.buttonTheme),n=l&&l.states,q=l.width||28;delete l.width;delete l.states;this.buttonGroup=k.g("range-selector-buttons").add(this.group);var p=this.dropdown=h("select",void 0,{position:"absolute",
  160. width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);x(p,"touchstart",function(){p.style.fontSize="16px"});[[r.isMS?"mouseover":"mouseenter"],[r.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(c){var d=c[0],m=c[1];x(p,d,function(){var c=b[a.currentButtonIndex()];c&&e(c.element,m||d)})});this.zoomText=k.text(g.rangeSelectorZoom,0,15).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(d.labelStyle),l["stroke-width"]=E(l["stroke-width"],
  161. 0));h("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,p);this.buttonOptions.forEach(function(c,d){h("option",{textContent:c.title||c.text},void 0,p);b[d]=k.button(c.text,0,0,function(b){var e=c.events&&c.events.click,m;e&&(m=e.call(c,b));!1!==m&&a.clickButton(d);a.isActive=!0},l,n&&n.hover,n&&n.select,n&&n.disabled).attr({"text-align":"center",width:q}).add(a.buttonGroup);c.title&&b[d].attr("title",c.title)})};l.prototype.alignElements=function(){var a=this,b=this.buttonGroup,c=this.buttons,
  162. d=this.chart,e=this.group,g=this.inputGroup,f=this.options,h=this.zoomText,k=d.options,l=k.exporting&&!1!==k.exporting.enabled&&k.navigation&&k.navigation.buttonOptions;k=f.buttonPosition;var n=f.inputPosition,q=f.verticalAlign,p=function(b,c){return l&&a.titleCollision(d)&&"top"===q&&"right"===c.align&&c.y-b.getBBox().height-12<(l.y||0)+(l.height||0)+d.spacing[0]?-40:0},r=d.plotLeft;if(e&&k&&n){var u=k.x-d.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var v=0;h&&(v+=h.getBBox().width+
  163. 5);c.forEach(function(a,b){v+=a.width;b!==c.length-1&&(v+=f.buttonSpacing)});this.initialButtonGroupWidth=v}r-=d.spacing[3];this.updateButtonStates();h=p(b,k);this.alignButtonGroup(h);e.placed=b.placed=d.hasLoaded}b=0;g&&(b=p(g,n),"left"===n.align?u=r:"right"===n.align&&(u=-Math.max(d.axisOffset[1],-b)),g.align({y:n.y,width:g.getBBox().width,align:n.align,x:n.x+u-2},!0,d.spacingBox),g.placed=d.hasLoaded);this.handleCollision(b);e.align({verticalAlign:q},!0,d.spacingBox);g=e.alignAttr.translateY;b=
  164. e.getBBox().height+20;p=0;"bottom"===q&&(p=(p=d.legend&&d.legend.options)&&"bottom"===p.verticalAlign&&p.enabled&&!p.floating?d.legend.legendHeight+E(p.margin,10):0,b=b+p-20,p=g-b-(f.floating?0:f.y)-(d.titleOffset?d.titleOffset[2]:0)-10);if("top"===q)f.floating&&(p=0),d.titleOffset&&d.titleOffset[0]&&(p=d.titleOffset[0]),p+=d.margin[0]-d.spacing[0]||0;else if("middle"===q)if(n.y===k.y)p=g;else if(n.y||k.y)p=0>n.y||0>k.y?p-Math.min(n.y,k.y):g-b;e.translate(f.x,f.y+Math.floor(p));k=this.minInput;n=
  165. this.maxInput;g=this.dropdown;f.inputEnabled&&k&&n&&(k.style.marginTop=e.translateY+"px",n.style.marginTop=e.translateY+"px");g&&(g.style.marginTop=e.translateY+"px")}};l.prototype.alignButtonGroup=function(a,b){var c=this.chart,d=this.buttonGroup,e=this.options.buttonPosition,g=c.plotLeft-c.spacing[3],f=e.x-c.spacing[3];"right"===e.align?f+=a-g:"center"===e.align&&(f-=g/2);d&&d.align({y:e.y,width:E(b,this.initialButtonGroupWidth),align:e.align,x:f},!0,c.spacingBox)};l.prototype.positionButtons=function(){var a=
  166. this.buttons,b=this.chart,c=this.options,d=this.zoomText,e=b.hasLoaded?"animate":"attr",g=c.buttonPosition,f=b.plotLeft,h=f;d&&"hidden"!==d.visibility&&(d[e]({x:E(f+g.x,f)}),h+=g.x+d.getBBox().width+5);this.buttonOptions.forEach(function(b,d){if("hidden"!==a[d].visibility)a[d][e]({x:h}),h+=a[d].width+c.buttonSpacing;else a[d][e]({x:f})})};l.prototype.handleCollision=function(a){var b=this,c=this.chart,d=this.buttonGroup,e=this.inputGroup,g=this.options,f=g.buttonPosition,h=g.dropdown,k=g.inputPosition;
  167. g=function(){var a=0;b.buttons.forEach(function(b){b=b.getBBox();b.width>a&&(a=b.width)});return a};var l=function(b){if(e&&d){var c=e.alignAttr.translateX+e.alignOptions.x-a+e.getBBox().x+2,g=e.alignOptions.width,m=d.alignAttr.translateX+d.getBBox().x;return m+b>c&&c+g>m&&f.y<k.y+e.getBBox().height}return!1},t=function(){e&&d&&e.attr({translateX:e.alignAttr.translateX+(c.axisOffset[1]>=-a?0:-a),translateY:e.alignAttr.translateY+d.getBBox().height+10})};if(d){if("always"===h){this.collapseButtons(a);
  168. l(g())&&t();return}"never"===h&&this.expandButtons()}e&&d?k.align===f.align||l(this.initialButtonGroupWidth+20)?"responsive"===h?(this.collapseButtons(a),l(g())&&t()):t():"responsive"===h&&this.expandButtons():d&&"responsive"===h&&(this.initialButtonGroupWidth>c.plotWidth?this.collapseButtons(a):this.expandButtons())};l.prototype.collapseButtons=function(a){var b=this.buttons,c=this.buttonOptions,d=this.dropdown,e=this.options,g=this.zoomText,f=function(a){return{text:a?a+" \u25be":"\u25be",width:"auto",
  169. paddingLeft:8,paddingRight:8}};g&&g.hide();var h=!1;c.forEach(function(a,c){c=b[c];2!==c.state?c.hide():(c.show(),c.attr(f(a.text)),h=!0)});h||(d&&(d.selectedIndex=0),b[0].show(),b[0].attr(f(this.zoomText&&this.zoomText.textStr)));c=e.buttonPosition.align;this.positionButtons();"right"!==c&&"center"!==c||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);this.showDropdown()};l.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,c=this.options,d=this.zoomText;
  170. this.hideDropdown();d&&d.show();b.forEach(function(b,d){d=a[d];d.show();d.attr({text:b.text,width:c.buttonTheme.width||28,paddingLeft:"unset",paddingRight:"unset"});2>d.state&&d.setState(0)});this.positionButtons()};l.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0<a.selectedIndex?a.selectedIndex-1:0};l.prototype.showDropdown=function(){var a=this.buttonGroup,b=this.buttons,c=this.chart,d=this.dropdown;if(a&&d){var e=a.translateX;a=a.translateY;b=b[this.currentButtonIndex()].getBBox();
  171. k(d,{left:c.plotLeft+e+"px",top:a+.5+"px",width:b.width+"px",height:b.height+"px"});this.hasVisibleDropdown=!0}};l.prototype.hideDropdown=function(){var a=this.dropdown;a&&(k(a,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)};l.prototype.getHeight=function(){var a=this.options,b=this.group,c=a.y,d=a.buttonPosition.y,e=a.inputPosition.y;if(a.height)return a.height;this.alignElements();a=b?b.getBBox(!0).height+13+c:0;b=Math.min(e,d);if(0>e&&0>d||0<e&&0<d)a+=Math.abs(b);return a};
  172. l.prototype.titleCollision=function(a){return!(a.options.title.text||a.options.subtitle.text)};l.prototype.update=function(a){var b=this.chart;c(!0,b.options.rangeSelector,a);this.destroy();this.init(b);this.render()};l.prototype.destroy=function(){var a=this,b=a.minInput,c=a.maxInput;a.eventsToUnbind&&(a.eventsToUnbind.forEach(function(a){return a()}),a.eventsToUnbind=void 0);B(a.buttons);b&&(b.onfocus=b.onblur=b.onchange=null);c&&(c.onfocus=c.onblur=c.onchange=null);n(a,function(b,c){b&&"chart"!==
  173. c&&(b instanceof v?b.destroy():b instanceof window.HTMLElement&&w(b));b!==l.prototype[c]&&(a[c]=null)},this)};return l}();I.prototype.defaultButtons=[{type:"month",count:1,text:"1m",title:"View 1 month"},{type:"month",count:3,text:"3m",title:"View 3 months"},{type:"month",count:6,text:"6m",title:"View 6 months"},{type:"ytd",text:"YTD",title:"View year to date"},{type:"year",count:1,text:"1y",title:"View 1 year"},{type:"all",text:"All",title:"View all"}];I.prototype.inputTypeFormats={"datetime-local":"%Y-%m-%dT%H:%M:%S",
  174. date:"%Y-%m-%d",time:"%H:%M:%S"};a.prototype.minFromRange=function(){var a=this.range,c=a.type,d=this.max,e=this.chart.time,g=function(a,b){var d="year"===c?"FullYear":"Month",g=new e.Date(a),f=e.get(d,g);e.set(d,g,f+b);f===e.get(d,g)&&e.set("Date",g,0);return g.getTime()-a};if(b(a)){var f=d-a;var h=a}else f=d+g(d,-a.count),this.chart&&(this.chart.fixedRange=d-f);var k=E(this.dataMin,Number.MIN_VALUE);b(f)||(f=k);f<=k&&(f=k,"undefined"===typeof h&&(h=g(f,a.count)),this.newMax=Math.min(f+h,this.dataMax));
  175. b(d)||(f=void 0);return f};if(!r.RangeSelector){var F=[],M=function(a){function d(){g&&(e=a.xAxis[0].getExtremes(),f=a.legend,k=g&&g.options.verticalAlign,b(e.min)&&g.render(e.min,e.max),f.display&&"top"===k&&k===f.options.verticalAlign&&(h=c(a.spacingBox),h.y="vertical"===f.options.layout?a.plotTop:h.y+g.getHeight(),f.group.placed=!1,f.align(h)))}var e,g=a.rangeSelector,f,h,k;g&&(p(F,function(b){return b[0]===a})||F.push([a,[x(a.xAxis[0],"afterSetExtremes",function(a){g&&g.render(a.min,a.max)}),
  176. x(a,"redraw",d)]]),d())};x(l,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new I(this))});x(l,"beforeRender",function(){var a=this.axes,c=this.rangeSelector;c&&(b(c.deferredYTDClick)&&(c.clickButton(c.deferredYTDClick),delete c.deferredYTDClick),a.forEach(function(a){a.updateNames();a.setScale()}),this.getAxisMargins(),c.render(),a=c.options.verticalAlign,c.options.floating||("bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&
  177. (this.extraTopMargin=!0)))});x(l,"update",function(a){var b=a.options.rangeSelector;a=this.rangeSelector;var c=this.extraBottomMargin,e=this.extraTopMargin;b&&b.enabled&&!d(a)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=a=new I(this));this.extraTopMargin=this.extraBottomMargin=!1;a&&(M(this),b=b&&b.verticalAlign||a.options&&a.options.verticalAlign,a.options.floating||("bottom"===b?this.extraBottomMargin=!0:"middle"!==b&&(this.extraTopMargin=!0)),this.extraBottomMargin!==
  178. c||this.extraTopMargin!==e)&&(this.isDirtyBox=!0)});x(l,"render",function(){var a=this.rangeSelector;a&&!a.options.floating&&(a.render(),a=a.options.verticalAlign,"bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0))});x(l,"getMargins",function(){var a=this.rangeSelector;a&&(a=a.getHeight(),this.extraTopMargin&&(this.plotTop+=a),this.extraBottomMargin&&(this.marginBottom+=a))});l.prototype.callbacks.push(M);x(l,"destroy",function(){for(var a=0;a<F.length;a++){var b=F[a];if(b[0]===
  179. this){b[1].forEach(function(a){return a()});F.splice(a,1);break}}});r.RangeSelector=I}return r.RangeSelector});E(a,"Core/Axis/NavigatorAxis.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],function(a,l){var r=a.isTouchDevice,u=l.addEvent,y=l.correctFloat,v=l.defined,q=l.isNumber,C=l.pick,f=function(){function a(a){this.axis=a}a.prototype.destroy=function(){this.axis=void 0};a.prototype.toFixedRange=function(a,f,d,l){var h=this.axis,g=h.chart;g=g&&g.fixedRange;var k=(h.pointRange||0)/2;a=C(d,h.translate(a,
  180. !0,!h.horiz));f=C(l,h.translate(f,!0,!h.horiz));h=g&&(f-a)/g;v(d)||(a=y(a+k));v(l)||(f=y(f-k));.7<h&&1.3>h&&(l?a=f-g:f=a+g);q(a)&&q(f)||(a=f=void 0);return{min:a,max:f}};return a}();return function(){function a(){}a.compose=function(a){a.keepProps.push("navigatorAxis");u(a,"init",function(){this.navigatorAxis||(this.navigatorAxis=new f(this))});u(a,"zoom",function(a){var d=this.chart.options,f=d.navigator,h=this.navigatorAxis,g=d.chart.pinchType,k=d.rangeSelector;d=d.chart.zoomType;this.isXAxis&&
  181. (f&&f.enabled||k&&k.enabled)&&("y"===d?a.zoomed=!1:(!r&&"xy"===d||r&&"xy"===g)&&this.options.range&&(f=h.previousZoom,v(a.newMin)?h.previousZoom=[this.min,this.max]:f&&(a.newMin=f[0],a.newMax=f[1],h.previousZoom=void 0)));"undefined"!==typeof a.zoomed&&a.preventDefault()})};a.AdditionsClass=f;return a}()});E(a,"Core/Navigator.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Color/Color.js"],a["Core/Globals.js"],a["Core/Axis/NavigatorAxis.js"],a["Core/Options.js"],a["Core/Color/Palette.js"],
  182. a["Core/Scrollbar.js"],a["Core/Series/Series.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,l,r,u,y,v,q,C,f,x,h){r=r.parse;var k=u.hasTouch,d=u.isTouchDevice,B=v.defaultOptions,w=h.addEvent,g=h.clamp,p=h.correctFloat,e=h.defined,b=h.destroyObjectProperties,c=h.erase,n=h.extend,E=h.find,N=h.isArray,J=h.isNumber,K=h.merge,I=h.pick,F=h.removeEvent,M=h.splat,D=function(a){for(var b=[],c=1;c<arguments.length;c++)b[c-1]=arguments[c];b=[].filter.call(b,J);if(b.length)return Math[a].apply(0,
  183. b)};v="undefined"===typeof x.seriesTypes.areaspline?"line":"areaspline";n(B,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:q.neutralColor5,borderColor:q.neutralColor40},maskFill:r(q.highlightColor60).setOpacity(.3).get(),outlineColor:q.neutralColor20,outlineWidth:1,series:{type:v,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,
  184. firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,
  185. gridLineColor:q.neutralColor10,gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:q.neutralColor40},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}});u.Renderer.prototype.symbols["navigator-handle"]=function(a,b,c,d,e){a=(e&&e.width||0)/2;b=Math.round(a/3)+.5;e=e&&e.height||0;return[["M",-a-1,.5],["L",a,.5],
  186. ["L",a,e+.5],["L",-a-1,e+.5],["L",-a-1,.5],["M",-b,4],["L",-b,e-3],["M",b-1,4],["L",b-1,e-3]]};var t=function(){function f(a){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=this.handles=this.chart=this.baseSeries=void 0;this.init(a)}f.prototype.drawHandle=function(a,b,
  187. c,d){var e=this.navigatorOptions.handles.height;this.handles[b][d](c?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(a,10)+.5-e)}:{translateX:Math.round(this.left+parseInt(a,10)),translateY:Math.round(this.top+this.height/2-e/2-1)})};f.prototype.drawOutline=function(a,b,c,d){var e=this.navigatorOptions.maskInside,f=this.outline.strokeWidth(),g=f/2,m=f%2/2;f=this.outlineHeight;var h=this.scrollbarHeight||0,k=this.size,l=this.left-h,z=this.top;c?(l-=g,c=z+b+m,
  188. b=z+a+m,m=[["M",l+f,z-h-m],["L",l+f,c],["L",l,c],["L",l,b],["L",l+f,b],["L",l+f,z+k+h]],e&&m.push(["M",l+f,c-g],["L",l+f,b+g])):(a+=l+h-m,b+=l+h-m,z+=g,m=[["M",l,z],["L",a,z],["L",a,z+f],["L",b,z+f],["L",b,z],["L",l+k+2*h,z]],e&&m.push(["M",a-g,z],["L",b+g,z]));this.outline[d]({d:m})};f.prototype.drawMasks=function(a,b,c,d){var e=this.left,f=this.top,g=this.height;if(c){var m=[e,e,e];var h=[f,f+a,f+b];var k=[g,g,g];var l=[a,b-a,this.size-b]}else m=[e,e+a,e+b],h=[f,f,f],k=[a,b-a,this.size-b],l=[g,
  189. g,g];this.shades.forEach(function(a,b){a[d]({x:m[b],y:h[b],width:k[b],height:l[b]})})};f.prototype.renderElements=function(){var a=this,b=a.navigatorOptions,c=b.maskInside,d=a.chart,e=d.renderer,f,g={cursor:d.inverted?"ns-resize":"ew-resize"};a.navigatorGroup=f=e.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!c,c,!c].forEach(function(c,m){a.shades[m]=e.rect().addClass("highcharts-navigator-mask"+(1===m?"-inside":"-outside")).add(f);d.styledMode||a.shades[m].attr({fill:c?b.maskFill:"rgba(0,0,0,0)"}).css(1===
  190. m&&g)});a.outline=e.path().addClass("highcharts-navigator-outline").add(f);d.styledMode||a.outline.attr({"stroke-width":b.outlineWidth,stroke:b.outlineColor});b.handles.enabled&&[0,1].forEach(function(c){b.handles.inverted=d.inverted;a.handles[c]=e.symbol(b.handles.symbols[c],-b.handles.width/2-1,0,b.handles.width,b.handles.height,b.handles);a.handles[c].attr({zIndex:7-c}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][c]).add(f);if(!d.styledMode){var m=b.handles;
  191. a.handles[c].attr({fill:m.backgroundColor,stroke:m.borderColor,"stroke-width":m.lineWidth}).css(g)}})};f.prototype.update=function(a){(this.series||[]).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});this.destroy();K(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};f.prototype.render=function(a,b,c,d){var f=this.chart,m=this.scrollbarHeight,h,k=this.xAxis,l=k.pointRange||0;var z=k.navigatorAxis.fake?f.xAxis[0]:k;var n=this.navigatorEnabled,q,t=this.rendered;
  192. var r=f.inverted;var u=f.xAxis[0].minRange,v=f.xAxis[0].options.maxRange;if(!this.hasDragged||e(c)){a=p(a-l/2);b=p(b+l/2);if(!J(a)||!J(b))if(t)c=0,d=I(k.width,z.width);else return;this.left=I(k.left,f.plotLeft+m+(r?f.plotWidth:0));this.size=q=h=I(k.len,(r?f.plotHeight:f.plotWidth)-2*m);f=r?m:h+2*m;c=I(c,k.toPixels(a,!0));d=I(d,k.toPixels(b,!0));J(c)&&Infinity!==Math.abs(c)||(c=0,d=f);a=k.toValue(c,!0);b=k.toValue(d,!0);var H=Math.abs(p(b-a));H<u?this.grabbedLeft?c=k.toPixels(b-u-l,!0):this.grabbedRight&&
  193. (d=k.toPixels(a+u+l,!0)):e(v)&&p(H-l)>v&&(this.grabbedLeft?c=k.toPixels(b-v-l,!0):this.grabbedRight&&(d=k.toPixels(a+v+l,!0)));this.zoomedMax=g(Math.max(c,d),0,q);this.zoomedMin=g(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(c,d),0,q);this.range=this.zoomedMax-this.zoomedMin;q=Math.round(this.zoomedMax);c=Math.round(this.zoomedMin);n&&(this.navigatorGroup.attr({visibility:"visible"}),t=t&&!this.hasDragged?"animate":"attr",this.drawMasks(c,q,r,t),this.drawOutline(c,q,r,t),this.navigatorOptions.handles.enabled&&
  194. (this.drawHandle(c,0,r,t),this.drawHandle(q,1,r,t)));this.scrollbar&&(r?(r=this.top-m,z=this.left-m+(n||!z.opposite?0:(z.titleOffset||0)+z.axisTitleMargin),m=h+2*m):(r=this.top+(n?this.height:-m),z=this.left-m),this.scrollbar.position(z,r,f,m),this.scrollbar.setRange(this.zoomedMin/(h||1),this.zoomedMax/(h||1)));this.rendered=!0}};f.prototype.addMouseEvents=function(){var a=this,b=a.chart,c=b.container,d=[],e,f;a.mouseMoveHandler=e=function(b){a.onMouseMove(b)};a.mouseUpHandler=f=function(b){a.onMouseUp(b)};
  195. d=a.getPartsEvents("mousedown");d.push(w(b.renderTo,"mousemove",e),w(c.ownerDocument,"mouseup",f));k&&(d.push(w(b.renderTo,"touchmove",e),w(c.ownerDocument,"touchend",f)),d.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=d;a.series&&a.series[0]&&d.push(w(a.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))};f.prototype.getPartsEvents=function(a){var b=this,c=[];["shades","handles"].forEach(function(d){b[d].forEach(function(e,f){c.push(w(e.element,a,function(a){b[d+
  196. "Mousedown"](a,f)}))})});return c};f.prototype.shadesMousedown=function(a,b){a=this.chart.pointer.normalize(a);var c=this.chart,d=this.xAxis,f=this.zoomedMin,g=this.left,m=this.size,h=this.range,k=a.chartX;c.inverted&&(k=a.chartY,g=this.top);if(1===b)this.grabbedCenter=k,this.fixedWidth=h,this.dragOffset=k-f;else{a=k-g-h/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+h>=m)if(a=m-h,this.reversedExtremes){a-=h;var l=this.getUnionExtremes().dataMin}else var n=this.getUnionExtremes().dataMax;a!==f&&(this.fixedWidth=
  197. h,b=d.navigatorAxis.toFixedRange(a,a+h,l,n),e(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,b.max),Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};f.prototype.handlesMousedown=function(a,b){this.chart.pointer.normalize(a);a=this.chart;var c=a.xAxis[0],d=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=d?c.min:c.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=d?c.max:c.min);a.fixedRange=null};f.prototype.onMouseMove=
  198. function(a){var b=this,c=b.chart,e=b.left,f=b.navigatorSize,g=b.range,m=b.dragOffset,h=c.inverted;a.touches&&0===a.touches[0].pageX||(a=c.pointer.normalize(a),c=a.chartX,h&&(e=b.top,c=a.chartY),b.grabbedLeft?(b.hasDragged=!0,b.render(0,0,c-e,b.otherHandlePos)):b.grabbedRight?(b.hasDragged=!0,b.render(0,0,b.otherHandlePos,c-e)):b.grabbedCenter&&(b.hasDragged=!0,c<m?c=m:c>f+m-g&&(c=f+m-g),b.render(0,0,c-m,c-m+g)),b.hasDragged&&b.scrollbar&&I(b.scrollbar.options.liveRedraw,u.svg&&!d&&!this.chart.isBoosting)&&
  199. (a.DOMType=a.type,setTimeout(function(){b.onMouseUp(a)},0)))};f.prototype.onMouseUp=function(a){var b=this.chart,c=this.xAxis,d=this.scrollbar,f=a.DOMEvent||a,g=b.inverted,m=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!d||!d.hasDragged)||"scrollbar"===a.trigger){d=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var h=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var k=this.fixedExtreme;this.zoomedMax===this.size&&(k=this.reversedExtremes?
  200. d.dataMin:d.dataMax);0===this.zoomedMin&&(h=this.reversedExtremes?d.dataMax:d.dataMin);c=c.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,h,k);e(c.min)&&b.xAxis[0].setExtremes(Math.min(c.min,c.max),Math.max(c.min,c.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:f})}"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=
  201. null);this.navigatorEnabled&&J(this.zoomedMin)&&J(this.zoomedMax)&&(b=Math.round(this.zoomedMin),a=Math.round(this.zoomedMax),this.shades&&this.drawMasks(b,a,g,m),this.outline&&this.drawOutline(b,a,g,m),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(b,0,g,m),this.drawHandle(a,1,g,m)))};f.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};
  202. f.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&a.forEach(function(a){F(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&F(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};f.prototype.init=function(b){var c=b.options,d=c.navigator,e=d.enabled,f=c.scrollbar,g=f.enabled;c=e?d.height:0;var h=g?f.height:0;this.handles=[];this.shades=[];this.chart=b;this.setBaseSeries();this.height=
  203. c;this.scrollbarHeight=h;this.scrollbarEnabled=g;this.navigatorEnabled=e;this.navigatorOptions=d;this.scrollbarOptions=f;this.outlineHeight=c+h;this.opposite=I(d.opposite,!(e||!b.inverted));var m=this;e=m.baseSeries;f=b.xAxis.length;g=b.yAxis.length;var k=e&&e[0]&&e[0].xAxis||b.xAxis[0]||{options:{}};b.isDirtyBox=!0;m.navigatorEnabled?(m.xAxis=new a(b,K({breaks:k.options.breaks,ordinal:k.options.ordinal},d.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:f,isInternal:!0,
  204. offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},b.inverted?{offsets:[h,0,-h,0],width:c}:{offsets:[0,-h,0,h],height:c})),m.yAxis=new a(b,K(d.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:g,isInternal:!0,reversed:I(d.yAxis&&d.yAxis.reversed,b.yAxis[0]&&b.yAxis[0].reversed,!1),zoomEnabled:!1},b.inverted?{width:c}:{height:c})),e||d.series.data?m.updateNavigatorSeries(!1):0===b.series.length&&(m.unbindRedraw=w(b,"beforeRedraw",function(){0<
  205. b.series.length&&!m.series&&(m.setBaseSeries(),m.unbindRedraw())})),m.reversedExtremes=b.inverted&&!m.xAxis.reversed||!b.inverted&&m.xAxis.reversed,m.renderElements(),m.addMouseEvents()):(m.xAxis={chart:b,navigatorAxis:{fake:!0},translate:function(a,c){var d=b.xAxis[0],e=d.getExtremes(),f=d.len-2*h,g=D("min",d.options.min,e.dataMin);d=D("max",d.options.max,e.dataMax)-g;return c?a*d/f+g:f*(a-g)/d},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)}},m.xAxis.navigatorAxis.axis=
  206. m.xAxis,m.xAxis.navigatorAxis.toFixedRange=y.AdditionsClass.prototype.toFixedRange.bind(m.xAxis.navigatorAxis));b.options.scrollbar.enabled&&(b.scrollbar=m.scrollbar=new C(b.renderer,K(b.options.scrollbar,{margin:m.navigatorEnabled?0:10,vertical:b.inverted}),b),w(m.scrollbar,"changed",function(a){var b=m.size,c=b*this.to;b*=this.from;m.hasDragged=m.scrollbar.hasDragged;m.render(0,0,b,c);this.shouldUpdateExtremes(a.DOMType)&&setTimeout(function(){m.onMouseUp(a)})}));m.addBaseSeriesEvents();m.addChartEvents()};
  207. f.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],c=this.xAxis,d=c.options,e=b.options,f;a&&null===b.dataMin||(f={dataMin:I(d&&d.min,D("min",e.min,b.dataMin,c.dataMin,c.min)),dataMax:I(d&&d.max,D("max",e.max,b.dataMax,c.dataMax,c.max))});return f};f.prototype.setBaseSeries=function(a,b){var c=this.chart,d=this.baseSeries=[];a=a||c.options&&c.options.navigator.baseSeries||(c.series.length?E(c.series,function(a){return!a.options.isInternal}).index:0);(c.series||[]).forEach(function(b,
  208. c){b.options.isInternal||!b.options.showInNavigator&&(c!==a&&b.options.id!==a||!1===b.options.showInNavigator)||d.push(b)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,b)};f.prototype.updateNavigatorSeries=function(a,b){var c=this,d=c.chart,e=c.baseSeries,f,g,h=c.navigatorOptions.series,m,k={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",yAxis:"navigator-y-axis",showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},
  209. l=c.series=(c.series||[]).filter(function(a){var b=a.baseSeries;return 0>e.indexOf(b)?(b&&(F(b,"updatedData",c.updatedDataHandler),delete b.navigatorSeries),a.chart&&a.destroy(),!1):!0});e&&e.length&&e.forEach(function(a){var q=a.navigatorSeries,p=n({color:a.color,visible:a.visible},N(h)?B.navigator.series:h);q&&!1===c.navigatorOptions.adaptToUpdatedData||(k.name="Navigator "+e.length,f=a.options||{},m=f.navigatorOptions||{},p.dataLabels=M(p.dataLabels),g=K(f,k,p,m),g.pointRange=I(p.pointRange,m.pointRange,
  210. B.plotOptions[g.type||"line"].pointRange),p=m.data||p.data,c.hasNavigatorData=c.hasNavigatorData||!!p,g.data=p||f.data&&f.data.slice(0),q&&q.options?q.update(g,b):(a.navigatorSeries=d.initSeries(g),a.navigatorSeries.baseSeries=a,l.push(a.navigatorSeries)))});if(h.data&&(!e||!e.length)||N(h))c.hasNavigatorData=!1,h=M(h),h.forEach(function(a,b){k.name="Navigator "+(l.length+1);g=K(B.navigator.series,{color:d.series[b]&&!d.series[b].options.isInternal&&d.series[b].color||d.options.colors[b]||d.options.colors[0]},
  211. k,a);g.data=a.data;g.data&&(c.hasNavigatorData=!0,l.push(d.initSeries(g)))});a&&this.addBaseSeriesEvents()};f.prototype.addBaseSeriesEvents=function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(w(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));b.forEach(function(b){b.eventsToUnbind.push(w(b,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)}));b.eventsToUnbind.push(w(b,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,
  212. !1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&b.xAxis&&b.eventsToUnbind.push(w(b,"updatedData",this.updatedDataHandler));b.eventsToUnbind.push(w(b,"remove",function(){this.navigatorSeries&&(c(a.series,this.navigatorSeries),e(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)};f.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,b){return Math.min(a,b.xData?b.xData[0]:a)},a)};f.prototype.modifyNavigatorAxisExtremes=
  213. function(){var a=this.xAxis,b;"undefined"!==typeof a.getExtremes&&(!(b=this.getUnionExtremes(!0))||b.dataMin===a.min&&b.dataMax===a.max||(a.min=b.dataMin,a.max=b.dataMax))};f.prototype.modifyBaseAxisExtremes=function(){var a=this.chart.navigator,b=this.getExtremes(),c=b.dataMin,d=b.dataMax;b=b.max-b.min;var e=a.stickToMin,f=a.stickToMax,g=I(this.options.overscroll,0),h=a.series&&a.series[0],k=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(e){var l=c;var n=
  214. l+b}f&&(n=d+g,e||(l=Math.max(c,n-b,a.getBaseSeriesMin(h&&h.xData?h.xData[0]:-Number.MAX_VALUE))));k&&(e||f)&&J(l)&&(this.min=this.userMin=l,this.max=this.userMax=n)}a.stickToMin=a.stickToMax=null};f.prototype.updatedDataHandler=function(){var a=this.chart.navigator,b=this.navigatorSeries,c=a.getBaseSeriesMin(this.xData[0]);a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=J(this.xAxis.min)&&this.xAxis.min<=c&&(!this.chart.fixedRange||
  215. !a.stickToMax);b&&!a.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))};f.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(w(this.chart,"redraw",function(){var a=this.navigator,b=a&&(a.baseSeries&&a.baseSeries[0]&&a.baseSeries[0].xAxis||this.xAxis[0]);b&&a.render(b.min,b.max)}),w(this.chart,"getMargins",function(){var a=this.navigator,b=a.opposite?"plotTop":"marginBottom";this.inverted&&(b=a.opposite?
  216. "marginRight":"plotLeft");this[b]=(this[b]||0)+(a.navigatorEnabled||!this.inverted?a.outlineHeight:0)+a.navigatorOptions.margin}))};f.prototype.destroy=function(){this.removeEvents();this.xAxis&&(c(this.chart.xAxis,this.xAxis),c(this.chart.axes,this.xAxis));this.yAxis&&(c(this.chart.yAxis,this.yAxis),c(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(a){a.destroy&&a.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(a){this[a]&&
  217. this[a].destroy&&this[a].destroy();this[a]=null},this);[this.handles].forEach(function(a){b(a)},this)};return f}();u.Navigator||(u.Navigator=t,y.compose(a),w(l,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,c=a.rangeSelector;if((b&&b.enabled||c&&c.enabled)&&(!d&&"x"===a.chart.zoomType||d&&"x"===a.chart.pinchType))return!1}),w(l,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new t(this)}),w(l,"afterSetChartSize",
  218. function(){var a=this.legend,b=this.navigator;if(b){var c=a&&a.options;var d=b.xAxis;var e=b.yAxis;var f=b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-f-b.height:this.spacing[3]+f,b.top=this.plotTop+f):(b.left=this.plotLeft+f,b.top=b.navigatorOptions.top||this.chartHeight-b.height-f-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(c&&"bottom"===c.verticalAlign&&"proximate"!==c.layout&&c.enabled&&!c.floating?a.legendHeight+I(c.margin,
  219. 10):0)-(this.titleOffset?this.titleOffset[2]:0));d&&e&&(this.inverted?d.options.left=e.options.left=b.left:d.options.top=e.options.top=b.top,d.setAxisSize(),e.setAxisSize())}}),w(l,"update",function(a){var b=a.options.navigator||{},c=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!c.enabled||(K(!0,this.options.navigator,b),K(!0,this.options.scrollbar,c),delete a.options.navigator,delete a.options.scrollbar)}),w(l,"afterUpdate",function(a){this.navigator||this.scroller||!this.options.navigator.enabled&&
  220. !this.options.scrollbar.enabled||(this.scroller=this.navigator=new t(this),I(a.redraw,!0)&&this.redraw(a.animation))}),w(l,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),w(f,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),l.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));u.Navigator=t;return u.Navigator});E(a,"masters/modules/gantt.src.js",
  221. [a["Core/Globals.js"],a["Core/Chart/GanttChart.js"]],function(a,l){a.GanttChart=l;a.ganttChart=l.ganttChart})});
  222. //# sourceMappingURL=gantt.js.map