target/classes/static/assets/lib/kendo/js/kendo.dataviz.chart.min.js
(完整代码) 175KB/**
* Kendo UI v2017.2.621 (http://www.telerik.com/kendo-ui)
* Copyright 2017 Telerik AD. All rights reserved.
*
* Kendo UI commercial licenses may be obtained at
* http://www.telerik.com/purchase/license-agreement/kendo-ui-complete
* If you do not own a commercial license, this file shall be governed by the trial license terms.
*/
!function(t,define){define("util/text-metrics.min",["kendo.core.min"],t)}(function(){!function(t){function e(t){var e,i=[];for(e in t)i.push(e+t[e]);return i.sort().join("")}function i(t){var e,i=2166136261;for(e=0;e<t.length;++e)i+=(i<<1)+(i<<4)+(i<<7)+(i<<8)+(i<<24),i^=t.charCodeAt(e);return i>>>0}function n(){return{width:0,height:0,baseline:0}}function s(t,e,i){return h.current.measure(t,e,i)}var o,r,a,h;window.kendo.util=window.kendo.util||{},o=kendo.Class.extend({init:function(t){this._size=t,this._length=0,this._map={}},put:function(t,e){var i=this._map,n={key:t,value:e};i[t]=n,this._head?(this._tail.newer=n,n.older=this._tail,this._tail=n):this._head=this._tail=n,this._length>=this._size?(i[this._head.key]=null,this._head=this._head.newer,this._head.older=null):this._length++},get:function(t){var e=this._map[t];if(e)return e===this._head&&e!==this._tail&&(this._head=e.newer,this._head.older=null),e!==this._tail&&(e.older&&(e.older.newer=e.newer,e.newer.older=e.older),e.older=this._tail,e.newer=null,this._tail.newer=e,this._tail=e),e.value}}),r={baselineMarkerSize:1},"undefined"!=typeof document&&(a=document.createElement("div"),a.style.cssText="position: absolute !important; top: -4000px !important; width: auto !important; height: auto !important;padding: 0 !important; margin: 0 !important; border: 0 !important;line-height: normal !important; visibility: hidden !important; white-space: nowrap!important;"),h=kendo.Class.extend({init:function(e){this._cache=new o(1e3),this.options=t.extend({},r,e)},measure:function(t,s,o){var r,h,l,c,u,p,d,g;if(!t)return n();if(r=e(s),h=i(t+r),l=this._cache.get(h))return l;c=n(),u=o||a,p=this._baselineMarker().cloneNode(!1);for(d in s)g=s[d],void 0!==g&&(u.style[d]=g);return u.textContent=t,u.appendChild(p),document.body.appendChild(u),(t+"").length&&(c.width=u.offsetWidth-this.options.baselineMarkerSize,c.height=u.offsetHeight,c.baseline=p.offsetTop+this.options.baselineMarkerSize),c.width>0&&c.height>0&&this._cache.put(h,c),u.parentNode.removeChild(u),c},_baselineMarker:function(){var t=document.createElement("div");return t.style.cssText="display: inline-block; vertical-align: baseline;width: "+this.options.baselineMarkerSize+"px; height: "+this.options.baselineMarkerSize+"px;overflow: hidden;",t}}),h.current=new h,kendo.deepExtend(kendo.util,{LRUCache:o,TextMetrics:h,measureText:s,objectKey:e,hashKey:i})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("dataviz/chart/kendo-chart.min",["kendo.core.min","kendo.color.min","kendo.drawing.min","kendo.dataviz.core.min"],t)}(function(){!function(t){function e(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],U(i)&&s++;return s}function i(t,e){if(null===e)return e;var i=ct(t,!0);return i(e)}function n(t,e,i,s){var o,r,a,h,l;if(void 0===i&&(i={}),void 0===s&&(s=!1),o=i.defaults=i.defaults||{},r=i.depth=i.depth||0,a=!1,i.excluded=i.excluded||[],r>Ei)return null;for(h in t)!xt(h,i.excluded)&&t.hasOwnProperty(h)&&(l=t[h],mt(l)?(a=!0,s||(t[h]=yt(l(e),o[h]))):_t(l)&&(s||(i.defaults=o[h]),i.depth++,a=n(l,e,i,s)||a,i.depth--));return a}function s(t){var e,i=t.length,n=0;for(e=0;e<i;e++)n=Math.max(n,t[e].data.length);return n}function o(t){for(var e=0;e<t.length;e++)if(lt(t[e].zIndex))return!0}function r(t){var e=t.overlay;return e&&e.gradient&&"none"!==e.gradient}function a(t){return e(t)===t.length}function h(t){return lt(t)&&null!==t}function l(t){var e,i,n,s=t.series;for(e=0;e<s.length;e++)i=s[e],n=i.data,!n||ut(n[0])||_t(n[0])||(i.data=[n])}function c(){return"pane"+wn++}function u(t){var e,i,n,s=t.length;if(s>0)for(i=0;i<s;i++)n=t[i].contentBox(),e?e.wrap(n):e=n.clone();return e||new gt}function p(t,e){var i,n;for(i=0;i<t.length;i++)if(n=t[i],n&&n.pane===e)return n}function d(t){return""===t||null===t||"none"===t||"transparent"===t||!lt(t)}function g(t,e,i){var n,s=e,o=t;if(t.indexOf(".")>-1){for(n=t.split(".");n.length>1;)o=n.shift(),lt(s[o])||(s[o]={}),s=s[o];o=n.shift()}s[o]=i}function f(t,e){var i,n,s=[],o=[].concat(e);for(i=0;i<t.length;i++)n=t[i],xt(n.type,o)&&s.push(n);return s}function v(t,e){return t&&e?t.toLowerCase()===e.toLowerCase():t===e}function x(t,e){var i=t.type,n=e instanceof Date;return!i&&n||v(i,rt)}function m(t,e){null!==e&&t.push(e)}function y(t){return 1===t.length?t[0]:t}function _(t,e,i){var n,s;return null===e?e:(n="_date_"+t,s=e[n],s||(s=Et(i,ct(t,!0)(e)),e[n]=s),s)}function w(t,e,i){return Ot(t,function(t){return 0===i&&!t.categoryAxis||t.categoryAxis===e})}function b(){this._defaultPrevented=!0}function A(t,e){var i=(e||"").toLowerCase(),n=t.event,s="none"===i&&!(n.ctrlKey||n.shiftKey||n.altKey)||n[i+"Key"];return s}function C(t){var e,i,n={};for(e=0;e<t.length;e++)i=t[e],i.axis.options.name&&(n[i.axis.options.name]={min:i.range.min,max:i.range.max});return n}function S(t){var e=document.createElement("div");return t&&(e.className=t),e}function k(t){for(var e=t;e&&!Ft(e,"k-handle");)e=e.parentNode;return e}function T(t){t.stopPropagation()}function P(t){var e,i,n=q.rad(t),s=Bt(Math.sin(n),at),o=Bt(Math.cos(n),at);return e=Math.abs(s)>ns?K:o<0?st:J,i=Math.abs(s)<is?K:s<0?$:Q,{horizontal:e,vertical:i}}function R(t,e,i){var n,s=e.visible;return lt(s)?s:(n=t.pointVisibility,n?n[i]:void 0)}function I(t){var e,i,n,s=t.data,o=[],r=0,a=0;for(e=0;e<s.length;e++)i=ie.current.bindPoint(t,e),n=i.valueFields.value,It(n)&&(n=parseFloat(n)),U(n)?(i.visible=R(t,i.fields,e)!==!1,i.value=Math.abs(n),o.push(i),i.visible&&(r+=i.value),0!==n&&a++):o.push(null);return{total:r,points:o,count:a}}function E(t,e,i,n){var s,o,r=(n.x-i.x)*(t.y-i.y)-(n.y-i.y)*(t.x-i.x),a=(n.y-i.y)*(e.x-t.x)-(n.x-i.x)*(e.y-t.y);return 0!==a&&(o=r/a,s=new dt(t.x+o*(e.x-t.x),t.y+o*(e.y-t.y))),s}function V(t,e){return t.value.x-e.value.x}function M(t){var e,i,n=Hs;for(e=0;e<n.length;e++)i=n[e]+"Axes",t[i]&&(t[n[e]+"Axis"]=t[i],delete t[i])}function L(t,e){if(t)for(var i=0;i<t.length;i++)if(t[i].category===e)return[t[i]]}function B(t,e){function i(t){var e=(t||{}).color||s.color,i=wt({},a,a[n],s,s[n],{line:{color:e},labels:{color:e},title:{color:e}},t);return delete i[n],i}var n,s,o,r,a=(e||{}).axisDefaults||{};for(r=0;r<Hs.length;r++)n=Hs[r]+"Axis",s=t.axisDefaults||{},o=[].concat(t[n]),o=o.map(i),t[n]=o.length>1?o:o[0]}function O(t,e){var i,n,s,o=t.series,r=o.length,a=t.seriesDefaults,h=wt({},t.seriesDefaults),l=e?wt({},e.seriesDefaults):{},c=wt({},l);for(z(h),z(c),i=0;i<r;i++)n=o[i].type||t.seriesDefaults.type,s=wt({data:[]},c,l[n],{tooltip:t.tooltip},h,a[n]),o[i]._defaults=s,o[i]=wt({},s,o[i])}function z(t){delete t.bar,delete t.column,delete t.rangeColumn,delete t.line,delete t.verticalLine,delete t.pie,delete t.donut,delete t.area,delete t.verticalArea,delete t.scatter,delete t.scatterLine,delete t.bubble,delete t.candlestick,delete t.ohlc,delete t.boxPlot,delete t.bullet,delete t.verticalBullet,delete t.polarArea,delete t.polarLine,delete t.radarArea,delete t.radarLine,delete t.waterfall}function D(t){var e,i,n,s={};for(e=0;e<t.length;e++)i=t[e],n=i.options.name,n&&(s[n]=i.range());return s}function F(t,e){void 0===e&&(e=q.dateComparer);for(var i=1,n=t.length;i<n;i++)if(e(t[i],t[i-1])<0){t.sort(e);break}return t}function H(t,e){var i,n,s,o;for(void 0===e&&(e=q.dateComparer),i=F(t,e),n=i.length,s=n>0?[i[0]]:[],o=1;o<n;o++)0!==e(i[o],Pt(s))&&s.push(i[o]);return s}function N(t){var e,i,n,s,o=t.length,r=[];for(e=0;e<o;e++)for(i=t[e],n=i.length,s=0;s<n;s++)r[s]=r[s]||[],r[s].push(i[s]);return r}function G(t,e){var i,n,s,o;for(i in e)n=e[i],s=t[i],lt(s)&&(o=null===n,o||!lt(n)?(delete t[i],o&&delete e[i]):s&&_t(n)&&_t(s)&&G(s,n))}var q,W,U,X,Y,Z,j,K,Q,$,J,tt,et,it,nt,st,ot,rt,at,ht,lt,ct,ut,pt,dt,gt,ft,vt,xt,mt,yt,_t,wt,bt,At,Ct,St,kt,Tt,Pt,Rt,It,Et,Vt,Mt,Lt,Bt,Ot,zt,Dt,Ft,Ht,Nt,Gt,qt,Wt,Ut,Xt,Yt,Zt,jt,Kt,Qt,$t,Jt,te,ee,ie,ne,se,oe,re,ae,he,le,ce,ue,pe,de,ge,fe,ve,xe,me,ye,_e,we,be,Ae,Ce,Se,ke,Te,Pe,Re,Ie,Ee,Ve,Me,Le,Be,Oe,ze,De,Fe,He,Ne,Ge,qe,We,Ue,Xe,Ye,Ze,je,Ke,Qe,$e,Je,ti,ei,ii,ni,si,oi,ri,ai,hi,li,ci,ui,pi,di,gi,fi,vi,xi,mi,yi,_i,wi,bi,Ai,Ci,Si,ki,Ti,Pi,Ri,Ii,Ei,Vi,Mi,Li,Bi,Oi,zi,Di,Fi,Hi,Ni,Gi,qi,Wi,Ui,Xi,Yi,Zi,ji,Ki,Qi,$i,Ji,tn,en,nn,sn,on,rn,an,hn,ln,cn,un,pn,dn,gn,fn,vn,xn,mn,yn,_n,wn,bn,An,Cn,Sn,kn,Tn,Pn,Rn,In,En,Vn,Mn,Ln,Bn,On,zn,Dn,Fn,Hn,Nn,Gn,qn,Wn,Un,Xn,Yn,Zn,jn,Kn,Qn,$n,Jn,ts,es,is,ns,ss,os,rs,as,hs,ls,cs,us,ps,ds,gs,fs,vs,xs,ms,ys,_s,ws,bs,As,Cs,Ss,ks,Ts,Ps,Rs,Is,Es,Vs,Ms,Ls,Bs,Os,zs,Ds,Fs,Hs,Ns,Gs,qs,Ws;window.kendo.dataviz=window.kendo.dataviz||{},q=kendo.dataviz,W=q.Class,U=q.isNumber,X=q.constants,Y=X.MAX_VALUE,Z=X.MIN_VALUE,j=X.VALUE,K=X.CENTER,Q=X.TOP,$=X.BOTTOM,J=X.LEFT,tt=X.WHITE,et=X.CIRCLE,it=X.Y,nt=X.X,st=X.RIGHT,ot=X.BLACK,rt=X.DATE,at=X.DEFAULT_PRECISION,ht=X.ARC,lt=q.defined,ct=q.getter,ut=q.isArray,pt=q.ChartElement,dt=q.Point,gt=q.Box,ft=q.alignPathToPixel,vt=q.setDefaultOptions,xt=q.inArray,mt=q.isFunction,yt=q.valueOrDefault,_t=q.isObject,wt=q.deepExtend,bt=q.eventElement,At=q.getTemplate,Ct=q.TextBox,St=q.ShapeElement,kt=q.getSpacing,Tt=q.limitValue,Pt=q.last,Rt=q.append,It=q.isString,Et=q.parseDate,Vt=q.styleValue,Mt=q.CategoryAxis,Lt=q.BoxElement,Bt=q.round,Ot=q.grep,zt=q.DateCategoryAxis,Dt=q.elementStyles,Ft=q.hasClasses,Ht=q.bindEvents,Nt=q.services,Gt=q.unbindEvents,qt=kendo.support,Wt=kendo.drawing,Ut=Wt.Path,Xt=Wt.Animation,Yt=Wt.AnimationFactory,Zt=Wt.Group,jt=kendo.Color,Kt=kendo.geometry,Qt=Kt.Point,$t=Kt.transform,Jt=W.extend({init:function(t){this._axis=t,this.options=t.options},value:function(t){var e=this._axis,i=e.getCategory?e.getCategory(t):e.getValue(t);return i},slot:function(t,e,i){return void 0===i&&(i=!0),this._axis.slot(t,e,i)},range:function(){return this._axis.range()},valueRange:function(){return this._axis.valueRange()}}),te=W.extend({init:function(t){this._plotArea=t,this.visual=t.visual,this.backgroundVisual=t._bgVisual}}),ee={min:function(t){var e,i,n=t.length,s=Y;for(e=0;e<n;e++)i=t[e],U(i)&&(s=Math.min(s,i));return s===Y?t[0]:s},max:function(t){var e,i,n=t.length,s=Z;for(e=0;e<n;e++)i=t[e],U(i)&&(s=Math.max(s,i));return s===Z?t[0]:s},sum:function(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],U(i)&&(s+=i);return s},sumOrNull:function(t){var i=null;return e(t)&&(i=ee.sum(t)),i},count:function(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],null!==i&<(i)&&s++;return s},avg:function(t){var i=e(t),n=t[0];return i>0&&(n=ee.sum(t)/i),n},first:function(t){var e,i,n=t.length;for(e=0;e<n;e++)if(i=t[e],null!==i&<(i))return i;return t[0]}},ie=W.extend({init:function(){this._valueFields={},this._otherFields={},this._nullValue={},this._undefinedValue={}},register:function(t,e,i){var n,s,o=this;for(void 0===e&&(e=[j]),void 0===i&&(i={}),n=0;n<t.length;n++)s=t[n],o._valueFields[s]=e,o._otherFields[s]=i,o._nullValue[s]=o._makeValue(e,null),o._undefinedValue[s]=o._makeValue(e,void 0)},canonicalFields:function(t){return this.valueFields(t).concat(this.otherFields(t))},valueFields:function(t){return this._valueFields[t.type]||[j]},otherFields:function(t){return this._otherFields[t.type]||[j]},bindPoint:function(t,e,i){var n,s,o,r,a,h=t.data,l=lt(i)?i:h[e],c={valueFields:{value:l}},u=this.valueFields(t),p=this._otherFields[t.type];return null===l?s=this._nullValue[t.type]:lt(l)?Array.isArray(l)?(o=l.slice(u.length),s=this._bindFromArray(l,u),n=this._bindFromArray(o,p)):"object"==typeof l&&(r=this.sourceFields(t,u),a=this.sourceFields(t,p),s=this._bindFromObject(l,u,r),n=this._bindFromObject(l,p,a)):s=this._undefinedValue[t.type],lt(s)&&(1===u.length?c.valueFields.value=s[u[0]]:c.valueFields=s),c.fields=n||{},c},_makeValue:function(t,e){var i,n,s={},o=t.length;for(i=0;i<o;i++)n=t[i],s[n]=e;return s},_bindFromArray:function(t,e){var i,n,s={};if(e)for(i=Math.min(e.length,t.length),n=0;n<i;n++)s[e[n]]=t[n];return s},_bindFromObject:function(t,e,n){var s,o,r,a,h;if(void 0===n&&(n=e),s={},e)for(o=e.length,r=0;r<o;r++)a=e[r],h=n[r],s[a]=i(h,t);return s},sourceFields:function(t,e){var i,n,s,o,r=[];if(e)for(i=e.length,n=0;n<i;n++)s=e[n],o=s===j?"field":s+"Field",r.push(t[o]||s);return r}}),ie.current=new ie,ne="stderr",se="stddev",oe=/percent(?:\w*)\((\d+)\)/,re=RegExp("^"+se+"(?:\\((\\d+(?:\\.\\d+)?)\\))?$"),ae=W.extend({init:function(t,e,i){this.initGlobalRanges(t,e,i)},initGlobalRanges:function(t,e,i){var n,s,o,r,a,h=e.data,l=re.exec(t);l?(this.valueGetter=this.createValueGetter(e,i),n=this.getAverage(h),s=this.getStandardDeviation(h,n,!1),o=l[1]?parseFloat(l[1]):1,r={low:n.value-s*o,high:n.value+s*o},this.globalRange=function(){return r}):t.indexOf&&t.indexOf(ne)>=0&&(this.valueGetter=this.createValueGetter(e,i),a=this.getStandardError(h,this.getAverage(h)),this.globalRange=function(t){return{low:t-a,high:t+a}})},createValueGetter:function(t,e){var i,n,s,o=t.data,r=ie.current,a=r.valueFields(t),h=lt(o[0])?o[0]:{};return ut(h)?(n=e?a.indexOf(e):0,i=ct("["+n+"]")):U(h)?i=ct():typeof h===X.OBJECT&&(s=r.sourceFields(t,a),i=ct(s[a.indexOf(e)])),i},getErrorRange:function(t,e){var i,n,s,o;if(!lt(e))return null;if(this.globalRange)return this.globalRange(t);if(ut(e))i=t-e[0],n=t+e[1];else if(U(s=parseFloat(e)))i=t-s,n=t+s;else{if(!(s=oe.exec(e)))throw Error("Invalid ErrorBar value: "+e);o=t*(parseFloat(s[1])/100),i=t-Math.abs(o),n=t+Math.abs(o)}return{low:i,high:n}},getStandardError:function(t,e){return this.getStandardDeviation(t,e,!0)/Math.sqrt(e.count)},getStandardDeviation:function(t,e,i){var n,s,o=this,r=t.length,a=i?e.count-1:e.count,h=0;for(n=0;n<r;n++)s=o.valueGetter(t[n]),U(s)&&(h+=Math.pow(s-e.value,2));return Math.sqrt(h/a)},getAverage:function(t){var e,i,n=this,s=t.length,o=0,r=0;for(e=0;e<s;e++)i=n.valueGetter(t[e]),U(i)&&(o+=i,r++);return{value:o/r,count:r}}}),he=qt.browser||{},le=600,ce="fadeIn",ue="glass",pe=.8,de=5,ge=he.msie?.001:0,fe="errorLow",ve="errorHigh",xe="xErrorLow",me="xErrorHigh",ye="yErrorLow",_e="yErrorHigh",we=8,be="zero",Ae="interpolate",Ce="gap",Se="smooth",ke="step",Te="area",Pe="bar",Re="boxPlot",Ie="bubble",Ee="bullet",Ve="candlestick",Me="column",Le="donut",Be="funnel",Oe="horizontalWaterfall",ze="line",De="ohlc",Fe="pie",He="polarArea",Ne="polarLine",Ge="polarScatter",qe="radarArea",We="radarColumn",Ue="radarLine",Xe="rangeBar",Ye="rangeColumn",Ze="scatter",je="scatterLine",Ke="verticalArea",Qe="verticalBoxPlot",$e="verticalBullet",Je="verticalLine",ti="waterfall",ei=[Pe,Me,De,Ve,Re,Qe,Ee,Ye,Xe,ti,Oe],ii="legendItemClick",ni="legendItemHover",si="seriesClick",oi="seriesHover",ri="plotAreaClick",ai="plotAreaHover",hi="drag",li="dragEnd",ci="dragStart",ui="zoomStart",pi="zoom",di="zoomEnd",gi="selectStart",fi="select",vi="selectEnd",xi="render",mi="showTooltip",yi="hideTooltip",_i="log",wi="category",bi="insideEnd",Ai="insideBase",Ci="outsideEnd",Si="DOMMouseScroll mousewheel",ki=150,Ti={INITIAL_ANIMATION_DURATION:le,FADEIN:ce,LEGEND_ITEM_CLICK:ii,LEGEND_ITEM_HOVER:ni,SERIES_CLICK:si,SERIES_HOVER:oi,GLASS:ue,BORDER_BRIGHTNESS:pe,TOOLTIP_OFFSET:de,START_SCALE:ge,ERROR_LOW_FIELD:fe,ERROR_HIGH_FIELD:ve,X_ERROR_LOW_FIELD:xe,X_ERROR_HIGH_FIELD:me,Y_ERROR_LOW_FIELD:ye,Y_ERROR_HIGH_FIELD:_e,LINE_MARKER_SIZE:we,INTERPOLATE:Ae,ZERO:be,SMOOTH:Se,STEP:ke,CATEGORY:wi,FUNNEL:Be,BAR:Pe,CANDLESTICK:Ve,PIE:Fe,COLUMN:Me,AREA:Te,VERTICAL_BULLET:$e,BOX_PLOT:Re,OHLC:De,WATERFALL:ti,LINE:ze,BULLET:Ee,VERTICAL_LINE:Je,VERTICAL_AREA:Ke,RANGE_COLUMN:Ye,VERTICAL_BOX_PLOT:Qe,RANGE_BAR:Xe,HORIZONTAL_WATERFALL:Oe,SCATTER:Ze,SCATTER_LINE:je,BUBBLE:Ie,RADAR_AREA:qe,RADAR_LINE:Ue,RADAR_COLUMN:We,POLAR_LINE:Ne,POLAR_AREA:He,POLAR_SCATTER:Ge,RENDER:xi,PLOT_AREA_CLICK:ri,PLOT_AREA_HOVER:ai,LOGARITHMIC:_i,DRAG:hi,DRAG_START:ci,DRAG_END:li,ZOOM_START:ui,ZOOM:pi,ZOOM_END:di,SELECT_START:gi,SELECT:fi,SELECT_END:vi,GAP:Ce,DONUT:Le,INSIDE_END:bi,INSIDE_BASE:Ai,OUTSIDE_END:Ci,MOUSEWHEEL:Si,MOUSEWHEEL_DELAY:ki,SHOW_TOOLTIP:mi,HIDE_TOOLTIP:yi,EQUALLY_SPACED_SERIES:ei},Pi=4,Ri=pt.extend({init:function(t,e,i,n,s,o){pt.fn.init.call(this,o),this.low=t,this.high=e,this.isVertical=i,this.chart=n,this.series=s},reflow:function(t){var e,i=this.options.endCaps,n=this.isVertical,s=this.getAxis(),o=s.getSlot(this.low,this.high),r=t.center(),a=this.getCapsWidth(t,n),h=n?r.x:r.y,l=h-a,c=h+a;n?(e=[new dt(r.x,o.y1),new dt(r.x,o.y2)],i&&e.push(new dt(l,o.y1),new dt(c,o.y1),new dt(l,o.y2),new dt(c,o.y2)),this.box=new gt(l,o.y1,c,o.y2)):(e=[new dt(o.x1,r.y),new dt(o.x2,r.y)],i&&e.push(new dt(o.x1,l),new dt(o.x1,c),new dt(o.x2,l),new dt(o.x2,c)),this.box=new gt(o.x1,l,o.x2,c)),this.linePoints=e},getCapsWidth:function(t,e){var i=e?t.width():t.height(),n=Math.min(Math.floor(i/2),Pi)||Pi;return n},createVisual:function(){var t=this,e=this.options,i=e.visual;i?this.visual=i({low:this.low,high:this.high,rect:this.box.toRect(),sender:this.getSender(),options:{endCaps:e.endCaps,color:e.color,line:e.line},createVisual:function(){t.createDefaultVisual();var e=t.visual;return delete t.visual,e}}):this.createDefaultVisual()},createDefaultVisual:function(){var t,e,i=this,n=this,s=n.options,o=n.linePoints,r={stroke:{color:s.color,width:s.line.width,dashType:s.line.dashType}};for(pt.fn.createVisual.call(this),t=0;t<o.length;t+=2)e=new Ut(r).moveTo(o[t].x,o[t].y).lineTo(o[t+1].x,o[t+1].y),ft(e),i.visual.append(e)}}),vt(Ri,{animation:{type:ce,delay:le},endCaps:!0,line:{width:2},zIndex:1}),Ii=Ri.extend({getAxis:function(){var t=this.chart.seriesValueAxis(this.series);return t}}),Ei=5,Vi=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this.categoryAxis=t.seriesCategoryAxis(e.series[0]),this.valueAxisRanges={},this.points=[],this.categoryPoints=[],this.seriesPoints=[],this.seriesOptions=[],this._evalSeries=[],this.render()},render:function(){this.traverseDataPoints(this.addValue.bind(this))},pointOptions:function(t,e){var i,n=this.seriesOptions[e];return n||(i=this.pointType().prototype.defaults,this.seriesOptions[e]=n=wt({},i,{vertical:!this.options.invertAxes},t)),n},plotValue:function(t){var e,i,n,s,o,r,a,h;if(!t)return 0;if(this.options.isStacked100&&U(t.value)){for(e=t.categoryIx,i=this.categoryPoints[e],n=[],s=0,o=0;o<i.length;o++)if(r=i[o]){if(a=t.series.stack,h=r.series.stack,a&&h&&a.group!==h.group)continue;U(r.value)&&(s+=Math.abs(r.value),n.push(Math.abs(r.value)))}if(s>0)return t.value/s}return t.value},plotRange:function(t,e){var i,n,s,o,r,a,h,l,c,u,p,d,g,f=this;if(void 0===e&&(e=0),i=this.categoryPoints[t.categoryIx],this.options.isStacked){for(n=this.plotValue(t),s=n>=0,o=e,r=!1,a=0;a<i.length&&(h=i[a],t!==h);a++){if(l=t.series.stack,c=h.series.stack,l&&c){if(typeof l===X.STRING&&l!==c)continue;if(l.group&&l.group!==c.group)continue}u=f.plotValue(h),(u>=0&&s||u<0&&!s)&&(o+=u,n+=u,r=!0,f.options.isStacked100&&(n=Math.min(n,1)))}return r&&(o-=e),[o,n]}return p=t.series,d=this.seriesValueAxis(p),g=this.categoryAxisCrossingValue(d),[g,t.value||g]},stackLimits:function(t,e){var i,n,s,o,r,a=this,h=Y,l=Z;for(i=0;i<this.categoryPoints.length;i++)if(n=a.categoryPoints[i])for(s=0;s<n.length;s++)o=n[s],o&&(o.series.stack!==e&&o.series.axis!==t||(r=a.plotRange(o,0)[1],lt(r)&&isFinite(r)&&(l=Math.max(l,r),h=Math.min(h,r))));return{min:h,max:l}},updateStackRange:function(){var t,e,i,n,s,o,r=this,a=this.options,h=a.isStacked,l=a.series,c={};if(h)for(t=0;t<l.length;t++)e=l[t],i=e.axis,n=i+e.stack,s=c[n],s||(s=r.stackLimits(i,e.stack),o=r.errorTotals,o&&(o.negative.length&&(s.min=Math.min(s.min,q.sparseArrayLimits(o.negative).min)),o.positive.length&&(s.max=Math.max(s.max,q.sparseArrayLimits(o.positive).max))),s.min!==Y||s.max!==Z?c[n]=s:s=null),s&&(r.valueAxisRanges[i]=s)},addErrorBar:function(t,e,i){var n,s=t.value,o=t.series,r=t.seriesIx,a=t.options.errorBars,h=e.fields[fe],l=e.fields[ve];U(h)&&U(l)?n={low:h,high:l}:a&<(a.value)&&(this.seriesErrorRanges=this.seriesErrorRanges||[],this.seriesErrorRanges[r]=this.seriesErrorRanges[r]||new ae(a.value,o,j),n=this.seriesErrorRanges[r].getErrorRange(s,a.value)),n&&(t.low=n.low,t.high=n.high,this.addPointErrorBar(t,i))},addPointErrorBar:function(t,e){var i,n,s,o=!this.options.invertAxes,r=t.options.errorBars,a=t.series,h=t.low,l=t.high;this.options.isStacked?(i=this.stackedErrorRange(t,e),h=i.low,l=i.high):(n={categoryIx:e,series:a},this.updateRange({value:h},n),this.updateRange({value:l},n)),s=new Ii(h,l,o,this,a,r),t.errorBars=[s],t.append(s)},stackedErrorRange:function(t,e){var i=this.plotRange(t,0)[1]-t.value,n=t.low+i,s=t.high+i;return this.errorTotals=this.errorTotals||{positive:[],negative:[]},n<0&&(this.errorTotals.negative[e]=Math.min(this.errorTotals.negative[e]||0,n)),s>0&&(this.errorTotals.positive[e]=Math.max(this.errorTotals.positive[e]||0,s)),{low:n,high:s}},addValue:function(e,i){var n,s,o=i.categoryIx,r=i.series,a=i.seriesIx,h=this.categoryPoints[o];h||(this.categoryPoints[o]=h=[]),n=this.seriesPoints[a],n||(this.seriesPoints[a]=n=[]),s=this.createPoint(e,i),s&&(t.extend(s,i),s.owner=this,s.noteText=e.fields.noteText,lt(s.dataItem)||(s.dataItem=r.data[o]),this.addErrorBar(s,e,o)),this.points.push(s),n.push(s),h.push(s),this.updateRange(e.valueFields,i)},evalPointOptions:function(t,e,i,s,o,r){var a,h={defaults:o._defaults,excluded:["data","aggregate","_events","tooltip","content","template","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},l=this._evalSeries[r];return lt(l)||(this._evalSeries[r]=l=n(t,{},h,!0)),a=t,l&&(a=wt({},a),n(a,{value:e,category:i,index:s,series:o,dataItem:o.data[s]},h)),a},updateRange:function(t,e){var i=e.series.axis,n=t.value,s=this.valueAxisRanges[i];isFinite(n)&&null!==n&&(s=this.valueAxisRanges[i]=s||{min:Y,max:Z},s.min=Math.min(s.min,n),s.max=Math.max(s.max,n))},seriesValueAxis:function(t){var e=this.plotArea,i=t.axis,n=i?e.namedValueAxes[i]:e.valueAxis;if(!n)throw Error("Unable to locate value axis with name "+i);return n},reflow:function(t){var e=this,i=this.categorySlots=[],n=this.points,s=this.categoryAxis,o=0;this.traverseDataPoints(function(t,r){var a,h,l,c=r.categoryIx,u=r.series,p=e.seriesValueAxis(u),d=n[o++],g=i[c];g||(i[c]=g=e.categorySlot(s,c,p)),d&&(a=e.plotRange(d,p.startValue()),h=p.getSlot(a[0],a[1],!e.options.clip),h?(l=e.pointSlot(g,h),d.aboveAxis=e.aboveAxis(d,p),d.stackValue=a[1],e.options.isStacked100&&(d.percentage=e.plotValue(d)),e.reflowPoint(d,l)):d.visible=!1)}),this.reflowCategories(i),this.box=t},aboveAxis:function(t,e){var i=this.categoryAxisCrossingValue(e),n=t.value;return e.options.reverse?n<i:n>=i},categoryAxisCrossingValue:function(t){var e=this.categoryAxis,i=t.options,n=[].concat(i.axisCrossingValues||i.axisCrossingValue);return n[e.axisIndex||0]||0},reflowPoint:function(t,e){t.reflow(e)},reflowCategories:function(){},pointSlot:function(t,e){var i=this.options,n=i.invertAxes,s=n?e:t,o=n?t:e;return new gt(s.x1,o.y1,s.x2,o.y2)},categorySlot:function(t,e){return t.getSlot(e)},traverseDataPoints:function(t){var e,i,n,o,r,a,h,l=this,c=this.options.series,u=this.categoryAxis.options.categories||[],p=s(c),d=c.length;for(e=0;e<d;e++)l._outOfRangeCallback(c[e],"_outOfRangeMinPoint",e,t);for(i=0;i<p;i++)for(n=0;n<d;n++)o=c[n],r=u[i],a=l._bindPoint(o,n,i),t(a,{category:r,categoryIx:i,series:o,seriesIx:n});for(h=0;h<d;h++)l._outOfRangeCallback(c[h],"_outOfRangeMaxPoint",h,t)},_outOfRangeCallback:function(t,e,i,n){var s,o,r=t[e];r&&(s=r.categoryIx,o=this._bindPoint(t,i,s,r.item),n(o,{category:r.category,categoryIx:s,series:t,seriesIx:i,dataItem:r.item}))},_bindPoint:function(t,e,i,n){var s,o;return this._bindCache||(this._bindCache=[]),s=this._bindCache[e],s||(s=this._bindCache[e]=[]),o=s[i],o||(o=s[i]=ie.current.bindPoint(t,i,n)),o},formatPointValue:function(t,e){return null===t.value?"":this.chartService.format.auto(e,t.value)},pointValue:function(t){return t.valueFields.value}}),vt(Vi,{series:[],invertAxes:!1,isStacked:!1,clip:!0}),Mi={click:function(t,e){return t.trigger(si,this.eventArgs(e))},hover:function(t,e){return t.trigger(oi,this.eventArgs(e))},eventArgs:function(t){return{value:this.value,percentage:this.percentage,stackValue:this.stackValue,category:this.category,series:this.series,dataItem:this.dataItem,runningTotal:this.runningTotal,total:this.total,element:bt(t),originalEvent:t,point:this}}},Li={createNote:function(){var t=this.options.notes,e=this.noteText||t.label.text;t.visible!==!1&<(e)&&null!==e&&(this.note=new q.Note({value:this.value,text:e,dataItem:this.dataItem,category:this.category,series:this.series},this.options.notes,this.owner.chartService),this.append(this.note))}},Bi="above",Oi="below",zi=pt.extend({init:function(t,e){pt.fn.init.call(this),this.value=t,this.options=e,this.aboveAxis=yt(this.options.aboveAxis,!0),this.tooltipTracking=!0},render:function(){var t,e,i=this.options,n=i.markers,s=i.labels;this._rendered||(this._rendered=!0,n.visible&&n.size&&(this.marker=this.createMarker(),this.append(this.marker)),s.visible&&(t=At(s),e=this.value,t?e=t({dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,stackValue:this.stackValue,series:this.series}):s.format&&(e=this.formatValue(s.format)),this.label=new Ct(e,wt({align:K,vAlign:K,margin:{left:5,right:5},zIndex:yt(s.zIndex,this.series.zIndex)},s)),this.append(this.label)),this.createNote(),this.errorBar&&this.append(this.errorBar))},markerBorder:function(){var t=this.options.markers,e=t.background,i=wt({color:this.color},t.border);return lt(i.color)||(i.color=new jt(e).brightness(pe).toHex()),i},createVisual:function(){},createMarker:function(){var t=this.options.markers,e=new St({type:t.type,width:t.size,height:t.size,rotation:t.rotation,background:t.background,border:this.markerBorder(),opacity:t.opacity,zIndex:yt(t.zIndex,this.series.zIndex),animation:t.animation,visual:t.visual},{dataItem:this.dataItem,value:this.value,series:this.series,category:this.category});return e},markerBox:function(){return this.marker||(this.marker=this.createMarker(),this.marker.reflow(this._childBox)),this.marker.box},reflow:function(t){var e,i,n,s,o=this,r=this,a=r.options,h=r.aboveAxis,l=a.vertical;if(this.render(),this.box=t,e=t.clone(),l?h?e.y1-=e.height():e.y2+=e.height():h?e.x1+=e.width():e.x2-=e.width(),this._childBox=e,this.marker&&this.marker.reflow(e),this.reflowLabel(e),this.errorBars)for(i=0;i<this.errorBars.length;i++)o.errorBars[i].reflow(e);this.note&&(n=this.markerBox(),a.markers.visible&&a.markers.size||(s=n.center(),n=new gt(s.x,s.y,s.x,s.y)),this.note.reflow(n))},reflowLabel:function(t){var e=this,i=e.options,n=e.label,s=i.labels.position;n&&(s=s===Bi?Q:s,s=s===Oi?$:s,n.reflow(t),n.box.alignTo(this.markerBox(),s),n.reflow(n.box))},createHighlight:function(){var t=this.options.highlight.markers,e=this.markerBorder().color,i=this.options.markers,n=i.size+(i.border.width||0)+(t.border.width||0),s=new St({type:i.type,width:n,height:n,rotation:i.rotation,background:t.color||e,border:{color:t.border.color,width:t.border.width,opacity:yt(t.border.opacity,1)},opacity:yt(t.opacity,1)});return s.reflow(this._childBox),s.getElement()},highlightVisual:function(){return(this.marker||{}).visual},highlightVisualArgs:function(){var t,e,i,n,s,o=this.marker;return o?(e=o.paddingBox.toRect(),t=o.visual):(i=this.options.markers.size,n=i/2,s=this.box.center(),e=new Kt.Rect([s.x-n,s.y-n],[i,i])),{options:this.options,rect:e,visual:t}},tooltipAnchor:function(){var t,e,i,n,s=this.markerBox(),o=this.owner.pane.clipBox(),r=!o||o.overlaps(s);if(r)return t=s.x2+de,e=J,this.aboveAxis?(i=s.y1,n=$):(i=s.y2,n=Q),{point:new dt(t,i),align:{horizontal:e,vertical:n}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){var e=this.markerBox();return e.overlaps(t)}}),zi.prototype.defaults={vertical:!0,markers:{visible:!0,background:tt,size:we,type:et,border:{width:2},opacity:1},labels:{visible:!1,position:Bi,margin:kt(3),padding:kt(4),animation:{type:ce,delay:le}},notes:{label:{}},highlight:{markers:{border:{color:"#fff",width:2}}},errorBars:{line:{width:1}}},wt(zi.prototype,Mi),wt(zi.prototype,Li),Di=pt.extend({init:function(t,e,i){pt.fn.init.call(this),this.linePoints=t,this.series=e,this.seriesIx=i},points:function(t){var e,i,n=this.linePoints.concat(t||[]),s=[];for(e=0,i=n.length;e<i;e++)n[e].visible!==!1&&s.push(n[e]._childBox.toRect().center());return s},createVisual:function(){var t,e=this,i=e.options,n=e.series,s=n.color,o=n._defaults;mt(s)&&o&&(s=o.color),t=Ut.fromPoints(this.points(),{stroke:{color:s,width:n.width,opacity:n.opacity,dashType:n.dashType},zIndex:n.zIndex}),i.closed&&t.close(),this.visual=t},aliasFor:function(t,e){return this.parent.getNearestPoint(e.x,e.y,this.seriesIx)}}),vt(Di,{closed:!1}),Fi=Di.extend({points:function(t){var e=this.calculateStepPoints(this.linePoints);return t&&t.length&&(e=e.concat(this.calculateStepPoints(t).reverse())),e},calculateStepPoints:function(t){var e,i,n,s,o,r=this.parent,a=r.plotArea,h=a.seriesCategoryAxis(this.series),l=r.seriesMissingValues(this.series)===Ae,c=h.options.reverse,u=h.options.vertical,p=c?2:1,d=c?1:2,g=t.length,f=[];for(e=1;e<g;e++)i=t[e-1],n=t[e],s=i.markerBox().center(),o=n.markerBox().center(),h.options.justified?(f.push(new Qt(s.x,s.y)),f.push(u?new Qt(s.x,o.y):new Qt(o.x,s.y)),f.push(new Qt(o.x,o.y))):u?(f.push(new Qt(s.x,i.box[it+p])),f.push(new Qt(s.x,i.box[it+d])),l&&f.push(new Qt(s.x,n.box[it+p])),f.push(new Qt(o.x,n.box[it+p])),f.push(new Qt(o.x,n.box[it+d]))):(f.push(new Qt(i.box[nt+p],s.y)),f.push(new Qt(i.box[nt+d],s.y)),l&&f.push(new Qt(n.box[nt+p],s.y)),f.push(new Qt(n.box[nt+p],o.y)),f.push(new Qt(n.box[nt+d],o.y)));return f||[]}}),Hi=Di.extend({createVisual:function(){var t,e,i,n=this.series,s=n._defaults,o=n.color;mt(o)&&s&&(o=s.color),t=new q.CurveProcessor(this.options.closed),e=t.process(this.points()),i=new Ut({stroke:{color:o,width:n.width,opacity:n.opacity,dashType:n.dashType},zIndex:n.zIndex}),i.segments.push.apply(i.segments,e),this.visual=i}}),Ni={renderSegments:function(){var t,e,i,n,s,o,r,a,h=this,l=this,c=l.options,u=l.seriesPoints,p=c.series,d=u.length;for(this._segments=[],e=0;e<d;e++){for(i=p[e],n=h.sortPoints(u[e]),s=n.length,o=[],r=0;r<s;r++)a=n[r],a?o.push(a):h.seriesMissingValues(i)!==Ae&&(o.length>1&&(t=h.createSegment(o,i,e,t),h._addSegment(t)),o=[]);o.length>1&&(t=h.createSegment(o,i,e,t),h._addSegment(t))}this.children.unshift.apply(this.children,this._segments)},_addSegment:function(t){this._segments.push(t),t.parent=this},sortPoints:function(t){return t},seriesMissingValues:function(t){var e=t.missingValues,i=!e&&this.options.isStacked;return i?be:e||Ae},getNearestPoint:function(t,e,i){var n,s,o,r,a,h=new dt(t,e),l=this.seriesPoints[i],c=Y;for(s=0;s<l.length;s++)o=l[s],o&<(o.value)&&null!==o.value&&o.visible!==!1&&(r=o.box,a=r.center().distanceTo(h),a<c&&(n=o,c=a));return n}},Gi=Xt.extend({setup:function(){this._setEnd(this.options.box.x1)},step:function(t){var e=this.options.box;this._setEnd(q.interpolateValue(e.x1,e.x2,t))},_setEnd:function(t){var e=this.element,i=e.segments,n=i[1].anchor(),s=i[2].anchor();e.suspend(),n.setX(t),e.resume(),s.setX(t)}}),vt(Gi,{duration:le}),Yt.current.register("clip",Gi),qi={createAnimation:function(){var t,e,i=this.getRoot();i&&(i.options||{}).transitions!==!1&&(t=i.box,e=Ut.fromRect(t.toRect()),this.visual.clip(e),this.animation=new Gi(e,{box:t}),o(this.options.series)&&this._setChildrenAnimation(e))},_setChildrenAnimation:function(t){var e,i,n=this.animationPoints();for(e=0;e<n.length;e++)i=n[e],i&&i.visual&<(i.visual.options.zIndex)&&i.visual.clip(t)}},Wi=Vi.extend({render:function(){Vi.fn.render.call(this),this.updateStackRange(),this.renderSegments()},pointType:function(){return zi},createPoint:function(t,e){var i,n,s,o=e.categoryIx,r=e.category,a=e.series,h=e.seriesIx,l=this.seriesMissingValues(a),c=t.valueFields.value;if(!lt(c)||null===c){if(l!==be)return null;c=0}return i=this.pointOptions(a,h),i=this.evalPointOptions(i,c,r,o,a,h),n=t.fields.color||a.color,mt(a.color)&&(n=i.color),s=new zi(c,i),s.color=n,this.append(s),s},plotRange:function(t){var e,i,n,s,o=this,r=this.plotValue(t);if(this.options.isStacked)for(e=t.categoryIx,i=this.categoryPoints[e],n=0;n<i.length&&(s=i[n],t!==s);n++)r+=o.plotValue(s),o.options.isStacked100&&(r=Math.min(r,1));return[r,r]},createSegment:function(t,e,i){var n,s=e.style;return new(n=s===ke?Fi:s===Se?Hi:Di)(t,e,i);
},animationPoints:function(){var t,e=this.points,i=[];for(t=0;t<e.length;t++)i.push((e[t]||{}).marker);return i.concat(this._segments)}}),wt(Wi.prototype,Ni,qi),Ui={points:function(){var t,e,i=this.parent,n=i.plotArea,s=i.options.invertAxes,o=i.seriesValueAxis(this.series),r=o.lineBox(),a=n.seriesCategoryAxis(this.series),h=a.lineBox(),l=this.stackPoints,c=this._linePoints(l),u=s?nt:it,p=s?h.x1:h.y1;return p=Tt(p,r[u+1],r[u+2]),!this.stackPoints&&c.length>1&&(t=c[0],e=Pt(c),s?(c.unshift(new Qt(p,t.y)),c.push(new Qt(p,e.y))):(c.unshift(new Qt(t.x,p)),c.push(new Qt(e.x,p)))),c},createVisual:function(){var t=this.series,e=t._defaults,i=t.color;mt(i)&&e&&(i=e.color),this.visual=new Zt({zIndex:t.zIndex}),this.createArea(i),this.createLine(i)},createLine:function(t){var e,i=this.series,n=wt({color:t,opacity:i.opacity},i.line);n.visible!==!1&&n.width>0&&(e=Ut.fromPoints(this._linePoints(),{stroke:{color:n.color,width:n.width,opacity:n.opacity,dashType:n.dashType,lineCap:"butt"}}),this.visual.append(e))},createArea:function(t){var e=this.series,i=Ut.fromPoints(this.points(),{fill:{color:t,opacity:e.opacity},stroke:null});this.visual.append(i)}},Xi=Di.extend({init:function(t,e,i,n){Di.fn.init.call(this,t,i,n),this.stackPoints=e}}),wt(Xi.prototype,Ui,{_linePoints:Di.prototype.points}),Yi=Fi.extend({init:function(t,e,i,n){Fi.fn.init.call(this,t,i,n),this.stackPoints=e}}),wt(Yi.prototype,Ui,{_linePoints:Fi.prototype.points}),Zi=Xi.extend({init:function(t,e,i,n,s){Xi.fn.init.call(this,t,[],n,s),this.prevSegment=e,this.isStacked=i},strokeSegments:function(){var t,e,i=this._strokeSegments;return i||(t=new q.CurveProcessor(this.options.closed),e=Di.prototype.points.call(this),i=this._strokeSegments=t.process(e)),i},createVisual:function(){var t=this.series,e=t._defaults,i=t.color;mt(i)&&e&&(i=e.color),this.visual=new Zt({zIndex:t.zIndex}),this.createFill({fill:{color:i,opacity:t.opacity},stroke:null}),this.createStroke({stroke:wt({color:i,opacity:t.opacity,lineCap:"butt"},t.line)})},createFill:function(t){var e,i,n,s,o,r,a,h=this.strokeSegments(),l=h.slice(0),c=this.prevSegment;if(this.isStacked&&c){for(e=c.strokeSegments(),i=Pt(e).anchor(),l.push(new Kt.Segment(i,i,Pt(h).anchor())),n=[],s=e.length-1;s>=0;s--)o=e[s],n.push(new Kt.Segment(o.anchor(),o.controlOut(),o.controlIn()));Rt(l,n),r=l[0].anchor(),l.push(new Kt.Segment(r,r,Pt(n).anchor()))}a=new Ut(t),a.segments.push.apply(a.segments,l),this.closeFill(a),this.visual.append(a)},closeFill:function(t){var e=this.parent,i=this.prevSegment,n=e.plotArea,s=e.options.invertAxes,o=e.seriesValueAxis(this.series),r=o.lineBox(),a=n.seriesCategoryAxis(this.series),h=a.lineBox(),l=s?nt:it,c=this.strokeSegments(),u=c[0].anchor(),p=Pt(c).anchor(),d=s?h.x1:h.y1;d=Tt(d,r[l+1],r[l+2]),e.options.isStacked&&i||!(c.length>1)||(s?t.lineTo(d,p.y).lineTo(d,u.y):t.lineTo(p.x,d).lineTo(u.x,d))},createStroke:function(t){if(t.stroke.width>0){var e=new Ut(t);e.segments.push.apply(e.segments,this.strokeSegments()),this.visual.append(e)}}}),ji=Wi.extend({createSegment:function(t,e,i,n){var s,o,r,a=this.options.isStacked,h=(e.line||{}).style;return a&&i>0&&n&&(o=this.seriesMissingValues(e),s="gap"!==o?n.linePoints:this._gapStackPoints(t,i,h),h!==ke&&(s=s.slice(0).reverse())),h===Se?new Zi(t,n,a,e,i):new(r=h===ke?Yi:Xi)(t,s,e,i)},reflow:function(t){var e,i,n,s,o=this;if(Wi.fn.reflow.call(this,t),e=this._stackPoints)for(i=0;i<e.length;i++)n=e[i],s=o.categoryAxis.getSlot(n.categoryIx),n.reflow(s)},_gapStackPoints:function(t,e,i){var n,s,o,r,a,h,l,c,u=this,p=this.seriesPoints,d=t[0].categoryIx,g=t.length;for(d<0&&(d=0,g--),n=d+g,s=this.seriesOptions[0]._outOfRangeMinPoint?1:0,o=[],this._stackPoints=this._stackPoints||[],r=d;r<n;r++){a=r+s,h=e,l=void 0;do h--,l=p[h][a];while(h>0&&!l);l?(i!==ke&&r>d&&!p[h][a-1]&&o.push(u._previousSegmentPoint(r,a,a-1,h)),o.push(l),i!==ke&&r+1<n&&!p[h][a+1]&&o.push(u._previousSegmentPoint(r,a,a+1,h))):(c=u._createGapStackPoint(r),u._stackPoints.push(c),o.push(c))}return o},_previousSegmentPoint:function(t,e,i,n){for(var s,o=this.seriesPoints,r=n;r>0&&!s;)r--,s=o[r][i];return s?s=o[r][e]:(s=this._createGapStackPoint(t),this._stackPoints.push(s)),s},_createGapStackPoint:function(t){var e=this.pointOptions({},0),i=new zi(0,e);return i.categoryIx=t,i.series={},i},seriesMissingValues:function(t){return t.missingValues||be}}),Ki=W.extend({init:function(){this.axisRanges={}},update:function(t){var e,i,n,s=this.axisRanges;for(e in t)i=t[e],n=s[e],s[e]=n=n||{min:Y,max:Z},n.min=Math.min(n.min,i.min),n.max=Math.max(n.max,i.max)},reset:function(t){this.axisRanges[t]=void 0},query:function(t){return this.axisRanges[t]}}),Qi=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.textBox=new Ct(t,this.options),this.append(this.textBox)},createVisual:function(){this.textBox.options.noclip=this.options.noclip},reflow:function(t){var e=this.options,i=e.vertical,n=e.aboveAxis,s=this.children[0],o=s.options,r=s.box,a=s.options.padding,h=t;o.align=i?K:J,o.vAlign=i?Q:K,e.position===bi?i?(o.vAlign=Q,!n&&r.height()<t.height()&&(o.vAlign=$)):o.align=n?st:J:e.position===K?(o.vAlign=K,o.align=K):e.position===Ai?i?o.vAlign=n?$:Q:o.align=n?J:st:e.position===Ci&&(i?h=n?new gt(t.x1,t.y1-r.height(),t.x2,t.y1):new gt(t.x1,t.y2,t.x2,t.y2+r.height()):(o.align=K,h=n?new gt(t.x2,t.y1,t.x2+r.width(),t.y2):new gt(t.x1-r.width(),t.y1,t.x1,t.y2))),e.rotation||(i?a.left=a.right=(h.width()-s.contentBox.width())/2:a.top=a.bottom=(h.height()-s.contentBox.height())/2),s.reflow(h)},alignToClipBox:function(t){var e,i=this.options.vertical,n=i?it:nt,s=n+"1",o=n+"2",r=this.children[0],a=this.parent.box;(a[s]<t[s]||t[o]<a[o])&&(e=r.paddingBox.clone(),e[s]=Math.max(a[s],t[s]),e[o]=Math.min(a[o],t[o]),this.reflow(e))}}),vt(Qi,{position:Ci,margin:kt(3),padding:kt(4),color:ot,background:"",border:{width:1,color:""},aboveAxis:!0,vertical:!1,animation:{type:ce,delay:le},zIndex:2}),$i=6,Ji=pt.extend({init:function(t,e){pt.fn.init.call(this),this.options=e,this.color=e.color||tt,this.aboveAxis=yt(this.options.aboveAxis,!0),this.value=t},render:function(){this._rendered||(this._rendered=!0,this.createLabel(),this.createNote(),this.errorBar&&this.append(this.errorBar))},createLabel:function(){var t,e,i=this.options,n=i.labels;n.visible&&(t=At(n),e=t?t({dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,stackValue:this.stackValue,runningTotal:this.runningTotal,total:this.total,series:this.series}):this.formatValue(n.format),this.label=new Qi(e,wt({vertical:i.vertical},n)),this.append(this.label))},formatValue:function(t){return this.owner.formatPointValue(this,t)},reflow:function(t){var e,i,n=this;if(this.render(),e=this.label,this.box=t,e&&(e.options.aboveAxis=this.aboveAxis,e.reflow(t)),this.note&&this.note.reflow(t),this.errorBars)for(i=0;i<this.errorBars.length;i++)n.errorBars[i].reflow(t)},createVisual:function(){var t,e=this,i=this,n=i.box,s=i.options,o=s.visual;this.visible!==!1&&(pt.fn.createVisual.call(this),o?(t=this.rectVisual=o({category:this.category,dataItem:this.dataItem,value:this.value,sender:this.getSender(),series:this.series,percentage:this.percentage,stackValue:this.stackValue,runningTotal:this.runningTotal,total:this.total,rect:n.toRect(),createVisual:function(){var t=new Zt;return e.createRect(t),t},options:s}),t&&this.visual.append(t)):n.width()>0&&n.height()>0&&this.createRect(this.visual))},createRect:function(t){var e,i,n,s,o,a=this.options,h=a.border,l=lt(h.opacity)?h.opacity:a.opacity,c=this.box.toRect();c.size.width=Math.round(c.size.width),e=this.rectVisual=Ut.fromRect(c,{fill:{color:this.color,opacity:a.opacity},stroke:{color:this.getBorderColor(),width:h.width,opacity:l,dashType:h.dashType}}),i=this.box.width(),n=this.box.height(),s=a.vertical?i:n,s>$i&&(ft(e),(i<1||n<1)&&(e.options.stroke.lineJoin="round")),t.append(e),r(a)&&(o=this.createGradientOverlay(e,{baseColor:this.color},wt({end:a.vertical?void 0:[0,1]},a.overlay)),t.append(o))},createHighlight:function(t){var e=Ut.fromRect(this.box.toRect(),t);return ft(e)},highlightVisual:function(){return this.rectVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this.rectVisual}},getBorderColor:function(){var t=this.color,e=this.options.border,i=e._brightness||pe,n=e.color;return lt(n)||(n=new jt(t).brightness(i).toHex()),n},tooltipAnchor:function(){var t,e,i,n,s=this,o=s.options,r=s.box,a=s.aboveAxis,h=this.owner.pane.clipBox()||r,l=J,c=Q;return o.vertical?(t=Math.min(r.x2,h.x2)+de,a?e=Math.max(r.y1,h.y1):(e=Math.min(r.y2,h.y2),c=$)):(i=Math.max(r.x1,h.x1),n=Math.min(r.x2,h.x2),o.isStacked?(c=$,a?(l=st,t=n):t=i,e=Math.max(r.y1,h.y1)-de):(a?t=n+de:(t=i-de,l=st),e=Math.max(r.y1,h.y1))),{point:new dt(t,e),align:{horizontal:l,vertical:c}}},overlapsBox:function(t){return this.box.overlaps(t)}}),wt(Ji.prototype,Mi),wt(Ji.prototype,Li),Ji.prototype.defaults={border:{width:1},vertical:!0,overlay:{gradient:"glass"},labels:{visible:!1,format:"{0}"},opacity:1,notes:{label:{}}},tn=pt.extend({reflow:function(t){var e,i,n=this.options,s=n.vertical,o=n.gap,r=n.spacing,a=this.children,h=a.length,l=s?it:nt,c=h+o+r*(h-1),u=(s?t.height():t.width())/c,p=t[l+1]+u*(o/2);for(e=0;e<h;e++)i=(a[e].box||t).clone(),i[l+1]=p,i[l+2]=p+u,a[e].reflow(i),e<h-1&&(p+=u*r),p+=u}}),vt(tn,{vertical:!1,gap:0,spacing:0}),en=pt.extend({reflow:function(t){var e,i,n,s=this,o=this.options.vertical?nt:it,r=this.children,a=r.length,h=this.box=new gt;for(e=0;e<a;e++)i=r[e],i.visible!==!1&&(n=i.box.clone(),n.snapTo(t,o),0===e&&(h=s.box=n.clone()),i.reflow(n),h.wrap(n))}}),vt(en,{vertical:!0}),nn=Vi.extend({render:function(){Vi.fn.render.call(this),this.updateStackRange()},pointType:function(){return Ji},clusterType:function(){return tn},stackType:function(){return en},stackLimits:function(t,e){var i=Vi.fn.stackLimits.call(this,t,e);return i},createPoint:function(t,e){var i,n,s,o,r,a,h=e.categoryIx,l=e.category,c=e.series,u=e.seriesIx,p=this,d=p.options,g=p.children,f=d.isStacked,v=this.pointValue(t),x=this.pointOptions(c,u),m=x.labels;return f&&m.position===Ci&&(m.position=bi),x.isStacked=f,i=t.fields.color||c.color,v<0&&x.negativeColor&&(i=x.negativeColor),x=this.evalPointOptions(x,v,l,h,c,u),mt(c.color)&&(i=x.color),n=this.pointType(),s=new n(v,x),s.color=i,o=g[h],o||(r=this.clusterType(),o=new r({vertical:d.invertAxes,gap:d.gap,spacing:d.spacing}),this.append(o)),f?(a=this.getStackWrap(c,o),a.append(s)):o.append(s),s},getStackWrap:function(t,e){var i,n,s,o=t.stack,r=o?o.group||o:o,a=e.children;if(typeof r===X.STRING){for(n=0;n<a.length;n++)if(a[n]._stackGroup===r){i=a[n];break}}else i=a[0];return i||(s=this.stackType(),i=new s({vertical:!this.options.invertAxes}),i._stackGroup=r,e.append(i)),i},categorySlot:function(t,e,i){var n,s,o=this.options,r=t.getSlot(e),a=i.startValue();return o.isStacked&&(n=i.getSlot(a,a,!0),s=o.invertAxes?nt:it,r[s+1]=r[s+2]=n[s+1]),r},reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},createAnimation:function(){this._setAnimationOptions(),Vi.fn.createAnimation.call(this),o(this.options.series)&&this._setChildrenAnimation()},_setChildrenAnimation:function(){var t,e,i,n=this,s=this.points;for(t=0;t<s.length;t++)e=s[t],i=e.visual,i&<(i.options.zIndex)&&(e.options.animation=n.options.animation,e.createAnimation())},_setAnimationOptions:function(){var t,e,i=this.options,n=i.animation||{};i.isStacked?(e=this.seriesValueAxis(i.series[0]),t=e.getSlot(e.startValue())):t=this.categoryAxis.getSlot(0),n.origin=new Qt(t.x1,t.y1),n.vertical=!i.invertAxes}}),vt(nn,{animation:{type:Pe}}),sn=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.value=t},reflow:function(t){var e,i,n=this,s=n.options,o=n.value,r=n.owner,a=r.seriesValueAxis(s),h=a.getSlot(o.open,o.close),l=a.getSlot(o.low,o.high);h.x1=l.x1=t.x1,h.x2=l.x2=t.x2,this.realBody=h,e=l.center().x,i=[],i.push([[e,l.y1],[e,h.y1]]),i.push([[e,h.y2],[e,l.y2]]),this.lines=i,this.box=l.clone().wrap(h),this._rendered||(this._rendered=!0,this.createNote()),this.reflowNote()},reflowNote:function(){this.note&&this.note.reflow(this.box)},createVisual:function(){pt.fn.createVisual.call(this),this._mainVisual=this.mainVisual(this.options),this.visual.append(this._mainVisual),this.createOverlay()},mainVisual:function(t){var e=new Zt;return this.createBody(e,t),this.createLines(e,t),e},createBody:function(t,e){var i=Ut.fromRect(this.realBody.toRect(),{fill:{color:this.color,opacity:e.opacity},stroke:null});e.border.width>0&&i.options.set("stroke",{color:this.getBorderColor(),width:e.border.width,dashType:e.border.dashType,opacity:yt(e.border.opacity,e.opacity)}),ft(i),t.append(i),r(e)&&t.append(this.createGradientOverlay(i,{baseColor:this.color},wt({end:e.vertical?void 0:[0,1]},e.overlay)))},createLines:function(t,e){this.drawLines(t,e,this.lines,e.line)},drawLines:function(t,e,i,n){var s,o,r;if(i)for(s={stroke:{color:n.color||this.color,opacity:yt(n.opacity,e.opacity),width:n.width,dashType:n.dashType,lineCap:"butt"}},o=0;o<i.length;o++)r=Ut.fromPoints(i[o],s),ft(r),t.append(r)},getBorderColor:function(){var t=this.options.border,e=t.color;return lt(e)||(e=new jt(this.color).brightness(t._brightness).toHex()),e},createOverlay:function(){var t=Ut.fromRect(this.box.toRect(),{fill:{color:tt,opacity:0},stroke:null});this.visual.append(t)},createHighlight:function(){var t,e=this.options.highlight,i=this.color;return this.color=e.color||this.color,t=this.mainVisual(wt({},this.options,{line:{color:this.getBorderColor()}},e)),this.color=i,t},highlightVisual:function(){return this._mainVisual},highlightVisualArgs:function(){return{options:this.options,rect:this.box.toRect(),visual:this._mainVisual}},tooltipAnchor:function(){var t=this.box,e=this.owner.pane.clipBox()||t;return{point:new dt(t.x2+de,Math.max(t.y1,e.y1)+de),align:{horizontal:J,vertical:Q}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){return this.box.overlaps(t)}}),vt(sn,{vertical:!0,border:{_brightness:.8},line:{width:2},overlay:{gradient:"glass"},tooltip:{format:"<table><tr><th colspan='2'>{4:d}</th></tr><tr><td>Open:</td><td>{0:C}</td></tr><tr><td>High:</td><td>{1:C}</td></tr><tr><td>Low:</td><td>{2:C}</td></tr><tr><td>Close:</td><td>{3:C}</td></tr></table>"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}}}),wt(sn.prototype,Mi),wt(sn.prototype,Li),on=Vi.extend({reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},addValue:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,h=e.seriesIx,l=this,c=l.children,u=l.options,p=t.valueFields,d=this.splitValue(p),g=a(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=c[s],n||(n=new tn({vertical:u.invertAxes,gap:u.gap,spacing:u.spacing}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=h,i.owner=this,i.dataItem=f,i.noteText=t.fields.noteText),this.points.push(i),v.push(i)},pointType:function(){return sn},createPoint:function(t,e){var i,n=e.categoryIx,s=e.category,o=e.series,r=e.seriesIx,a=this.pointType(),h=t.valueFields,l=wt({},o),c=t.fields.color||o.color;return l=this.evalPointOptions(l,h,s,n,o,r),o.type===Ve&&h.open>h.close&&(c=t.fields.downColor||o.downColor||o.color),mt(o.color)&&(c=l.color),l.vertical=!this.options.invertAxes,i=new a(h,l),i.color=c,i},splitValue:function(t){return[t.low,t.open,t.close,t.high]},updateRange:function(t,e){var i=e.series.axis,n=this.splitValue(t),s=this.valueAxisRanges[i];s=this.valueAxisRanges[i]=s||{min:Y,max:Z},s=this.valueAxisRanges[i]={min:Math.min.apply(Math,n.concat([s.min])),max:Math.max.apply(Math,n.concat([s.max]))}},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.open,i.high,i.low,i.close,t.category)},animationPoints:function(){return this.points}}),wt(on.prototype,qi),rn=sn.extend({init:function(t,e){sn.fn.init.call(this,t,e),this.createNote()},reflow:function(t){var e,i,n,s,o=this,r=o.options,a=o.value,h=o.owner,l=h.seriesValueAxis(r);this.boxSlot=i=l.getSlot(a.q1,a.q3),this.realBody=i,this.reflowBoxSlot(t),this.whiskerSlot=e=l.getSlot(a.lower,a.upper),this.reflowWhiskerSlot(t),n=l.getSlot(a.median),a.mean&&(s=l.getSlot(a.mean),this.meanPoints=this.calcMeanPoints(t,s)),this.whiskerPoints=this.calcWhiskerPoints(i,e),this.medianPoints=this.calcMedianPoints(t,n),this.box=e.clone().wrap(i),this.reflowNote()},reflowBoxSlot:function(t){this.boxSlot.x1=t.x1,this.boxSlot.x2=t.x2},reflowWhiskerSlot:function(t){this.whiskerSlot.x1=t.x1,this.whiskerSlot.x2=t.x2},calcMeanPoints:function(t,e){return[[[t.x1,e.y1],[t.x2,e.y1]]]},calcWhiskerPoints:function(t,e){var i=e.center().x;return[[[i-5,e.y1],[i+5,e.y1],[i,e.y1],[i,t.y1]],[[i-5,e.y2],[i+5,e.y2],[i,e.y2],[i,t.y2]]]},calcMedianPoints:function(t,e){return[[[t.x1,e.y1],[t.x2,e.y1]]]},renderOutliers:function(t){var e,i,n,s,o=this,r=this.value,a=r.outliers||[],h=3*Math.abs(r.q3-r.q1),l=[],c=t.markers||{};for(e=0;e<a.length;e++)i=a[e],c=i<r.q3+h&&i>r.q1-h?t.outliers:t.extremes,n=wt({},c.border),lt(n.color)||(n.color=lt(o.color)?o.color:new jt(c.background).brightness(pe).toHex()),s=new St({type:c.type,width:c.size,height:c.size,rotation:c.rotation,background:c.background,border:n,opacity:c.opacity}),s.value=i,l.push(s);return this.reflowOutliers(l),l},reflowOutliers:function(t){var e,i,n,s=this,o=this.owner.seriesValueAxis(this.options),r=this.box.center();for(e=0;e<t.length;e++)i=t[e].value,n=o.getSlot(i),s.options.vertical?n.move(r.x):n.move(void 0,r.y),s.box=s.box.wrap(n),t[e].reflow(n)},mainVisual:function(t){var e,i,n=sn.fn.mainVisual.call(this,t),s=this.renderOutliers(t);for(e=0;e<s.length;e++)i=s[e].getElement(),i&&n.append(i);return n},createLines:function(t,e){this.drawLines(t,e,this.whiskerPoints,e.whiskers),this.drawLines(t,e,this.medianPoints,e.median),this.drawLines(t,e,this.meanPoints,e.mean)},getBorderColor:function(){return this.color?this.color:sn.fn.getBorderColor.call(this)}}),vt(rn,{border:{_brightness:.8},line:{width:2},median:{color:"#f6f6f6"},mean:{width:2,dashType:"dash",color:"#f6f6f6"},overlay:{gradient:"glass"},tooltip:{format:"<table><tr><th colspan='2'>{6:d}</th></tr><tr><td>Lower:</td><td>{0:C}</td></tr><tr><td>Q1:</td><td>{1:C}</td></tr><tr><td>Median:</td><td>{2:C}</td></tr><tr><td>Mean:</td><td>{5:C}</td></tr><tr><td>Q3:</td><td>{3:C}</td></tr><tr><td>Upper:</td><td>{4:C}</td></tr></table>"},highlight:{opacity:1,border:{width:1,opacity:1},line:{width:1,opacity:1}},notes:{visible:!0,label:{}},outliers:{visible:!0,size:we,type:X.CROSS,background:tt,border:{width:2,opacity:1},opacity:0},extremes:{visible:!0,size:we,type:et,background:tt,border:{width:2,opacity:1},opacity:0}}),wt(rn.prototype,Mi),an=rn.extend({reflowBoxSlot:function(t){this.boxSlot.y1=t.y1,this.boxSlot.y2=t.y2},reflowWhiskerSlot:function(t){this.whiskerSlot.y1=t.y1,this.whiskerSlot.y2=t.y2},calcMeanPoints:function(t,e){return[[[e.x1,t.y1],[e.x1,t.y2]]]},calcWhiskerPoints:function(t,e){var i=e.center().y;return[[[e.x1,i-5],[e.x1,i+5],[e.x1,i],[t.x1,i]],[[e.x2,i-5],[e.x2,i+5],[e.x2,i],[t.x2,i]]]},calcMedianPoints:function(t,e){return[[[e.x1,t.y1],[e.x1,t.y2]]]}}),hn=on.extend({addValue:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,h=e.seriesIx,l=this,c=l.children,u=l.options,p=t.valueFields,d=this.splitValue(p),g=a(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=c[s],n||(n=new tn({vertical:u.invertAxes,gap:u.gap,spacing:u.spacing}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=h,i.owner=this,i.dataItem=f),this.points.push(i),v.push(i)},pointType:function(){return this.options.invertAxes?an:rn},splitValue:function(t){return[t.lower,t.q1,t.median,t.q3,t.upper]},updateRange:function(t,e){var i=e.series.axis,n=this.valueAxisRanges[i],s=this.splitValue(t).concat(this.filterOutliers(t.outliers));lt(t.mean)&&(s=s.concat(t.mean)),n=this.valueAxisRanges[i]=n||{min:Y,max:Z},n=this.valueAxisRanges[i]={min:Math.min.apply(Math,s.concat([n.min])),max:Math.max.apply(Math,s.concat([n.max]))}},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.lower,i.q1,i.median,i.q3,i.upper,i.mean,t.category)},filterOutliers:function(t){var e,i,n=(t||[]).length,s=[];for(e=0;e<n;e++)i=t[e],lt(i)&&null!==i&&s.push(i);return s}}),ln=Ri.extend({getAxis:function(){var t=this.chart.seriesAxes(this.series),e=this.isVertical?t.y:t.x;return e}}),cn=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this._initFields(),this.render()},_initFields:function(){this.xAxisRanges={},this.yAxisRanges={},this.points=[],this.seriesPoints=[],this.seriesOptions=[],this._evalSeries=[]},render:function(){this.traverseDataPoints(this.addValue.bind(this))},addErrorBar:function(t,e,i){var n,s=t.value[e],o=e+"Value",r=e+"ErrorLow",a=e+"ErrorHigh",h=i.seriesIx,l=i.series,c=t.options.errorBars,u=i[r],p=i[a];U(s)&&(U(u)&&U(p)&&(n={low:u,high:p}),c&<(c[o])&&(this.seriesErrorRanges=this.seriesErrorRanges||{x:[],y:[]},this.seriesErrorRanges[e][h]=this.seriesErrorRanges[e][h]||new ae(c[o],l,e),n=this.seriesErrorRanges[e][h].getErrorRange(s,c[o])),n&&this.addPointErrorBar(n,t,e))},addPointErrorBar:function(t,e,i){var n,s=t.low,o=t.high,r=e.series,a=e.options.errorBars,h=i===it,l={};e[i+"Low"]=s,e[i+"High"]=o,e.errorBars=e.errorBars||[],n=new ln(s,o,h,this,r,a),e.errorBars.push(n),e.append(n),l[i]=s,this.updateRange(l,r),l[i]=o,this.updateRange(l,r)},addValue:function(e,i){var n,s=e.x,o=e.y,r=i.seriesIx,a=this.options.series[r],l=this.seriesMissingValues(a),c=this.seriesPoints[r],u=e;h(s)&&h(o)||(u=this.createMissingValue(u,l)),u&&(n=this.createPoint(u,i),n&&(t.extend(n,i),this.addErrorBar(n,nt,i),this.addErrorBar(n,it,i)),this.updateRange(u,i.series)),this.points.push(n),c.push(n)},seriesMissingValues:function(t){return t.missingValues},createMissingValue:function(){},updateRange:function(t,e){var i=this.chartService.intl,n=e.xAxis,s=e.yAxis,o=t.x,r=t.y,a=this.xAxisRanges[n],l=this.yAxisRanges[s];h(o)&&(a=this.xAxisRanges[n]=a||{min:Y,max:Z},It(o)&&(o=Et(i,o)),a.min=Math.min(a.min,o),a.max=Math.max(a.max,o)),h(r)&&(l=this.yAxisRanges[s]=l||{min:Y,max:Z},It(r)&&(r=Et(i,r)),l.min=Math.min(l.min,r),l.max=Math.max(l.max,r))},evalPointOptions:function(t,e,i){var s,o=i.series,r=i.seriesIx,a={defaults:o._defaults,excluded:["data","tooltip","content","template","visual","toggle","_outOfRangeMinPoint","_outOfRangeMaxPoint"]},h=this._evalSeries[r];return lt(h)||(this._evalSeries[r]=h=n(t,{},a,!0)),s=t,h&&(s=wt({},t),n(s,{value:e,series:o,dataItem:i.dataItem},a)),s},pointType:function(){return zi},pointOptions:function(t,e){var i,n=this.seriesOptions[e];return n||(i=this.pointType().prototype.defaults,this.seriesOptions[e]=n=wt({},i,{markers:{opacity:t.opacity},tooltip:{format:this.options.tooltip.format},labels:{format:this.options.labels.format}},t)),n},createPoint:function(t,e){var i,n=e.series,s=this.pointOptions(n,e.seriesIx),o=e.color||n.color;return s=this.evalPointOptions(s,t,e),mt(n.color)&&(o=s.color),i=new zi(t,s),i.color=o,this.append(i),i},seriesAxes:function(t){var e=t.xAxis,i=t.yAxis,n=this.plotArea,s=e?n.namedXAxes[e]:n.axisX,o=i?n.namedYAxes[i]:n.axisY;if(!s)throw Error("Unable to locate X axis with name "+e);if(!o)throw Error("Unable to locate Y axis with name "+i);return{x:s,y:o}},reflow:function(t){var e=this,i=this.points,n=!this.options.clip,s=0;this.traverseDataPoints(function(t,o){var r,a=i[s++],h=e.seriesAxes(o.series),l=h.x.getSlot(t.x,t.x,n),c=h.y.getSlot(t.y,t.y,n);a&&(l&&c?(r=e.pointSlot(l,c),a.reflow(r)):a.visible=!1)}),this.box=t},pointSlot:function(t,e){return new gt(t.x1,e.y1,t.x2,e.y2)},traverseDataPoints:function(t){var e,i,n,s,o,r,a,h=this,l=this,c=l.options.series,u=l.seriesPoints;for(e=0;e<c.length;e++)for(i=c[e],n=u[e],n||(u[e]=[]),s=0;s<i.data.length;s++)o=h._bindPoint(i,e,s),r=o.valueFields,a=o.fields,t(r,wt({pointIx:s,series:i,seriesIx:e,dataItem:i.data[s],owner:h},a))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.x,i.y)},animationPoints:function(){var t,e=this.points,i=[];for(t=0;t<e.length;t++)i.push((e[t]||{}).marker);return i}}),vt(cn,{series:[],tooltip:{format:"{0}, {1}"},labels:{format:"{0}, {1}"},clip:!0}),wt(cn.prototype,qi,{_bindPoint:Vi.prototype._bindPoint}),un=zi.extend({init:function(t,e){zi.fn.init.call(this,t,e),this.category=t.category},createHighlight:function(){var t=this.options.highlight,e=t.border,i=this.options.markers,n=this.box.center(),s=(i.size+i.border.width+e.width)/2,o=new Zt,r=new Wt.Circle(new Kt.Circle([n.x,n.y+s/5+e.width/2],s+e.width/2),{stroke:{color:"none"},fill:this.createGradient({gradient:"bubbleShadow",color:i.background,stops:[{offset:0,color:i.background,opacity:.3},{offset:1,color:i.background,opacity:0}]})}),a=new Wt.Circle(new Kt.Circle([n.x,n.y],s),{stroke:{color:e.color||new jt(i.background).brightness(pe).toHex(),width:e.width,opacity:e.opacity},fill:{color:i.background,opacity:t.opacity}});return o.append(r,a),o}}),un.prototype.defaults=wt({},un.prototype.defaults,{labels:{position:K},highlight:{opacity:1,border:{color:"#fff",width:2,opacity:1}}}),pn=cn.extend({_initFields:function(){this._maxSize=Z,cn.fn._initFields.call(this)},addValue:function(t,e){null!==t.size&&(t.size>0||t.size<0&&e.series.negativeValues.visible)?(this._maxSize=Math.max(this._maxSize,Math.abs(t.size)),cn.fn.addValue.call(this,t,e)):(this.points.push(null),this.seriesPoints[e.seriesIx].push(null))},reflow:function(t){this.updateBubblesSize(t),cn.fn.reflow.call(this,t)},pointType:function(){return un},createPoint:function(t,e){var i,n,s=e.series,o=s.data.length,r=e.pointIx*(le/o),a={delay:r,duration:le-r,type:Ie},h=e.color||s.color;return t.size<0&&s.negativeValues.visible&&(h=yt(s.negativeValues.color,h)),i=wt({labels:{animation:{delay:r,duration:le-r}}},this.pointOptions(s,e.seriesIx),{markers:{type:et,border:s.border,opacity:s.opacity,animation:a}}),i=this.evalPointOptions(i,t,e),mt(s.color)&&(h=i.color),i.markers.background=h,n=new un(t,i),n.color=h,this.append(n),n},updateBubblesSize:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m=this,y=this,_=y.options.series,w=Math.min(t.width(),t.height());for(e=0;e<_.length;e++)for(i=_[e],n=m.seriesPoints[e],s=i.minSize||Math.max(.02*w,10),o=i.maxSize||.2*w,r=s/2,a=o/2,h=Math.PI*r*r,l=Math.PI*a*a,c=l-h,u=c/m._maxSize,p=0;p<n.length;p++)d=n[p],d&&(g=Math.abs(d.value.size)*u,f=Math.sqrt((h+g)/Math.PI),v=yt(d.options.zIndex,0),x=v+(1-f/a),wt(d.options,{zIndex:x,markers:{size:2*f,zIndex:x},labels:{zIndex:x+1}}))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.x,i.y,i.size,t.category)},createAnimation:function(){},createVisual:function(){}}),vt(pn,{tooltip:{format:"{3}"},labels:{format:"{3}"}}),dn=St.extend({}),wt(dn.prototype,Mi),gn=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.aboveAxis=this.options.aboveAxis,this.color=e.color||tt,this.value=t},render:function(){var t=this.options;this._rendered||(this._rendered=!0,lt(this.value.target)&&(this.target=new dn({type:t.target.shape,background:t.target.color||this.color,opacity:t.opacity,zIndex:t.zIndex,border:t.target.border,vAlign:Q,align:st}),this.target.value=this.value,this.target.dataItem=this.dataItem,this.target.series=this.series,this.append(this.target)),this.createNote())},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u;this.render(),e=this,i=e.options,n=e.target,s=e.owner,o=i.invertAxes,r=s.seriesValueAxis(this.options),a=s.categorySlot(s.categoryAxis,i.categoryIx,r),h=r.getSlot(this.value.target),l=o?h:a,c=o?a:h,n&&(u=new gt(l.x1,c.y1,l.x2,c.y2),n.options.height=o?u.height():i.target.line.width,n.options.width=o?i.target.line.width:u.width(),n.reflow(u)),this.note&&this.note.reflow(t),this.box=t},createVisual:function(){var t,e;pt.fn.createVisual.call(this),t=this.options,e=Ut.fromRect(this.box.toRect(),{fill:{color:this.color,opacity:t.opacity},stroke:null}),t.border.width>0&&e.options.set("stroke",{color:t.border.color||this.color,width:t.border.width,dashType:t.border.dashType,opacity:yt(t.border.opacity,t.opacity)}),this.bodyVisual=e,ft(e),this.visual.append(e)},createAnimation:function(){this.bodyVisual&&(this.animation=Xt.create(this.bodyVisual,this.options.animation))},createHighlight:function(t){return Ut.fromRect(this.box.toRect(),t)},highlightVisual:function(){return this.bodyVisual},highlightVisualArgs:function(){return{rect:this.box.toRect(),visual:this.bodyVisual,options:this.options}},formatValue:function(t){return this.owner.formatPointValue(this,t)}}),gn.prototype.tooltipAnchor=Ji.prototype.tooltipAnchor,vt(gn,{border:{width:1},vertical:!1,opacity:1,target:{shape:"",border:{width:0,color:"green"},line:{width:2}},tooltip:{format:"Current: {0}<br />Target: {1}"}}),wt(gn.prototype,Mi),wt(gn.prototype,Li),fn=Vi.extend({init:function(t,e){l(e),Vi.fn.init.call(this,t,e)},reflowCategories:function(t){var e,i=this.children,n=i.length;for(e=0;e<n;e++)i[e].reflow(t[e])},plotRange:function(t){var e=t.series,i=this.seriesValueAxis(e),n=this.categoryAxisCrossingValue(i);return[n,t.value.current||n]},createPoint:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,a=e.seriesIx,h=this,l=h.options,c=h.children,u=t.valueFields,p=wt({vertical:!l.invertAxes,overlay:r.overlay,categoryIx:s,invertAxes:l.invertAxes},r),d=t.fields.color||r.color;return p=this.evalPointOptions(p,u,o,s,r,a),mt(r.color)&&(d=p.color),i=new gn(u,p),i.color=d,n=c[s],n||(n=new tn({vertical:l.invertAxes,gap:l.gap,spacing:l.spacing}),this.append(n)),n.append(i),i},updateRange:function(t,e){var i=t.current,n=t.target,s=e.series.axis,o=this.valueAxisRanges[s];lt(i)&&!isNaN(i)&<(n&&!isNaN(n))&&(o=this.valueAxisRanges[s]=o||{min:Y,max:Z},o.min=Math.min(o.min,i,n),o.max=Math.max(o.max,i,n))},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value.current,t.value.target)},pointValue:function(t){return t.valueFields.current},aboveAxis:function(t){var e=t.value.current;return e>0},createAnimation:function(){var t,e,i=this,n=this.points;for(this._setAnimationOptions(),t=0;t<n.length;t++)e=n[t],e.options.animation=i.options.animation,e.createAnimation()}}),fn.prototype._setAnimationOptions=nn.prototype._setAnimationOptions,vt(fn,{animation:{type:Pe}}),vn=W.extend({init:function(t,e){this.chartService=t,this.options=wt({},this.options,e)},getStyle:function(t,e){var i,n,s=t.background,o=t.border.color;return e&&(i=e.color||e.options.color,s=yt(s,i),o=yt(o,i)),n=kt(t.padding||{},"auto"),{backgroundColor:s,borderColor:o,font:t.font,color:t.color,opacity:t.opacity,borderWidth:Vt(t.border.width),paddingTop:Vt(n.top),paddingBottom:Vt(n.bottom),paddingLeft:Vt(n.left),paddingRight:Vt(n.right)}},show:function(t,e,i){t.format=e.format;var n=this.getStyle(e,i);t.style=n,!lt(e.color)&&new jt(n.backgroundColor).percBrightness()>180&&(t.className="k-chart-tooltip-inverse"),this.chartService.notify(mi,t)},hide:function(){this.chartService&&this.chartService.notify(yi)},destroy:function(){delete this.chartService}}),vt(vn,{border:{width:1},opacity:1}),xn=vn.extend({init:function(t,e,i){vn.fn.init.call(this,t,i),this.crosshair=e,this.formatService=t.format,this.initAxisName()},initAxisName:function(){var t,e=this.crosshair.axis,i=e.plotArea;t=i.categoryAxis?e.getCategory?"categoryAxis":"valueAxis":e.options.vertical?"yAxis":"xAxis",this.axisName=t},showAt:function(t){var e=this,i=e.crosshair.axis,n=e.options,s=i[n.stickyMode?"getCategory":"getValue"](t),o=s;n.format?o=this.formatService.auto(n.format,s):i.options.type===rt&&(o=this.formatService.auto(i.options.labels.dateFormats[i.options.baseUnit],s)),this.show({point:t,anchor:this.getAnchor(),crosshair:this.crosshair,value:o,axisName:this.axisName,axisIndex:this.crosshair.axis.axisIndex},this.options)},hide:function(){this.chartService.notify(yi,{crosshair:this.crosshair,axisName:this.axisName,axisIndex:this.crosshair.axis.axisIndex
})},getAnchor:function(){var t,e,i,n=this,s=n.crosshair,o=n.options,r=o.position,a=o.padding,h=!s.axis.options.vertical,l=s.line.bbox();return h?(t=K,r===$?(e=Q,i=l.bottomLeft().translate(0,a)):(e=$,i=l.topLeft().translate(0,-a))):(e=K,r===J?(t=st,i=l.topLeft().translate(-a,0)):(t=J,i=l.topRight().translate(a,0))),{point:i,align:{horizontal:t,vertical:e}}}}),vt(xn,{padding:10}),mn=pt.extend({init:function(t,e,i){pt.fn.init.call(this,i),this.axis=e,this.stickyMode=e instanceof Mt;var n=this.options.tooltip;n.visible&&(this.tooltip=new xn(t,this,wt({},n,{stickyMode:this.stickyMode})))},showAt:function(t){this.point=t,this.moveLine(),this.line.visible(!0),this.tooltip&&this.tooltip.showAt(t)},hide:function(){this.line.visible(!1),this.tooltip&&this.tooltip.hide()},moveLine:function(){var t,e,i=this,n=i.axis,s=i.point,o=n.options.vertical,r=this.getBox(),a=o?it:nt,h=new Qt(r.x1,r.y1);t=o?new Qt(r.x2,r.y1):new Qt(r.x1,r.y2),s&&(this.stickyMode?(e=n.getSlot(n.pointCategoryIndex(s)),h[a]=t[a]=e.center()[a]):h[a]=t[a]=s[a]),this.box=r,this.line.moveTo(h).lineTo(t)},getBox:function(){var t,e,i,n=this.axis,s=n.pane.axes,o=s.length,r=n.options.vertical,a=n.lineBox().clone(),h=r?nt:it;for(e=0;e<o;e++)i=s[e],i.options.vertical!==r&&(t?t.wrap(i.lineBox()):t=i.lineBox().clone());return a[h+1]=t[h+1],a[h+2]=t[h+2],a},createVisual:function(){pt.fn.createVisual.call(this);var t=this.options;this.line=new Ut({stroke:{color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType},visible:!1}),this.moveLine(),this.visual.append(this.line)},destroy:function(){this.tooltip&&this.tooltip.destroy(),pt.fn.destroy.call(this)}}),vt(mn,{color:ot,width:2,zIndex:-1,tooltip:{visible:!1}}),yn=pt.extend({init:function(t,e){pt.fn.init.call(this,t),this.pane=e},shouldClip:function(){var t,e=this.children,i=e.length;for(t=0;t<i;t++)if(e[t].options.clip===!0)return!0;return!1},_clipBox:function(){return this.pane.chartsBox()},createVisual:function(){var t,e,i;this.visual=new Zt({zIndex:0}),this.shouldClip()&&(t=this.clipBox=this._clipBox(),e=t.toRect(),i=Ut.fromRect(e),this.visual.clip(i),this.unclipLabels())},stackRoot:function(){return this},unclipLabels:function(){var t,e,i,n,s,o,r,a=this,h=a.children,l=a.clipBox;for(t=0;t<h.length;t++)for(e=h[t].points||{},i=e.length,n=0;n<i;n++)s=e[n],s&&s.visible!==!1&&s.overlapsBox&&s.overlapsBox(l)&&(o=s.label,r=s.note,o&&o.options.visible&&(o.alignToClipBox&&o.alignToClipBox(l),o.options.noclip=!0),r&&r.options.visible&&(r.options.noclip=!0))},destroy:function(){pt.fn.destroy.call(this),delete this.parent}}),yn.prototype.isStackRoot=!0,_n=Lt.extend({init:function(t){Lt.fn.init.call(this,t),this.id=c(),this.createTitle(),this.content=new pt,this.chartContainer=new yn({},this),this.append(this.content),this.axes=[],this.charts=[]},createTitle:function(){var t=this.options.title;_t(t)&&(t=wt({},t,{align:t.position,position:Q})),this.title=q.Title.buildTitle(t,this,_n.prototype.options.title)},appendAxis:function(t){this.content.append(t),this.axes.push(t),t.pane=this},appendChart:function(t){this.chartContainer.parent!==this.content&&this.content.append(this.chartContainer),this.charts.push(t),this.chartContainer.append(t),t.pane=this},empty:function(){var t,e,i=this,n=this.parent;if(n){for(t=0;t<this.axes.length;t++)n.removeAxis(i.axes[t]);for(e=0;e<this.charts.length;e++)n.removeChart(i.charts[e])}this.axes=[],this.charts=[],this.content.destroy(),this.content.children=[],this.chartContainer.children=[]},reflow:function(t){var e;Pt(this.children)===this.content&&(e=this.children.pop()),Lt.fn.reflow.call(this,t),e&&this.children.push(e),this.title&&(this.contentBox.y1+=this.title.box.height())},visualStyle:function(){var t=Lt.fn.visualStyle.call(this);return t.zIndex=-10,t},renderComplete:function(){this.options.visible&&this.createGridLines()},stackRoot:function(){return this},clipRoot:function(){return this},createGridLines:function(){var t,e,i,n,s,o,r=this.axes,a=r.concat(this.parent.axes),h=[],l=[];for(t=0;t<r.length;t++)for(e=r[t],i=e.options.vertical,n=i?h:l,s=0;s<a.length;s++)0===n.length&&(o=a[s],i!==o.options.vertical&&Rt(n,e.createGridLines(o)))},refresh:function(){this.visual.clear(),this.content.parent=null,this.content.createGradient=this.createGradient.bind(this),this.content.renderVisual(),this.content.parent=this,this.title&&this.visual.append(this.title.visual),this.visual.append(this.content.visual),this.renderComplete()},chartsBox:function(){var t,e,i,n,s,o,r,a,h,l=this.axes,c=l.length,u=new gt;for(t=0;t<c;t++)e=l[t],i=e.options.vertical?it:nt,n=e.lineBox(),u[i+1]=n[i+1],u[i+2]=n[i+2];if(0===u.x2)for(s=this.parent.axes,o=s.length,r=0;r<o;r++)a=s[r],a.options.vertical||(h=a.lineBox(),u.x1=h.x1,u.x2=h.x2);return u},clipBox:function(){return this.chartContainer.clipBox}}),wn=1,_n.prototype.isStackRoot=!0,vt(_n,{zIndex:-1,shrinkToFit:!0,title:{align:J},visible:!0}),bn=pt.extend({init:function(t,e,i){pt.fn.init.call(this,e),this.initFields(t,e),this.series=t,this.initSeries(),this.charts=[],this.options.legend.items=[],this.axes=[],this.crosshairs=[],this.chartService=i,this.createPanes(),this.render(),this.createCrosshairs()},initFields:function(){},initSeries:function(){var t,e=this.series;for(t=0;t<e.length;t++)e[t].index=t},createPanes:function(){function t(t,e){It(t.title)&&(t.title={text:t.title}),t.title=wt({},e.title,t.title)}var e,i,n,s=this,o={title:{color:(this.options.title||{}).color}},r=[],a=this.options.panes||[],h=Math.max(a.length,1);for(e=0;e<h;e++)i=a[e]||{},t(i,o),n=new _n(i),n.paneIndex=e,r.push(n),s.append(n);this.panes=r},createCrosshairs:function(t){var e,i,n,s,o,r=this;for(void 0===t&&(t=this.panes),e=0;e<t.length;e++)for(i=t[e],n=0;n<i.axes.length;n++)s=i.axes[n],s.options.crosshair&&s.options.crosshair.visible&&(o=new mn(r.chartService,s,s.options.crosshair),r.crosshairs.push(o),i.content.append(o))},removeCrosshairs:function(t){var e,i,n=this.crosshairs,s=t.axes;for(e=n.length-1;e>=0;e--)for(i=0;i<s.length;i++)if(n[e].axis===s[i]){n.splice(e,1);break}},hideCrosshairs:function(){var t,e=this.crosshairs;for(t=0;t<e.length;t++)e[t].hide()},findPane:function(t){var e,i,n=this.panes;for(i=0;i<n.length;i++)if(n[i].options.name===t){e=n[i];break}return e||n[0]},findPointPane:function(t){var e,i,n=this.panes;for(i=0;i<n.length;i++)if(n[i].box.containsPoint(t)){e=n[i];break}return e},appendAxis:function(t){var e=this.findPane(t.options.pane);e.appendAxis(t),this.axes.push(t),t.plotArea=this},removeAxis:function(t){var e,i,n=this,s=[];for(e=0;e<this.axes.length;e++)i=n.axes[e],t!==i?s.push(i):i.destroy();this.axes=s},appendChart:function(t,e){this.charts.push(t),e?e.appendChart(t):this.append(t)},removeChart:function(t){var e,i,n=this,s=[];for(e=0;e<this.charts.length;e++)i=n.charts[e],i!==t?s.push(i):i.destroy();this.charts=s},addToLegend:function(t){var e,i,n,s,o,r,a,h,l,c=t.length,u=this.options.legend,p=u.labels||{},d=u.inactiveItems||{},g=d.labels||{},f=[];for(e=0;e<c;e++)i=t[e],n=i.visible!==!1,i.visibleInLegend!==!1&&(s=i.name||"",o=n?At(p):At(g)||At(p),o&&(s=o({text:s,series:i})),r=i._defaults,a=i.color,mt(a)&&r&&(a=r.color),h=void 0,l=void 0,n?(h={},l=a):(h={color:g.color,font:g.font},l=d.markers.color),s&&f.push({text:s,labels:h,markerColor:l,series:i,active:n}));Rt(u.items,f)},groupAxes:function(t){var e,i,n,s,o=[],r=[];for(e=0;e<t.length;e++)for(i=t[e].axes,n=0;n<i.length;n++)s=i[n],s.options.vertical?r.push(s):o.push(s);return{x:o,y:r,any:o.concat(r)}},groupSeriesByPane:function(){var t,e,i,n=this,s=this.series,o={};for(t=0;t<s.length;t++)e=s[t],i=n.seriesPaneName(e),o[i]?o[i].push(e):o[i]=[e];return o},filterVisibleSeries:function(t){var e,i,n=[];for(e=0;e<t.length;e++)i=t[e],i.visible!==!1&&n.push(i);return n},reflow:function(t){var e=this.options.plotArea,i=this.panes,n=kt(e.margin);this.box=t.clone().unpad(n),this.reflowPanes(),this.reflowAxes(i),this.reflowCharts(i)},redraw:function(t){var e,i,n=this,s=[].concat(t);for(this.initSeries(),e=0;e<s.length;e++)n.removeCrosshairs(s[e]),s[e].empty();for(this.render(s),this.reflowAxes(this.panes),this.reflowCharts(s),this.createCrosshairs(s),i=0;i<s.length;i++)s[i].refresh()},axisCrossingValues:function(t,e){var i,n=t.options,s=[].concat(n.axisCrossingValues||n.axisCrossingValue),o=e.length-s.length,r=s[0]||0;for(i=0;i<o;i++)s.push(r);return s},alignAxisTo:function(t,e,i,n){var s=t.getSlot(i,i,!0),o=t.options.reverse?2:1,r=e.getSlot(n,n,!0),a=e.options.reverse?2:1,h=t.box.translate(r[nt+a]-s[nt+o],r[it+a]-s[it+o]);t.pane!==e.pane&&h.translate(0,t.pane.box.y1-e.pane.box.y1),t.reflow(h)},alignAxes:function(t,e){var i,n,s,o,r,a,h,l,c,u,d,g,f,v,x=this,m=t[0],y=e[0],_=this.axisCrossingValues(m,e),w=this.axisCrossingValues(y,t),b={},A={},C={},S={};for(i=0;i<e.length;i++)n=e[i],s=n.pane,o=s.id,r=n.options.visible!==!1,a=p(t,s)||m,h=_,a!==m&&(h=x.axisCrossingValues(a,e)),x.alignAxisTo(n,a,w[i],h[i]),n.options._overlap||(Bt(n.lineBox().x1)===Bt(a.lineBox().x1)&&(b[o]&&n.reflow(n.box.alignTo(b[o].box,J).translate(-n.options.margin,0)),r&&(b[o]=n)),Bt(n.lineBox().x2)===Bt(a.lineBox().x2)&&(n._mirrored||(n.options.labels.mirror=!n.options.labels.mirror,n._mirrored=!0),x.alignAxisTo(n,a,w[i],h[i]),A[o]&&n.reflow(n.box.alignTo(A[o].box,st).translate(n.options.margin,0)),r&&(A[o]=n)),0!==i&&y.pane===n.pane&&(n.alignTo(y),n.reflow(n.box)));for(l=0;l<t.length;l++)c=t[l],u=c.pane,d=u.id,g=c.options.visible!==!1,f=p(e,u)||y,v=w,f!==y&&(v=x.axisCrossingValues(f,t)),x.alignAxisTo(c,f,_[l],v[l]),c.options._overlap||(Bt(c.lineBox().y1)===Bt(f.lineBox().y1)&&(c._mirrored||(c.options.labels.mirror=!c.options.labels.mirror,c._mirrored=!0),x.alignAxisTo(c,f,_[l],v[l]),C[d]&&c.reflow(c.box.alignTo(C[d].box,Q).translate(0,-c.options.margin)),g&&(C[d]=c)),Bt(c.lineBox().y2,X.COORD_PRECISION)===Bt(f.lineBox().y2,X.COORD_PRECISION)&&(S[d]&&c.reflow(c.box.alignTo(S[d].box,$).translate(0,c.options.margin)),g&&(S[d]=c)),0!==l&&(c.alignTo(m),c.reflow(c.box)))},shrinkAxisWidth:function(t){var e,i,n,s,o=this.groupAxes(t).any,r=u(o),a=0;for(e=0;e<t.length;e++)i=t[e],i.axes.length>0&&(a=Math.max(a,r.width()-i.contentBox.width()));if(0!==a)for(n=0;n<o.length;n++)s=o[n],s.options.vertical||s.reflow(s.box.shrink(a,0))},shrinkAxisHeight:function(t){var e,i,n,s,o,r,a;for(i=0;i<t.length;i++)if(n=t[i],s=n.axes,o=Math.max(0,u(s).height()-n.contentBox.height()),0!==o){for(r=0;r<s.length;r++)a=s[r],a.options.vertical&&a.reflow(a.box.shrink(0,o));e=!0}return e},fitAxes:function(t){var e,i,n,s,o,r,a,h,l,c,p=this.groupAxes(t).any,d=0;for(e=0;e<t.length;e++)if(i=t[e],n=i.axes,s=i.contentBox,n.length>0)for(o=u(n),r=Math.max(s.y1-o.y1,s.y2-o.y2),d=Math.max(d,s.x1-o.x1),a=0;a<n.length;a++)h=n[a],h.reflow(h.box.translate(0,r));for(l=0;l<p.length;l++)c=p[l],c.reflow(c.box.translate(d,0))},reflowAxes:function(t){var e,i=this,n=this.groupAxes(t);for(e=0;e<t.length;e++)i.reflowPaneAxes(t[e]);n.x.length>0&&n.y.length>0&&(this.alignAxes(n.x,n.y),this.shrinkAxisWidth(t),this.autoRotateAxisLabels(n),this.alignAxes(n.x,n.y),this.shrinkAxisWidth(t)&&this.alignAxes(n.x,n.y),this.shrinkAxisHeight(t),this.alignAxes(n.x,n.y),this.shrinkAxisHeight(t)&&this.alignAxes(n.x,n.y),this.fitAxes(t))},autoRotateAxisLabels:function(t){var e,i,n,s,o=this,r=this,a=r.axes,h=r.panes;for(i=0;i<a.length;i++)n=a[i],n.autoRotateLabels()&&(e=!0);if(e){for(s=0;s<h.length;s++)o.reflowPaneAxes(h[s]);t.x.length>0&&t.y.length>0&&(this.alignAxes(t.x,t.y),this.shrinkAxisWidth(h))}},reflowPaneAxes:function(t){var e,i=t.axes,n=i.length;if(n>0)for(e=0;e<n;e++)i[e].reflow(t.contentBox)},reflowCharts:function(t){var e,i,n=this.charts,s=n.length,o=this.box;for(e=0;e<s;e++)i=n[e].pane,i&&!xt(i,t)||n[e].reflow(o)},reflowPanes:function(){var t,e,i,n,s,o,r,a,h,l=this,c=l.box,u=l.panes,p=u.length,d=c.height(),g=p,f=0,v=c.y1;for(t=0;t<p;t++)e=u[t],i=e.options.height,e.options.width=c.width(),e.options.height?(i.indexOf&&i.indexOf("%")&&(n=parseInt(i,10)/100,e.options.height=n*c.height()),e.reflow(c.clone()),d-=e.options.height):f++;for(s=0;s<p;s++)o=u[s],o.options.height||(o.options.height=d/f);for(r=0;r<p;r++)a=u[r],h=c.clone().move(c.x1,v),a.reflow(h),g--,v+=a.options.height},backgroundBox:function(){var t,e,i,n,s,o,r=this.axes,a=r.length;for(e=0;e<a;e++)for(i=r[e],n=0;n<a;n++)s=r[n],i.options.vertical!==s.options.vertical&&(o=i.lineBox().clone().wrap(s.lineBox()),t=t?t.wrap(o):o);return t||this.box},chartsBoxes:function(){var t,e=this.panes,i=[];for(t=0;t<e.length;t++)i.push(e[t].chartsBox());return i},addBackgroundPaths:function(t){var e,i=this.chartsBoxes();for(e=0;e<i.length;e++)t.paths.push(Ut.fromRect(i[e].toRect()))},backgroundContainsPoint:function(t){var e,i=this.chartsBoxes();for(e=0;e<i.length;e++)if(i[e].containsPoint(t))return!0},createVisual:function(){var t,e,i,n,s;pt.fn.createVisual.call(this),t=this.options.plotArea,e=t.opacity,i=t.background,n=t.border,void 0===n&&(n={}),d(i)&&(i=tt,e=0),s=this._bgVisual=new Wt.MultiPath({fill:{color:i,opacity:e},stroke:{color:n.width?n.color:"",width:n.width,dashType:n.dashType},zIndex:-1}),this.addBackgroundPaths(s),this.appendVisual(s)},pointsByCategoryIndex:function(t){var e,i,n,s,o,r=this.charts,a=[];if(null!==t)for(e=0;e<r.length;e++)if(i=r[e],"_navigator"!==i.pane.options.name&&(n=r[e].categoryPoints[t],n&&n.length))for(s=0;s<n.length;s++)o=n[s],o&<(o.value)&&null!==o.value&&a.push(o);return a},pointsBySeriesIndex:function(t){return this.filterPoints(function(e){return e.series.index===t})},pointsBySeriesName:function(t){return this.filterPoints(function(e){return e.series.name===t})},filterPoints:function(t){var e,i,n,s,o,r=this.charts,a=[];for(e=0;e<r.length;e++)for(i=r[e],n=i.points,s=0;s<n.length;s++)o=n[s],o&&t(o)&&a.push(o);return a},findPoint:function(t){var e,i,n,s,o,r=this.charts;for(e=0;e<r.length;e++)for(i=r[e],n=i.points,s=0;s<n.length;s++)if(o=n[s],o&&t(o))return o},paneByPoint:function(t){var e,i,n=this.panes;for(e=0;e<n.length;e++)if(i=n[e],i.box.containsPoint(t))return i}}),vt(bn,{series:[],plotArea:{margin:{}},background:"",border:{color:ot,width:0},legend:{inactiveItems:{labels:{color:"#919191"},markers:{color:"#919191"}}}}),An={hover:function(t,e){this._dispatchEvent(t,e,ai)},click:function(t,e){this._dispatchEvent(t,e,ri)}},Cn=W.extend({init:function(t,e,i){var n,s,o,r=e.canonicalFields(t),a=e.valueFields(t),h=e.sourceFields(t,r),l=this._seriesFields=[],c=i.query(t.type),u=t.aggregate||c;for(this._series=t,this._binder=e,n=0;n<r.length;n++){if(s=r[n],o=void 0,_t(u))o=u[s];else{if(0!==n&&!xt(s,a))break;o=u}o&&l.push({canonicalName:s,name:h[n],transform:mt(o)?o:ee[o]})}},aggregatePoints:function(t,e){var i,n,s,o,r,a=this,h=this,l=h._series,c=h._seriesFields,u=this._bindPoints(t||[]),p=u.dataItems[0],d={};for(!p||U(p)||ut(p)||(i=function(){},i.prototype=p,d=new i),n=0;n<c.length;n++){if(s=c[n],o=a._bindField(u.values,s.canonicalName),r=s.transform(o,l,u.dataItems,e),!(null===r||!_t(r)||lt(r.length)||r instanceof Date)){d=r;break}lt(r)&&g(s.name,d,r)}return d},_bindPoints:function(t){var e,i,n=this,s=n._binder,o=n._series,r=[],a=[];for(e=0;e<t.length;e++)i=t[e],r.push(s.bindPoint(o,i)),a.push(o.data[i]);return{values:r,dataItems:a}},_bindField:function(t,e){var i,n,s,o,r=[],a=t.length;for(i=0;i<a;i++)n=t[i],s=n.valueFields,o=void 0,o=lt(s[e])?s[e]:n.fields[e],r.push(o);return r}}),Sn=W.extend({init:function(){this._defaults={}},register:function(t,e){var i,n=this;for(i=0;i<t.length;i++)n._defaults[t[i]]=e},query:function(t){return this._defaults[t]}}),Sn.current=new Sn,kn=Ji.extend({createLabel:function(){var t=this.options.labels,e=wt({},t,t.from),i=wt({},t,t.to);e.visible&&(this.labelFrom=this._createLabel(e),this.append(this.labelFrom)),i.visible&&(this.labelTo=this._createLabel(i),this.append(this.labelTo))},_createLabel:function(t){var e,i=At(t);return e=i?i({dataItem:this.dataItem,category:this.category,value:this.value,percentage:this.percentage,runningTotal:this.runningTotal,total:this.total,series:this.series}):this.formatValue(t.format),new Qi(e,wt({vertical:this.options.vertical},t))},reflow:function(t){var e,i,n,s;this.render(),e=this,i=e.labelFrom,n=e.labelTo,s=e.value,this.box=t,i&&(i.options.aboveAxis=s.from>s.to,i.reflow(t)),n&&(n.options.aboveAxis=s.to>s.from,n.reflow(t)),this.note&&this.note.reflow(t)}}),kn.prototype.defaults=wt({},kn.prototype.defaults,{labels:{format:"{0} - {1}"},tooltip:{format:"{1}"}}),Tn=nn.extend({pointType:function(){return kn},pointValue:function(t){return t.valueFields},formatPointValue:function(t,e){return null===t.value.from&&null===t.value.to?"":this.chartService.format.auto(e,t.value.from,t.value.to)},plotRange:function(t){return t?[t.value.from,t.value.to]:0},updateRange:function(t,e){var i=e.series.axis,n=t.from,s=t.to,o=this.valueAxisRanges[i];null!==t&&U(n)&&U(s)&&(o=this.valueAxisRanges[i]=o||{min:Y,max:Z},o.min=Math.min(o.min,n),o.max=Math.max(o.max,n),o.min=Math.min(o.min,s),o.max=Math.max(o.max,s))},aboveAxis:function(t){var e=t.value;return e.from<e.to}}),Tn.prototype.plotLimits=Vi.prototype.plotLimits,Pn=sn.extend({reflow:function(t){var e,i=this,n=i.options,s=i.value,o=i.owner,r=o.seriesValueAxis(n),a=[],h=[],l=[],c=r.getSlot(s.low,s.high),u=r.getSlot(s.open,s.open),p=r.getSlot(s.close,s.close);u.x1=p.x1=c.x1=t.x1,u.x2=p.x2=c.x2=t.x2,e=c.center().x,a.push([u.x1,u.y1]),a.push([e,u.y1]),h.push([e,p.y1]),h.push([p.x2,p.y1]),l.push([e,c.y1]),l.push([e,c.y2]),this.lines=[a,h,l],this.box=c.clone().wrap(u.clone().wrap(p)),this.reflowNote()},createBody:function(){}}),Rn=on.extend({pointType:function(){return Pn}}),In=pt.extend({init:function(t,e,i){pt.fn.init.call(this),this.from=t,this.to=e,this.series=i},linePoints:function(){var t,e,i=this.from,n=this,s=n.from.box,o=n.to.box,r=[];return i.isVertical?(t=i.aboveAxis?s.y1:s.y2,r.push([s.x1,t],[o.x2,t])):(e=i.aboveAxis?s.x2:s.x1,r.push([e,s.y1],[e,o.y2])),r},createVisual:function(){var t,e;pt.fn.createVisual.call(this),t=this.series.line||{},e=Ut.fromPoints(this.linePoints(),{stroke:{color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType}}),ft(e),this.visual.append(e)}}),vt(In,{animation:{type:ce,delay:le}}),En=nn.extend({render:function(){nn.fn.render.call(this),this.createSegments()},traverseDataPoints:function(t){var e,i,n,o,r,a,h,l,c,u,p=this.options.series,d=this.categoryAxis.options.categories||[],g=s(p),f=!this.options.invertAxes;for(e=0;e<p.length;e++)for(i=p[e],n=0,o=0,r=0;r<g;r++)a=ie.current.bindPoint(i,r),h=a.valueFields.value,l=a.fields.summary,c=n,u=void 0,l?"total"===l.toLowerCase()?(a.valueFields.value=n,c=0,u=n):(a.valueFields.value=o,u=c-o,o=0):U(h)&&(o+=h,n+=h,u=n),t(a,{category:d[r],categoryIx:r,series:i,seriesIx:e,total:n,runningTotal:o,from:c,to:u,isVertical:f})},updateRange:function(t,e){nn.fn.updateRange.call(this,{value:e.to},e)},aboveAxis:function(t){return t.value>=0},plotRange:function(t){return[t.from,t.to]},createSegments:function(){var t,e,i,n,s,o,r,a=this,h=this.options.series,l=this.seriesPoints,c=this.segments=[];for(t=0;t<h.length;t++)if(e=h[t],i=l[t])for(n=void 0,s=0;s<i.length;s++)o=i[s],o&&n&&(r=new In(n,o,e),c.push(r),a.append(r)),n=o}}),Vn=bn.extend({initFields:function(t){var e,i,n=this;if(this.namedCategoryAxes={},this.namedValueAxes={},this.valueAxisRangeTracker=new Ki,t.length>0)for(this.invertAxes=xt(t[0].type,[Pe,Ee,Je,Ke,Xe,Oe,Qe]),e=0;e<t.length;e++)if(i=t[e].stack,i&&"100%"===i.type){n.stack100=!0;break}},render:function(t){void 0===t&&(t=this.panes),this.createCategoryAxes(t),this.aggregateCategories(t),this.createCategoryAxesLabels(t),this.createCharts(t),this.createValueAxes(t)},removeAxis:function(t){var e=t.options.name;bn.fn.removeAxis.call(this,t),t instanceof Mt?delete this.namedCategoryAxes[e]:(this.valueAxisRangeTracker.reset(e),delete this.namedValueAxes[e]),t===this.categoryAxis&&delete this.categoryAxis,t===this.valueAxis&&delete this.valueAxis},createCharts:function(t){var e,i,n,s,o,r,a=this,h=this.groupSeriesByPane();for(e=0;e<t.length;e++)if(i=t[e],n=h[i.options.name||"default"]||[],a.addToLegend(n),s=a.filterVisibleSeries(n))for(o=a.groupSeriesByCategoryAxis(s),r=0;r<o.length;r++)a.createChartGroup(o[r],i)},createChartGroup:function(t,e){this.createAreaChart(f(t,[Te,Ke]),e),this.createBarChart(f(t,[Me,Pe]),e),this.createRangeBarChart(f(t,[Ye,Xe]),e),this.createBulletChart(f(t,[Ee,$e]),e),this.createCandlestickChart(f(t,Ve),e),this.createBoxPlotChart(f(t,[Re,Qe]),e),this.createOHLCChart(f(t,De),e),this.createWaterfallChart(f(t,[ti,Oe]),e),this.createLineChart(f(t,[ze,Je]),e)},aggregateCategories:function(t){var e,i,n,s,o,r=this,a=this.srcSeries||this.series,h=[];for(e=0;e<a.length;e++)i=a[e],n=r.seriesCategoryAxis(i),s=r.findPane(n.options.pane),o=v(n.options.type,rt),(o||i.categoryField)&&xt(s,t)?i=r.aggregateSeries(i,n):(U(n.options.min)||U(n.options.max))&&(i=r.filterSeries(i,n)),h.push(i);this.srcSeries=a,this.series=h},filterSeries:function(t,e){var i,n,s,o=e.totalRangeIndices(),r=e.options.justified,a=xt(t.type,[ze,Je,Te,Ke]);return o.min=U(e.options.min)?Math.floor(o.min):0,o.max=U(e.options.max)?r?Math.floor(o.max)+1:Math.ceil(o.max):t.data.length,i=wt({},t),a&&(n=o.min-1,s=e.options.srcCategories||[],n>=0&&n<i.data.length&&(i._outOfRangeMinPoint={item:i.data[n],category:s[n],categoryIx:-1}),o.max<i.data.length&&(i._outOfRangeMaxPoint={item:i.data[o.max],category:s[o.max],categoryIx:o.max-o.min})),e._seriesMax=Math.max(e._seriesMax||0,i.data.length),i.data=(i.data||[]).slice(o.min,o.max),i},aggregateSeries:function(t,e){var n,s,o,r,a,h,l,c,u,p,d,g,f,x,m,y,w,b=this,A=xt(t.type,[ze,Je,Te,Ke]),C=e.options,S=C.categories,k=C.srcCategories;for(void 0===k&&(k=S),n=C.dataItems,void 0===n&&(n=[]),s=v(e.options.type,rt),o=wt({},t),r=wt({},t),a=t.data,h=[],l=Z,c=Y,u=i,s&&(u=_),g=0;g<a.length;g++)f=void 0,f=t.categoryField?u(t.categoryField,a[g],b.chartService.intl):k[g],lt(f)&&(x=e.categoryIndex(f),0<=x&&x<S.length?(h[x]=h[x]||[],h[x].push(g)):A&&(x<0?x===l?p.points.push(g):x>l&&(l=x,p={category:f,points:[g]}):x>=S.length&&(x===c?d.points.push(g):x<c&&(c=x,d={category:f,points:[g]}))));for(m=new Cn(o,ie.current,Sn.current),y=r.data=[],w=0;w<S.length;w++)y[w]=m.aggregatePoints(h[w],S[w]),h[w]&&(n[w]=y[w]);return p&&y.length&&(r._outOfRangeMinPoint={item:m.aggregatePoints(p.points,p.category),categoryIx:l,category:p.category}),d&&y.length&&(r._outOfRangeMaxPoint={item:m.aggregatePoints(d.points,d.category),categoryIx:c,category:d.category}),e.options.dataItems=n,r},appendChart:function(t,e){for(var i=t.options.series,n=this.seriesCategoryAxis(i[0]),o=n.options.categories,r=Math.max(0,s(i)-o.length);r--;)o.push("");this.valueAxisRangeTracker.update(t.valueAxisRanges),bn.fn.appendChart.call(this,t,e)},seriesPaneName:function(t){var e=this.options,i=t.axis,n=[].concat(e.valueAxis),s=Ot(n,function(t){return t.name===i})[0],o=e.panes||[{}],r=(o[0]||{}).name||"default",a=(s||{}).pane||r;return a},seriesCategoryAxis:function(t){var e=t.categoryAxis,i=e?this.namedCategoryAxes[e]:this.categoryAxis;if(!i)throw Error("Unable to locate category axis with name "+e);return i},stackableChartOptions:function(t,e){var i=t.stack,n=i&&"100%"===i.type,s=e.options.clip;return{isStacked:i,isStacked100:n,clip:s}},groupSeriesByCategoryAxis:function(t){var e,i,n,s,o,r,a=[],h={};for(e=0;e<t.length;e++)i=t[e].categoryAxis||"$$default$$",h.hasOwnProperty(i)||(h[i]=!0,a.push(i));for(n=[],s=0;s<a.length;s++)o=a[s],r=w(t,o,s),0!==r.length&&n.push(r);return n},createBarChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new nn(this,t.extend({series:e,invertAxes:this.invertAxes,gap:n.gap,spacing:n.spacing},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createRangeBarChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Tn(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing}),this.appendChart(n,e))},createBulletChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new fn(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createLineChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new Wi(this,t.extend({invertAxes:this.invertAxes,series:e},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createAreaChart:function(e,i){var n,s;0!==e.length&&(n=e[0],s=new ji(this,t.extend({invertAxes:this.invertAxes,series:e},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createOHLCChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Rn(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createCandlestickChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new on(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createBoxPlotChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new hn(this,{invertAxes:this.invertAxes,gap:i.gap,series:t,spacing:i.spacing,clip:e.options.clip}),this.appendChart(n,e))},createWaterfallChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new En(this,{series:t,invertAxes:this.invertAxes,gap:i.gap,spacing:i.spacing}),this.appendChart(n,e))},axisRequiresRounding:function(t,e){var i,n,s,o,r,a=this,h=f(this.series,ei);for(i=0;i<this.series.length;i++)n=a.series[i],n.type!==ze&&n.type!==Te||(s=n.line,s&&s.style===ke&&h.push(n));for(o=0;o<h.length;o++)if(r=h[o].categoryAxis||"",r===t||!r&&0===e)return!0},aggregatedAxis:function(t,e){var i,n,s=this.series;for(i=0;i<s.length;i++)if(n=s[i].categoryAxis||"",(n===t||!n&&0===e)&&s[i].categoryField)return!0},createCategoryAxesLabels:function(){var t,e=this.axes;for(t=0;t<e.length;t++)e[t]instanceof Mt&&e[t].createLabels()},createCategoryAxes:function(t){var e,i,n,s,o,r,a,h=this,l=this.invertAxes,c=[].concat(this.options.categoryAxis),u=[];for(e=0;e<c.length;e++)if(i=c[e],n=h.findPane(i.pane),xt(n,t)){if(s=i.name,o=i.categories,void 0===o&&(o=[]),i=wt({vertical:l,axisCrossingValue:l?Y:0},i),lt(i.justified)||(i.justified=h.isJustified()),h.axisRequiresRounding(s,e)&&(i.justified=!1),r=void 0,r=x(i,o[0])?new zt(i,h.chartService):new Mt(i,h.chartService),s){if(h.namedCategoryAxes[s])throw Error("Category axis with name "+s+" is already defined");h.namedCategoryAxes[s]=r}r.axisIndex=e,u.push(r),h.appendAxis(r)}a=this.categoryAxis||u[0],this.categoryAxis=a,l?this.axisY=a:this.axisX=a},isJustified:function(){var t,e,i=this.series;for(t=0;t<i.length;t++)if(e=i[t],!xt(e.type,[Te,Ke]))return!1;return!0},createValueAxes:function(t){var e,i,n,s,o,r,a,h,l,c=this,u=this.valueAxisRangeTracker,p=u.query(),d=[].concat(this.options.valueAxis),g=this.invertAxes,f={vertical:!g},x=[];for(this.stack100&&(f.roundToMajorUnit=!1,f.labels={format:"P0"}),e=0;e<d.length;e++)if(i=d[e],n=c.findPane(i.pane),xt(n,t)){if(s=i.name,o=v(i.type,_i)?{min:.1,max:1}:{min:0,max:1},r=u.query(s)||p||o,0===e&&r&&p&&(r.min=Math.min(r.min,p.min),r.max=Math.max(r.max,p.max)),a=void 0,a=v(i.type,_i)?q.LogarithmicAxis:q.NumericAxis,h=new a(r.min,r.max,wt({},f,i),c.chartService),s){if(c.namedValueAxes[s])throw Error("Value axis with name "+s+" is already defined");c.namedValueAxes[s]=h}h.axisIndex=e,x.push(h),c.appendAxis(h)}l=this.valueAxis||x[0],this.valueAxis=l,g?this.axisX=l:this.axisY=l},_dispatchEvent:function(t,e,i){var n,s,o,r=t._eventCoordinates(e),a=new dt(r.x,r.y),h=this.pointPane(a),l=[],c=[];if(h){for(n=h.axes,s=0;s<n.length;s++)o=n[s],o.getValue?m(c,o.getValue(a)):m(l,o.getCategory(a));0===l.length&&m(l,this.categoryAxis.getCategory(a)),l.length>0&&c.length>0&&t.trigger(i,{element:bt(e),originalEvent:e,category:y(l),value:y(c)})}},pointPane:function(t){var e,i,n=this.panes;for(e=0;e<n.length;e++)if(i=n[e],i.contentBox.containsPoint(t))return i},updateAxisOptions:function(t,e){var i=[].concat(t instanceof Mt?this.options.categoryAxis:this.options.valueAxis);wt(i[t.axisIndex],e)}}),vt(Vn,{categoryAxis:{categories:[]},valueAxis:{}}),wt(Vn.prototype,An),Mn=W.extend({init:function(){this._points=[]},destroy:function(){this._points=[]},show:function(t){var e,i,n=this,s=[].concat(t);for(this.hide(),e=0;e<s.length;e++)i=s[e],i&&i.toggleHighlight&&i.hasHighlight()&&(n.togglePointHighlight(i,!0),n._points.push(i))},togglePointHighlight:function(t,e){var i,n=(t.options.highlight||{}).toggle;n?(i={category:t.category,series:t.series,dataItem:t.dataItem,value:t.value,stackValue:t.stackValue,preventDefault:b,visual:t.highlightVisual(),show:e},n(i),i._defaultPrevented||t.toggleHighlight(e)):t.toggleHighlight(e)},hide:function(){for(var t=this,e=this._points;e.length;)t.togglePointHighlight(e.pop(),!1)},isHighlighted:function(t){var e,i,n=this._points;for(e=0;e<n.length;e++)if(i=n[e],t===i)return!0;return!1}}),Ln=W.extend({init:function(t,e){this.plotArea=t,this.options=wt({},this.options,e)},start:function(t){return this._active=A(t,this.options.key)},move:function(t){if(this._active){var e=this.axisRanges=this._panAxes(t,nt).concat(this._panAxes(t,it));if(e.length)return this.axisRanges=e,C(e)}},end:function(){var t=this._active;return this._active=!1,t},pan:function(){var t,e,i=this,n=i.plotArea,s=i.axisRanges;if(s.length){for(t=0;t<s.length;t++)e=s[t],n.updateAxisOptions(e.axis,e.range);n.redraw(n.panes)}},destroy:function(){delete this.plotArea},_panAxes:function(t,e){var i,n,s,o,r=this.plotArea,a=-t[e].delta,h=(this.options.lock||"").toLowerCase(),l=[];if(0!==a&&(h||"").toLowerCase()!==e)for(i=r.axes,n=0;n<i.length;n++)s=i[n],(e===nt&&!s.options.vertical||e===it&&s.options.vertical)&&(o=s.pan(a),o&&(o.limitRange=!0,l.push({axis:s,range:o})));return l}}),Ln.prototype.options={key:"none",lock:"none"},Bn=W.extend({init:function(t,e){this.chart=t,this.options=wt({},this.options,e),this.createElement()},createElement:function(){var t,e=this._marquee=document.createElement("div");e.className="k-marquee",t=document.createElement("div"),t.className="k-marquee-color",e.appendChild(t)},removeElement:function(){this._marquee.parentNode&&this._marquee.parentNode.removeChild(this._marquee)},setStyles:function(t){Dt(this._marquee,t)},start:function(t){var e,i,n,s,o;return!!(A(t,this.options.key)&&(e=this.chart,i=e._eventCoordinates(t),n=this._zoomPane=e._plotArea.paneByPoint(i),n&&n.clipBox()))&&(s=n.clipBox().clone(),o=this._elementOffset(),s.translate(o.left,o.top),this._zoomPaneClipBox=s,document.body.appendChild(this._marquee),this.setStyles({left:t.pageX+1,top:t.pageY+1,width:0,height:0}),!0)},_elementOffset:function(){var t=this.chart.element,e=Dt(t,["paddingLeft","paddingTop"]),i=e.paddingLeft,n=e.paddingTop,s=q.elementOffset(t);return{left:i+s.left,top:n+s.top}},move:function(t){var e=this._zoomPane;e&&this.setStyles(this._selectionPosition(t))},end:function(t){var e,i,n,s,o=this._zoomPane;if(o)return e=this._elementOffset(),i=this._selectionPosition(t),i.left-=e.left,i.top-=e.top,n={x:i.left,y:i.top},s={x:i.left+i.width,y:i.top+i.height},this._updateAxisRanges(n,s),this.removeElement(),delete this._zoomPane,C(this.axisRanges)},zoom:function(){var t,e,i,n=this.axisRanges;if(n&&n.length){for(t=this.chart._plotArea,e=0;e<n.length;e++)i=n[e],t.updateAxisOptions(i.axis,i.range);t.redraw(t.panes)}},destroy:function(){this.removeElement(),delete this._marquee,delete this.chart},_updateAxisRanges:function(t,e){var i,n,s,o,r=(this.options.lock||"").toLowerCase(),a=[],h=this._zoomPane.axes;for(i=0;i<h.length;i++)n=h[i],s=n.options.vertical,r===nt&&!s||r===it&&s||(o=n.pointsRange(t,e),o&&a.push({axis:n,range:o}));this.axisRanges=a},_selectionPosition:function(t){var e=this._zoomPaneClipBox,i={x:t.x.startLocation,y:t.y.startLocation},n=t.x.location,s=t.y.location,o=(this.options.lock||"").toLowerCase(),r=Math.min(i.x,n),a=Math.min(i.y,s),h=Math.abs(i.x-n),l=Math.abs(i.y-s);return o===nt&&(r=e.x1,h=e.width()),o===it&&(a=e.y1,l=e.height()),n>e.x2&&(h=e.x2-i.x),n<e.x1&&(h=i.x-e.x1),s>e.y2&&(l=e.y2-i.y),s<e.y1&&(l=i.y-e.y1),{left:Math.max(r,e.x1),top:Math.max(a,e.y1),width:h,height:l}}}),Bn.prototype.options={key:"shift",lock:"none"},On=W.extend({init:function(t,e){this.chart=t,this.options=wt({},this.options,e)},updateRanges:function(t){var e,i,n,s,o=(this.options.lock||"").toLowerCase(),r=[],a=this.chart._plotArea.axes;for(e=0;e<a.length;e++)i=a[e],n=i.options.vertical,
o===nt&&!n||o===it&&n||(s=i.zoomRange(-t),s&&r.push({axis:i,range:s}));return this.axisRanges=r,C(r)},zoom:function(){var t,e,i,n=this.axisRanges;if(n&&n.length){for(t=this.chart._plotArea,e=0;e<n.length;e++)i=n[e],t.updateAxisOptions(i.axis,i.range);t.redraw(t.panes)}},destroy:function(){delete this.chart}}),zn=pt.extend({init:function(t,e){pt.fn.init.call(this,t),this.chartService=e},render:function(){var t,e,i=this,n=i.children,s=i.options,o=s.vertical;for(this.visual=new Wt.Layout(null,{spacing:o?0:s.spacing,lineSpacing:o?s.spacing:0,orientation:o?"vertical":"horizontal"}),t=0;t<n.length;t++)e=n[t],e.reflow(new gt),e.renderVisual()},reflow:function(t){this.visual.rect(t.toRect()),this.visual.reflow();var e=this.visual.clippedBBox();this.box=e?q.rectToBox(e):new gt},renderVisual:function(){this.addVisual()},createVisual:function(){}}),Dn=Lt.extend({init:function(t){Lt.fn.init.call(this,t),this.createContainer(),this.createMarker(),this.createLabel()},createContainer:function(){this.container=new q.FloatElement({vertical:!1,wrap:!1,align:K}),this.append(this.container)},createMarker:function(){this.container.append(new St(this.markerOptions()))},markerOptions:function(){var t=this.options,e=t.markerColor;return wt({},t.markers,{background:e,border:{color:e}})},createLabel:function(){var t=this.options,e=wt({},t.labels);this.container.append(new Ct(t.text,e))},renderComplete:function(){var t,e;Lt.fn.renderComplete.call(this),t=this.options.cursor||{},e=this._itemOverlay=Ut.fromRect(this.container.box.toRect(),{fill:{color:tt,opacity:0},stroke:null,cursor:t.style||t}),this.appendVisual(e)},click:function(t,e){var i=this.eventArgs(e);t.trigger(ii,i)||e.preventDefault()},hover:function(t,e){var i=this.eventArgs(e);return t.trigger(ni,i)||(e.preventDefault(),t._legendItemHover(i.seriesIndex,i.pointIndex)),!0},leave:function(t){t._unsetActivePoint()},eventArgs:function(t){var e=this.options;return{element:bt(t),text:e.text,series:e.series,seriesIndex:e.series.index,pointIndex:e.pointIndex}},renderVisual:function(){var t=this,e=this.options,i=e.visual;i?(this.visual=i({active:e.active,series:e.series,sender:this.getSender(),pointIndex:e.pointIndex,options:{markers:this.markerOptions(),labels:e.labels},createVisual:function(){t.createVisual(),t.renderChildren(),t.renderComplete();var e=t.visual;return delete t.visual,e}}),this.addVisual()):Lt.fn.renderVisual.call(this)}}),Fn="horizontal",Hn="pointer",Nn="custom",Gn=pt.extend({init:function(t,e){pt.fn.init.call(this,t),this.chartService=e,xt(this.options.position,[Q,st,$,J,Nn])||(this.options.position=st),this.createContainer(),this.createItems()},createContainer:function(){var t=this.options,e=t.position,i=t.align,n=e,s=K;e===Nn?n=J:xt(e,[Q,$])?(n="start"===i?J:"end"===i?st:K,s=e):i&&("start"===i?s=Q:"end"===i&&(s=$)),this.container=new Lt({margin:t.margin,padding:t.padding,background:t.background,border:t.border,vAlign:s,align:n,zIndex:t.zIndex,shrinkToFit:!0}),this.append(this.container)},createItems:function(){var t,e,i,n=this.getService(),s=this.options,o=this.isVertical(),r=new zn({vertical:o,spacing:s.spacing},n),a=s.items;for(s.reverse&&(a=a.slice(0).reverse()),t=a.length,e=0;e<t;e++)i=a[e],r.append(new Dn(wt({},{markers:s.markers,labels:s.labels},s.item,i)));r.render(),this.container.append(r)},isVertical:function(){var t=this.options,e=t.orientation,i=t.position,n=i===Nn&&e!==Fn||(lt(e)?e!==Fn:xt(i,[J,st]));return n},hasItems:function(){return this.container.children[0].children.length>0},reflow:function(t){var e=this.options,i=t.clone();return this.hasItems()?void(e.position===Nn?(this.containerCustomReflow(i),this.box=i):this.containerReflow(i)):void(this.box=i)},containerReflow:function(t){var e,i=this,n=i.options,s=i.container,o=n.position,r=n.width,a=n.height,h=o===Q||o===$?nt:it,l=this.isVertical(),c=t.clone(),u=t.clone();o!==J&&o!==st||(u.y1=c.y1=0),l&&a?(u.y2=u.y1+a,u.align(c,it,s.options.vAlign)):!l&&r&&(u.x2=u.x1+r,u.align(c,nt,s.options.align)),s.reflow(u),u=s.box,e=u.clone(),(n.offsetX||n.offsetY)&&(u.translate(n.offsetX,n.offsetY),this.container.reflow(u)),e[h+1]=t[h+1],e[h+2]=t[h+2],this.box=e},containerCustomReflow:function(t){var e=this,i=e.options,n=e.container,s=i.offsetX,o=i.offsetY,r=i.width,a=i.height,h=this.isVertical(),l=t.clone();h&&a?l.y2=l.y1+a:!h&&r&&(l.x2=l.x1+r),n.reflow(l),l=n.box,n.reflow(new gt(s,o,s+l.width(),o+l.height()))},renderVisual:function(){this.hasItems()&&pt.fn.renderVisual.call(this)}}),vt(Gn,{position:st,items:[],labels:{margin:{left:6}},offsetX:0,offsetY:0,margin:kt(5),padding:kt(5),border:{color:ot,width:0},item:{cursor:Hn},spacing:6,background:"",zIndex:1,markers:{border:{width:0},width:15,height:3,type:"rect",align:J,vAlign:K}}),qn=W.extend({init:function(){this._registry=[]},register:function(t,e){this._registry.push({type:t,seriesTypes:e})},create:function(t,e,i){var n,s,o,r=this._registry,a=r[0];for(s=0;s<r.length;s++)if(o=r[s],n=f(t,o.seriesTypes),n.length>0){a=o;break}return new a.type(n,e,i)}}),qn.current=new qn,Wn=3,Un=.1,Xn=W.extend({init:function(t,e,i,n){var s=t.element;this.options=wt({},this.options,i),this.chart=t,this.observer=n,this.chartElement=s,this.categoryAxis=e,this._dateAxis=this.categoryAxis instanceof zt,this.initOptions(),this.options.visible&&(this.createElements(),this.set(this._index(this.options.from),this._index(this.options.to)),this.bindEvents())},createElements:function(){var t,e,i,n,s,o,r=this.options,a=this.wrapper=S("k-selector");Dt(a,{top:r.offset.top,left:r.offset.left,width:r.width,height:r.height,direction:"ltr"}),t=this.selection=S("k-selection"),this.leftMask=S("k-mask"),this.rightMask=S("k-mask"),a.appendChild(this.leftMask),a.appendChild(this.rightMask),a.appendChild(t),t.appendChild(S("k-selection-bg")),e=this.leftHandle=S("k-handle k-left-handle"),i=this.rightHandle=S("k-handle k-right-handle"),e.appendChild(S()),i.appendChild(S()),t.appendChild(e),t.appendChild(i),this.chartElement.appendChild(a),n=Dt(t,["borderLeftWidth","borderRightWidth","height"]),s=Dt(e,"height").height,o=Dt(i,"height").height,r.selection={border:{left:n.borderLeftWidth,right:n.borderRightWidth}},Dt(e,{top:(n.height-s)/2}),Dt(i,{top:(n.height-o)/2}),a.style.cssText=a.style.cssText},bindEvents:function(){this._mousewheelHandler=this.options.mousewheel!==!1?this._mousewheel.bind(this):T;var t;Ht(this.wrapper,(t={},t[Si]=this._mousewheelHandler,t)),this._domEvents=Nt.DomEventsBuilder.create(this.wrapper,{start:this._start.bind(this),move:this._move.bind(this),end:this._end.bind(this),tap:this._tap.bind(this),press:this._press.bind(this),gesturestart:this._gesturestart.bind(this),gesturechange:this._gesturechange.bind(this),gestureend:this._gestureend.bind(this)})},initOptions:function(){var t,e,i,n=this,s=n.options,o=n.categoryAxis,r=o.pane.chartsBox(),a=this.chart.chartService.intl;this._dateAxis&&wt(s,{min:Et(a,s.min),max:Et(a,s.max),from:Et(a,s.from),to:Et(a,s.to)}),t=Dt(this.chartElement,["paddingLeft","paddingTop"]),e=t.paddingLeft,i=t.paddingTop,this.options=wt({},{width:r.width(),height:r.height()+Un,padding:{left:e,top:i},offset:{left:r.x1+e,top:r.y1+i},from:s.min,to:s.max},s)},destroy:function(){if(this._domEvents&&(this._domEvents.destroy(),delete this._domEvents),clearTimeout(this._mwTimeout),this._state=null,this.wrapper){var t;Gt(this.wrapper,(t={},t[Si]=this._mousewheelHandler,t)),this.chartElement.removeChild(this.wrapper)}},_rangeEventArgs:function(t){return{axis:this.categoryAxis.options,from:this._value(t.from),to:this._value(t.to)}},_start:function(t){var e,i=this.options,n=bt(t);!this._state&&n&&(this.chart._unsetActivePoint(),this._state={moveTarget:k(n)||n,startLocation:t.x?t.x.location:0,range:{from:this._index(i.from),to:this._index(i.to)}},e=this._rangeEventArgs({from:this._index(i.from),to:this._index(i.to)}),this.trigger(gi,e)&&(this._state=null))},_press:function(t){var e;e=this._state?this._state.moveTarget:k(bt(t)),e&&q.addClass(e,"k-handle-active")},_move:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m;this._state&&(e=this,i=e._state,n=e.options,s=e.categoryAxis.options,o=i.range,r=i.moveTarget,a=s.reverse,h=this._index(n.from),l=this._index(n.to),c=this._index(n.min),u=this._index(n.max),p=i.startLocation-t.x.location,d={from:o.from,to:o.to},g=o.to-o.from,f=Dt(this.wrapper,"width").width/(s.categories.length-1),v=Math.round(p/f)*(a?-1:1),r&&(x=Ft(r,"k-left-handle"),m=Ft(r,"k-right-handle"),Ft(r,"k-selection k-selection-bg")?(o.from=Math.min(Math.max(c,h-v),u-g),o.to=Math.min(o.from+g,u)):x&&!a||m&&a?(o.from=Math.min(Math.max(c,h-v),u-1),o.to=Math.max(o.from+1,o.to)):(x&&a||m&&!a)&&(o.to=Math.min(Math.max(c+1,l-v),u),o.from=Math.min(o.to-1,o.from)),o.from===d.from&&o.to===d.to||(this.move(o.from,o.to),this.trigger(fi,this._rangeEventArgs(o)))))},_end:function(){var t,e;this._state&&(t=this._state.moveTarget,t&&q.removeClass(t,"k-handle-active"),e=this._state.range,this.set(e.from,e.to),this.trigger(vi,this._rangeEventArgs(e)),delete this._state)},_tap:function(t){var e=this,i=e.options,n=e.categoryAxis,s=this.chart._eventCoordinates(t),o=n.pointCategoryIndex(new dt(s.x,n.box.y1)),r=this._index(i.from),a=this._index(i.to),h=this._index(i.min),l=this._index(i.max),c=a-r,u=r+c/2,p={},d=3===t.event.which,g=Math.round(u-o);this._state||d||(this.chart._unsetActivePoint(),n.options.justified||g--,p.from=Math.min(Math.max(h,r-g),l-c),p.to=Math.min(p.from+c,l),this._start(t),this._state&&(this._state.range=p,this.trigger(fi,this._rangeEventArgs(p)),this._end()))},_mousewheel:function(t){var e,i=this,n=q.mousewheelDelta(t);this._start({target:this.selection}),this._state&&(e=this._state.range,t.preventDefault(),t.stopPropagation(),Math.abs(n)>1&&(n*=Wn),this.options.mousewheel.reverse&&(n*=-1),this.expand(n)&&this.trigger(fi,{axis:this.categoryAxis.options,delta:n,originalEvent:t,from:this._value(e.from),to:this._value(e.to)}),this._mwTimeout&&clearTimeout(this._mwTimeout),this._mwTimeout=setTimeout(function(){i._end()},ki))},_gesturestart:function(t){var e,i=this.options;this._state={range:{from:this._index(i.from),to:this._index(i.to)}},e=this._rangeEventArgs(this._state.range),this.trigger(gi,e)?this._state=null:t.preventDefault()},_gestureend:function(){this._state&&(this.trigger(vi,this._rangeEventArgs(this._state.range)),delete this._state)},_gesturechange:function(t){var e=this,i=e.chart,n=e._state,s=e.options,o=e.categoryAxis,r=n.range,a=i._toModelCoordinates(t.touches[0].x.location).x,h=i._toModelCoordinates(t.touches[1].x.location).x,l=Math.min(a,h),c=Math.max(a,h);t.preventDefault(),r.from=o.pointCategoryIndex(new dt(l))||s.min,r.to=o.pointCategoryIndex(new dt(c))||s.max,this.move(r.from,r.to),this.trigger(fi,this._rangeEventArgs(r))},_index:function(t){var e=t;return t instanceof Date&&(e=this.categoryAxis.categoryIndex(t)),e},_value:function(t){var e=this.categoryAxis.options.categories,i=t;return this._dateAxis&&(i=t>e.length-1?this.options.max:e[Math.ceil(t)]),i},_slot:function(t){var e=this.categoryAxis,i=this._index(t);return e.getSlot(i,i,!0)},move:function(t,e){var i,n,s=this.options,o=this.categoryAxis.options.reverse,r=s.offset,a=s.padding,h=s.selection.border,l=o?e:t,c=o?t:e,u="x"+(o?2:1),p=this._slot(l),d=Bt(p[u]-r.left+a.left);Dt(this.leftMask,{width:d}),Dt(this.selection,{left:d}),p=this._slot(c),i=Bt(s.width-(p[u]-r.left+a.left)),Dt(this.rightMask,{width:i}),n=s.width-i,n!==s.width&&(n+=h.right),Dt(this.rightMask,{left:n}),Dt(this.selection,{width:Math.max(s.width-(d+i)-h.right,0)})},set:function(t,e){var i=this.options,n=this._index(i.min),s=this._index(i.max),o=Tt(this._index(t),n,s),r=Tt(this._index(e),o+1,s);i.visible&&this.move(o,r),i.from=this._value(o),i.to=this._value(r)},expand:function(t){var e=this.options,i=this._index(e.min),n=this._index(e.max),s=e.mousewheel.zoom,o=this._index(e.from),r=this._index(e.to),a={from:o,to:r},h=wt({},a);if(this._state&&(a=this._state.range),s!==st&&(a.from=Tt(Tt(o-t,0,r-1),i,n)),s!==J&&(a.to=Tt(Tt(r+t,a.from+1,n),i,n)),a.from!==h.from||a.to!==h.to)return this.set(a.from,a.to),!0},trigger:function(t,e){return(this.observer||this.chart).trigger(t,e)}}),vt(Xn,{visible:!0,mousewheel:{zoom:"both"},min:Z,max:Y}),Yn=vn.extend({show:function(t){var e,i;!t||!t.tooltipAnchor||this._current&&this._current===t||(e=wt({},this.options,t.options.tooltip),i=t.tooltipAnchor(),i?(this._current=t,vn.fn.show.call(this,{point:t,anchor:i},e,t)):this.hide())},hide:function(){delete this._current,vn.fn.hide.call(this)}}),Zn=vn.extend({init:function(t,e){vn.fn.init.call(this,t.chartService,e),this.plotArea=t,this.formatService=t.chartService.format},showAt:function(t,e){var i,n,s,o=Ot(t,function(t){var e=t.series.tooltip,i=e&&e.visible===!1;return!i});o.length>0&&(i=o[0],n=this.plotArea.categoryAxis.getSlot(i.categoryIx),s=e?this._slotAnchor(e,n):this._defaultAnchor(i,n),this.show({anchor:s,shared:!0,points:t,category:i.category,categoryText:this.formatService.auto(this.options.categoryFormat,i.category),series:this.plotArea.series},this.options))},_slotAnchor:function(t,e){var i=this.plotArea.categoryAxis,n={horizontal:"left",vertical:"center"};return i.options.vertical||(t.x=e.center().x),{point:t,align:n}},_defaultAnchor:function(t,e){var i,n=t.owner.pane.chartsBox(),s=this.plotArea.categoryAxis.options.vertical,o=n.center(),r=e.center(),a={horizontal:"center",vertical:"center"};return i=s?new dt(o.x,r.y):new dt(r.x,o.y),{point:i,align:a}}}),vt(Zn,{categoryFormat:"{0:d}"}),jn=Xt.extend({setup:function(){var t,e,i=this,n=i.element,s=i.options,o=n.bbox();o?(this.origin=s.origin,t=s.vertical?it:nt,e=this.fromScale=new Qt(1,1),e[t]=ge,n.transform($t().scale(e.x,e.y))):this.abort()},step:function(t){var e=q.interpolateValue(this.fromScale.x,1,t),i=q.interpolateValue(this.fromScale.y,1,t);this.element.transform($t().scale(e,i,this.origin))},abort:function(){Xt.fn.abort.call(this),this.element.transform(null)}}),vt(jn,{duration:le}),Yt.current.register(Pe,jn),Kn=Xt.extend({setup:function(){var t=this.center=this.element.bbox().center();this.element.transform($t().scale(ge,ge,t))},step:function(t){this.element.transform($t().scale(t,t,this.center))}}),vt(Kn,{easing:"easeOutElastic"}),Yt.current.register(Ie,Kn),Qn=Xt.extend({setup:function(){this.fadeTo=this.element.opacity(),this.element.opacity(0)},step:function(t){this.element.opacity(t*this.fadeTo)}}),vt(Qn,{duration:200,easing:"linear"}),Yt.current.register(ce,Qn),$n=Xt.extend({setup:function(){this.element.transform($t().scale(ge,ge,this.options.center))},step:function(t){this.element.transform($t().scale(t,t,this.options.center))}}),vt($n,{easing:"easeOutElastic",duration:le}),Yt.current.register(Fe,$n),Jn=cn.extend({render:function(){cn.fn.render.call(this),this.renderSegments()},createSegment:function(t,e,i){var n,s=e.style;return new(n=s===Se?Hi:Di)(t,e,i)},animationPoints:function(){var t=cn.fn.animationPoints.call(this);return t.concat(this._segments)},createMissingValue:function(t,e){if(e===be){var i={x:t.x,y:t.y};return h(i.x)||(i.x=0),h(i.y)||(i.y=0),i}}}),wt(Jn.prototype,Ni),ts=bn.extend({initFields:function(){this.namedXAxes={},this.namedYAxes={},this.xAxisRangeTracker=new Ki,this.yAxisRangeTracker=new Ki},render:function(t){var e,i,n,s,o,r=this;for(void 0===t&&(t=this.panes),e=this.groupSeriesByPane(),i=0;i<t.length;i++)n=t[i],s=e[n.options.name||"default"]||[],r.addToLegend(s),o=r.filterVisibleSeries(s),o&&(r.createScatterChart(f(o,Ze),n),r.createScatterLineChart(f(o,je),n),r.createBubbleChart(f(o,Ie),n));this.createAxes(t)},appendChart:function(t,e){this.xAxisRangeTracker.update(t.xAxisRanges),this.yAxisRangeTracker.update(t.yAxisRanges),bn.fn.appendChart.call(this,t,e)},removeAxis:function(t){var e=t.options.name;bn.fn.removeAxis.call(this,t),t.options.vertical?(this.yAxisRangeTracker.reset(e),delete this.namedYAxes[e]):(this.xAxisRangeTracker.reset(e),delete this.namedXAxes[e]),t===this.axisX&&delete this.axisX,t===this.axisY&&delete this.axisY},seriesPaneName:function(t){var e=this.options,i=t.xAxis,n=[].concat(e.xAxis),s=Ot(n,function(t){return t.name===i})[0],o=t.yAxis,r=[].concat(e.yAxis),a=Ot(r,function(t){return t.name===o})[0],h=e.panes||[{}],l=h[0].name||"default",c=(s||{}).pane||(a||{}).pane||l;return c},createScatterChart:function(t,e){t.length>0&&this.appendChart(new cn(this,{series:t,clip:e.options.clip}),e)},createScatterLineChart:function(t,e){t.length>0&&this.appendChart(new Jn(this,{series:t,clip:e.options.clip}),e)},createBubbleChart:function(t,e){t.length>0&&this.appendChart(new pn(this,{series:t,clip:e.options.clip}),e)},createXYAxis:function(t,e,i){var n,s,o,r,a,h,l,c,u=t.name,p=e?this.namedYAxes:this.namedXAxes,d=e?this.yAxisRangeTracker:this.xAxisRangeTracker,g=wt({},t,{vertical:e}),f=v(g.type,_i),x=d.query(),m=f?{min:.1,max:1}:{min:0,max:1},y=d.query(u)||x||m,_=[g.min,g.max],w=this.series;for(n=0;n<w.length;n++)if(s=w[n],o=s[e?"yAxis":"xAxis"],o===g.name||0===i&&!o){r=ie.current.bindPoint(s,0).valueFields,_.push(r[e?"y":"x"]);break}for(0===i&&x&&(y.min=Math.min(y.min,x.min),y.max=Math.max(y.max,x.max)),h=0;h<_.length;h++)if(_[h]instanceof Date){a=!0;break}if(l=v(g.type,rt)||!g.type&&a?q.DateValueAxis:f?q.LogarithmicAxis:q.NumericAxis,c=new l(y.min,y.max,g,this.chartService),c.axisIndex=i,u){if(p[u])throw Error((e?"Y":"X")+" axis with name "+u+" is already defined");p[u]=c}return this.appendAxis(c),c},createAxes:function(t){var e,i,n,s,o=this,r=this.options,a=[].concat(r.xAxis),h=[],l=[].concat(r.yAxis),c=[];for(e=0;e<a.length;e++)i=o.findPane(a[e].pane),xt(i,t)&&h.push(o.createXYAxis(a[e],!1,e));for(n=0;n<l.length;n++)s=o.findPane(l[n].pane),xt(s,t)&&c.push(o.createXYAxis(l[n],!0,n));this.axisX=this.axisX||h[0],this.axisY=this.axisY||c[0]},_dispatchEvent:function(t,e,i){var n,s,o,r,a=t._eventCoordinates(e),h=new dt(a.x,a.y),l=this.axes,c=l.length,u=[],p=[];for(n=0;n<c;n++)s=l[n],o=s.options.vertical?p:u,r=s.getValue(h),null!==r&&o.push(r);u.length>0&&p.length>0&&t.trigger(i,{element:bt(e),originalEvent:e,x:y(u),y:y(p)})},updateAxisOptions:function(t,e){var i=t.options.vertical,n=this.groupAxes(this.panes),s=(i?n.y:n.x).indexOf(t),o=[].concat(i?this.options.yAxis:this.options.xAxis)[s];wt(o,e)}}),vt(ts,{xAxis:{},yAxis:{}}),wt(ts.prototype,An),es=pt.extend({init:function(t,e,i){pt.fn.init.call(this,i),this.value=t,this.sector=e},render:function(){var t,e,i,n=this.options.labels,s=this.owner.chartService,o=this.value;this._rendered||this.visible===!1||(this._rendered=!0,t=At(n),t?o=t({dataItem:this.dataItem,category:this.category,value:this.value,series:this.series,percentage:this.percentage}):n.format&&(o=s.format.auto(n.format,o)),n.visible&&(o||0===o)&&(n.position===K||n.position===bi?(n.color||(e=new jt(this.options.color).percBrightness(),n.color=e>180?ot:tt),n.background||(n.background=this.options.color)):(i=s.theme.seriesDefaults.labels,n.color=n.color||i.color,n.background=n.background||i.background),this.label=new Ct(o,wt({},n,{align:K,vAlign:"",animation:{type:ce,delay:this.animationDelay}})),this.append(this.label)))},reflow:function(t){this.render(),this.box=t,this.reflowLabel()},reflowLabel:function(){var t,e,i,n,s=this,o=s.options.labels,r=s.label,a=this.sector.clone(),h=o.distance,l=a.middle();r&&(t=r.box.height(),e=r.box.width(),o.position===K?(a.radius=Math.abs((a.radius-t)/2)+t,i=a.point(l),r.reflow(new gt(i.x,i.y-t/2,i.x,i.y))):o.position===bi?(a.radius=a.radius-t/2,i=a.point(l),r.reflow(new gt(i.x,i.y-t/2,i.x,i.y))):(i=a.clone().expand(h).point(l),i.x>=a.center.x?(n=i.x+e,r.orientation=st):(n=i.x-e,r.orientation=J),r.reflow(new gt(n,i.y-t,i.x,i.y))))},createVisual:function(){var t,e,i=this,n=this,s=n.sector,o=n.options;pt.fn.createVisual.call(this),this.value&&(o.visual?(t=(s.startAngle+180)%360,e=o.visual({category:this.category,dataItem:this.dataItem,value:this.value,series:this.series,percentage:this.percentage,center:new Qt(s.center.x,s.center.y),radius:s.radius,innerRadius:s.innerRadius,startAngle:t,endAngle:t+s.angle,options:o,sender:this.getSender(),createVisual:function(){var t=new Zt;return i.createSegmentVisual(t),t}}),e&&this.visual.append(e)):this.createSegmentVisual(this.visual))},createSegmentVisual:function(t){var e=this,i=e.sector,n=e.options,s=n.border||{},o=s.width>0?{stroke:{color:s.color,width:s.width,opacity:s.opacity,dashType:s.dashType}}:{},a=n.color,h={color:a,opacity:n.opacity},l=this.createSegment(i,wt({fill:h,stroke:{opacity:n.opacity},zIndex:n.zIndex},o));t.append(l),r(n)&&t.append(this.createGradientOverlay(l,{baseColor:a,fallbackFill:h},wt({center:[i.center.x,i.center.y],innerRadius:i.innerRadius,radius:i.radius,userSpace:!0},n.overlay)))},createSegment:function(t,e){return e.singleSegment?new Wt.Circle(new Kt.Circle(new Qt(t.center.x,t.center.y),t.radius),e):q.ShapeBuilder.current.createRing(t,e)},createAnimation:function(){var t=this,e=t.options,i=t.sector.center;wt(e,{animation:{center:[i.x,i.y],delay:this.animationDelay}}),pt.fn.createAnimation.call(this)},createHighlight:function(t){var e=this.options.highlight||{},i=e.border||{};return this.createSegment(this.sector,wt({},t,{fill:{color:e.color,opacity:e.opacity},stroke:{opacity:i.opacity,width:i.width,color:i.color}}))},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var t=this.sector;return{options:this.options,radius:t.radius,innerRadius:t.innerRadius,center:new Qt(t.center.x,t.center.y),startAngle:t.startAngle,endAngle:t.angle+t.startAngle,visual:this.visual}},tooltipAnchor:function(){var t=this.sector.clone().expand(de),e=t.middle(),i=t.point(e);return{point:i,align:P(e+180)}},formatValue:function(t){return this.owner.formatPointValue(this,t)}}),is=Bt(q.rad(30),at),ns=Bt(q.rad(60),at),vt(es,{color:tt,overlay:{gradient:"roundedBevel"},border:{width:.5},labels:{visible:!1,distance:35,font:X.DEFAULT_FONT,margin:kt(.5),align:et,zIndex:1,position:Ci},animation:{type:Fe},highlight:{visible:!0,border:{width:1}},visible:!0}),wt(es.prototype,Mi),ss={createLegendItem:function(t,e,i){var n,s,o,r,a,h=this.options.legend||{},l=h.labels||{},c=h.inactiveItems||{},u=c.labels||{};i&&i.visibleInLegend!==!1&&(n=i.visible!==!1,s=n?At(l):At(u)||At(l),o=i.category||"",s&&(o=s({text:o,series:i.series,dataItem:i.dataItem,percentage:i.percentage,value:t})),n?(r={},a=e.color):(r={color:u.color,font:u.font},a=(c.markers||{}).color),o&&this.legendItems.push({pointIndex:i.index,text:o,series:i.series,markerColor:a,labels:r}))}},os=70,rs=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.plotArea=t,this.chartService=t.chartService,this.points=[],this.legendItems=[],this.render()},render:function(){this.traverseDataPoints(this.addValue.bind(this))},traverseDataPoints:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m,y,_,w=this,b=this,A=b.options,C=b.plotArea.options.seriesColors;for(void 0===C&&(C=[]),e=C.length,i=A.series,n=i.length,s=0;s<n;s++)for(o=i[s],r=o.data,a=I(o),h=a.total,l=a.points,c=a.count,u=360/h,p=void 0,isFinite(u)||(p=360/c),d=void 0,d=lt(o.startAngle)?o.startAngle:A.startAngle,s!==n-1&&o.labels.position===Ci&&(o.labels.position=K),g=0;g<l.length;g++)f=l[g],f&&(v=f.fields,x=f.value,m=f.visible,y=0!==x?p||x*u:0,_=1!==r.length&&!!v.explode,mt(o.color)||(o.color=v.color||C[g%e]),t(f.valueFields.value,new q.Ring(null,0,0,d,y),{owner:w,category:v.category||"",index:g,series:o,seriesIx:s,dataItem:r[g],percentage:0!==h?x/h:0,explode:_,visibleInLegend:v.visibleInLegend,visible:m,zIndex:n-s,animationDelay:w.animationDelay(g,s,n)}),m!==!1&&(d+=y))},evalSegmentOptions:function(t,e,i){var s=i.series;n(t,{value:e,series:s,dataItem:i.dataItem,category:i.category,percentage:i.percentage},{defaults:s._defaults,excluded:["data","content","template","visual","toggle"]})},addValue:function(e,i,n){var s,o=wt({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),n.visible!==!1&&(s=new es(e,i,o),t.extend(s,n),this.append(s),this.points.push(s))},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d,g,f,v,x,m,y,_,w,b=this,A=b.options,C=b.points,S=b.seriesConfigs;for(void 0===S&&(S=[]),e=C.length,i=t.clone(),n=5,s=Math.min(i.width(),i.height()),o=s/2,r=s-.85*s,a=new gt(i.x1,i.y1,i.x1+s,i.y1+s),h=a.center(),l=i.center(),c=A.series.length,u=[],p=[],d=yt(A.padding,r),d=d>o-n?o-n:d,a.translate(l.x-h.x,l.y-h.y),g=o-d,f=new dt(g+a.x1+d,g+a.y1+d),v=0;v<e;v++)x=C[v],m=x.sector,y=x.seriesIx,m.radius=g,m.center=f,S.length&&(_=S[y],m.innerRadius=_.innerRadius,m.radius=_.radius),y===c-1&&x.explode&&(m.center=m.clone().setRadius(.15*m.radius).point(m.middle())),x.reflow(a),w=x.label,w&&w.options.position===Ci&&y===c-1&&(w.orientation===st?p.push(w):u.push(w));u.length>0&&(u.sort(this.labelComparator(!0)),this.leftLabelsReflow(u)),p.length>0&&(p.sort(this.labelComparator(!1)),this.rightLabelsReflow(p)),this.box=a},leftLabelsReflow:function(t){var e=this.distanceBetweenLabels(t);this.distributeLabels(e,t)},rightLabelsReflow:function(t){var e=this.distanceBetweenLabels(t);this.distributeLabels(e,t)},distanceBetweenLabels:function(t){var e,i,n=Pt(this.points),s=n.sector,o=t.length-1,r=s.radius+n.options.labels.distance,a=[],h=t[0].box,l=Bt(h.y1-(s.center.y-r-h.height()-h.height()/2));for(a.push(l),e=0;e<o;e++)i=t[e+1].box,h=t[e].box,l=Bt(i.y1-h.y2),a.push(l);return l=Bt(s.center.y+r-t[o].box.y2-t[o].box.height()/2),a.push(l),a},distributeLabels:function(t,e){var i,n,s,o,r=this,a=t.length;for(o=0;o<a;o++)for(s=-t[o],i=n=o;s>0&&(i>=0||n<a);)s=r._takeDistance(t,o,--i,s),s=r._takeDistance(t,o,++n,s);this.reflowLabels(t,e)},_takeDistance:function(t,e,i,n){var s,o=n;return t[i]>0&&(s=Math.min(t[i],o),o-=s,t[i]-=s,t[e]+=s),o},reflowLabels:function(t,e){var i,n,s,o,r=this,a=Pt(this.points),h=a.sector,l=a.options.labels,c=e.length,u=l.distance,p=h.center.y-(h.radius+u)-e[0].box.height();for(t[0]+=2,n=0;n<c;n++)s=e[n],o=s.box,p+=t[n],i=r.hAlignLabel(o.x2,h.clone().expand(u),p,p+o.height(),s.orientation===st),s.orientation===st?(l.align!==et&&(i=h.radius+h.center.x+u),s.reflow(new gt(i+o.width(),p,i,p))):(l.align!==et&&(i=h.center.x-h.radius-u),s.reflow(new gt(i-o.width(),p,i,p))),p+=o.height()},createVisual:function(){var t,e,i,n,s,o,r,a,h,l,c,u,p,d,g=this,f=this,v=f.options.connectors,x=f.points,m=x.length,y=4;for(pt.fn.createVisual.call(this),this._connectorLines=[],t=0;t<m;t++)e=x[t],i=e.sector,n=e.label,s=i.middle(),o=(e.options.connectors||{}).color||v.color,n&&(r=new Ut({stroke:{color:o,width:v.width},animation:{type:ce,delay:e.animationDelay}}),n.options.position===Ci&&(a=n.box,h=i.center,l=i.point(s),c=new dt(a.x1,a.center().y),u=void 0,p=void 0,d=void 0,l=i.clone().expand(v.padding).point(s),r.moveTo(l.x,l.y),n.orientation===st?(p=new dt(a.x1-v.padding,a.center().y),d=E(h,l,c,p),c=new dt(p.x-y,p.y),d=d||c,d.x=Math.min(d.x,c.x),g.pointInCircle(d,i.center,i.radius+y)||d.x<i.center.x?(u=i.center.x+i.radius+y,e.options.labels.align!==Me?u<c.x?r.lineTo(u,l.y):r.lineTo(l.x+2*y,l.y):r.lineTo(u,l.y),r.lineTo(c.x,p.y)):(d.y=p.y,r.lineTo(d.x,d.y))):(p=new dt(a.x2+v.padding,a.center().y),d=E(h,l,c,p),c=new dt(p.x+y,p.y),d=d||c,d.x=Math.max(d.x,c.x),g.pointInCircle(d,i.center,i.radius+y)||d.x>i.center.x?(u=i.center.x-i.radius-y,e.options.labels.align!==Me?u>c.x?r.lineTo(u,l.y):r.lineTo(l.x-2*y,l.y):r.lineTo(u,l.y),r.lineTo(c.x,p.y)):(d.y=p.y,r.lineTo(d.x,d.y))),r.lineTo(p.x,p.y),g._connectorLines.push(r),g.visual.append(r)))},labelComparator:function(t){var e=t?-1:1;return function(t,i){var n=(t.parent.sector.middle()+270)%360,s=(i.parent.sector.middle()+270)%360;return(n-s)*e}},hAlignLabel:function(t,e,i,n,s){var o=e.radius,r=e.center,a=r.x,h=r.y,l=Math.min(Math.abs(h-i),Math.abs(h-n));return l>o?t:a+Math.sqrt(o*o-l*l)*(s?1:-1)},pointInCircle:function(t,e,i){return Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2)<Math.pow(i,2)},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value)},animationDelay:function(t){return t*os}}),vt(rs,{startAngle:90,connectors:{width:2,color:"#939393",padding:8},inactiveItems:{markers:{},labels:{}}}),wt(rs.prototype,ss),as=bn.extend({render:function(){this.createPieChart(this.series)},createPieChart:function(t){var e=t[0],i=new rs(this,{series:t,padding:e.padding,startAngle:e.startAngle,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)},appendChart:function(t,e){bn.fn.appendChart.call(this,t,e),Rt(this.options.legend.items,t.legendItems)}}),hs=es.extend({reflowLabel:function(){var t,e,i=this,n=i.options.labels,s=i.label,o=this.sector.clone(),r=o.middle();s&&(t=s.box.height(),n.position===K?(o.radius-=(o.radius-o.innerRadius)/2,e=o.point(r),s.reflow(new gt(e.x,e.y-t/2,e.x,e.y))):es.fn.reflowLabel.call(this))},createSegment:function(t,e){return q.ShapeBuilder.current.createRing(t,e)}}),vt(hs,{overlay:{gradient:"roundedGlass"},labels:{position:K},animation:{type:Fe}}),wt(hs.prototype,Mi),ls=50,cs=rs.extend({addValue:function(e,i,n){var s,o=wt({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),e&&n.visible!==!1&&(s=new hs(e,i,o),t.extend(s,n),this.append(s),this.points.push(s))},reflow:function(t){var e,i,n,s,o,r,a,h,l,c,u,p,d=this,g=this.options,f=t.clone(),v=5,x=Math.min(f.width(),f.height()),m=x/2,y=x-.85*x,_=g.series,w=_.length,b=yt(g.padding,y);for(b=b>m-v?m-v:b,e=m-b,i=0,s=0;s<w;s++)o=_[s],0===s&<(o.holeSize)&&(n=o.holeSize,e-=o.holeSize),lt(o.size)?e-=o.size:i++,lt(o.margin)&&s!==w-1&&(e-=o.margin);for(lt(n)||(r=(m-b)/(w+.75),n=.75*r,e-=n),a=n,h=0,this.seriesConfigs=[],u=0;u<w;u++)p=_[u],l=yt(p.size,e/i),a+=h,c=a+l,d.seriesConfigs.push({innerRadius:a,radius:c}),h=p.margin||0,a=c;rs.fn.reflow.call(this,t)},animationDelay:function(t,e,i){return t*ls+le*(e+1)/(i+1)}}),vt(cs,{startAngle:90,connectors:{width:2,color:"#939393",padding:8}}),us=as.extend({render:function(){this.createDonutChart(this.series)},createDonutChart:function(t){var e=t[0],i=new cs(this,{series:t,padding:e.padding,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)}}),ps=.15,ds=bn.extend({initFields:function(){this.valueAxisRangeTracker=new Ki},render:function(){this.addToLegend(this.series),this.createPolarAxis(),this.createCharts(),this.createValueAxis()},alignAxes:function(){var t=this.valueAxis,e=t.range(),i=t.options.reverse?e.max:e.min,n=t.getSlot(i),s=this.polarAxis.getSlot(0).center,o=t.box.translate(s.x-n.x1,s.y-n.y1);t.reflow(o)},createValueAxis:function(){var t,e,i,n,s=this.valueAxisRangeTracker,o=s.query(),r=this.valueAxisOptions({roundToMajorUnit:!1,zIndex:-1});r.type===_i?(t=q.RadarLogarithmicAxis,e={min:.1,max:1}):(t=q.RadarNumericAxis,e={min:0,max:1}),i=s.query(name)||o||e,i&&o&&(i.min=Math.min(i.min,o.min),i.max=Math.max(i.max,o.max)),n=new t(i.min,i.max,r,this.chartService),this.valueAxis=n,this.appendAxis(n)},reflowAxes:function(){var t,e,i=this,n=i.options.plotArea,s=i.valueAxis,o=i.polarAxis,r=i.box,a=Math.min(r.width(),r.height())*ps,h=kt(n.padding||{},a),l=r.clone().unpad(h),c=l.clone();c.y2=c.y1+Math.min(c.width(),c.height()),c.align(l,it,K),t=c.clone().shrink(0,c.height()/2),o.reflow(c),s.reflow(t),e=s.lineBox().height()-s.box.height(),s.reflow(s.box.unpad({top:e})),this.axisBox=c,this.alignAxes(c)},backgroundBox:function(){return this.box}}),gs=cn.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=dt.onCircle(t.center,t.startAngle,i);return new gt(n.x,n.y,n.x,n.y)}}),vt(gs,{clip:!1}),fs=Jn.extend({}),fs.prototype.pointSlot=gs.prototype.pointSlot,vt(fs,{clip:!1}),vs=Zi.extend({closeFill:function(t){var e=this._polarAxisCenter();t.lineTo(e.x,e.y)},_polarAxisCenter:function(){var t=this.parent.plotArea.polarAxis,e=t.box.center();return e},strokeSegments:function(){var t,e,i,n=this._strokeSegments;return n||(t=this._polarAxisCenter(),e=new q.CurveProcessor((!1)),i=Di.prototype.points.call(this),i.push(t),n=this._strokeSegments=e.process(i),n.pop()),n}}),xs=Xi.extend({points:function(){var t=this,e=t.parent.plotArea.polarAxis,i=t.stackPoints,n=e.box.center(),s=Di.prototype.points.call(this,i);return s.unshift([n.x,n.y]),s.push([n.x,n.y]),s}}),ms=fs.extend({createSegment:function(t,e,i){var n,s=(e.line||{}).style;return n=s===Se?new vs(t,null,(!1),e,i):new xs(t,[],e,i);
},createMissingValue:function(t,e){var i;return h(t.x)&&e!==Ae&&(i={x:t.x,y:t.y},e===be&&(i.y=0)),i},seriesMissingValues:function(t){return t.missingValues||be},_hasMissingValuesGap:function(){var t,e=this,i=this.options.series;for(t=0;t<i.length;t++)if(e.seriesMissingValues(i[t])===Ce)return!0},sortPoints:function(t){var e,i,n,s=this;if(t.sort(V),this._hasMissingValuesGap())for(e=0;e<t.length;e++)i=t[e],i&&(n=i.value,h(n.y)||s.seriesMissingValues(i.series)!==Ce||delete t[e]);return t}}),ys=ds.extend({createPolarAxis:function(){var t=new q.PolarAxis(this.options.xAxis,this.chartService);this.polarAxis=t,this.axisX=t,this.appendAxis(t)},valueAxisOptions:function(t){return wt(t,{majorGridLines:{type:ht},minorGridLines:{type:ht}},this.options.yAxis)},createValueAxis:function(){ds.fn.createValueAxis.call(this),this.axisY=this.valueAxis},appendChart:function(t,e){this.valueAxisRangeTracker.update(t.yAxisRanges),bn.prototype.appendChart.call(this,t,e)},createCharts:function(){var t=this.filterVisibleSeries(this.series),e=this.panes[0];this.createLineChart(f(t,[Ne]),e),this.createScatterChart(f(t,[Ge]),e),this.createAreaChart(f(t,[He]),e)},createLineChart:function(t,e){if(0!==t.length){var i=new fs(this,{series:t});this.appendChart(i,e)}},createScatterChart:function(t,e){if(0!==t.length){var i=new gs(this,{series:t});this.appendChart(i,e)}},createAreaChart:function(t,e){if(0!==t.length){var i=new ms(this,{series:t});this.appendChart(i,e)}},_dispatchEvent:function(t,e,i){var n=t._eventCoordinates(e),s=new dt(n.x,n.y),o=this.axisX.getValue(s),r=this.axisY.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:bt(e),x:o,y:r})},createCrosshairs:function(){}}),vt(ys,{xAxis:{},yAxis:{}}),wt(ys.prototype,An),_s=Wi.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=dt.onCircle(t.center,t.middle(),i);return new gt(n.x,n.y,n.x,n.y)},createSegment:function(t,e,i){var n,s,o=e.style;return n=o===Se?Hi:Di,s=new n(t,e,i),t.length===e.data.length&&(s.options.closed=!0),s}}),vt(_s,{clip:!1}),ws=Zi.extend({closeFill:function(){}}),bs=Xi.extend({points:function(){return Di.prototype.points.call(this,this.stackPoints)}}),As=_s.extend({createSegment:function(t,e,i,n){var s,o,r=this.options.isStacked,a=(e.line||{}).style;return a===Se?(s=new ws(t,n,r,e,i),s.options.closed=!0):(r&&i>0&&n&&(o=n.linePoints.slice(0).reverse()),t.push(t[0]),s=new bs(t,o,e,i)),s},seriesMissingValues:function(t){return t.missingValues||be}}),Cs=hs.extend({init:function(t,e){hs.fn.init.call(this,t,null,e)}}),vt(Cs,{overlay:{gradient:"none"},labels:{distance:10}}),Ss=pt.extend({reflow:function(t){var e,i,n=this,s=n.options,o=n.children,r=s.gap,a=s.spacing,h=o.length,l=h+r+a*(h-1),c=t.angle/l,u=t.startAngle+c*(r/2);for(e=0;e<h;e++)i=t.clone(),i.startAngle=u,i.angle=c,o[e].sector&&(i.radius=o[e].sector.radius),o[e].reflow(i),o[e].sector=i,u+=c+c*a}}),vt(Ss,{gap:1,spacing:0}),ks=pt.extend({reflow:function(t){var e,i,n=this,s=n.options.reverse,o=n.children,r=o.length,a=s?r-1:0,h=s?-1:1;for(this.box=new gt,e=a;e>=0&&e<r;e+=h)i=o[e].sector,i.startAngle=t.startAngle,i.angle=t.angle}}),Ts=nn.extend({pointType:function(){return Cs},clusterType:function(){return Ss},stackType:function(){return ks},categorySlot:function(t,e){return t.getSlot(e)},pointSlot:function(t,e){var i=t.clone(),n=t.center.y;return i.radius=n-e.y1,i.innerRadius=n-e.y2,i},reflowPoint:function(t,e){t.sector=e,t.reflow()},createAnimation:function(){this.options.animation.center=this.box.toRect().center(),nn.fn.createAnimation.call(this)}}),Ts.prototype.reflow=Vi.prototype.reflow,vt(Ts,{clip:!1,animation:{type:"pie"}}),Ps=ds.extend({createPolarAxis:function(){var t=new q.RadarCategoryAxis(this.options.categoryAxis,this.chartService);this.polarAxis=t,this.categoryAxis=t,this.appendAxis(t),this.aggregateCategories(),this.createCategoryAxesLabels()},valueAxisOptions:function(t){return this._hasBarCharts&&wt(t,{majorGridLines:{type:ht},minorGridLines:{type:ht}}),this._isStacked100&&wt(t,{roundToMajorUnit:!1,labels:{format:"P0"}}),wt(t,this.options.valueAxis)},aggregateCategories:function(){Vn.prototype.aggregateCategories.call(this,this.panes)},createCategoryAxesLabels:function(){Vn.prototype.createCategoryAxesLabels.call(this,this.panes)},filterSeries:function(t){return t},createCharts:function(){var t=this.filterVisibleSeries(this.series),e=this.panes[0];this.createAreaChart(f(t,[qe]),e),this.createLineChart(f(t,[Ue]),e),this.createBarChart(f(t,[We]),e)},chartOptions:function(t){var e,i,n={series:t},s=t[0];return s&&(e=this.filterVisibleSeries(t),i=s.stack,n.isStacked=i&&e.length>1,n.isStacked100=i&&"100%"===i.type&&e.length>1,n.isStacked100&&(this._isStacked100=!0)),n},createAreaChart:function(t,e){if(0!==t.length){var i=new As(this,this.chartOptions(t));this.appendChart(i,e)}},createLineChart:function(t,e){if(0!==t.length){var i=new _s(this,this.chartOptions(t));this.appendChart(i,e)}},createBarChart:function(t,e){var i,n,s;0!==t.length&&(i=t[0],n=this.chartOptions(t),n.gap=i.gap,n.spacing=i.spacing,s=new Ts(this,n),this.appendChart(s,e),this._hasBarCharts=!0)},seriesCategoryAxis:function(){return this.categoryAxis},_dispatchEvent:function(t,e,i){var n=t._eventCoordinates(e),s=new dt(n.x,n.y),o=this.categoryAxis.getCategory(s),r=this.valueAxis.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:bt(e),category:o,value:r})},createCrosshairs:function(){}}),wt(Ps.prototype,An,{appendChart:Vn.prototype.appendChart,aggregateSeries:Vn.prototype.aggregateSeries}),vt(Ps,{categoryAxis:{categories:[]},valueAxis:{}}),Rs=pt.extend({init:function(t,e,i){pt.fn.init.call(this,e),this.value=t,this.options.index=i.index},reflow:function(t){var e=this.points,i=this.children[0];this.box=new gt(e[0].x,e[0].y,e[1].x,e[2].y),i&&i.reflow(new gt(t.x1,e[0].y,t.x2,e[2].y))},createVisual:function(){var t,e=this,i=this.options;pt.fn.createVisual.call(this),t=i.visual?i.visual({category:this.category,dataItem:this.dataItem,value:this.value,series:this.series,percentage:this.percentage,points:this.points,options:i,sender:this.getSender(),createVisual:function(){return e.createPath()}}):this.createPath(),t&&this.visual.append(t)},createPath:function(){var t=this.options,e=t.border,i=Ut.fromPoints(this.points,{fill:{color:t.color,opacity:t.opacity},stroke:{color:e.color,opacity:e.opacity,width:e.width}}).close();return i},createHighlight:function(t){return Ut.fromPoints(this.points,t)},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var t=Ut.fromPoints(this.points).close();return{options:this.options,path:t}},tooltipAnchor:function(){var t=this.box;return{point:new dt(t.center().x,t.y1),align:{horizontal:"center",vertical:"top"}}},formatValue:function(t){var e=this;return e.owner.formatPointValue(e,t)}}),vt(Rs,{color:tt,border:{width:1}}),wt(Rs.prototype,Mi),Is=pt.extend({init:function(t,e){pt.fn.init.call(this,e),this.plotArea=t,this.points=[],this.labels=[],this.legendItems=[],this.render()},formatPointValue:function(t,e){return this.chartService.format.auto(e,t.value)},render:function(){var t,e,i,n,s,o,r,a,h,l,c,u=this,p=this,d=p.options,g=p.plotArea.options.seriesColors;if(void 0===g&&(g=[]),t=d.series[0],e=t.data)for(i=I(t),n=i.total,s=i.points,o=0;o<s.length;o++)r=s[o],r&&(a=r.fields,mt(t.color)||(t.color=a.color||g[o%g.length]),a=wt({index:o,owner:u,series:t,dataItem:e[o],percentage:r.value/n},a,{visible:r.visible}),h=r.valueFields.value,l=u.createSegment(h,a),c=u.createLabel(h,a),l&&c&&l.append(c))},evalSegmentOptions:function(t,e,i){var s=i.series;n(t,{value:e,series:s,dataItem:i.dataItem,index:i.index},{defaults:s._defaults,excluded:["data","content","template","toggle","visual"]})},createSegment:function(e,i){var n,s=wt({},i.series);if(this.evalSegmentOptions(s,e,i),this.createLegendItem(e,s,i),i.visible!==!1)return n=new Rs(e,s,i),t.extend(n,i),this.append(n),this.points.push(n),n},createLabel:function(t,e){var i,n,s,o=e.series,r=e.dataItem,a=wt({},this.options.labels,o.labels),h=t;if(a.visible)return i=At(a),i?h=i({dataItem:r,value:t,percentage:e.percentage,category:e.category,series:o}):a.format&&(h=this.plotArea.chartService.format.auto(a.format,h)),a.color||(n=new jt(o.color).percBrightness(),a.color=n>180?ot:tt,a.background||(a.background=o.color)),this.evalSegmentOptions(a,t,e),s=new Ct(h,wt({vAlign:a.position},a)),this.labels.push(s),s},labelPadding:function(){var t,e,i,n,s=this.labels,o={left:0,right:0};for(t=0;t<s.length;t++)e=s[t],i=e.options.align,i!==K&&(n=s[t].box.width(),i===J?o.left=Math.max(o.left,n):o.right=Math.max(o.right,n));return o},dynamicSlopeReflow:function(t,e,i){var n,s,o,r,a,h,l,c,u,p,d,g=this,f=g.options,v=g.points,x=v.length,m=v[0],y=m;for(n=0;n<v.length;n++)v[n].percentage>y.percentage&&(y=v[n]);for(s=m.percentage/y.percentage*e,o=(e-s)/2,r=0,a=0;a<x;a++)h=v[a].percentage,l=v[a+1],c=l?l.percentage:h,u=v[a].points=[],p=f.dynamicHeight?i*h:i/x,d=void 0,d=h?(e-s*(c/h))/2:c?0:e/2,d=Tt(d,0,e),u.push(new Qt(t.x1+o,t.y1+r)),u.push(new Qt(t.x1+e-o,t.y1+r)),u.push(new Qt(t.x1+e-d,t.y1+p+r)),u.push(new Qt(t.x1+d,t.y1+p+r)),o=d,r+=p+f.segmentSpacing,s=Tt(e-2*d,0,e)},constantSlopeReflow:function(t,e,i){var n,s,o,r,a,h=this,l=h.options,c=h.points,u=c.length,p=l.neckRatio<=1,d=p?l.neckRatio*e:e,g=p?0:(e-e/l.neckRatio)/2,f=p?e:e-2*g,v=(f-d)/2,x=0;for(n=0;n<u;n++)s=c[n].points=[],o=c[n].percentage,r=l.dynamicHeight?v*o:v/u,a=l.dynamicHeight?i*o:i/u,s.push(new Qt(t.x1+g,t.y1+x)),s.push(new Qt(t.x1+e-g,t.y1+x)),s.push(new Qt(t.x1+e-g-r,t.y1+a+x)),s.push(new Qt(t.x1+g+r,t.y1+a+x)),g+=r,x+=a+l.segmentSpacing},reflow:function(t){var e,i,n,s,o,r=this.points,a=r.length;if(a)for(e=this.options,i=t.clone().unpad(this.labelPadding()),n=i.height()-e.segmentSpacing*(a-1),s=i.width(),e.dynamicSlope?this.dynamicSlopeReflow(i,s,n):this.constantSlopeReflow(i,s,n),o=0;o<a;o++)r[o].reflow(t)}}),vt(Is,{neckRatio:.3,width:300,dynamicSlope:!1,dynamicHeight:!0,segmentSpacing:0,labels:{visible:!1,align:K,position:K,zIndex:1}}),wt(Is.prototype,ss),Es=bn.extend({render:function(){this.createFunnelChart(this.series)},createFunnelChart:function(t){var e=t[0],i=new Is(this,{series:t,legend:this.options.legend,neckRatio:e.neckRatio,dynamicHeight:e.dynamicHeight,dynamicSlope:e.dynamicSlope,segmentSpacing:e.segmentSpacing,highlight:e.highlight});this.appendChart(i)},appendChart:function(t,e){bn.fn.appendChart.call(this,t,e),Rt(this.options.legend.items,t.legendItems)}}),Vs="color",Ms="first",Ls="from",Bs="max",Os="min",zs="noteText",Ds="summary",Fs="to",qn.current.register(Vn,[Pe,Me,ze,Je,Te,Ke,Ve,De,Ee,$e,Re,Qe,Ye,Xe,ti,Oe]),qn.current.register(ts,[Ze,je,Ie]),qn.current.register(as,[Fe]),qn.current.register(us,[Le]),qn.current.register(Es,[Be]),qn.current.register(ys,[He,Ne,Ge]),qn.current.register(Ps,[qe,We,Ue]),ie.current.register([Pe,Me,ze,Je,Te,Ke],[j],[wi,Vs,zs,fe,ve]),ie.current.register([Ye,Xe],[Ls,Fs],[wi,Vs,zs]),ie.current.register([ti,Oe],[j],[wi,Vs,zs,Ds]),ie.current.register([He,Ne,Ge],[nt,it],[Vs]),ie.current.register([qe,We,Ue],[j],[Vs]),ie.current.register([Be],[j],[wi,Vs,"visibleInLegend","visible"]),Sn.current.register([Pe,Me,ze,Je,Te,Ke,ti,Oe],{value:Bs,color:Ms,noteText:Ms,errorLow:Os,errorHigh:Bs}),Sn.current.register([Ye,Xe],{from:Os,to:Bs,color:Ms,noteText:Ms}),Sn.current.register([qe,We,Ue],{value:Bs,color:Ms}),ie.current.register([Ze,je,Ie],[nt,it],[Vs,zs,xe,me,ye,_e]),ie.current.register([Ie],[nt,it,"size"],[Vs,wi,zs]),ie.current.register([Ve,De],["open","high","low","close"],[wi,Vs,"downColor",zs]),Sn.current.register([Ve,De],{open:Bs,high:Bs,low:Os,close:Bs,color:Ms,downColor:Ms,noteText:Ms}),ie.current.register([Re,Qe],["lower","q1","median","q3","upper","mean","outliers"],[wi,Vs,zs]),Sn.current.register([Re,Qe],{lower:Bs,q1:Bs,median:Bs,q3:Bs,upper:Bs,mean:Bs,outliers:Ms,color:Ms,noteText:Ms}),ie.current.register([Ee,$e],["current","target"],[wi,Vs,"visibleInLegend",zs]),Sn.current.register([Ee,$e],{current:Bs,target:Bs,color:Ms,noteText:Ms}),ie.current.register([Fe,Le],[j],[wi,Vs,"explode","visibleInLegend","visible"]),Hs=[wi,j,nt,it],Ns="mousemove",Gs="contextmenu",qs=20,Ws=W.extend({init:function(t,e,i,n){var s,o=this;void 0===n&&(n={}),this.observers=[],this.addObserver(n.observer),this.chartService=new Nt.ChartService(this,n),this.chartService.theme=i,this._initElement(t),s=wt({},this.options,e),this._originalOptions=wt({},s),this._theme=i,this._initTheme(s,i),this._initSurface(),this._initHandlers(),this.bindCategories(),q.FontLoader.preloadFonts(e,function(){o._destroyed||(o.trigger("init"),o._redraw(),o._attachEvents())})},_initElement:function(t){for(this._setElementClass(t),t.style.position="relative";t.firstChild;)t.removeChild(t.firstChild);this.element=t},_setElementClass:function(t){q.addClass(t,"k-chart")},_initTheme:function(e,i){var n,s=[],o=e.series||[];for(n=0;n<o.length;n++)s.push(t.extend({},o[n]));e.series=s,M(e),this.applyDefaults(e,i),null===e.seriesColors&&delete e.seriesColors,this.options=wt({},i,e),this.applySeriesColors()},getSize:function(){return{width:this.element.offsetWidth,height:this.element.offsetHeight}},resize:function(t){var e=this.getSize(),i=this._size;(t||(e.width>0||e.height>0)&&(!i||e.width!==i.width||e.height!==i.height))&&(this._size=e,this._resize(e,t),this.trigger("resize",e))},_resize:function(){this._noTransitionsRedraw()},redraw:function(t){var e,i;this.applyDefaults(this.options),this.applySeriesColors(),t?(e=this._model._plotArea,i=e.findPane(t),e.redraw(i)):this._redraw()},getAxis:function(t){var e,i=this._plotArea.axes;for(e=0;e<i.length;e++)if(i[e].options.name===t)return new Jt(i[e])},findAxisByName:function(t){return this.getAxis(t)},plotArea:function(){return new te(this._plotArea)},toggleHighlight:function(t,e){var i,n,s,o=this._plotArea,r=(o.srcSeries||o.series||[])[0];mt(e)?i=o.filterPoints(e):(_t(e)?(n=e.series,s=e.category):n=s=e,i=r.type===Le?L(o.pointsBySeriesName(n),s):r.type===Fe||r.type===Be?L((o.charts[0]||{}).points,s):o.pointsBySeriesName(n)),i&&this.togglePointsHighlight(t,i)},togglePointsHighlight:function(t,e){var i,n=this._highlight;for(i=0;i<e.length;i++)n.togglePointHighlight(e[i],t)},showTooltip:function(t){var e,i,n,s=this._sharedTooltip(),o=this,r=o._tooltip,a=o._plotArea;mt(t)?(e=a.findPoint(t),e&&s&&(i=e.categoryIx)):s&<(t)&&(i=a.categoryAxis.categoryIndex(t)),s?i>=0&&(n=this._plotArea.pointsByCategoryIndex(i),r.showAt(n)):e&&r.show(e)},hideTooltip:function(){this._tooltip.hide()},_initSurface:function(){var t=this.surface,e=this._surfaceWrap(),i=this.options.chartArea;i.width&&q.elementSize(e,{width:i.width}),i.height&&q.elementSize(e,{height:i.height}),t&&t.options.type===this.options.renderAs?(this.surface.clear(),this.surface.resize()):(t&&t.destroy(),this.surface=Wt.Surface.create(e,{type:this.options.renderAs}))},_surfaceWrap:function(){return this.element},_redraw:function(){var t=this._getModel();this._destroyView(),this._model=t,this._plotArea=t._plotArea,t.renderVisual(),this.options.transitions!==!1&&t.traverse(function(t){t.animation&&t.animation.setup()}),this._initSurface(),this.surface.draw(t.visual),this.options.transitions!==!1&&t.traverse(function(t){t.animation&&t.animation.play()}),this._tooltip=this._createTooltip(),this._highlight=new Mn,this._setupSelection(),this._createPannable(),this._createZoomSelection(),this._createMousewheelZoom(),this.trigger(xi),this._navState||this._cancelDomEvents()},exportVisual:function(t){var e,i,n,s;return t&&(t.width||t.height)?(i=this.options.chartArea,n=this._originalOptions.chartArea,wt(i,t),s=this._getModel(),i.width=n.width,i.height=n.height,s.renderVisual(),e=s.visual):e=this.surface.exportVisual(),e},_sharedTooltip:function(){return this._plotArea instanceof Vn&&this.options.tooltip.shared},_createPannable:function(){var t=this.options;t.pannable!==!1&&(this._pannable=new Ln(this._plotArea,t.pannable))},_createZoomSelection:function(){var t=this.options.zoomable,e=(t||{}).selection;t!==!1&&e!==!1&&(this._zoomSelection=new Bn(this,e))},_createMousewheelZoom:function(){var t=this.options.zoomable,e=(t||{}).mousewheel;t!==!1&&e!==!1&&(this._mousewheelZoom=new On(this,e))},_createTooltip:function(){var t,e=this,i=e.options.tooltip;return t=this._sharedTooltip()?this._createSharedTooltip(i):new Yn(this.chartService,i)},_createSharedTooltip:function(t){return new Zn(this._plotArea,t)},applyDefaults:function(t,e){B(t,e),O(t,e)},applySeriesColors:function(){var t,e,i,n,s=this.options,o=s.series,r=s.seriesColors||[];for(t=0;t<o.length;t++)e=o[t],i=r[t%r.length],n=e._defaults,e.color=e.color||i,n&&(n.color=n.color||i)},_getModel:function(){var t=this.options,e=this._createPlotArea(),i=new q.RootElement(this._modelOptions());return i.chart=this,i._plotArea=e,q.Title.buildTitle(t.title,i),t.legend.visible&&i.append(new Gn(e.options.legend,this.chartService)),i.append(e),i.reflow(),i},_modelOptions:function(){var t=this,e=t.options,i=t.element,n=q.elementSize(i);return this._size=null,wt({width:Math.floor(n.width)||X.DEFAULT_WIDTH,height:Math.floor(n.height)||X.DEFAULT_HEIGHT,transitions:e.transitions},e.chartArea)},_createPlotArea:function(t){var e=this.options,i=qn.current.create(t?[]:e.series,e,this.chartService);return i},_hasSelection:function(){return this._selections&&this._selections.length},_setupSelection:function(){var t,e,i,n,s,o,r=this,a=this,h=a._plotArea.axes,l=this._selections=[];for(t=0;t<h.length;t++)e=h[t],i=e.options,e instanceof Mt&&i.select&&!i.vertical&&(n=0,s=i.categories.length-1,e instanceof zt&&(n=i.categories[n],s=i.categories[s]),i.justified||(e instanceof zt?s=q.addDuration(s,1,i.baseUnit,i.weekStartDay):s++),o=new Xn(r,e,wt({min:n,max:s},i.select)),l.push(o))},_selectStart:function(t){return this.trigger(gi,t)},_select:function(t){return this.trigger(fi,t)},_selectEnd:function(t){return this.trigger(vi,t)},_initHandlers:function(){this._clickHandler=this._click.bind(this),this._mousewheelHandler=this._mousewheel.bind(this),this._surfaceMouseenterHandler=this._mouseover.bind(this),this._surfaceMouseleaveHandler=this._mouseout.bind(this),this._mousemove=kendo.throttle(this._mousemove.bind(this),qs)},addObserver:function(t){t&&this.observers.push(t)},removeObserver:function(t){var e=this.observers.indexOf(t);e>=0&&this.observers.splice(e,1)},requiresHandlers:function(t){var e,i=this.observers;for(e=0;e<i.length;e++)if(i[e].requiresHandlers(t))return!0},trigger:function(t,e){var i,n,s;for(void 0===e&&(e={}),t===mi&&(e.anchor.point=this._toDocumentCoordinates(e.anchor.point)),e.sender=this,i=this.observers,n=!1,s=0;s<i.length;s++)i[s].trigger(t,e)&&(n=!0);return n},_attachEvents:function(){var t,e,i=this,n=i.element,s=i.surface;s.bind("mouseenter",this._surfaceMouseenterHandler),s.bind("mouseleave",this._surfaceMouseleaveHandler),Ht(n,(t={},t[Gs]=this._clickHandler,t[Si]=this._mousewheelHandler,t)),this._shouldAttachMouseMove()&&Ht(n,(e={},e[Ns]=this._mousemove,e)),this.domEvents=Nt.DomEventsBuilder.create(this.element,{start:this._start.bind(this),move:this._move.bind(this),end:this._end.bind(this),tap:this._tap.bind(this),gesturestart:this._gesturestart.bind(this),gesturechange:this._gesturechange.bind(this),gestureend:this._gestureend.bind(this)})},_cancelDomEvents:function(){this.domEvents&&this.domEvents.cancel&&this.domEvents.cancel()},_gesturestart:function(t){this._mousewheelZoom&&!this._stopDragEvent(t)&&(this._gestureDistance=t.distance,this._unsetActivePoint(),this.surface.suspendTracking())},_gestureend:function(t){this._zooming&&!this._stopDragEvent(t)&&(this.surface&&this.surface.resumeTracking(),this._zooming=!1,this.trigger(di,{}))},_gesturechange:function(t){var e,i,n,s,o=this._mousewheelZoom;o&&!this._stopDragEvent(t)&&(t.preventDefault(),e=this._gestureDistance,i=-t.distance/e+1,Math.abs(i)>=.1&&(i=Math.round(10*i),this._gestureDistance=t.distance,n={delta:i,axisRanges:D(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(ui,n)||(this._zooming||(this._zooming=!0),s=n.axisRanges=o.updateRanges(i),s&&!this.trigger(pi,n)&&o.zoom())))},_mouseout:function(t){if(t.element){var e=this._drawingChartElement(t.element,t);e&&e.leave&&e.leave(this,t.originalEvent)}},_start:function(t){var e=this._eventCoordinates(t);!this._stopDragEvent(t)&&this._plotArea.backgroundContainsPoint(e)&&(this.requiresHandlers([ci,hi,li])&&this._startNavigation(t,e,ci),this._pannable&&this._pannable.start(t)&&(this.surface.suspendTracking(),this._unsetActivePoint(),this._suppressHover=!0),this._zoomSelection&&this._zoomSelection.start(t)&&this.trigger(ui,{axisRanges:D(this._plotArea.axes),originalEvent:t}))},_move:function(t){var e,i,n,s,o,r,a,h,l=this,c=l._navState,u=l._pannable;if(!this._stopDragEvent(t)){if(u)e=u.move(t),e&&!this.trigger(hi,{axisRanges:e,originalEvent:t})&&u.pan();else if(c){for(i={},n=c.axes,s=0;s<n.length;s++)o=n[s],r=o.options.name,r&&(a=o.options.vertical?t.y:t.x,h=a.startLocation-a.location,0!==h&&(i[o.options.name]=o.translateRange(h)));c.axisRanges=i,this.trigger(hi,{axisRanges:i,originalEvent:t})}this._zoomSelection&&this._zoomSelection.move(t)}},_end:function(t){var e,i;this._stopDragEvent(t)||(e=this._pannable,e&&e.end(t)?(this.surface.resumeTracking(),this.trigger(li,{axisRanges:D(this._plotArea.axes),originalEvent:t}),this._suppressHover=!1):this._endNavigation(t,li),this._zoomSelection&&(i=this._zoomSelection.end(t),i&&!this.trigger(pi,{axisRanges:i,originalEvent:t})&&(this._zoomSelection.zoom(),this.trigger(di,{axisRanges:i,originalEvent:t}))))},_stopDragEvent:function(){return this._hasSelection()},_mousewheel:function(t){var e,i,n,s,o,r,a,h,l,c=this,u=q.mousewheelDelta(t),p=this._mousewheelZoom,d=this._eventCoordinates(t);if(this._plotArea.backgroundContainsPoint(d))if(p)e={delta:u,axisRanges:D(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(ui,e)||(t.preventDefault(),this._zooming||(this._unsetActivePoint(),this.surface.suspendTracking(),this._zooming=!0),this._mwTimeout&&clearTimeout(this._mwTimeout),e.axisRanges=p.updateRanges(u),e.axisRanges&&!this.trigger(pi,e)&&p.zoom(),this._mwTimeout=setTimeout(function(){c.trigger(di,e),c._zooming=!1,c.surface&&c.surface.resumeTracking()},ki));else if(i=this._navState,i||(n=this._startNavigation(t,d,ui),n||(i=this._navState)),i){for(s=i.totalDelta||u,i.totalDelta=s+u,o=this._navState.axes,r={},a=0;a<o.length;a++)h=o[a],l=h.options.name,l&&(r[l]=h.scaleRange(-s));this.trigger(pi,{delta:u,axisRanges:r,originalEvent:t}),this._mwTimeout&&clearTimeout(this._mwTimeout),this._mwTimeout=setTimeout(function(){c._endNavigation(t,di)},ki)}},_startNavigation:function(t,e,i){var n,s,o=this._model._plotArea,r=o.findPointPane(e),a=o.axes.slice(0);r&&(n=D(a),s=this.trigger(i,{axisRanges:n,originalEvent:t}),s?this._cancelDomEvents():(this._suppressHover=!0,this._unsetActivePoint(),this._navState={axisRanges:n,pane:r,axes:a}))},_endNavigation:function(t,e){this._navState&&(this.trigger(e,{axisRanges:this._navState.axisRanges,originalEvent:t}),this._suppressHover=!1,this._navState=null)},_getChartElement:function(t,e){var i=this.surface.eventTarget(t);if(i)return this._drawingChartElement(i,t,e)},_drawingChartElement:function(t,e,i){for(var n,s=t;s&&!n;)n=s.chartElement,s=s.parent;if(n)return n.aliasFor&&(n=n.aliasFor(e,this._eventCoordinates(e))),i&&(n=n.closest(i)),n},_eventCoordinates:function(t){var e=q.eventCoordinates(t);return this._toModelCoordinates(e.x,e.y)},_elementPadding:function(){var t,e,i;return this._padding||(t=Dt(this.element,["paddingLeft","paddingTop"]),e=t.paddingLeft,i=t.paddingTop,this._padding={top:i,left:e}),this._padding},_toDocumentCoordinates:function(t){var e=this._elementPadding(),i=q.elementOffset(this.element);return{left:Bt(t.x+e.left+i.left),top:Bt(t.y+e.top+i.top)}},_toModelCoordinates:function(t,e){var i=this.element,n=q.elementOffset(i),s=this._elementPadding();return new dt(t-n.left-s.left,e-n.top-s.top)},_tap:function(t){var e=this,i=this.surface.eventTarget(t),n=this._drawingChartElement(i,t);this._activePoint===n?this._propagateClick(n,t):(this._startHover(i,t)||this._unsetActivePoint(),this._propagateClick(n,t)),this.handlingTap=!0,setTimeout(function(){e.handlingTap=!1},0)},_click:function(t){var e=this._getChartElement(t);this._propagateClick(e,t)},_propagateClick:function(t,e){for(var i=this,n=t;n;)n.click&&n.click(i,e),n=n.parent},_startHover:function(t,e){var i,n,s=this._drawingChartElement(t,e),o=this,r=o._tooltip,a=o._highlight;return!(this._suppressHover||!a||a.isHighlighted(s)||this._sharedTooltip())&&(i=this._drawingChartElement(t,e,function(t){return t.hover&&!(t instanceof bn)}),i&&!i.hover(this,e)?(this._activePoint=i,n=wt({},n,i.options.tooltip),n.visible&&r.show(i),a.show(i),i):void 0)},_mouseover:function(t){var e,i=this._startHover(t.element,t.originalEvent);i&&i.tooltipTracking&&(this._mouseMoveTrackHandler=this._mouseMoveTrackHandler||this._mouseMoveTracking.bind(this),Ht(document,(e={},e[Ns]=this._mouseMoveTrackHandler,e)))},_mouseMoveTracking:function(t){var e,i,n,s=this,o=s.options,r=s._tooltip,a=s._highlight,h=s._activePoint,l=this._eventCoordinates(t);this._plotArea.box.containsPoint(l)?h&&h.tooltipTracking&&h.series&&h.parent.getNearestPoint&&(e=h.parent.getNearestPoint(l.x,l.y,h.seriesIx),e&&e!==h&&(e.hover(this,t),this._activePoint=e,i=wt({},o.tooltip,h.options.tooltip),i.visible&&r.show(e),a.show(e))):(Gt(document,(n={},n[Ns]=this._mouseMoveTrackHandler,n)),this._unsetActivePoint())},_mousemove:function(t){var e=this._eventCoordinates(t);this._trackCrosshairs(e),this._plotArea.hover&&this._plotArea.hover(this,t),this._sharedTooltip()&&this._trackSharedTooltip(e,t)},_trackCrosshairs:function(t){var e,i,n=this._plotArea.crosshairs;for(e=0;e<n.length;e++)i=n[e],i.box.containsPoint(t)?i.showAt(t):i.hide()},_trackSharedTooltip:function(t,e){var i,n,s,o,r=this,a=r.options.tooltip,h=r._plotArea,l=r._plotArea.categoryAxis,c=r._tooltip,u=r._highlight;h.box.containsPoint(t)&&(i=l.pointCategoryIndex(t),i!==this._tooltipCategoryIx&&(n=h.pointsByCategoryIndex(i),s=n.map(function(t){return t.eventArgs(e)}),o=s[0]||{},o.categoryPoints=s,n.length>0&&!this.trigger(oi,o)?(a.visible&&c.showAt(n,t),u.show(n)):c.hide(),this._tooltipCategoryIx=i))},hideElements:function(){var t=this,e=t._plotArea,i=t._tooltip,n=t._highlight;this._mousemove.cancel(),e.hideCrosshairs(),n.hide(),i.hide(),delete this._tooltipCategoryIx},_unsetActivePoint:function(){var t=this,e=t._tooltip,i=t._highlight;this._activePoint=null,e&&e.hide(),i&&i.hide()},_deferRedraw:function(){this._redraw()},_clearRedrawTimeout:function(){this._redrawTimeout&&(clearInterval(this._redrawTimeout),this._redrawTimeout=null)},bindCategories:function(){var t,e,i=this,n=this.options,s=[].concat(n.categoryAxis);for(t=0;t<s.length;t++)e=s[t],e.autoBind!==!1&&i.bindCategoryAxisFromSeries(e,t)},bindCategoryAxisFromSeries:function(t,e){var n,s,o,r,a,h,l,c,u,p,d,g=this,f=this.options.series,v=f.length,m={},y=[];for(s=0;s<v;s++)if(o=f[s],r=o.categoryAxis===t.name||!o.categoryAxis&&0===e,a=o.data,h=a.length,o.categoryField&&r&&h>0)for(n=x(t,i(o.categoryField,a[0])),l=n?_:i,c=0;c<h;c++)u=a[c],p=l(o.categoryField,u,g.chartService.intl),!n&&m[p]||(y.push([p,u]),n||(m[p]=!0));y.length>0&&(n&&(y=H(y,function(t,e){return q.dateComparer(t[0],e[0])})),d=N(y),t.categories=d[0])},_isBindable:function(t){var e,i,n=ie.current.valueFields(t),s=!0;for(e=0;e<n.length;e++)if(i=n[e],i===j?i="field":i+="Field",!lt(t[i])){s=!1;break}return s},_noTransitionsRedraw:function(){var t,e=this.options;e.transitions&&(e.transitions=!1,t=!0),this._redraw(),t&&(e.transitions=!0)},_legendItemHover:function(t,e){var i,n=this,s=n._plotArea,o=n._highlight,r=(s.srcSeries||s.series)[t];i=xt(r.type,[Fe,Le,Be])?s.findPoint(function(i){return i.series.index===t&&i.index===e}):s.pointsBySeriesIndex(t),o.show(i)},_shouldAttachMouseMove:function(){return this._plotArea.crosshairs.length||this._tooltip&&this._sharedTooltip()||this.requiresHandlers([ai])},updateMouseMoveHandler:function(){var t,e;Gt(this.element,(t={},t[Ns]=this._mousemove,t)),this._shouldAttachMouseMove()&&Ht(this.element,(e={},e[Ns]=this._mousemove,e))},applyOptions:function(t,e){G(this._originalOptions,t),this._originalOptions=wt(this._originalOptions,t),this.options=wt({},this._originalOptions),e&&(this._theme=e,this.chartService.theme=e),this._initTheme(this.options,this._theme)},setOptions:function(t,e){this.applyOptions(t,e),this.bindCategories(),this.redraw(),this.updateMouseMoveHandler()},destroy:function(){var t,e;this._destroyed=!0,Gt(this.element,(t={},t[Gs]=this._clickHandler,t[Si]=this._mousewheelHandler,t[Ns]=this._mousemove,t)),this.domEvents&&(this.domEvents.destroy(),delete this.domEvents),Gt(document,(e={},e[Ns]=this._mouseMoveTrackHandler,e)),this._destroyView(),this.surface&&(this.surface.destroy(),this.surface=null),this._clearRedrawTimeout()},_destroyView:function(){var t=this,e=t._model,i=t._selections;if(e&&(e.destroy(),this._model=null),i)for(;i.length>0;)i.shift().destroy();this._unsetActivePoint(),this._tooltip&&this._tooltip.destroy(),this._highlight&&this._highlight.destroy(),this._zoomSelection&&(this._zoomSelection.destroy(),delete this._zoomSelection),this._pannable&&(this._pannable.destroy(),delete this._pannable),this._mousewheelZoom&&(this._mousewheelZoom.destroy(),delete this._mousewheelZoom)}}),vt(Ws,{renderAs:"",chartArea:{},legend:{visible:!0,labels:{}},categoryAxis:{},seriesDefaults:{type:Me,data:[],highlight:{visible:!0},labels:{},negativeValues:{visible:!1}},series:[],seriesColors:null,tooltip:{visible:!1},transitions:!0,valueAxis:{},plotArea:{},title:{},xAxis:{},yAxis:{},panes:[{}],pannable:!1,zoomable:!1}),kendo.deepExtend(kendo.dataviz,{constants:Ti,Aggregates:ee,AreaChart:ji,AreaSegment:Xi,AxisGroupRangeTracker:Ki,Bar:Ji,BarChart:nn,BarLabel:Qi,BoxPlotChart:hn,BoxPlot:rn,BubbleChart:pn,Bullet:gn,BulletChart:fn,CandlestickChart:on,Candlestick:sn,CategoricalChart:Vi,CategoricalErrorBar:Ii,CategoricalPlotArea:Vn,Chart:Ws,ChartContainer:yn,ClipAnimation:Gi,ClusterLayout:tn,Crosshair:mn,CrosshairTooltip:xn,DefaultAggregates:Sn,DonutChart:cs,DonutPlotArea:us,DonutSegment:hs,ErrorBarBase:Ri,ErrorRangeCalculator:ae,Highlight:Mn,SharedTooltip:Zn,Legend:Gn,LegendItem:Dn,LegendLayout:zn,LineChart:Wi,LinePoint:zi,LineSegment:Di,Pane:_n,PieAnimation:$n,PieChart:rs,PieChartMixin:ss,PiePlotArea:as,PieSegment:es,PlotAreaBase:bn,PlotAreaEventsMixin:An,PlotAreaFactory:qn,PointEventsMixin:Mi,RangeBar:kn,RangeBarChart:Tn,ScatterChart:cn,ScatterErrorBar:ln,ScatterLineChart:Jn,Selection:Xn,SeriesAggregator:Cn,SeriesBinder:ie,SplineSegment:Hi,SplineAreaSegment:Zi,StackWrap:en,Tooltip:Yn,OHLCChart:Rn,OHLCPoint:Pn,WaterfallChart:En,WaterfallSegment:In,XYPlotArea:ts,MousewheelZoom:On,ZoomSelection:Bn,Pannable:Ln,ChartAxis:Jt,ChartPlotArea:te,anyHasZIndex:o,appendIfNotNull:a,areNumbers:a,categoriesCount:s,countNumbers:e,equalsIgnoreCase:v,evalOptions:n,filterSeriesByType:f,getDateField:_,getField:i,hasGradientOverlay:r,hasValue:h,isDateAxis:x,segmentVisible:R,singleItemOrArray:y})}(window.kendo.jQuery)},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("dataviz/chart/chart.min",["dataviz/chart/kendo-chart.min","kendo.data.min","kendo.dataviz.core.min","kendo.dataviz.themes.min","kendo.drawing.min","kendo.userevents.min"],t)}(function(){return function(t,e){function i(t){o.fn[t]=function(){var e=this._instance;if(e)return e[t].apply(e,arguments)}}function n(t,i){var n,s,o,r=[],a=t.groupNameTemplate,h=i.length;if(0===h)return o=S({},t),o.visibleInLegend=!1,[o];for(k(a)?(f.logToConsole("'groupNameTemplate' is obsolete and will be removed in future versions. Specify the group name template as 'series.name'"),a&&(n=L(a))):(n=L(t.name||""),0===n._slotCount&&(n=L(k(t.name)?"#= group.value #: #= series.name #":"#= group.value #"))),s=0;s<h;s++)o=S({},t),f.isFunction(o.color)||(o.color=e),o._groupIx=s,o._groupValue=i[s].value,r.push(o),n&&(o.name=n({series:o,group:i[s]}));return r}var s,o,r,a,h,l,c,u,p,d,g=".kendoChart",f=window.kendo,v=f.Class,x=f._outerWidth,m=f._outerHeight,y=f.dataviz,_=y.constants,w=y.Chart,b=y.SeriesBinder,A=f.ui.Widget,C=f.data.DataSource,S=f.deepExtend,k=y.defined,T=y.getField,P=y.InstanceObserver,R=y.inArray,I=y.services,E=t.proxy,V=t.isArray,M=t.extend,L=f.template,B="mouseleave"+g,O=_.AXIS_LABEL_CLICK,z=_.LEGEND_ITEM_CLICK,D=_.LEGEND_ITEM_HOVER,F=_.SERIES_CLICK,H=_.SERIES_HOVER,N=_.PLOT_AREA_CLICK,G=_.PLOT_AREA_HOVER,q=_.DRAG,W=_.DRAG_END,U=_.DRAG_START,X=_.ZOOM_START,Y=_.ZOOM,Z=_.ZOOM_END,j=_.SELECT_START,K=_.SELECT,Q=_.SELECT_END,$=_.RENDER,J=_.NOTE_CLICK,tt=_.NOTE_HOVER,et="change",it="dataBound",nt="leave",st=_.VALUE,ot=_.PIE,rt=_.DONUT,at=_.FUNNEL,ht=f.Observable,lt=150,ct=100,ut="k-chart-tooltip-inverse",pt="k-chart-shared-tooltip";
for(I.DomEventsBuilder.register({create:function(t,e){return new f.UserEvents(t,S({global:!0,multiTouch:!0,fastTap:!0},e))}}),s=P.extend({handlerMap:{showTooltip:"_showTooltip",hideTooltip:"_hideTooltip",legendItemClick:"_onLegendItemClick",render:"_onRender",init:"_onInit"}}),o=A.extend({init:function(t,e){var i;f.destroy(t),A.fn.init.call(this,t),e&&(i=e.dataSource,delete e.dataSource),this.options=S({},this.options,e),this.wrapper=this.element,this._attachEvents(),e&&(e.dataSource=i),this._seriesVisibility=new h,this.bind(this.events,this.options),this._initDataSource(e),f.notify(this,y.ui)},events:[it,F,H,O,z,D,N,G,U,q,W,X,Y,Z,j,K,Q,J,tt,$],options:{name:"Chart",renderAs:"",theme:"default",axisDefaults:{},chartArea:{},legend:{},categoryAxis:{},autoBind:!0,seriesDefaults:{},series:[],seriesColors:null,tooltip:{},transitions:!0,valueAxis:{},plotArea:{},title:{},xAxis:{},yAxis:{},panes:[{}],pannable:!1,zoomable:!1},items:function(){return t()},refresh:function(){var t=this,e=t._instance;e.applyDefaults(t.options),e.applySeriesColors(),t._bindSeries(),t._bindCategories(),t.trigger(it),t._redraw()},getSize:function(){return f.dimensions(this.element)},redraw:function(t){this._size=null,this._instance.redraw(t)},setOptions:function(t){var e=this,i=t.dataSource;delete t.dataSource,A.fn._setEvents.call(e,t),this._instance.applyOptions(t,this._getThemeOptions(t)),this.options=this._instance.options,this._tooltip.setOptions(this.options.tooltip),this._sourceSeries=null,i&&e.setDataSource(i),e._hasDataSource?e._onDataChanged():(e._bindCategories(),e.redraw()),e._instance.updateMouseMoveHandler()},setDataSource:function(t){var e=this;e.dataSource.unbind(et,e._dataChangeHandler),e.dataSource=t=C.create(t),e._hasDataSource=!0,e._hasData=!1,t.bind(et,e._dataChangeHandler),e.options.autoBind&&t.fetch()},destroy:function(){var t=this,e=t.dataSource;t.element.off(g),e&&e.unbind(et,t._dataChangeHandler),t._instance&&(t._instance.destroy(),delete this._instance),this._tooltip&&(this._tooltip.destroy(),delete this._tooltip),this._destroyCrosshairTooltips(),A.fn.destroy.call(t)},findPaneByName:function(t){var e,i=this._plotArea.panes;for(e=0;e<i.length;e++)if(i[e].options.name===t)return new p(this,i[e])},findPaneByIndex:function(t){var e=this._plotArea.panes;if(e[t])return new p(this,e[t])},findSeries:function(t){var e,i=this._plotArea,n=i.srcSeries||i.series;for(e=0;e<n.length;e++)if(t(n[e]))return new d(this,n[e])},findSeriesByName:function(t){return this._createSeries({name:t})},findSeriesByIndex:function(t){return this._createSeries({index:t})},_createSeries:function(t){var e=this._seriesOptions(t);if(e)return new d(this,e)},_seriesOptions:function(t){var e,i,n=this._plotArea,s=n.srcSeries||n.series;if(k(t.index))e=s[t.index];else if(k(t.name))for(i=0;i<s.length;i++)if(s[i].name===t.name){e=s[i];break}return e},_attachEvents:function(){this.element.on(B,E(this._mouseleave,this))},_mouseleave:function(e){var i=this._instance,n=this._tooltip,s=e.relatedTarget;s&&t(s).closest(n.element).length||!i||i.handlingTap||i.hideElements()},_getThemeOptions:function(t){var i,n,s=(t||{}).theme;return"sass"===s||"default-v2"===s||"bootstrap-v4"===s?y.autoTheme().chart:k(s)?(i=y.ui.themes||{},n=i[s]||i[s.toLowerCase()]||{},n.chart||{}):e},_initChart:function(){this._createChart(this.options,this._getThemeOptions(this.options)),this.options=this._instance.options},_createChart:function(t,e){this._instance=new w(this.element[0],t,e,{observer:new s(this),sender:this})},_onInit:function(t){this._instance=t.sender},_initDataSource:function(t){var e=this,i=(t||{}).dataSource;e._dataChangeHandler=E(e._onDataChanged,e),e.dataSource=C.create(i).bind("change",e._dataChangeHandler),e._bindCategories(),i&&(e._hasDataSource=!0),this._initChart(),this._initTooltip(),i&&e.options.autoBind&&e.dataSource.fetch()},_destroyCrosshairTooltips:function(){var t,e=this._crosshairTooltips;if(e)for(t in e)e[t].destroy();this._crosshairTooltips={}},_getCrosshairTooltip:function(t,e){var i=this._crosshairTooltips=this._crosshairTooltips||{},n=t+e,s=i[n];return s||(s=i[n]=new u(this.element)),s},_showTooltip:function(t){if(t.crosshair){var e=this._getCrosshairTooltip(t.axisName,t.axisIndex);e.show(t)}else this._tooltip&&this._tooltip.show(t)},_hideTooltip:function(t){if(t.crosshair){var e=this._getCrosshairTooltip(t.axisName,t.axisIndex);e.hide()}else this._tooltip&&this._tooltip.hide(t)},_onRender:function(t){this._destroyCrosshairTooltips(),this._copyMembers(t.sender),this._hasDataSource&&!this._hasData&&this.options.autoBind||this.trigger($)},_copyMembers:function(t){this.options=t.options,this._originalOptions=t._originalOptions,this.surface=t.surface,this._plotArea=t._plotArea,this._model=t._model,this._highlight=t._highlight,this._selections=t._selections,this._pannable=t._pannable,this._zoomSelection=t._zoomSelection,this._mousewheelZoom=t._mousewheelZoom},requiresHandlers:function(t){var e,i=this._events;for(e=0;e<t.length;e++)if(k(i[t[e]]))return!0},_initTooltip:function(){this._tooltip=this._createTooltip(),this._tooltip.bind(nt,E(this._tooltipleave,this))},_onLegendItemClick:function(t){this.trigger(z,t)||this._legendItemClick(t.seriesIndex,t.pointIndex)},_legendItemClick:function(e,i){var n,s,o=this._instance,r=o._plotArea,a=(r.srcSeries||r.series)[e];t.inArray(a.type,[ot,rt,at])>=0?(n=a.pointVisibility=a.pointVisibility||{},s=n[i],n[i]=!!k(s)&&!s):(a.visible=!a.visible,this._seriesVisibility.save(a)),o._noTransitionsRedraw()},_createTooltip:function(){return new c(this.element,this.options.tooltip)},_tooltipleave:function(){var t=this._instance,e=t._plotArea,i=t._highlight;e.hideCrosshairs(),i.hide()},_bindData:function(t){var e,i,s,o=this,r=o.options,a=o._sourceSeries||r.series,h=a.length,l=o.dataSource.view(),c=(o.dataSource.group()||[]).length>0,u=[],p=this._seriesVisibility;for(e=0;e<h;e++)i=a[e],o._isBindable(i)&&c?(s=n(i,l),u=u.concat(s),p.applyByGroup(s,t)):(i=M({},i),u.push(i),p.applyByIndex(i,t));o._sourceSeries=a,r.series=u,this._instance.applySeriesColors(),o._bindSeries(),o._bindCategories(),this._hasData=!0},_onDataChanged:function(t){this._bindData(t),this.trigger(it),this._redraw()},_bindSeries:function(){var t,e,i,n,s=this,o=s.dataSource.view(),r=s.options.series,a=r.length;for(t=0;t<a;t++)e=r[t],s._isBindable(e)&&(i=e._groupIx,n=k(i)?(o[i]||{}).items:o,e.autoBind!==!1&&(e.data=n))},_bindCategories:function(){var t,e,i=this,n=i.dataSource.view()||[],s=(i.dataSource.group()||[]).length>0,o=n,r=i.options,a=[].concat(r.categoryAxis);for(s&&n.length&&(o=n[0].items),t=0;t<a.length;t++)e=a[t],e.autoBind!==!1&&i._bindCategoryAxis(e,o,t)},_bindCategoryAxis:function(t,e,i){var n,s,o,r=(e||[]).length;if(t.field)for(t.categories=[],n=0;n<r;n++)o=e[n],s=T(t.field,o),0===n?(t.categories=[s],t.dataItems=[o]):(t.categories.push(s),t.dataItems.push(o));else this._instance&&this._instance.bindCategoryAxisFromSeries(t,i)},_isBindable:function(t){var e,i,n=b.current.valueFields(t),s=!0;for(i=0;i<n.length;i++)if(e=n[i],e===st?e="field":e+="Field",!k(t[e])){s=!1;break}return s}}),r=["getAxis","findAxisByName","plotArea","toggleHighlight","showTooltip","hideTooltip","exportVisual","_resize","_redraw","_noTransitionsRedraw","_legendItemHover","_eventCoordinates"],a=0;a<r.length;a++)i(r[a]);y.ExportMixin.extend(o.fn),f.PDFMixin&&f.PDFMixin.extend(o.fn),y.ui.plugin(o),h=v.extend({init:function(){this.groups={},this.index={}},applyByGroup:function(t,e){if(e&&e.action)for(var i=0;i<t.length;i++)this.groups[t[i]._groupValue]===!1&&(t[i].visible=!1);else this.groups={}},applyByIndex:function(t,e){e&&e.action?this.index[t.index]===!1&&(t.visible=!1):this.index={}},save:function(t){t&&(k(t._groupValue)?this.groups[t._groupValue]=t.visible:this.index[t.index]=t.visible)}}),l=f.geometry,c=ht.extend({init:function(e,i){var n,s=this;ht.fn.init.call(s),this.setOptions(i),s.chartElement=e,s.template=c.template,s.template||(s.template=c.template=f.template("<div class='k-tooltip k-chart-tooltip' style='display:none; position: absolute; font: #= d.font #;#if (d.border) {# border: #= d.border.width #px solid; #}#opacity: #= d.opacity #; filter: alpha(opacity=#= d.opacity * 100 #);'></div>",{useWithBlock:!1,paramName:"d"})),s.element=t(s.template(s.options)),s.move=E(s.move,s),s._mouseleave=E(s._mouseleave,s),n=f.format("[{0}='content'],[{0}='scroller']",f.attr("role")),s._mobileScroller=e.closest(n).data("kendoMobileScroller")},destroy:function(){this._clearShowTimeout(),this.element&&(this.element.off(B).remove(),this.element=null)},setOptions:function(t){this.options=S({},this.options,t)},options:{opacity:1,animation:{duration:lt},sharedTemplate:"<table><th colspan='#= colspan #'>#= categoryText #</th># for(var i = 0; i < points.length; i++) { ## var point = points[i]; #<tr># if(colorMarker) { # <td><span class='k-chart-shared-tooltip-marker' style='background-color:#:point.series.color#'></span></td># } ## if(nameColumn) { # <td> #if (point.series.name) {# #: point.series.name #: #} else {# #}#</td># } #<td>#= content(point) #</td></tr># } #</table>",categoryFormat:"{0:d}"},move:function(){var t,e=this,i=e.options,n=e.element;e.anchor&&e.element&&(t=e._offset(),e.visible||n.css({top:t.top,left:t.left}),e.visible=!0,e._ensureElement(document.body),n.stop(!0,!0).show().animate({left:t.left,top:t.top},i.animation.duration))},_clearShowTimeout:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=null)},getAnchor:function(t){var e=this.anchor,i=e.point,n=e.align,s=i.left,o=i.top;return"center"===n.horizontal?s-=t.width/2:"right"===n.horizontal&&(s-=t.width),"center"===n.vertical?o-=t.height/2:"bottom"===n.vertical&&(o-=t.height),{x:s,y:o}},_offset:function(){var e,i,n=this,s=n._measure(),o=n.getAnchor(s),r=o.y,a=o.x,h=f.support.zoomLevel(),c=t(window),u=window.pageYOffset||document.documentElement.scrollTop||0,p=window.pageXOffset||document.documentElement.scrollLeft||0,d=(this._mobileScroller||{}).movable;return d&&1!==d.scale?(e=l.transform().scale(d.scale,d.scale,[d.x,d.y]),i=new l.Point(a,r).transform(e),a=i.x,r=i.y):(r+=n._fit(r-u,s.height,m(c)/h),a+=n._fit(a-p,s.width,x(c)/h)),{top:r,left:a}},show:function(t){this.anchor=t.anchor,this.element.css(t.style),this.element.toggleClass(ut,!!t.className),this.element.toggleClass(pt,!!t.shared);var e=t.shared?this._sharedContent(t):this._pointContent(t.point);this.element.html(e),this._clearShowTimeout(),this.showTimeout=setTimeout(this.move,ct)},hide:function(){var t=this;clearTimeout(t.showTimeout),t._hideElement(),t.visible&&(t.point=null,t.visible=!1,t.index=null)},_sharedContent:function(t){var e,i,n=t.points,s=y.grep(n,function(t){return k(t.series.name)}).length,o=t.series.length>1,r=1;return s&&r++,o&&r++,e=f.template(this.options.sharedTemplate),i=e({points:n,category:t.category,categoryText:t.categoryText,content:this._pointContent,colorMarker:o,nameColumn:s,colspan:r})},_measure:function(){this._ensureElement();var t={width:x(this.element),height:m(this.element)};return t},_ensureElement:function(){this.element&&this.element.appendTo(document.body).on(B,this._mouseleave)},_mouseleave:function(e){var i=e.relatedTarget,n=this.chartElement[0];i&&i!==n&&!t.contains(n,i)&&(this.trigger(nt),this.hide())},_hideElement:function(){var t=this,e=this.element;e&&e.fadeOut({always:function(){t.visible||e.off(B).remove()}})},_pointContent:function(t){var e,i,n=this,s=S({},n.options,t.options.tooltip);return k(t.value)&&(e=""+t.value),s.template?(i=L(s.template),e=i({value:t.value,category:t.category,series:t.series,dataItem:t.dataItem,percentage:t.percentage,runningTotal:t.runningTotal,total:t.total,low:t.low,high:t.high,xLow:t.xLow,xHigh:t.xHigh,yLow:t.yLow,yHigh:t.yHigh})):s.format&&(e=t.formatValue(s.format)),e},_fit:function(t,e,i){var n=0;return t+e>i&&(n=i-(t+e)),t<0&&(n=-t),n}}),u=c.extend({init:function(t,e){c.fn.init.call(this,t,e),this.element.addClass("k-chart-crosshair-tooltip")},show:function(t){var e=this.element;e&&(this.anchor=t.anchor,this.element.css(t.style),this.element.html(this.content(t)),this.move())},move:function(){var t=this,e=t.element,i=t._offset();t._ensureElement(),e.css({top:i.top,left:i.left}).show()},content:function(t){var e=t.value,i=t.crosshair.options.tooltip;return i.template&&(e=L(i.template)({value:e})),e},hide:function(){this.element.hide()}}),p=v.extend({init:function(t,e){this._chart=t,this._pane=e,this.visual=e.visual,this.chartsVisual=e.chartContainer.visual,this.name=e.options.name},series:function(){var t,e=this._chart,i=e._plotArea.groupSeriesByPane(),n=i[this.name||"default"],s=[];if(n)for(t=0;t<n.length;t++)s.push(new d(e,n[t]));return s}}),d=v.extend({init:function(t,e){this._chart=t,this._options=e},points:function(t){var e,i,n=this._points;return n||(e=this._seriesOptions(),i=this._chart._plotArea,this._points=n=i.pointsBySeriesIndex(e.index)),f.isFunction(t)&&(n=this._filterPoints(n,t)),n},data:function(t){var e,i,n,s,o=this._seriesOptions();return t&&(e=this._chart,i=e._plotArea,o.data=t,o.categoryField&&(n=i.seriesCategoryAxis(o),s=[].concat(e.options.categoryAxis),e._instance.bindCategoryAxisFromSeries(s[n.axisIndex],n.axisIndex)),e._noTransitionsRedraw(),this._clearFields()),o.data},findPoint:function(t){var e,i=this.points();for(e=0;e<i.length;e++)if(t(i[e]))return i[e]},toggleHighlight:function(t,e){e=e?f.isFunction(e)?this.points(e):V(e)?e:[e]:this.points(),this._chart._instance.togglePointsHighlight(t,e)},toggleVisibility:function(t,e){var i,n,s=this._chart,o=this._seriesOptions(),r=f.isFunction(e);if(r)if(R(o.type,[ot,rt,at]))for(i=this._filterData(e),n=0;n<i.length;n++)i[n].visible=t;else o.visible=function(i){return!e(i.dataItem)||t};else o.visible=t,s._seriesVisibility.save(o);s._noTransitionsRedraw(),this._clearFields()},_filterData:function(t){var e,i=this._seriesOptions().data,n=i.length,s=[];for(e=0;e<n;e++)t(i[e])&&s.push(i[e]);return s},_filterPoints:function(t,e){var i,n=[],s=t.length;for(i=0;i<s;i++)e(t[i])&&n.push(t[i]);return n},_seriesOptions:function(){var t=this._series;return t||(t=this._series=this._chart._seriesOptions(this._options)),t},_clearFields:function(){delete this._points,delete this._series}}),y.Tooltip=c,y.CrosshairTooltip=u,y.ChartInstanceObserver=s,y.ChartPane=p,y.ChartSeries=d}(window.kendo.jQuery),window.kendo},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()}),function(t,define){define("kendo.dataviz.chart.min",["dataviz/chart/kendo-chart.min","dataviz/chart/chart.min"],t)}(function(){},"function"==typeof define&&define.amd?define:function(t,e,i){(i||e)()});
//# sourceMappingURL=kendo.dataviz.chart.min.js.map
24 小时内免费解锁 3 个项目,之后 1 积分/个。 规则说明
AI 解读
登录后可用,每次 10 积分,解读结果公开显示在下面。
还没有人解读过这个文件。
