Files
upo-senior-assistant/SeniorAssistant/wwwroot/kendo/2018.1.221/js/kendo.dataviz.chart.min.js
Giacomo c807c474c4 Init
- aggiunto un po di tutto comeil progetto del prof
2018-09-14 19:38:02 +02:00

32 lines
183 KiB
JavaScript

/**
* Kendo UI v2018.1.117 (http://www.telerik.com/kendo-ui)
* Copyright 2018 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){return(t+"").replace(a,h)}function i(t){var e,i=[];for(e in t)i.push(e+t[e]);return i.sort().join("")}function n(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 s(){return{width:0,height:0,baseline:0}}function o(t,e,i){return u.current.measure(t,e,i)}var r,a,h,l,c,u;window.kendo.util=window.kendo.util||{},r=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}}),a=/\r?\n|\r|\t/g,h=" ",l={baselineMarkerSize:1},"undefined"!=typeof document&&(c=document.createElement("div"),c.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: pre!important;"),u=kendo.Class.extend({init:function(e){this._cache=new r(1e3),this.options=t.extend({},l,e)},measure:function(t,o,r){var a,h,l,u,p,d,g,f,v;if(void 0===r&&(r={}),!t)return s();if(a=i(o),h=n(t+a),l=this._cache.get(h))return l;u=s(),p=r.box||c,d=this._baselineMarker().cloneNode(!1);for(g in o)f=o[g],void 0!==f&&(p.style[g]=f);return v=r.normalizeText!==!1?e(t):t+"",p.textContent=v,p.appendChild(d),document.body.appendChild(p),v.length&&(u.width=p.offsetWidth-this.options.baselineMarkerSize,u.height=p.offsetHeight,u.baseline=d.offsetTop+this.options.baselineMarkerSize),u.width>0&&u.height>0&&this._cache.put(h,u),p.parentNode.removeChild(p),u},_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}}),u.current=new u,kendo.deepExtend(kendo.util,{LRUCache:r,TextMetrics:u,measureText:o,objectKey:i,hashKey:n,normalizeText:e})}(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],K(i)&&s++;return s}function i(t,e){if(null===e)return e;var i=ft(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>Gi)return null;for(h in t)!bt(h,i.excluded)&&t.hasOwnProperty(h)&&(l=t[h],At(l)?(a=!0,s||(t[h]=St(l(e),o[h]))):Ct(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,e,i,n,s){var o=t.box,r=new ne;return r[e]=o[e+i],r[n]=o[n+s],r}function r(t){for(var e=0;e<t.length;e++)if(gt(t[e].zIndex))return!0}function a(t){var e=t.overlay;return e&&e.gradient&&"none"!==e.gradient}function h(t,e){t.forEach(e)}function l(t,e){var i,n=t.length;for(i=n-1;i>=0;i--)e(t[i],i-n-1)}function c(t){return e(t)===t.length}function u(t){return gt(t)&&null!==t}function p(t){var e,i,n,s=t.series;for(e=0;e<s.length;e++)i=s[e],n=i.data,!n||vt(n[0])||Ct(n[0])||(i.data=[n])}function d(){return"pane"+En++}function g(t,e,i){var n,s=e.visible;return gt(s)?s:(n=t.pointVisibility,n?n[i]:void 0)}function f(t){var e,i,n,s=t.data,o=[],r=0,a=0;for(e=0;e<s.length;e++)i=le.current.bindPoint(t,e),n=i.valueFields.value,Bt(n)&&(n=parseFloat(n)),K(n)?(i.visible=g(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 v(t,e){return t&&e?t.toLowerCase()===e.toLowerCase():t===e}function x(t,e){var i,n,s=[],o=[].concat(e);for(i=0;i<t.length;i++)n=t[i],bt(n.type,o)&&s.push(n);return s}function m(t,e,i){var n,s;return null===e?e:(n="_date_"+t,s=e[n],s||(s=Ot(i,ft(t,!0)(e)),e[n]=s),s)}function y(t,e){var i=t.type,n=e instanceof Date;return!i&&n||v(i,ut)}function _(t){return 1===t.length?t[0]:t}function w(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 yt}function b(t,e){var i,n;for(i=0;i<t.length;i++)if(n=t[i],n&&n.pane===e)return n}function A(t){return""===t||null===t||"none"===t||"transparent"===t||!gt(t)}function S(t,e,i){var n,s=e,o=t;if(t.indexOf(".")>-1){for(n=t.split(".");n.length>1;)o=n.shift(),gt(s[o])||(s[o]={}),s=s[o];o=n.shift()}s[o]=i}function C(t,e){null!==e&&t.push(e)}function k(t,e,i){var n=[].concat(e instanceof Dt?t.categoryAxis:t.valueAxis);kt(n[e.axisIndex],i)}function P(t,e,i){return Nt(t,function(t){return 0===i&&!t.categoryAxis||t.categoryAxis===e})}function T(){this._defaultPrevented=!0}function R(t,e){var i=(e||"").toLowerCase(),n=t.event,s="none"===i&&!(n.ctrlKey||n.shiftKey||n.altKey)||n[i+"Key"];return s}function E(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 I(t){var e=document.createElement("div");return t&&(e.className=t),e}function V(t){for(var e=t;e&&!Wt(e,"k-handle");)e=e.parentNode;return e}function M(t){t.stopPropagation()}function L(t,e,i,n){var s=[].concat(i?t.yAxis:t.xAxis)[e];kt(s,n)}function B(t){var e,i,n=Y.rad(t),s=Ht(Math.sin(n),pt),o=Ht(Math.cos(n),pt);return e=Math.abs(s)>As?et:o<0?lt:st,i=Math.abs(s)<bs?et:s<0?nt:it,{horizontal:e,vertical:i}}function O(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 mt(t.x+o*(e.x-t.x),t.y+o*(e.y-t.y))),s}function z(t,e){return t.value.x-e.value.x}function D(t){var e,i,n=ro;for(e=0;e<n.length;e++)i=n[e]+"Axes",t[i]&&(t[n[e]+"Axis"]=t[i],delete t[i])}function F(t,e){if(t)for(var i=0;i<t.length;i++)if(t[i].category===e)return[t[i]]}function H(t,e){function i(t){var e=(t||{}).color||s.color,i=kt({},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<ro.length;r++)n=ro[r]+"Axis",s=t.axisDefaults||{},o=[].concat(t[n]),o=o.map(i),t[n]=o.length>1?o:o[0]}function N(t,e){var i,n,s,o=t.series,r=o.length,a=t.seriesDefaults,h=kt({},t.seriesDefaults),l=e?kt({},e.seriesDefaults):{},c=kt({},l);for(G(h),G(c),i=0;i<r;i++)n=o[i].type||t.seriesDefaults.type,s=kt({data:[]},c,l[n],{tooltip:t.tooltip},h,a[n]),o[i]._defaults=s,o[i]=kt({},s,o[i])}function G(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 q(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 W(t,e){void 0===e&&(e=Y.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 X(t,e){var i,n,s,o;for(void 0===e&&(e=Y.dateComparer),i=W(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 U(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 Z(t,e){var i,n,s,o;for(i in e)n=e[i],s=t[i],gt(s)&&(o=null===n,o||!gt(n)?(delete t[i],o&&delete e[i]):s&&Ct(n)&&Ct(s)&&Z(s,n))}var Y,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,St,Ct,kt,Pt,Tt,Rt,Et,It,Vt,Mt,Lt,Bt,Ot,zt,Dt,Ft,Ht,Nt,Gt,qt,Wt,Xt,Ut,Zt,Yt,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,Se,Ce,ke,Pe,Te,Re,Ee,Ie,Ve,Me,Le,Be,Oe,ze,De,Fe,He,Ne,Ge,qe,We,Xe,Ue,Ze,Ye,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,Si,Ci,ki,Pi,Ti,Ri,Ei,Ii,Vi,Mi,Li,Bi,Oi,zi,Di,Fi,Hi,Ni,Gi,qi,Wi,Xi,Ui,Zi,Yi,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,Sn,Cn,kn,Pn,Tn,Rn,En,In,Vn,Mn,Ln,Bn,On,zn,Dn,Fn,Hn,Nn,Gn,qn,Wn,Xn,Un,Zn,Yn,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,Ss,Cs,ks,Ps,Ts,Rs,Es,Is,Vs,Ms,Ls,Bs,Os,zs,Ds,Fs,Hs,Ns,Gs,qs,Ws,Xs,Us,Zs,Ys,js,Ks,Qs,$s,Js,to,eo,io,no,so,oo,ro,ao,ho,lo,co;window.kendo.dataviz=window.kendo.dataviz||{},Y=kendo.dataviz,j=Y.Class,K=Y.isNumber,Q=Y.constants,$=Q.MAX_VALUE,J=Q.MIN_VALUE,tt=Q.VALUE,et=Q.CENTER,it=Q.TOP,nt=Q.BOTTOM,st=Q.LEFT,ot=Q.WHITE,rt=Q.CIRCLE,at=Q.X,ht=Q.Y,lt=Q.RIGHT,ct=Q.BLACK,ut=Q.DATE,pt=Q.DEFAULT_PRECISION,dt=Q.ARC,gt=Y.defined,ft=Y.getter,vt=Y.isArray,xt=Y.ChartElement,mt=Y.Point,yt=Y.Box,_t=Y.alignPathToPixel,wt=Y.setDefaultOptions,bt=Y.inArray,At=Y.isFunction,St=Y.valueOrDefault,Ct=Y.isObject,kt=Y.deepExtend,Pt=Y.last,Tt=Y.eventElement,Rt=Y.getTemplate,Et=Y.TextBox,It=Y.ShapeElement,Vt=Y.getSpacing,Mt=Y.CurveProcessor,Lt=Y.append,Bt=Y.isString,Ot=Y.parseDate,zt=Y.styleValue,Dt=Y.CategoryAxis,Ft=Y.BoxElement,Ht=Y.round,Nt=Y.grep,Gt=Y.DateCategoryAxis,qt=Y.elementStyles,Wt=Y.hasClasses,Xt=Y.bindEvents,Ut=Y.services,Zt=Y.unbindEvents,Yt=Y.limitValue,jt=kendo.support,Kt=kendo.drawing,Qt=Kt.Path,$t=Kt.Animation,Jt=Kt.AnimationFactory,te=Kt.Group,ee=kendo.Color,ie=kendo.geometry,ne=ie.Point,se=ie.transform,oe=j.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()}}),re=kendo.Class.extend({init:function(t){this.visual=t.visual,this.chartsVisual=t.chartContainer.visual}}),ae=j.extend({init:function(t){this._plotArea=t,this.visual=t.visual,this.backgroundVisual=t._bgVisual}}),he={min:function(t){var e,i,n=t.length,s=$;for(e=0;e<n;e++)i=t[e],K(i)&&(s=Math.min(s,i));return s===$?t[0]:s},max:function(t){var e,i,n=t.length,s=J;for(e=0;e<n;e++)i=t[e],K(i)&&(s=Math.max(s,i));return s===J?t[0]:s},sum:function(t){var e,i,n=t.length,s=0;for(e=0;e<n;e++)i=t[e],K(i)&&(s+=i);return s},sumOrNull:function(t){var i=null;return e(t)&&(i=he.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&&gt(i)&&s++;return s},avg:function(t){var i=e(t),n=t[0];return i>0&&(n=he.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&&gt(i))return i;return t[0]}},le=j.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=[tt]),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]||[tt]},otherFields:function(t){return this._otherFields[t.type]||[tt]},bindPoint:function(t,e,i){var n,s,o,r,a,h=t.data,l=gt(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]:gt(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],gt(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===tt?"field":s+"Field",r.push(t[o]||s);return r}}),le.current=new le,ce="stderr",ue="stddev",pe=/percent(?:\w*)\((\d+)\)/,de=RegExp("^"+ue+"(?:\\((\\d+(?:\\.\\d+)?)\\))?$"),ge=j.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=de.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(ce)>=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=le.current,a=r.valueFields(t),h=gt(o[0])?o[0]:{};return vt(h)?(n=e?a.indexOf(e):0,i=ft("["+n+"]")):K(h)?i=ft():typeof h===Q.OBJECT&&(s=r.sourceFields(t,a),i=ft(s[a.indexOf(e)])),i},getErrorRange:function(t,e){var i,n,s,o;if(!gt(e))return null;if(this.globalRange)return this.globalRange(t);if(vt(e))i=t-e[0],n=t+e[1];else if(K(s=parseFloat(e)))i=t-s,n=t+s;else{if(!(s=pe.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]),K(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]),K(i)&&(o+=i,r++);return{value:o/r,count:r}}}),fe=jt.browser||{},ve=600,xe="fadeIn",me="glass",ye=.8,_e=5,we=fe.msie?.001:0,be="errorLow",Ae="errorHigh",Se="xErrorLow",Ce="xErrorHigh",ke="yErrorLow",Pe="yErrorHigh",Te=8,Re="zero",Ee="interpolate",Ie="gap",Ve="above",Me="below",Le="smooth",Be="step",Oe="area",ze="bar",De="boxPlot",Fe="bubble",He="bullet",Ne="candlestick",Ge="column",qe="donut",We="funnel",Xe="horizontalWaterfall",Ue="line",Ze="ohlc",Ye="pie",je="polarArea",Ke="polarLine",Qe="polarScatter",$e="radarArea",Je="radarColumn",ti="radarLine",ei="rangeArea",ii="rangeBar",ni="rangeColumn",si="scatter",oi="scatterLine",ri="verticalArea",ai="verticalBoxPlot",hi="verticalBullet",li="verticalLine",ci="verticalRangeArea",ui="waterfall",pi=[ze,Ge,Ze,Ne,De,ai,He,ni,ii,ui,Xe],di="legendItemClick",gi="legendItemHover",fi="seriesClick",vi="seriesHover",xi="plotAreaClick",mi="plotAreaHover",yi="drag",_i="dragEnd",wi="dragStart",bi="zoomStart",Ai="zoom",Si="zoomEnd",Ci="selectStart",ki="select",Pi="selectEnd",Ti="render",Ri="showTooltip",Ei="hideTooltip",Ii="log",Vi="category",Mi="insideEnd",Li="insideBase",Bi="outsideEnd",Oi="DOMMouseScroll mousewheel",zi=150,Di={INITIAL_ANIMATION_DURATION:ve,FADEIN:xe,LEGEND_ITEM_CLICK:di,LEGEND_ITEM_HOVER:gi,SERIES_CLICK:fi,SERIES_HOVER:vi,GLASS:me,BORDER_BRIGHTNESS:ye,TOOLTIP_OFFSET:_e,START_SCALE:we,ERROR_LOW_FIELD:be,ERROR_HIGH_FIELD:Ae,X_ERROR_LOW_FIELD:Se,X_ERROR_HIGH_FIELD:Ce,Y_ERROR_LOW_FIELD:ke,Y_ERROR_HIGH_FIELD:Pe,LINE_MARKER_SIZE:Te,INTERPOLATE:Ee,ZERO:Re,SMOOTH:Le,STEP:Be,CATEGORY:Vi,FUNNEL:We,BAR:ze,CANDLESTICK:Ne,PIE:Ye,COLUMN:Ge,AREA:Oe,VERTICAL_BULLET:hi,BOX_PLOT:De,OHLC:Ze,WATERFALL:ui,LINE:Ue,BULLET:He,VERTICAL_LINE:li,VERTICAL_AREA:ri,RANGE_AREA:ei,VERTICAL_RANGE_AREA:ci,RANGE_COLUMN:ni,VERTICAL_BOX_PLOT:ai,RANGE_BAR:ii,HORIZONTAL_WATERFALL:Xe,SCATTER:si,SCATTER_LINE:oi,BUBBLE:Fe,RADAR_AREA:$e,RADAR_LINE:ti,RADAR_COLUMN:Je,POLAR_LINE:Ke,POLAR_AREA:je,POLAR_SCATTER:Qe,RENDER:Ti,PLOT_AREA_CLICK:xi,PLOT_AREA_HOVER:mi,LOGARITHMIC:Ii,DRAG:yi,DRAG_START:wi,DRAG_END:_i,ZOOM_START:bi,ZOOM:Ai,ZOOM_END:Si,SELECT_START:Ci,SELECT:ki,SELECT_END:Pi,GAP:Ie,DONUT:qe,INSIDE_END:Mi,INSIDE_BASE:Li,OUTSIDE_END:Bi,MOUSEWHEEL:Oi,MOUSEWHEEL_DELAY:zi,SHOW_TOOLTIP:Ri,HIDE_TOOLTIP:Ei,EQUALLY_SPACED_SERIES:pi,ABOVE:Ve,BELOW:Me},Fi=4,Hi=xt.extend({init:function(t,e,i,n,s,o){xt.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 mt(r.x,o.y1),new mt(r.x,o.y2)],i&&e.push(new mt(l,o.y1),new mt(c,o.y1),new mt(l,o.y2),new mt(c,o.y2)),this.box=new yt(l,o.y1,c,o.y2)):(e=[new mt(o.x1,r.y),new mt(o.x2,r.y)],i&&e.push(new mt(o.x1,l),new mt(o.x1,c),new mt(o.x2,l),new mt(o.x2,c)),this.box=new yt(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),Fi)||Fi;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(xt.fn.createVisual.call(this),t=0;t<o.length;t+=2)e=new Qt(r).moveTo(o[t].x,o[t].y).lineTo(o[t+1].x,o[t+1].y),_t(e),i.visual.append(e)}}),wt(Hi,{animation:{type:xe,delay:ve},endCaps:!0,line:{width:2},zIndex:1}),Ni=Hi.extend({getAxis:function(){var t=this.chart.seriesValueAxis(this.series);return t}}),Gi=5,qi=xt.extend({init:function(t,e){xt.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=kt({},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&&K(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;K(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===Q.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,Y.convertableToNumber(t.value)?t.value:g]},stackLimits:function(t,e){var i,n,s,o,r,a=this,h=$,l=J;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],gt(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,Y.sparseArrayLimits(o.negative).min)),o.positive.length&&(s.max=Math.max(s.max,Y.sparseArrayLimits(o.positive).max))),s.min!==$||s.max!==J?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[be],l=e.fields[Ae];K(h)&&K(l)?n={low:h,high:l}:a&&gt(a.value)&&(this.seriesErrorRanges=this.seriesErrorRanges||[],this.seriesErrorRanges[r]=this.seriesErrorRanges[r]||new ge(a.value,o,tt),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 Ni(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,gt(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 gt(l)||(this._evalSeries[r]=l=n(t,{},h,!0)),a=t,l&&(a=kt({},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:$,max:J},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=e.valueSlot(p,a),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.options.clip&&this.options.limitPoints&&this.points.length&&this.limitPoints(),this.box=t},valueSlot:function(t,e){return t.getSlot(e[0],e[1],!this.options.clip)},limitPoints:function(){var t,e=this,i=this.categoryPoints,n=i[0].concat(Pt(i));for(t=0;t<n.length;t++)n[t]&&e.limitPoint(n[t])},limitPoint:function(t){var e=this.categoryAxis.limitSlot(t.box);e.equals(t.box)||t.reflow(e)},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 yt(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]=le.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}}),wt(qi,{series:[],invertAxes:!1,isStacked:!1,clip:!0,limitPoints:!0}),Wi={click:function(t,e){return t.trigger(fi,this.eventArgs(e))},hover:function(t,e){return t.trigger(vi,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:Tt(t),originalEvent:t,point:this}}},Xi={createNote:function(){var t=this.options.notes,e=this.noteText||t.label.text;t.visible!==!1&&gt(e)&&null!==e&&(this.note=new Y.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))}},Ui=xt.extend({init:function(t,e){xt.fn.init.call(this),this.value=t,this.options=e,this.aboveAxis=St(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=Rt(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 Et(e,kt({align:et,vAlign:et,margin:{left:5,right:5},zIndex:St(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=kt({color:this.color},t.border);return gt(i.color)||(i.color=new ee(e).brightness(ye).toHex()),i},createVisual:function(){},createMarker:function(){var t=this.options.markers,e=new It({type:t.type,width:t.size,height:t.size,rotation:t.rotation,background:t.background,border:this.markerBorder(),opacity:t.opacity,zIndex:St(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 yt(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===Ve?it:s,s=s===Me?nt: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 It({type:i.type,width:n,height:n,rotation:i.rotation,background:t.color||e,border:{color:t.border.color,width:t.border.width,opacity:St(t.border.opacity,1)},opacity:St(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 ie.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+_e,e=st,this.aboveAxis?(i=s.y1,n=nt):(i=s.y2,n=it),{point:new mt(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)},unclipElements:function(){this.label&&(this.label.options.noclip=!0),this.note&&(this.note.options.noclip=!0)}}),Ui.prototype.defaults={vertical:!0,markers:{visible:!0,background:ot,size:Te,type:rt,border:{width:2},opacity:1},labels:{visible:!1,position:Ve,margin:Vt(3),padding:Vt(4),animation:{type:xe,delay:ve}},notes:{label:{}},highlight:{markers:{border:{color:"#fff",width:2}},zIndex:Q.HIGHLIGHT_ZINDEX},errorBars:{line:{width:1}}},kt(Ui.prototype,Wi),kt(Ui.prototype,Xi),Zi=xt.extend({init:function(t,e,i){xt.fn.init.call(this),this.linePoints=t,this.series=e,this.seriesIx=i},points:function(){return this.toGeometryPoints(this.linePoints)},toGeometryPoints:function(t){var e,i,n=[];for(e=0,i=t.length;e<i;e++)t[e]&&t[e].visible!==!1&&n.push(t[e]._childBox.toRect().center());return n},createVisual:function(){var t,e=this,i=e.options,n=e.series,s=n.color,o=n._defaults;At(s)&&o&&(s=o.color),t=Qt.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)}}),wt(Zi,{closed:!1}),Yi={calculateStepPoints:function(t){var e,i,n,s=this.parent.plotArea.seriesCategoryAxis(this.series),r=s.options,a=r.justified,h=r.vertical,l=r.reverse,c=h?at:ht,u=h?ht:at,p=l?2:1,d=p,g=o(t[0],c,p,u,d),f=[g];for(e=1;e<t.length;e++)i=o(t[e],c,p,u,d),g[c]!==i[c]&&(n=new ne,n[c]=g[c],n[u]=i[u],f.push(n,i)),g=i;return a?g!==Pt(f)&&f.push(g):f.push(o(Pt(t),c,p,u,l?1:2)),f}},ji=Zi.extend({points:function(){return this.calculateStepPoints(this.linePoints)}}),kt(ji.prototype,Yi),Ki=Zi.extend({createVisual:function(){var t,e,i,n=this.series,s=n._defaults,o=n.color;At(o)&&s&&(o=s.color),t=new Mt(this.options.closed),e=t.process(this.points()),i=new Qt({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}}),Qi={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)!==Ee&&(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?Re:e||Ee},getNearestPoint:function(t,e,i){var n,s,o,r,a,h=new mt(t,e),l=this.seriesPoints[i],c=$;for(s=0;s<l.length;s++)o=l[s],o&&gt(o.value)&&null!==o.value&&o.visible!==!1&&(r=o.box,a=r.center().distanceTo(h),a<c&&(n=o,c=a));return n}},$i=$t.extend({setup:function(){this._setEnd(this.options.box.x1)},step:function(t){var e=this.options.box;this._setEnd(Y.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)}}),wt($i,{duration:ve}),Jt.current.register("clip",$i),Ji={createAnimation:function(){var t,e,i=this.getRoot();i&&(i.options||{}).transitions!==!1&&(t=i.box,e=Qt.fromRect(t.toRect()),this.visual.clip(e),this.animation=new $i(e,{box:t}),r(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&&gt(i.visual.options.zIndex)&&i.visual.clip(t)}},tn=qi.extend({render:function(){qi.fn.render.call(this),this.updateStackRange(),this.renderSegments()},pointType:function(){return Ui},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(!gt(c)||null===c){if(l!==Re)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,At(a.color)&&(n=i.color),s=new Ui(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===Be?ji:s===Le?Ki:Zi)(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)}}),kt(tn.prototype,Qi,Ji),en=Zi.extend({init:function(t,e,i,n,s){Zi.fn.init.call(this,t,e,i),this.prevSegment=n,this.stackPoints=s},createVisual:function(){var t=this.series,e=t._defaults,i=t.line||{},n=t.color;At(n)&&e&&(n=e.color),this.visual=new te({zIndex:t.zIndex}),this.createFill({fill:{color:n,opacity:t.opacity},stroke:null}),i.width>0&&i.visible!==!1&&this.createStroke({stroke:kt({color:n,opacity:t.opacity,lineCap:"butt"},i)})},strokeSegments:function(){var t=this._strokeSegments;return t||(t=this._strokeSegments=this.createStrokeSegments()),t},createStrokeSegments:function(){return this.segmentsFromPoints(this.points())},stackSegments:function(){return this.prevSegment?this.prevSegment.createStackSegments(this.stackPoints):this.createStackSegments(this.stackPoints)},createStackSegments:function(t){return this.segmentsFromPoints(this.toGeometryPoints(t)).reverse()},segmentsFromPoints:function(t){return t.map(function(t){return new ie.Segment(t)})},createStroke:function(t){var e=new Qt(t);e.segments.push.apply(e.segments,this.strokeSegments()),this.visual.append(e)},hasStackSegment:function(){return this.prevSegment||this.stackPoints&&this.stackPoints.length},createFill:function(t){var e,i,n=this.strokeSegments(),s=n.slice(0),o=this.hasStackSegment();o&&(e=this.stackSegments(),Lt(s,e)),i=new Qt(t),i.segments.push.apply(i.segments,s),!o&&n.length>1&&this.fillToAxes(i),this.visual.append(i)},fillToAxes:function(t){var e=this.parent,i=e.options.invertAxes,n=e.seriesValueAxis(this.series),s=e.categoryAxisCrossingValue(n),o=n.getSlot(s,s,!0),r=this.strokeSegments(),a=r[0].anchor(),h=Pt(r).anchor(),l=i?o.x1:o.y1;i?t.lineTo(l,h.y).lineTo(l,a.y):t.lineTo(h.x,l).lineTo(a.x,l)}}),nn=en.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.calculateStepPoints(this.linePoints))},createStackSegments:function(t){return this.segmentsFromPoints(this.calculateStepPoints(t)).reverse()}}),kt(nn.prototype,Yi),sn=en.extend({createStrokeSegments:function(){var t=new Mt(this.options.closed),e=this.points();return t.process(e)},createStackSegments:function(){var t,e,i=this.strokeSegments(),n=[];for(t=i.length-1;t>=0;t--)e=i[t],n.push(new ie.Segment(e.anchor(),e.controlOut(),e.controlIn()));return n}}),on=tn.extend({createSegment:function(t,e,i,n){var s,o,r,a,h=this.options.isStacked,l=(e.line||{}).style;return h&&i>0&&n&&(r=this.seriesMissingValues(e),"gap"!==r?(o=n.linePoints,s=n):o=this._gapStackPoints(t,i,l)),new(a=l===Be?nn:l===Le?sn:en)(t,e,i,s,o)},reflow:function(t){var e,i,n,s,o=this;if(tn.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!==Be&&r>d&&!p[h][a-1]&&o.push(u._previousSegmentPoint(r,a,a-1,h)),o.push(l),i!==Be&&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 Ui(0,e);return i.categoryIx=t,i.series={},i},seriesMissingValues:function(t){return t.missingValues||Re}}),rn=j.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:$,max:J},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]}}),an=xt.extend({init:function(t,e){xt.fn.init.call(this,e),this.textBox=new Et(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?et:st,o.vAlign=i?it:et,e.position===Mi?i?(o.vAlign=it,!n&&r.height()<t.height()&&(o.vAlign=nt)):o.align=n?lt:st:e.position===et?(o.vAlign=et,o.align=et):e.position===Li?i?o.vAlign=n?nt:it:o.align=n?st:lt:e.position===Bi&&(i?h=n?new yt(t.x1,t.y1-r.height(),t.x2,t.y1):new yt(t.x1,t.y2,t.x2,t.y2+r.height()):(o.align=et,h=n?new yt(t.x2,t.y1,t.x2+r.width(),t.y2):new yt(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?ht:at,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))}}),wt(an,{position:Bi,margin:Vt(3),padding:Vt(4),color:ct,background:"",border:{width:1,color:""},aboveAxis:!0,vertical:!1,animation:{type:xe,delay:ve},zIndex:2}),hn=6,ln=xt.extend({init:function(t,e){xt.fn.init.call(this),this.options=e,this.color=e.color||ot,this.aboveAxis=St(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=Rt(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 an(e,kt({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&&(xt.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 te;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,r=this.options,h=r.border,l=gt(h.opacity)?h.opacity:r.opacity,c=this.box.toRect();c.size.width=Math.round(c.size.width),e=this.rectVisual=Qt.fromRect(c,{fill:{color:this.color,opacity:r.opacity},stroke:{color:this.getBorderColor(),width:h.width,opacity:l,dashType:h.dashType}}),i=this.box.width(),n=this.box.height(),s=r.vertical?i:n,s>hn&&(_t(e),(i<1||n<1)&&(e.options.stroke.lineJoin="round")),t.append(e),a(r)&&(o=this.createGradientOverlay(e,{baseColor:this.color},kt({end:r.vertical?void 0:[0,1]},r.overlay)),t.append(o))},createHighlight:function(t){var e=Qt.fromRect(this.box.toRect(),t);return _t(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||ye,n=e.color;return gt(n)||(n=new ee(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=st,c=it;return o.vertical?(t=Math.min(r.x2,h.x2)+_e,a?e=Math.max(r.y1,h.y1):(e=Math.min(r.y2,h.y2),c=nt)):(i=Math.max(r.x1,h.x1),n=Math.min(r.x2,h.x2),o.isStacked?(c=nt,a?(l=lt,t=n):t=i,e=Math.max(r.y1,h.y1)-_e):(a?t=n+_e:(t=i-_e,l=lt),e=Math.max(r.y1,h.y1))),{point:new mt(t,e),align:{horizontal:l,vertical:c}}},overlapsBox:function(t){return this.box.overlaps(t)}}),kt(ln.prototype,Wi),kt(ln.prototype,Xi),ln.prototype.defaults={border:{width:1},vertical:!0,overlay:{gradient:"glass"},labels:{visible:!1,format:"{0}"},opacity:1,notes:{label:{}}},cn=xt.extend({init:function(t){xt.fn.init.call(this,t),this.forEach=t.rtl?l:h},reflow:function(t){var e=this.options,i=e.vertical,n=e.gap,s=e.spacing,o=this.children,r=o.length,a=i?ht:at,h=r+n+s*(r-1),l=(i?t.height():t.width())/h,c=t[a+1]+l*(n/2);this.forEach(o,function(e,i){var n=(e.box||t).clone();n[a+1]=c,n[a+2]=c+l,e.reflow(n),i<r-1&&(c+=l*s),c+=l})}}),wt(cn,{vertical:!1,gap:0,spacing:0}),un=xt.extend({reflow:function(t){var e,i,n,s=this,o=this.options.vertical?at:ht,r=this.children,a=r.length,h=this.box=new yt;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))}}),wt(un,{vertical:!0}),pn=qi.extend({render:function(){qi.fn.render.call(this),this.updateStackRange()},pointType:function(){return ln},clusterType:function(){return cn},stackType:function(){return un},stackLimits:function(t,e){var i=qi.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===Bi&&(m.position=Mi),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),At(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,rtl:!d.invertAxes&&(this.chartService||{}).rtl}),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===Q.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?at:ht,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(),qi.fn.createAnimation.call(this),r(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&&gt(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 ne(t.x1,t.y1),n.vertical=!i.invertAxes}}),wt(pn,{animation:{type:ze}}),dn=xt.extend({init:function(t,e){xt.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(){xt.fn.createVisual.call(this),this._mainVisual=this.mainVisual(this.options),this.visual.append(this._mainVisual),this.createOverlay()},mainVisual:function(t){var e=new te;return this.createBody(e,t),this.createLines(e,t),e},createBody:function(t,e){var i=Qt.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:St(e.border.opacity,e.opacity)}),_t(i),t.append(i),a(e)&&t.append(this.createGradientOverlay(i,{baseColor:this.color},kt({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:St(n.opacity,e.opacity),width:n.width,dashType:n.dashType,lineCap:"butt"}},o=0;o<i.length;o++)r=Qt.fromPoints(i[o],s),_t(r),t.append(r)},getBorderColor:function(){var t=this.options.border,e=t.color;return gt(e)||(e=new ee(this.color).brightness(t._brightness).toHex()),e},createOverlay:function(){var t=Qt.fromRect(this.box.toRect(),{fill:{color:ot,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(kt({},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 mt(t.x2+_e,Math.max(t.y1,e.y1)+_e),align:{horizontal:st,vertical:it}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){return this.box.overlaps(t)}}),wt(dn,{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:{}}}),kt(dn.prototype,Wi),kt(dn.prototype,Xi),gn=qi.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,a=e.seriesIx,h=this,l=h.children,u=h.options,p=t.valueFields,d=this.splitValue(p),g=c(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=l[s],n||(n=new cn({vertical:u.invertAxes,gap:u.gap,spacing:u.spacing,rtl:!u.invertAxes&&(this.chartService||{}).rtl}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=a,i.owner=this,i.dataItem=f,i.noteText=t.fields.noteText),this.points.push(i),v.push(i)},pointType:function(){return dn},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=kt({},o),c=t.fields.color||o.color;return l=this.evalPointOptions(l,h,s,n,o,r),o.type===Ne&&h.open>h.close&&(c=t.fields.downColor||o.downColor||o.color),At(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:$,max:J},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}}),kt(gn.prototype,Ji),fn=dn.extend({init:function(t,e){dn.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=kt({},c.border),gt(n.color)||(n.color=gt(o.color)?o.color:new ee(c.background).brightness(ye).toHex()),s=new It({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=dn.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:dn.fn.getBorderColor.call(this)}}),wt(fn,{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:Te,type:Q.CROSS,background:ot,border:{width:2,opacity:1},opacity:0},extremes:{visible:!0,size:Te,type:rt,background:ot,border:{width:2,opacity:1},opacity:0}}),kt(fn.prototype,Wi),vn=fn.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]]]}}),xn=gn.extend({addValue:function(t,e){var i,n,s=e.categoryIx,o=e.category,r=e.series,a=e.seriesIx,h=this,l=h.children,u=h.options,p=t.valueFields,d=this.splitValue(p),g=c(d),f=r.data[s],v=this.categoryPoints[s];v||(this.categoryPoints[s]=v=[]),g&&(i=this.createPoint(t,e)),n=l[s],n||(n=new cn({vertical:u.invertAxes,gap:u.gap,spacing:u.spacing,rtl:!u.invertAxes&&(this.chartService||{}).rtl}),this.append(n)),i&&(this.updateRange(p,e),n.append(i),i.categoryIx=s,i.category=o,i.series=r,i.seriesIx=a,i.owner=this,i.dataItem=f),this.points.push(i),v.push(i)},pointType:function(){return this.options.invertAxes?vn:fn},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));gt(t.mean)&&(s=s.concat(t.mean)),n=this.valueAxisRanges[i]=n||{min:$,max:J},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],gt(i)&&null!==i&&s.push(i);return s}}),mn=Hi.extend({getAxis:function(){var t=this.chart.seriesAxes(this.series),e=this.isVertical?t.y:t.x;return e}}),yn=xt.extend({init:function(t,e){xt.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];K(s)&&(K(u)&&K(p)&&(n={low:u,high:p}),c&&gt(c[o])&&(this.seriesErrorRanges=this.seriesErrorRanges||{x:[],y:[]},this.seriesErrorRanges[e][h]=this.seriesErrorRanges[e][h]||new ge(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===ht,l={};e[i+"Low"]=s,e[i+"High"]=o,e.errorBars=e.errorBars||[],n=new mn(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],h=this.seriesMissingValues(a),l=this.seriesPoints[r],c=e;u(s)&&u(o)||(c=this.createMissingValue(c,h)),c&&(n=this.createPoint(c,i),n&&(t.extend(n,i),this.addErrorBar(n,at,i),this.addErrorBar(n,ht,i)),this.updateRange(c,i.series)),this.points.push(n),l.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],h=this.yAxisRanges[s];u(o)&&(a=this.xAxisRanges[n]=a||{min:$,max:J},Bt(o)&&(o=Ot(i,o)),a.min=Math.min(a.min,o),a.max=Math.max(a.max,o)),u(r)&&(h=this.yAxisRanges[s]=h||{min:$,max:J},Bt(r)&&(r=Ot(i,r)),h.min=Math.min(h.min,r),h.max=Math.max(h.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 gt(h)||(this._evalSeries[r]=h=n(t,{},a,!0)),s=t,h&&(s=kt({},t),n(s,{value:e,series:o,dataItem:i.dataItem},a)),s},pointType:function(){return Ui},pointOptions:function(t,e){var i,n=this.seriesOptions[e];return n||(i=this.pointType().prototype.defaults,this.seriesOptions[e]=n=kt({},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),At(n.color)&&(o=s.color),i=new Ui(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 yt(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,kt({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}}),wt(yn,{series:[],tooltip:{format:"{0}, {1}"},labels:{format:"{0}, {1}"},clip:!0}),kt(yn.prototype,Ji,{_bindPoint:qi.prototype._bindPoint}),_n=Ui.extend({init:function(t,e){Ui.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 te,r=new Kt.Circle(new ie.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 Kt.Circle(new ie.Circle([n.x,n.y],s),{stroke:{color:e.color||new ee(i.background).brightness(ye).toHex(),width:e.width,opacity:e.opacity},fill:{color:i.background,opacity:t.opacity}});return o.append(r,a),o}}),_n.prototype.defaults=kt({},_n.prototype.defaults,{labels:{position:et},highlight:{opacity:1,border:{color:"#fff",width:2,opacity:1}}}),_n.prototype.defaults.highlight.zIndex=void 0,wn=yn.extend({_initFields:function(){this._maxSize=J,yn.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)),yn.fn.addValue.call(this,t,e)):(this.points.push(null),this.seriesPoints[e.seriesIx].push(null))},reflow:function(t){this.updateBubblesSize(t),yn.fn.reflow.call(this,t)},pointType:function(){return _n},createPoint:function(t,e){var i,n,s=e.series,o=s.data.length,r=e.pointIx*(ve/o),a={delay:r,duration:ve-r,type:Fe},h=e.color||s.color;return t.size<0&&s.negativeValues.visible&&(h=St(s.negativeValues.color,h)),i=kt({labels:{animation:{delay:r,duration:ve-r}}},this.pointOptions(s,e.seriesIx),{markers:{type:rt,border:s.border,opacity:s.opacity,animation:a}}),i=this.evalPointOptions(i,t,e),At(s.color)&&(h=i.color),i.markers.background=h,n=new _n(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=St(d.options.zIndex,0),x=v+(1-f/a),kt(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(){}}),wt(wn,{tooltip:{format:"{3}"},labels:{format:"{3}"}}),bn=It.extend({}),kt(bn.prototype,Wi),An=xt.extend({init:function(t,e){xt.fn.init.call(this,e),this.aboveAxis=this.options.aboveAxis,this.color=e.color||ot,this.value=t},render:function(){var t=this.options;this._rendered||(this._rendered=!0,gt(this.value.target)&&(this.target=new bn({type:t.target.shape,background:t.target.color||this.color,opacity:t.opacity,zIndex:t.zIndex,border:t.target.border,vAlign:it,align:lt}),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 yt(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;xt.fn.createVisual.call(this),t=this.options,e=Qt.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:St(t.border.opacity,t.opacity)}),this.bodyVisual=e,_t(e),this.visual.append(e)},createAnimation:function(){this.bodyVisual&&(this.animation=$t.create(this.bodyVisual,this.options.animation))},createHighlight:function(t){return Qt.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)}}),An.prototype.tooltipAnchor=ln.prototype.tooltipAnchor,wt(An,{border:{width:1},vertical:!1,opacity:1,target:{shape:"",border:{width:0,color:"green"},line:{width:2}},tooltip:{format:"Current: {0}<br />Target: {1}"}}),kt(An.prototype,Wi),kt(An.prototype,Xi),Sn=qi.extend({init:function(t,e){p(e),qi.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=kt({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),At(r.color)&&(d=p.color),i=new An(u,p),i.color=d,n=c[s],n||(n=new cn({vertical:l.invertAxes,gap:l.gap,spacing:l.spacing,rtl:!l.invertAxes&&(this.chartService||{}).rtl}),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];gt(i)&&!isNaN(i)&&gt(n&&!isNaN(n))&&(o=this.valueAxisRanges[s]=o||{min:$,max:J},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()}}),Sn.prototype._setAnimationOptions=pn.prototype._setAnimationOptions,wt(Sn,{animation:{type:ze}}),Cn=j.extend({init:function(t,e){this.chartService=t,this.options=kt({},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=St(s,i),o=St(o,i)),n=Vt(t.padding||{},"auto"),{backgroundColor:s,borderColor:o,font:t.font,color:t.color,opacity:t.opacity,borderWidth:zt(t.border.width),paddingTop:zt(n.top),paddingBottom:zt(n.bottom),paddingLeft:zt(n.left),paddingRight:zt(n.right)}},show:function(t,e,i){t.format=e.format;var n=this.getStyle(e,i);t.style=n,!gt(e.color)&&new ee(n.backgroundColor).percBrightness()>180&&(t.className="k-chart-tooltip-inverse"),this.chartService.notify(Ri,t)},hide:function(){this.chartService&&this.chartService.notify(Ei)},destroy:function(){delete this.chartService}}),wt(Cn,{border:{width:1},opacity:1}),kn=Cn.extend({init:function(t,e,i){Cn.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===ut&&(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(Ei,{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=et,r===nt?(e=it,i=l.bottomLeft().translate(0,a)):(e=nt,i=l.topLeft().translate(0,-a))):(e=et,r===st?(t=lt,i=l.topLeft().translate(-a,0)):(t=st,i=l.topRight().translate(a,0))),{point:i,align:{horizontal:t,vertical:e}}}}),wt(kn,{padding:10}),Pn=xt.extend({init:function(t,e,i){xt.fn.init.call(this,i),this.axis=e,this.stickyMode=e instanceof Dt;var n=this.options.tooltip;n.visible&&(this.tooltip=new kn(t,this,kt({},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?ht:at,h=new ne(r.x1,r.y1);t=o?new ne(r.x2,r.y1):new ne(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?at:ht;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(){xt.fn.createVisual.call(this);var t=this.options;this.line=new Qt({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(),xt.fn.destroy.call(this)}}),wt(Pn,{color:ct,width:2,zIndex:-1,tooltip:{visible:!1}}),Tn=xt.extend({init:function(t,e){xt.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 te({zIndex:0}),this.shouldClip()&&(t=this.clipBox=this._clipBox(),e=t.toRect(),i=Qt.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)&&(s.unclipElements?s.unclipElements():(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(){xt.fn.destroy.call(this),delete this.parent}}),Tn.prototype.isStackRoot=!0,Rn=Ft.extend({init:function(t){Ft.fn.init.call(this,t),this.id=d(),this.createTitle(),this.content=new xt,this.chartContainer=new Tn({},this),this.append(this.content),this.axes=[],this.charts=[]},createTitle:function(){var t=this.options.title;Ct(t)&&(t=kt({},t,{align:t.position,position:it})),this.title=Y.Title.buildTitle(t,this,Rn.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()),Ft.fn.reflow.call(this,t),e&&this.children.push(e),this.title&&(this.contentBox.y1+=this.title.box.height())},visualStyle:function(){var t=Ft.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&&Lt(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 yt;for(t=0;t<c;t++)e=l[t],i=e.options.vertical?ht:at,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}}),En=1,Rn.prototype.isStackRoot=!0,wt(Rn,{zIndex:-1,shrinkToFit:!0,title:{align:st},visible:!0}),In=xt.extend({init:function(t,e,i){xt.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.originalOptions=e,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){Bt(t.title)&&(t.title={text:t.title}),t.title=kt({},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 Rn(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 Pn(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,p=this.options.legend,d=p.labels||{},g=p.inactiveItems||{},f=g.labels||{},v=[];for(e=0;e<c;e++)i=t[e],n=i.visible!==!1,i.visibleInLegend!==!1&&(s=i.name,o=n?Rt(d):Rt(f)||Rt(d),o&&(s=o({text:u(s)?s:"",series:i})),r=i._defaults,a=i.color,At(a)&&r&&(a=r.color),h=void 0,l=void 0,n?(h={},l=a):(h={color:f.color,font:f.font},l=g.markers.color),u(s)&&""!==s&&v.push({text:s,labels:h,markerColor:l,series:i,active:n}));Lt(p.items,v)},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=Vt(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[at+a]-s[at+o],r[ht+a]-s[ht+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,p,d,g,f,v=this,x=t[0],m=e[0],y=this.axisCrossingValues(x,e),_=this.axisCrossingValues(m,t),w={},A={},S={},C={};for(i=0;i<e.length;i++)n=e[i],s=n.pane,o=s.id,r=n.options.visible!==!1,a=b(t,s)||x,h=y,a!==x&&(h=v.axisCrossingValues(a,e)),v.alignAxisTo(n,a,_[i],h[i]),n.options._overlap||(Ht(n.lineBox().x1)===Ht(a.lineBox().x1)&&(w[o]&&n.reflow(n.box.alignTo(w[o].box,st).translate(-n.options.margin,0)),r&&(w[o]=n)),Ht(n.lineBox().x2)===Ht(a.lineBox().x2)&&(n._mirrored||(n.options.labels.mirror=!n.options.labels.mirror,n._mirrored=!0),v.alignAxisTo(n,a,_[i],h[i]),A[o]&&n.reflow(n.box.alignTo(A[o].box,lt).translate(n.options.margin,0)),r&&(A[o]=n)),0!==i&&m.pane===n.pane&&(n.alignTo(m),n.reflow(n.box)));for(l=0;l<t.length;l++)c=t[l],u=c.pane,p=u.id,d=c.options.visible!==!1,g=b(e,u)||m,f=_,g!==m&&(f=v.axisCrossingValues(g,t)),v.alignAxisTo(c,g,y[l],f[l]),c.options._overlap||(Ht(c.lineBox().y1)===Ht(g.lineBox().y1)&&(c._mirrored||(c.options.labels.mirror=!c.options.labels.mirror,c._mirrored=!0),v.alignAxisTo(c,g,y[l],f[l]),S[p]&&c.reflow(c.box.alignTo(S[p].box,it).translate(0,-c.options.margin)),d&&(S[p]=c)),Ht(c.lineBox().y2,Q.COORD_PRECISION)===Ht(g.lineBox().y2,Q.COORD_PRECISION)&&(C[p]&&c.reflow(c.box.alignTo(C[p].box,nt).translate(0,c.options.margin)),d&&(C[p]=c)),0!==l&&(c.alignTo(x),c.reflow(c.box)))},shrinkAxisWidth:function(t){var e,i,n,s,o=this.groupAxes(t).any,r=w(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,w(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,u=this.groupAxes(t).any,p=0;for(e=0;e<t.length;e++)if(i=t[e],n=i.axes,s=i.contentBox,n.length>0)for(o=w(n),r=Math.max(s.y1-o.y1,s.y2-o.y2),p=Math.max(p,s.x1-o.x1),a=0;a<n.length;a++)h=n[a],h.reflow(h.box.translate(0,r));for(l=0;l<u.length;l++)c=u[l],c.reflow(c.box.translate(p,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&&!bt(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(Qt.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;xt.fn.createVisual.call(this),t=this.options.plotArea,e=t.opacity,i=t.background,n=t.border,void 0===n&&(n={}),A(i)&&(i=ot,e=0),s=this._bgVisual=new Kt.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&&gt(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&&o.visible!==!1&&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&&o.visible!==!1&&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}}),wt(In,{series:[],plotArea:{margin:{}},background:"",border:{color:ct,width:0},legend:{inactiveItems:{labels:{color:"#919191"},markers:{color:"#919191"}}}}),Vn={hover:function(t,e){this._dispatchEvent(t,e,mi)},click:function(t,e){this._dispatchEvent(t,e,xi)}},Mn=j.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,Ct(u))o=u[s];else{if(0!==n&&!bt(s,a))break;o=u}o&&l.push({canonicalName:s,name:h[n],transform:At(o)?o:he[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||K(p)||vt(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||!Ct(r)||gt(r.length)||r instanceof Date)){d=r;break}gt(r)&&S(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=gt(s[e])?s[e]:n.fields[e],r.push(o);return r}}),Ln=j.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]}}),Ln.current=new Ln,Bn=ln.extend({createLabel:function(){var t=this.options.labels,e=kt({},t,t.from),i=kt({},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=Rt(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 an(e,kt({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)}}),Bn.prototype.defaults=kt({},Bn.prototype.defaults,{labels:{format:"{0} - {1}"},tooltip:{format:"{1}"}}),On=pn.extend({pointType:function(){return Bn},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&&K(n)&&K(s)&&(o=this.valueAxisRanges[i]=o||{min:$,max:J},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}}),On.prototype.plotLimits=qi.prototype.plotLimits,zn=Ui.extend({aliasFor:function(){return this.parent}}),Dn="auto",Fn="{0}",Hn="{1}",Nn=xt.extend({init:function(t,e){xt.fn.init.call(this),this.value=t,this.options=e,this.aboveAxis=St(this.options.aboveAxis,!0),this.tooltipTracking=!0,this.initLabelsFormat()},render:function(){var t,e,i,n,s,o;this._rendered||(this._rendered=!0,t=this.options,e=t.markers,i=t.labels,n=this.value,s=this.fromPoint=new zn(n,kt({},this.options,{labels:i.from,markers:e.from})),o=this.toPoint=new zn(n,kt({},this.options,{labels:i.to,markers:e.to})),this.copyFields(s),this.copyFields(o),this.append(s),this.append(o))},reflow:function(t){var e,i;this.render(),e=t.from,i=t.to,this.positionLabels(e,i),this.fromPoint.reflow(e),this.toPoint.reflow(i),this.box=this.fromPoint.markerBox().clone().wrap(this.toPoint.markerBox())},createHighlight:function(){var t=new te;return t.append(this.fromPoint.createHighlight()),t.append(this.toPoint.createHighlight()),t},highlightVisual:function(){return this.visual},highlightVisualArgs:function(){return{options:this.options,from:this.fromPoint.highlightVisualArgs(),to:this.toPoint.highlightVisualArgs()}},tooltipAnchor:function(){var t,e,i,n,s,o,r=this.owner.pane.clipBox(),a=!r||r.overlaps(this.box);if(a)return t=this.box,e=t.center(),i=st,this.options.vertical?(n=e.x,s=t.y1-_e,o=nt):(n=t.x2+_e,s=e.y,o=et),{point:new mt(n,s),align:{horizontal:i,vertical:o}}},formatValue:function(t){return this.owner.formatPointValue(this,t)},overlapsBox:function(t){return this.box.overlaps(t)},unclipElements:function(){this.fromPoint.unclipElements(),this.toPoint.unclipElements()},initLabelsFormat:function(){var e=this.options.labels;e.format||(e.from&&e.from.format||(e.from=t.extend({},e.from,{format:Fn})),e.to&&e.to.format||(e.to=t.extend({},e.to,{format:Hn})))},positionLabels:function(t,e){var i,n,s=this.options,o=s.labels,r=s.vertical;o.position===Dn&&(r?e.y1<=t.y1?(n=Ve,i=Me):(n=Me,i=Ve):e.x1<=t.x1?(n=st,i=lt):(n=lt,i=st),o.from&&o.from.position||(this.fromPoint.options.labels.position=i),o.to&&o.to.position||(this.toPoint.options.labels.position=n))},copyFields:function(t){t.dataItem=this.dataItem,t.category=this.category,t.series=this.series,t.color=this.color,t.owner=this.owner}}),kt(Nn.prototype,Wi),kt(Nn.prototype,Xi),Nn.prototype.defaults={markers:{visible:!1,background:ot,size:Te,type:rt,border:{width:2},opacity:1},labels:{visible:!1,margin:Vt(3),padding:Vt(4),animation:{type:xe,delay:ve},position:Dn},notes:{label:{}},highlight:{markers:{border:{color:ot,width:2}},zIndex:Q.HIGHLIGHT_ZINDEX},tooltip:{format:"{0} - {1}"}},Gn=en.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.toGeometryPoints(this.toPoints()))},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.segmentsFromPoints(this.toGeometryPoints(this.fromPoints().reverse()))),t},createStroke:function(t){var e=new Qt(t),i=new Qt(t);e.segments.push.apply(e.segments,this.strokeSegments()),i.segments.push.apply(i.segments,this.stackSegments()),this.visual.append(e),this.visual.append(i)},hasStackSegment:function(){return!0},fromPoints:function(){return this.linePoints.map(function(t){return t.fromPoint})},toPoints:function(){return this.linePoints.map(function(t){return t.toPoint})}}),qn=Gn.extend({createStrokeSegments:function(){return this.createCurveSegments(this.toPoints())},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.createCurveSegments(this.fromPoints().reverse())),t},createCurveSegments:function(t){var e=new Mt;return e.process(this.toGeometryPoints(t))}}),Wn=Gn.extend({createStrokeSegments:function(){return this.segmentsFromPoints(this.calculateStepPoints(this.toPoints()))},stackSegments:function(){var t=this.fromSegments;return this.fromSegments||(t=this.fromSegments=this.segmentsFromPoints(this.calculateStepPoints(this.fromPoints())),t.reverse()),t}}),kt(Wn.prototype,Yi),Xn=qi.extend({render:function(){qi.fn.render.call(this),this.renderSegments()},pointType:function(){return Nn},createPoint:function(t,e){var i,n,s,o=e.categoryIx,r=e.category,a=e.series,h=e.seriesIx,l=t.valueFields;if(!u(l.from)&&!u(l.to)){if(this.seriesMissingValues(a)!==Re)return null;l={from:0,to:0}}return i=this.pointOptions(a,h),i=this.evalPointOptions(i,l,r,o,a,h),n=t.fields.color||a.color,At(a.color)&&(n=i.color),s=new Nn(l,i),s.color=n,this.append(s),s},createSegment:function(t,e,i){var n,s=(e.line||{}).style;return new(n="smooth"===s?qn:"step"===s?Wn:Gn)(t,e,i)},plotRange:function(t,e){return t?[t.value.from,t.value.to]:[e,e]},valueSlot:function(t,e){var i=t.getSlot(e[0],e[0],!this.options.clip),n=t.getSlot(e[1],e[1],!this.options.clip);if(i&&n)return{from:i,to:n}},pointSlot:function(t,e){var i,n,s=e.from,o=e.to;return this.options.invertAxes?(i=new yt(s.x1,t.y1,s.x2,t.y2),n=new yt(o.x1,t.y1,o.x2,t.y2)):(i=new yt(t.x1,s.y1,t.x2,s.y2),n=new yt(t.x1,o.y1,t.x2,o.y2)),{from:i,to:n}},addValue:function(t,e){var i=t.valueFields;K(i.from)||(i.from=i.to),K(i.to)||(i.to=i.from),qi.fn.addValue.call(this,t,e)},updateRange:function(t,e){var i,n,s,o;null!==t&&K(t.from)&&K(t.to)&&(i=e.series.axis,n=this.valueAxisRanges[i]=this.valueAxisRanges[i]||{min:$,max:J},s=t.from,o=t.to,n.min=Math.min(n.min,s,o),n.max=Math.max(n.max,s,o))},formatPointValue:function(t,e){var i=t.value;return this.chartService.format.auto(e,i.from,i.to)},animationPoints:function(){var t,e,i=this.points,n=[];for(t=0;t<i.length;t++)e=i[t],e&&(n.push((e.fromPoint||{}).marker),n.push((e.toPoint||{}).marker));return n.concat(this._segments)}}),kt(Xn.prototype,Qi,Ji),Un=dn.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(){}}),Zn=gn.extend({pointType:function(){return Un}}),Yn=xt.extend({init:function(t,e,i){xt.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;xt.fn.createVisual.call(this),t=this.series.line||{},e=Qt.fromPoints(this.linePoints(),{stroke:{color:t.color,width:t.width,opacity:t.opacity,dashType:t.dashType}}),_t(e),this.visual.append(e)}}),wt(Yn,{animation:{type:xe,delay:ve}}),jn=pn.extend({render:function(){pn.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=le.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):K(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){pn.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 Yn(n,o,e),c.push(r),a.append(r)),n=o}}),Kn=[Oe,ri,ei,ci],Qn=[Ue,li].concat(Kn),$n=In.extend({initFields:function(t){var e,i,n=this;if(this.namedCategoryAxes={},this.namedValueAxes={},this.valueAxisRangeTracker=new rn,t.length>0)for(this.invertAxes=bt(t[0].type,[ze,He,li,ri,ci,ii,Xe,ai]),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;In.fn.removeAxis.call(this,t),t instanceof Dt?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(x(t,[Oe,ri]),e),this.createRangeAreaChart(x(t,[ei,ci]),e),this.createBarChart(x(t,[Ge,ze]),e),this.createRangeBarChart(x(t,[ni,ii]),e),this.createBulletChart(x(t,[He,hi]),e),this.createCandlestickChart(x(t,Ne),e),this.createBoxPlotChart(x(t,[De,ai]),e),this.createOHLCChart(x(t,Ze),e),this.createWaterfallChart(x(t,[ui,Xe]),e),this.createLineChart(x(t,[Ue,li]),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,ut),(o||i.categoryField)&&bt(s,t)?i=r.aggregateSeries(i,n):(K(n.options.min)||K(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=bt(t.type,Qn);return o.min=K(e.options.min)?Math.floor(o.min):0,o.max=K(e.options.max)?r?Math.floor(o.max)+1:Math.ceil(o.max):t.data.length,i=kt({},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,y,_,w,b=this,A=bt(t.type,Qn),S=e.options,C=S.categories,k=S.srcCategories;for(void 0===k&&(k=C),n=S.dataItems,void 0===n&&(n=[]),s=v(e.options.type,ut),o=kt({},t),r=kt({},t),a=t.data,h=[],l=J,c=$,u=i,s&&(u=m),g=0;g<a.length;g++)f=void 0,f=t.categoryField?u(t.categoryField,a[g],b.chartService.intl):k[g],gt(f)&&(x=e.categoryIndex(f),0<=x&&x<C.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>=C.length&&(x===c?d.points.push(g):x<c&&(c=x,d={category:f,points:[g]}))));for(y=new Mn(o,le.current,Ln.current),_=r.data=[],w=0;w<C.length;w++)_[w]=y.aggregatePoints(h[w],C[w]),h[w]&&(n[w]=_[w]);return p&&_.length&&(r._outOfRangeMinPoint={item:y.aggregatePoints(p.points,p.category),categoryIx:l,category:p.category}),d&&_.length&&(r._outOfRangeMaxPoint={item:y.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),In.fn.appendChart.call(this,t,e)},seriesPaneName:function(t){var e=this.options,i=t.axis,n=[].concat(e.valueAxis),s=Nt(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=P(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 pn(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 On(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 Sn(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 tn(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 on(this,t.extend({invertAxes:this.invertAxes,series:e},this.stackableChartOptions(n,i))),this.appendChart(s,i))},createRangeAreaChart:function(t,e){if(0!==t.length){var i=new Xn(this,{invertAxes:this.invertAxes,series:t,clip:e.options.clip});this.appendChart(i,e)}},createOHLCChart:function(t,e){var i,n;0!==t.length&&(i=t[0],n=new Zn(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 gn(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 xn(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 jn(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=x(this.series,pi);for(i=0;i<this.series.length;i++)n=a.series[i],bt(n.type,Kn)&&(s=n.line,s&&s.style===Be&&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 Dt&&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),bt(n,t)){if(s=i.name,o=i.categories,void 0===o&&(o=[]),i=kt({vertical:l,reverse:!l&&h.chartService.rtl,axisCrossingValue:l?$:0},i),gt(i.justified)||(i.justified=h.isJustified()),h.axisRequiresRounding(s,e)&&(i.justified=!1),r=void 0,r=y(i,o[0])?new Gt(i,h.chartService):new Dt(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],!bt(e.type,Kn))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,reverse:g&&this.chartService.rtl},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),bt(n,t)){if(s=i.name,o=v(i.type,Ii)?{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,Ii)?Y.LogarithmicAxis:Y.NumericAxis,h=new a(r.min,r.max,kt({},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 mt(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?C(c,o.getValue(a)):C(l,o.getCategory(a));0===l.length&&C(l,this.categoryAxis.getCategory(a)),l.length>0&&c.length>0&&t.trigger(i,{element:Tt(e),originalEvent:e,category:_(l),value:_(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){k(this.options,t,e),k(this.originalOptions,t,e)}}),wt($n,{categoryAxis:{categories:[]},valueAxis:{}}),kt($n.prototype,Vn),Jn=j.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:T,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}}),ts=j.extend({init:function(t,e){this.plotArea=t,this.options=kt({},this.options,e)},start:function(t){return this._active=R(t,this.options.key)},move:function(t){if(this._active){var e=this.axisRanges=this._panAxes(t,at).concat(this._panAxes(t,ht));if(e.length)return this.axisRanges=e,E(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===at&&!s.options.vertical||e===ht&&s.options.vertical)&&(o=s.pan(a),o&&(o.limitRange=!0,l.push({axis:s,range:o})));return l}}),ts.prototype.options={key:"none",lock:"none"},es=j.extend({init:function(t,e){this.chart=t,this.options=kt({},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){qt(this._marquee,t)},start:function(t){var e,i,n,s,o;return!!(R(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=qt(t,["paddingLeft","paddingTop"]),i=e.paddingLeft,n=e.paddingTop,s=Y.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,E(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===at&&!s||r===ht&&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===at&&(r=e.x1,h=e.width()),o===ht&&(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}}}),es.prototype.options={key:"shift",lock:"none"},is=j.extend({init:function(t,e){this.chart=t,this.options=kt({},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===at&&!n||o===ht&&n||(s=i.zoomRange(-t),s&&r.push({axis:i,range:s}));return this.axisRanges=r,E(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}}),ns=xt.extend({init:function(t,e){xt.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 Kt.Layout(null,{spacing:o?0:s.spacing,lineSpacing:o?s.spacing:0,orientation:o?"vertical":"horizontal",reverse:s.rtl,alignItems:o?"start":"center"}),t=0;t<n.length;t++)e=n[t],e.reflow(new yt),e.renderVisual()},reflow:function(t){this.visual.rect(t.toRect()),this.visual.reflow();var e=this.visual.clippedBBox();this.box=e?Y.rectToBox(e):new yt},renderVisual:function(){this.addVisual()},createVisual:function(){}}),ss=Ft.extend({init:function(t){Ft.fn.init.call(this,t),this.createContainer(),t.rtl?(this.createLabel(),this.createMarker()):(this.createMarker(),this.createLabel())},createContainer:function(){this.container=new Y.FloatElement({vertical:!1,wrap:!1,align:et,spacing:this.options.spacing}),this.append(this.container)},createMarker:function(){this.container.append(new It(this.markerOptions()))},markerOptions:function(){var t=this.options,e=t.markerColor;return kt({},t.markers,{background:e,border:{color:e}})},createLabel:function(){var t=this.options,e=kt({},t.labels);this.container.append(new Et(t.text,e))},renderComplete:function(){var t,e;Ft.fn.renderComplete.call(this),t=this.options.cursor||{},e=this._itemOverlay=Qt.fromRect(this.container.box.toRect(),{fill:{color:ot,opacity:0},stroke:null,cursor:t.style||t}),this.appendVisual(e)},click:function(t,e){var i=this.eventArgs(e);t.trigger(di,i)||e.preventDefault()},hover:function(t,e){var i=this.eventArgs(e);return t.trigger(gi,i)||(e.preventDefault(),t._legendItemHover(i.seriesIndex,i.pointIndex)),!0},leave:function(t){t._unsetActivePoint()},eventArgs:function(t){var e=this.options;return{element:Tt(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()):Ft.fn.renderVisual.call(this)}}),os="horizontal",rs="pointer",as="custom",hs=xt.extend({init:function(t,e){void 0===e&&(e={}),xt.fn.init.call(this,t),this.chartService=e,bt(this.options.position,[it,lt,nt,st,as])||(this.options.position=lt),this.createContainer(),this.createItems()},createContainer:function(){var t=this.options,e=t.position,i=t.align,n=e,s=et;e===as?n=st:bt(e,[it,nt])?(n="start"===i?st:"end"===i?lt:et,s=e):i&&("start"===i?s=it:"end"===i&&(s=nt)),this.container=new Ft({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 ns({vertical:o,spacing:s.spacing,rtl:n.rtl},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 ss(kt({},{markers:s.markers,labels:s.labels,rtl:n.rtl},s.item,i)));r.render(),this.container.append(r)},isVertical:function(){var t=this.options,e=t.orientation,i=t.position,n=i===as&&e!==os||(gt(e)?e!==os:bt(i,[st,lt]));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===as?(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===it||o===nt?at:ht,l=this.isVertical(),c=t.clone(),u=t.clone();o!==st&&o!==lt||(u.y1=c.y1=0),l&&a?(u.y2=u.y1+a,u.align(c,ht,s.options.vAlign)):!l&&r&&(u.x2=u.x1+r,u.align(c,at,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 yt(s,o,s+l.width(),o+l.height()))},renderVisual:function(){this.hasItems()&&xt.fn.renderVisual.call(this)}}),wt(hs,{position:lt,items:[],offsetX:0,offsetY:0,margin:Vt(5),padding:Vt(5),border:{color:ct,width:0},item:{cursor:rs,spacing:6},spacing:6,background:"",zIndex:1,markers:{border:{width:0},width:15,height:3,type:"rect",align:st,vAlign:et}}),ls=j.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=x(t,o.seriesTypes),n.length>0){a=o;break}return new a.type(n,e,i)}}),ls.current=new ls,cs=3,us=.1,ps=j.extend({init:function(t,e,i,n){var s=t.element;this.options=kt({},this.options,i),this.chart=t,this.observer=n,this.chartElement=s,this.categoryAxis=e,this._dateAxis=this.categoryAxis instanceof Gt,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=I("k-selector");qt(a,{top:r.offset.top,left:r.offset.left,width:r.width,height:r.height,direction:"ltr"}),t=this.selection=I("k-selection"),this.leftMask=I("k-mask"),this.rightMask=I("k-mask"),a.appendChild(this.leftMask),a.appendChild(this.rightMask),a.appendChild(t),t.appendChild(I("k-selection-bg")),e=this.leftHandle=I("k-handle k-left-handle"),i=this.rightHandle=I("k-handle k-right-handle"),e.appendChild(I()),i.appendChild(I()),t.appendChild(e),t.appendChild(i),this.chartElement.appendChild(a),n=qt(t,["borderLeftWidth","borderRightWidth","height"]),s=qt(e,"height").height,o=qt(i,"height").height,r.selection={border:{left:n.borderLeftWidth,right:n.borderRightWidth}},qt(e,{top:(n.height-s)/2}),qt(i,{top:(n.height-o)/2}),a.style.cssText=a.style.cssText},bindEvents:function(){this._mousewheelHandler=this.options.mousewheel!==!1?this._mousewheel.bind(this):M;var t;Xt(this.wrapper,(t={},t[Oi]=this._mousewheelHandler,t)),this._domEvents=Ut.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&&kt(s,{min:Ot(a,s.min),max:Ot(a,s.max),from:Ot(a,s.from),to:Ot(a,s.to)}),t=qt(this.chartElement,["paddingLeft","paddingTop"]),e=t.paddingLeft,i=t.paddingTop,this.options=kt({},{width:r.width(),height:r.height()+us,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;Zt(this.wrapper,(t={},t[Oi]=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=Tt(t);!this._state&&n&&(this.chart._unsetActivePoint(),this._state={moveTarget:V(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(Ci,e)&&(this._state=null))},_press:function(t){var e;e=this._state?this._state.moveTarget:V(Tt(t)),e&&Y.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=qt(this.wrapper,"width").width/(s.categories.length-1),v=Math.round(p/f)*(a?-1:1),r&&(x=Wt(r,"k-left-handle"),m=Wt(r,"k-right-handle"),Wt(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(ki,this._rangeEventArgs(o)))))},_end:function(){var t,e;this._state&&(t=this._state.moveTarget,t&&Y.removeClass(t,"k-handle-active"),e=this._state.range,this.set(e.from,e.to),this.trigger(Pi,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 mt(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(ki,this._rangeEventArgs(p)),this._end()))},_mousewheel:function(t){var e,i=this,n=Y.mousewheelDelta(t);this._start({target:this.selection}),this._state&&(e=this._state.range,t.preventDefault(),t.stopPropagation(),Math.abs(n)>1&&(n*=cs),this.options.mousewheel.reverse&&(n*=-1),this.expand(n)&&this.trigger(ki,{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()},zi))},_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(Ci,e)?this._state=null:t.preventDefault()},_gestureend:function(){this._state&&(this.trigger(Pi,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 mt(l))||s.min,r.to=o.pointCategoryIndex(new mt(c))||s.max,this.move(r.from,r.to),this.trigger(ki,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=Ht(p[u]-r.left+a.left);qt(this.leftMask,{width:d}),qt(this.selection,{left:d}),p=this._slot(c),i=Ht(s.width-(p[u]-r.left+a.left)),qt(this.rightMask,{width:i}),n=s.width-i,n!==s.width&&(n+=h.right),qt(this.rightMask,{left:n}),qt(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=Yt(this._index(t),n,s),r=Yt(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=kt({},a);if(this._state&&(a=this._state.range),s!==lt&&(a.from=Yt(Yt(o-t,0,r-1),i,n)),s!==st&&(a.to=Yt(Yt(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)}}),wt(ps,{visible:!0,mousewheel:{zoom:"both"},min:J,max:$}),ds=Cn.extend({show:function(t){var e,i;!t||!t.tooltipAnchor||this._current&&this._current===t||(e=kt({},this.options,t.options.tooltip),i=t.tooltipAnchor(),i?(this._current=t,Cn.fn.show.call(this,{point:t,anchor:i},e,t)):this.hide())},hide:function(){delete this._current,Cn.fn.hide.call(this)}}),gs=Cn.extend({init:function(t,e){Cn.fn.init.call(this,t.chartService,e),this.plotArea=t,this.formatService=t.chartService.format},showAt:function(t,e){var i,n,s,o=Nt(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 mt(o.x,r.y):new mt(r.x,o.y),{point:i,align:a}}}),wt(gs,{categoryFormat:"{0:d}"}),fs=$t.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?ht:at,e=this.fromScale=new ne(1,1),e[t]=we,n.transform(se().scale(e.x,e.y))):this.abort()},step:function(t){var e=Y.interpolateValue(this.fromScale.x,1,t),i=Y.interpolateValue(this.fromScale.y,1,t);this.element.transform(se().scale(e,i,this.origin))},abort:function(){$t.fn.abort.call(this),this.element.transform(null)}}),wt(fs,{duration:ve}),Jt.current.register(ze,fs),vs=$t.extend({setup:function(){var t=this.center=this.element.bbox().center();this.element.transform(se().scale(we,we,t))},step:function(t){this.element.transform(se().scale(t,t,this.center))}}),wt(vs,{easing:"easeOutElastic"}),Jt.current.register(Fe,vs),xs=$t.extend({setup:function(){this.fadeTo=this.element.opacity(),this.element.opacity(0)},step:function(t){this.element.opacity(t*this.fadeTo)}}),wt(xs,{duration:200,easing:"linear"}),Jt.current.register(xe,xs),ms=$t.extend({setup:function(){this.element.transform(se().scale(we,we,this.options.center))},step:function(t){this.element.transform(se().scale(t,t,this.options.center))}}),wt(ms,{easing:"easeOutElastic",duration:ve}),Jt.current.register(Ye,ms),ys=yn.extend({render:function(){yn.fn.render.call(this),this.renderSegments()},createSegment:function(t,e,i){var n,s=e.style;return new(n=s===Le?Ki:Zi)(t,e,i)},animationPoints:function(){var t=yn.fn.animationPoints.call(this);return t.concat(this._segments)},createMissingValue:function(t,e){if(e===Re){var i={x:t.x,y:t.y};return u(i.x)||(i.x=0),u(i.y)||(i.y=0),i}}}),kt(ys.prototype,Qi),_s=In.extend({initFields:function(){this.namedXAxes={},this.namedYAxes={},this.xAxisRangeTracker=new rn,this.yAxisRangeTracker=new rn},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(x(o,si),n),r.createScatterLineChart(x(o,oi),n),r.createBubbleChart(x(o,Fe),n));this.createAxes(t)},appendChart:function(t,e){this.xAxisRangeTracker.update(t.xAxisRanges),this.yAxisRangeTracker.update(t.yAxisRanges),In.fn.appendChart.call(this,t,e)},removeAxis:function(t){var e=t.options.name;In.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=Nt(n,function(t){return t.name===i})[0],o=t.yAxis,r=[].concat(e.yAxis),a=Nt(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 yn(this,{series:t,clip:e.options.clip}),e)},createScatterLineChart:function(t,e){t.length>0&&this.appendChart(new ys(this,{series:t,clip:e.options.clip}),e)},createBubbleChart:function(t,e){t.length>0&&this.appendChart(new wn(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=kt({reverse:!e&&this.chartService.rtl},t,{vertical:e}),f=v(g.type,Ii),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=le.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,ut)||!g.type&&a?Y.DateValueAxis:f?Y.LogarithmicAxis:Y.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),bt(i,t)&&h.push(o.createXYAxis(a[e],!1,e));for(n=0;n<l.length;n++)s=o.findPane(l[n].pane),bt(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 mt(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:Tt(e),originalEvent:e,x:_(u),y:_(p)})},updateAxisOptions:function(t,e){var i=t.options.vertical,n=this.groupAxes(this.panes),s=(i?n.y:n.x).indexOf(t);L(this.options,s,i,e),L(this.originalOptions,s,i,e)}}),wt(_s,{xAxis:{},yAxis:{}}),kt(_s.prototype,Vn),ws=xt.extend({init:function(t,e,i){xt.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=Rt(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===et||n.position===Mi?(n.color||(e=new ee(this.options.color).percBrightness(),n.color=e>180?ct:ot),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 Et(o,kt({},n,{align:et,vAlign:"",animation:{type:xe,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===et?(a.radius=Math.abs((a.radius-t)/2)+t,i=a.point(l),r.reflow(new yt(i.x,i.y-t/2,i.x,i.y))):o.position===Mi?(a.radius=a.radius-t/2,i=a.point(l),r.reflow(new yt(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=lt):(n=i.x-e,r.orientation=st),r.reflow(new yt(n,i.y-t,i.x,i.y))))},createVisual:function(){var t,e,i=this,n=this,s=n.sector,o=n.options;xt.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 ne(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 te;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}}:{},r=n.color,h={color:r,opacity:n.opacity},l=this.createSegment(i,kt({fill:h,stroke:{opacity:n.opacity},zIndex:n.zIndex},o));t.append(l),a(n)&&t.append(this.createGradientOverlay(l,{baseColor:r,fallbackFill:h},kt({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 Kt.Circle(new ie.Circle(new ne(t.center.x,t.center.y),t.radius),e):Y.ShapeBuilder.current.createRing(t,e)},createAnimation:function(){var t=this,e=t.options,i=t.sector.center;kt(e,{animation:{center:[i.x,i.y],delay:this.animationDelay}}),xt.fn.createAnimation.call(this)},createHighlight:function(t){var e=this.options.highlight||{},i=e.border||{};return this.createSegment(this.sector,kt({},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 ne(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(_e),e=t.middle(),i=t.point(e);return{point:i,align:B(e+180)}},formatValue:function(t){return this.owner.formatPointValue(this,t)}}),bs=Ht(Y.rad(30),pt),As=Ht(Y.rad(60),pt),wt(ws,{color:ot,overlay:{gradient:"roundedBevel"},border:{width:.5},labels:{visible:!1,distance:35,font:Q.DEFAULT_FONT,margin:Vt(.5),align:rt,zIndex:1,position:Bi},animation:{type:Ye},highlight:{visible:!0,border:{width:1}},visible:!0}),kt(ws.prototype,Wi),Ss={createLegendItem:function(t,e,i){var n,s,o,r,a,h=this.options.legend||{},l=h.labels||{},c=h.inactiveItems||{},p=c.labels||{};i&&i.visibleInLegend!==!1&&(n=i.visible!==!1,s=n?Rt(l):Rt(p)||Rt(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:p.color,font:p.font},a=(c.markers||{}).color),u(o)&&""!==o&&this.legendItems.push({pointIndex:i.index,text:o,series:i.series,markerColor:a,labels:r}))}},Cs=70,ks=xt.extend({init:function(t,e){xt.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,v,x,m,y,_,w,b=this,A=this,S=A.options,C=A.plotArea.options.seriesColors;for(void 0===C&&(C=[]),e=C.length,i=S.series,n=i.length,s=0;s<n;s++)for(o=i[s],r=o.data,a=f(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=gt(o.startAngle)?o.startAngle:S.startAngle,s!==n-1&&o.labels.position===Bi&&(o.labels.position=et),g=0;g<l.length;g++)v=l[g],v&&(x=v.fields,m=v.value,y=v.visible,_=0!==m?p||m*u:0,w=1!==r.length&&!!x.explode,At(o.color)||(o.color=x.color||C[g%e]),t(v.valueFields.value,new Y.Ring(null,0,0,d,_),{owner:b,category:gt(x.category)?x.category:"",index:g,series:o,seriesIx:s,dataItem:r[g],percentage:0!==h?m/h:0,explode:w,visibleInLegend:x.visibleInLegend,visible:y,zIndex:n-s,animationDelay:b.animationDelay(g,s,n)}),y!==!1&&(d+=_))},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=kt({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),n.visible!==!1&&(s=new ws(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,S=b.points,C=b.seriesConfigs;for(void 0===C&&(C=[]),e=S.length,i=t.clone(),n=5,s=Math.min(i.width(),i.height()),o=s/2,r=s-.85*s,a=new yt(i.x1,i.y1,i.x1+s,i.y1+s),h=a.center(),l=i.center(),c=A.series.length,u=[],p=[],d=St(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 mt(g+a.x1+d,g+a.y1+d),v=0;v<e;v++)x=S[v],m=x.sector,y=x.seriesIx,m.radius=g,m.center=f,C.length&&(_=C[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===Bi&&y===c-1&&(w.orientation===lt?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=Ht(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=Ht(i.y1-h.y2),a.push(l);return l=Ht(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===lt),s.orientation===lt?(l.align!==rt&&(i=h.radius+h.center.x+u),s.reflow(new yt(i+o.width(),p,i,p))):(l.align!==rt&&(i=h.center.x-h.radius-u),s.reflow(new yt(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(xt.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 Qt({stroke:{color:o,width:v.width},animation:{type:xe,delay:e.animationDelay}}),n.options.position===Bi&&(a=n.box,h=i.center,l=i.point(s),c=new mt(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===lt?(p=new mt(a.x1-v.padding,a.center().y),d=O(h,l,c,p),c=new mt(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!==Ge?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 mt(a.x2+v.padding,a.center().y),d=O(h,l,c,p),c=new mt(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!==Ge?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*Cs}}),wt(ks,{startAngle:90,connectors:{width:2,color:"#939393",padding:8},inactiveItems:{markers:{},labels:{}}}),kt(ks.prototype,Ss),Ps=In.extend({render:function(){this.createPieChart(this.series)},createPieChart:function(t){var e=t[0],i=new ks(this,{series:t,padding:e.padding,startAngle:e.startAngle,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)},appendChart:function(t,e){In.fn.appendChart.call(this,t,e),Lt(this.options.legend.items,t.legendItems)}}),Ts=ws.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===et?(o.radius-=(o.radius-o.innerRadius)/2,e=o.point(r),s.reflow(new yt(e.x,e.y-t/2,e.x,e.y))):ws.fn.reflowLabel.call(this))},createSegment:function(t,e){return Y.ShapeBuilder.current.createRing(t,e)}}),wt(Ts,{overlay:{gradient:"roundedGlass"},labels:{position:et},animation:{type:Ye}}),kt(Ts.prototype,Wi),Rs=50,Es=ks.extend({addValue:function(e,i,n){var s,o=kt({},n.series,{index:n.index});this.evalSegmentOptions(o,e,n),this.createLegendItem(e,o,n),e&&n.visible!==!1&&(s=new Ts(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=St(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&&gt(o.holeSize)&&(n=o.holeSize,e-=o.holeSize),gt(o.size)?e-=o.size:i++,gt(o.margin)&&s!==w-1&&(e-=o.margin);for(gt(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=St(p.size,e/i),a+=h,c=a+l,d.seriesConfigs.push({innerRadius:a,radius:c}),h=p.margin||0,a=c;ks.fn.reflow.call(this,t)},animationDelay:function(t,e,i){return t*Rs+ve*(e+1)/(i+1)}}),wt(Es,{startAngle:90,connectors:{width:2,color:"#939393",padding:8}}),Is=Ps.extend({render:function(){this.createDonutChart(this.series)},createDonutChart:function(t){var e=t[0],i=new Es(this,{series:t,padding:e.padding,connectors:e.connectors,legend:this.options.legend});this.appendChart(i)}}),Vs=.15,Ms=In.extend({initFields:function(){this.valueAxisRangeTracker=new rn},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===Ii?(t=Y.RadarLogarithmicAxis,e={min:.1,max:1}):(t=Y.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())*Vs,h=Vt(n.padding||{},a),l=r.clone().unpad(h),c=l.clone();c.y2=c.y1+Math.min(c.width(),c.height()),c.align(l,ht,et),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}}),Ls=yn.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=mt.onCircle(t.center,t.startAngle,i);return new yt(n.x,n.y,n.x,n.y)}}),wt(Ls,{clip:!1}),Bs=ys.extend({}),Bs.prototype.pointSlot=Ls.prototype.pointSlot,wt(Bs,{clip:!1}),Os=sn.extend({fillToAxes: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 Mt((!1)),i=this.points(),i.push(t),n=this._strokeSegments=e.process(i),n.pop()),n}}),zs=en.extend({fillToAxes:function(t){var e=this.parent.plotArea.polarAxis,i=e.box.center(),n=new ie.Segment([i.x,i.y]);t.segments.unshift(n),t.segments.push(n)}}),Ds=Bs.extend({createSegment:function(t,e,i){var n,s=(e.line||{}).style;return n=s===Le?new Os(t,e,i):new zs(t,e,i)},createMissingValue:function(t,e){var i;return u(t.x)&&e!==Ee&&(i={x:t.x,y:t.y},e===Re&&(i.y=0)),i},seriesMissingValues:function(t){return t.missingValues||Re},_hasMissingValuesGap:function(){var t,e=this,i=this.options.series;for(t=0;t<i.length;t++)if(e.seriesMissingValues(i[t])===Ie)return!0},sortPoints:function(t){var e,i,n,s=this;if(t.sort(z),this._hasMissingValuesGap())for(e=0;e<t.length;e++)i=t[e],i&&(n=i.value,u(n.y)||s.seriesMissingValues(i.series)!==Ie||delete t[e]);return t}}),Fs=Ms.extend({createPolarAxis:function(){var t=new Y.PolarAxis(this.options.xAxis,this.chartService);this.polarAxis=t,this.axisX=t,this.appendAxis(t)},valueAxisOptions:function(t){return kt(t,{majorGridLines:{type:dt},minorGridLines:{type:dt}},this.options.yAxis)},createValueAxis:function(){Ms.fn.createValueAxis.call(this),this.axisY=this.valueAxis},appendChart:function(t,e){this.valueAxisRangeTracker.update(t.yAxisRanges),In.prototype.appendChart.call(this,t,e)},createCharts:function(){var t=this.filterVisibleSeries(this.series),e=this.panes[0];this.createLineChart(x(t,[Ke]),e),this.createScatterChart(x(t,[Qe]),e),this.createAreaChart(x(t,[je]),e)},createLineChart:function(t,e){if(0!==t.length){var i=new Bs(this,{series:t});this.appendChart(i,e)}},createScatterChart:function(t,e){if(0!==t.length){var i=new Ls(this,{series:t});this.appendChart(i,e)}},createAreaChart:function(t,e){if(0!==t.length){var i=new Ds(this,{series:t});this.appendChart(i,e)}},_dispatchEvent:function(t,e,i){var n=t._eventCoordinates(e),s=new mt(n.x,n.y),o=this.axisX.getValue(s),r=this.axisY.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:Tt(e),x:o,y:r})},createCrosshairs:function(){}}),wt(Fs,{xAxis:{},yAxis:{}}),kt(Fs.prototype,Vn),Hs=tn.extend({pointSlot:function(t,e){var i=t.center.y-e.y1,n=mt.onCircle(t.center,t.middle(),i);return new yt(n.x,n.y,n.x,n.y)},createSegment:function(t,e,i){var n,s,o=e.style;return n=o===Le?Ki:Zi,s=new n(t,e,i),t.length===e.data.length&&(s.options.closed=!0),s}}),wt(Hs,{clip:!1,limitPoints:!1}),Ns=sn.extend({fillToAxes:function(){}}),Gs=en.extend({fillToAxes:function(){}}),qs=Hs.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=n.linePoints.slice(0),s=n),h===Le?(r=new Ns(t,e,i,s,o),r.options.closed=!0):(t.push(t[0]),r=new Gs(t,e,i,s,o)),r},seriesMissingValues:function(t){return t.missingValues||Re}}),Ws=Ts.extend({init:function(t,e){Ts.fn.init.call(this,t,null,e)}}),wt(Ws,{overlay:{gradient:"none"},labels:{distance:10}}),Xs=xt.extend({init:function(t){xt.fn.init.call(this,t),this.forEach=t.rtl?l:h},reflow:function(t){var e=this,i=e.options,n=e.children,s=i.gap,o=i.spacing,r=n.length,a=r+s+o*(r-1),h=t.angle/a,l=t.startAngle+h*(s/2);this.forEach(n,function(e){var i=t.clone();i.startAngle=l,i.angle=h,e.sector&&(i.radius=e.sector.radius),e.reflow(i),e.sector=i,l+=h+h*o})}}),wt(Xs,{gap:1,spacing:0}),Us=xt.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 yt,e=a;e>=0&&e<r;e+=h)i=o[e].sector,i.startAngle=t.startAngle,i.angle=t.angle}}),Zs=pn.extend({pointType:function(){return Ws},clusterType:function(){return Xs},stackType:function(){return Us},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(),pn.fn.createAnimation.call(this)}}),Zs.prototype.reflow=qi.prototype.reflow,wt(Zs,{clip:!1,limitPoints:!1,animation:{type:"pie"}}),Ys=Ms.extend({createPolarAxis:function(){var t=new Y.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&&kt(t,{majorGridLines:{type:dt},minorGridLines:{type:dt}}),this._isStacked100&&kt(t,{roundToMajorUnit:!1,labels:{format:"P0"}}),kt(t,this.options.valueAxis)},aggregateCategories:function(){$n.prototype.aggregateCategories.call(this,this.panes)},createCategoryAxesLabels:function(){$n.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(x(t,[$e]),e),this.createLineChart(x(t,[ti]),e),this.createBarChart(x(t,[Je]),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 qs(this,this.chartOptions(t));this.appendChart(i,e)}},createLineChart:function(t,e){if(0!==t.length){var i=new Hs(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 Zs(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 mt(n.x,n.y),o=this.categoryAxis.getCategory(s),r=this.valueAxis.getValue(s);null!==o&&null!==r&&t.trigger(i,{element:Tt(e),category:o,value:r})},createCrosshairs:function(){}}),kt(Ys.prototype,Vn,{appendChart:$n.prototype.appendChart,aggregateSeries:$n.prototype.aggregateSeries}),wt(Ys,{categoryAxis:{categories:[]},valueAxis:{}}),js=xt.extend({init:function(t,e,i){xt.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 yt(e[0].x,e[0].y,e[1].x,e[2].y),i&&i.reflow(new yt(t.x1,e[0].y,t.x2,e[2].y))},createVisual:function(){var t,e=this,i=this.options;xt.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=Qt.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 Qt.fromPoints(this.points,t)},highlightVisual:function(){return this.visual.children[0]},highlightVisualArgs:function(){var t=Qt.fromPoints(this.points).close();return{options:this.options,path:t}},tooltipAnchor:function(){var t=this.box;return{point:new mt(t.center().x,t.y1),align:{horizontal:"center",vertical:"top"}}},formatValue:function(t){var e=this;return e.owner.formatPointValue(e,t)}}),wt(js,{color:ot,border:{width:1}}),kt(js.prototype,Wi),Ks=xt.extend({init:function(t,e){xt.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=f(t),n=i.total,s=i.points,o=0;o<s.length;o++)r=s[o],r&&(a=r.fields,At(t.color)||(t.color=a.color||g[o%g.length]),a=kt({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=kt({},i.series);if(this.evalSegmentOptions(s,e,i),this.createLegendItem(e,s,i),i.visible!==!1)return n=new js(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=kt({},this.options.labels,o.labels),h=t;if(a.visible)return i=Rt(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 ee(o.color).percBrightness(),a.color=n>180?ct:ot,a.background||(a.background=o.color)),this.evalSegmentOptions(a,t,e),s=new Et(h,kt({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!==et&&(n=s[t].box.width(),i===st?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=Yt(d,0,e),u.push(new ne(t.x1+o,t.y1+r)),u.push(new ne(t.x1+e-o,t.y1+r)),u.push(new ne(t.x1+e-d,t.y1+p+r)),u.push(new ne(t.x1+d,t.y1+p+r)),o=d,r+=p+f.segmentSpacing,s=Yt(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 ne(t.x1+g,t.y1+x)),s.push(new ne(t.x1+e-g,t.y1+x)),s.push(new ne(t.x1+e-g-r,t.y1+a+x)),s.push(new ne(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)}}),wt(Ks,{neckRatio:.3,width:300,dynamicSlope:!1,dynamicHeight:!0,segmentSpacing:0,labels:{visible:!1,align:et,position:et,zIndex:1}}),kt(Ks.prototype,Ss),Qs=In.extend({render:function(){this.createFunnelChart(this.series)},createFunnelChart:function(t){var e=t[0],i=new Ks(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){In.fn.appendChart.call(this,t,e),Lt(this.options.legend.items,t.legendItems)}}),$s="color",Js="first",to="from",eo="max",io="min",no="noteText",so="summary",oo="to",ls.current.register($n,[ze,Ge,Ue,li,Oe,ri,Ne,Ze,He,hi,De,ai,ni,ii,ui,Xe,ei,ci]),ls.current.register(_s,[si,oi,Fe]),ls.current.register(Ps,[Ye]),ls.current.register(Is,[qe]),ls.current.register(Qs,[We]),ls.current.register(Fs,[je,Ke,Qe]),ls.current.register(Ys,[$e,Je,ti]),le.current.register([ze,Ge,Ue,li,Oe,ri],[tt],[Vi,$s,no,be,Ae]),le.current.register([ni,ii,ei,ci],[to,oo],[Vi,$s,no]),le.current.register([ui,Xe],[tt],[Vi,$s,no,so]),le.current.register([je,Ke,Qe],[at,ht],[$s]),le.current.register([$e,Je,ti],[tt],[$s]),le.current.register([We],[tt],[Vi,$s,"visibleInLegend","visible"]),Ln.current.register([ze,Ge,Ue,li,Oe,ri,ui,Xe],{value:eo,color:Js,noteText:Js,errorLow:io,errorHigh:eo}),Ln.current.register([ni,ii,ei,ci],{from:io,to:eo,color:Js,noteText:Js}),Ln.current.register([$e,Je,ti],{value:eo,color:Js}),le.current.register([si,oi,Fe],[at,ht],[$s,no,Se,Ce,ke,Pe]),le.current.register([Fe],[at,ht,"size"],[$s,Vi,no]),le.current.register([Ne,Ze],["open","high","low","close"],[Vi,$s,"downColor",no]),Ln.current.register([Ne,Ze],{open:eo,high:eo,low:io,close:eo,color:Js,downColor:Js,noteText:Js}),le.current.register([De,ai],["lower","q1","median","q3","upper","mean","outliers"],[Vi,$s,no]),Ln.current.register([De,ai],{lower:eo,q1:eo,median:eo,q3:eo,upper:eo,mean:eo,outliers:Js,color:Js,noteText:Js}),le.current.register([He,hi],["current","target"],[Vi,$s,"visibleInLegend",no]),Ln.current.register([He,hi],{current:eo,target:eo,color:Js,noteText:Js}),le.current.register([Ye,qe],[tt],[Vi,$s,"explode","visibleInLegend","visible"]),ro=[Vi,tt,at,ht],ao="mousemove",ho="contextmenu",lo=20,co=j.extend({init:function(t,e,i,n){var s,o=this;void 0===n&&(n={}),this.observers=[],this.addObserver(n.observer),this.chartService=new Ut.ChartService(this,n),this.chartService.theme=i,this._initElement(t),s=kt({},this.options,e),this._originalOptions=kt({},s),this._theme=i,this._initTheme(s,i),this._initSurface(),this._initHandlers(),this.bindCategories(),Y.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){Y.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,D(e),this.applyDefaults(e,i),null===e.seriesColors&&delete e.seriesColors,this.options=kt({},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 oe(i[e])},findAxisByName:function(t){return this.getAxis(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 re(i[e])},findPaneByIndex:function(t){var e=this._plotArea.panes;if(e[t])return new re(e[t])},plotArea:function(){return new ae(this._plotArea)},toggleHighlight:function(t,e){var i,n,s,o=this._plotArea,r=(o.srcSeries||o.series||[])[0];At(e)?i=o.filterPoints(e):(Ct(e)?(n=e.series,s=e.category):n=s=e,i=r.type===qe?F(o.pointsBySeriesName(n),s):r.type===Ye||r.type===We?F((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;At(t)?(e=a.findPoint(t),e&&s&&(i=e.categoryIx)):s&&gt(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&&Y.elementSize(e,{width:i.width}),i.height&&Y.elementSize(e,{height:i.height}),t&&t.options.type===this.options.renderAs?(this.surface.clear(),this.surface.resize()):(t&&t.destroy(),this.surface=Kt.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 Jn,this._setupSelection(),this._createPannable(),this._createZoomSelection(),this._createMousewheelZoom(),this.trigger(Ti),this._navState||this._cancelDomEvents()},exportVisual:function(t){var e,i,n,s;return t&&(t.width||t.height||t.options)?(i=this.options,n=kt({},t.options,{chartArea:{width:t.width,height:t.height}}),Z(this._originalOptions,n),this.options=kt({},this._originalOptions,n),this._initTheme(this.options,this._theme),this.bindCategories(),s=this._getModel(),s.renderVisual(),e=s.visual,this.options=i):e=this.surface.exportVisual(),e},_sharedTooltip:function(){return this._plotArea instanceof $n&&this.options.tooltip.shared},_createPannable:function(){var t=this.options;t.pannable!==!1&&(this._pannable=new ts(this._plotArea,t.pannable))},_createZoomSelection:function(){var t=this.options.zoomable,e=(t||{}).selection;t!==!1&&e!==!1&&(this._zoomSelection=new es(this,e))},_toggleDomDrag:function(){var t,e,i;this.domEvents&&this.domEvents.toggleDrag&&(t=this.options.pannable,e=this.options.zoomable,i=(e||{}).selection,this.domEvents.toggleDrag(t||e!==!1&&i!==!1||this.requiresHandlers([wi,yi,_i])?!0:!1))},_createMousewheelZoom:function(){var t=this.options.zoomable,e=(t||{}).mousewheel;t!==!1&&e!==!1&&(this._mousewheelZoom=new is(this,e))},_toggleDomZoom:function(){var t,e;this.domEvents&&this.domEvents.toggleZoom&&(t=this.options.zoomable,e=(t||{}).mousewheel,this.domEvents.toggleZoom(t!==!1&&e!==!1||this.requiresHandlers([bi,Ai,Si])?!0:!1))},_createTooltip:function(){var t,e=this,i=e.options.tooltip;return t=this._sharedTooltip()?this._createSharedTooltip(i):new ds(this.chartService,i)},_createSharedTooltip:function(t){return new gs(this._plotArea,t)},applyDefaults:function(t,e){H(t,e),N(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 Y.RootElement(this._modelOptions());return i.chart=this,i._plotArea=e,Y.Title.buildTitle(t.title,i),t.legend.visible&&i.append(new hs(e.options.legend,this.chartService)),i.append(e),i.reflow(),i},_modelOptions:function(){var t=this,e=t.options,i=t.element,n=Y.elementSize(i);return this._size=null,kt({width:Math.floor(n.width)||Q.DEFAULT_WIDTH,height:Math.floor(n.height)||Q.DEFAULT_HEIGHT,transitions:e.transitions},e.chartArea)},_createPlotArea:function(t){var e=this.options,i=ls.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 Dt&&i.select&&!i.vertical&&(n=0,s=i.categories.length-1,e instanceof Gt&&(n=i.categories[n],s=i.categories[s]),i.justified||(e instanceof Gt?s=Y.addDuration(s,1,i.baseUnit,i.weekStartDay):s++),o=new ps(r,e,kt({min:n,max:s},i.select)),l.push(o))},_selectStart:function(t){return this.trigger(Ci,t)},_select:function(t){return this.trigger(ki,t)},_selectEnd:function(t){return this.trigger(Pi,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),lo)},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===Ri&&(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),Xt(n,(t={},t[ho]=this._clickHandler,t[Oi]=this._mousewheelHandler,t)),this._shouldAttachMouseMove()&&Xt(n,(e={},e[ao]=this._mousemove,e)),this.domEvents=Ut.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)}),this._toggleDomDrag(),this._toggleDomZoom()},_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(Si,{}))},_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:q(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(bi,n)||(this._zooming||(this._zooming=!0),s=n.axisRanges=o.updateRanges(i),s&&!this.trigger(Ai,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([wi,yi,_i])&&this._startNavigation(t,e,wi),this._pannable&&this._pannable.start(t)&&(this.surface.suspendTracking(),this._unsetActivePoint(),this._suppressHover=!0),this._zoomSelection&&this._zoomSelection.start(t)&&this.trigger(bi,{axisRanges:q(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(yi,{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(yi,{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(_i,{axisRanges:q(this._plotArea.axes),originalEvent:t}),this._suppressHover=!1):this._endNavigation(t,_i),this._zoomSelection&&(i=this._zoomSelection.end(t),i&&!this.trigger(Ai,{axisRanges:i,originalEvent:t})&&(this._zoomSelection.zoom(),this.trigger(Si,{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=Y.mousewheelDelta(t),p=this._mousewheelZoom,d=this._eventCoordinates(t);if(this._plotArea.backgroundContainsPoint(d))if(p)e={delta:u,axisRanges:q(this._plotArea.axes),originalEvent:t},!this._zooming&&this.trigger(bi,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(Ai,e)&&p.zoom(),this._mwTimeout=setTimeout(function(){c.trigger(Si,e),c._zooming=!1,c.surface&&c.surface.resumeTracking()},zi));else if(i=this._navState,i||(n=this._startNavigation(t,d,bi),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(Ai,{delta:u,axisRanges:r,originalEvent:t}),this._mwTimeout&&clearTimeout(this._mwTimeout),this._mwTimeout=setTimeout(function(){c._endNavigation(t,Si)},zi)}},_startNavigation:function(t,e,i){var n,s,o=this._model._plotArea,r=o.findPointPane(e),a=o.axes.slice(0);r&&(n=q(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&&n.aliasFor&&(n=n.aliasFor())),n},_eventCoordinates:function(t){var e=Y.eventCoordinates(t);return this._toModelCoordinates(e.x,e.y)},_elementPadding:function(){var t,e,i;return this._padding||(t=qt(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=Y.elementOffset(this.element);return{left:Ht(t.x+e.left+i.left),top:Ht(t.y+e.top+i.top)}},_toModelCoordinates:function(t,e){var i=this.element,n=Y.elementOffset(i),s=this._elementPadding();return new mt(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 In)}),i&&!i.hover(this,e)?(this._activePoint=i,n=kt({},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),Xt(document,(e={},e[ao]=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=kt({},o.tooltip,h.options.tooltip),i.visible&&r.show(e),a.show(e))):(Zt(document,(n={},n[ao]=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(vi,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,x={},_=[];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=y(t,i(o.categoryField,a[0])),l=n?m:i,c=0;c<h;c++)u=a[c],p=l(o.categoryField,u,g.chartService.intl),!n&&x[p]||(_.push([p,u]),n||(x[p]=!0));_.length>0&&(n&&(_=X(_,function(t,e){return Y.dateComparer(t[0],e[0])})),d=U(_),t.categories=d[0])},_isBindable:function(t){var e,i,n=le.current.valueFields(t),s=!0;for(e=0;e<n.length;e++)if(i=n[e],i===tt?i="field":i+="Field",!gt(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=bt(r.type,[Ye,qe,We])?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([mi])},updateMouseMoveHandler:function(){var t,e;Zt(this.element,(t={},t[ao]=this._mousemove,t)),this._shouldAttachMouseMove()&&Xt(this.element,(e={},e[ao]=this._mousemove,e))},applyOptions:function(t,e){Z(this._originalOptions,t),this._originalOptions=kt(this._originalOptions,t),this.options=kt({},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(),this._toggleDomDrag(),this._toggleDomZoom()},destroy:function(){var t,e;this._destroyed=!0,Zt(this.element,(t={},t[ho]=this._clickHandler,t[Oi]=this._mousewheelHandler,t[ao]=this._mousemove,t)),this.domEvents&&(this.domEvents.destroy(),delete this.domEvents),Zt(document,(e={},e[ao]=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)}}),wt(co,{renderAs:"",chartArea:{},legend:{visible:!0,labels:{}},categoryAxis:{},seriesDefaults:{type:Ge,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:Di,Aggregates:he,AreaChart:on,AreaSegment:en,AxisGroupRangeTracker:rn,Bar:ln,BarChart:pn,BarLabel:an,BoxPlotChart:xn,BoxPlot:fn,BubbleChart:wn,Bullet:An,BulletChart:Sn,CandlestickChart:gn,Candlestick:dn,CategoricalChart:qi,CategoricalErrorBar:Ni,CategoricalPlotArea:$n,Chart:co,ChartContainer:Tn,ClipAnimation:$i,ClusterLayout:cn,Crosshair:Pn,CrosshairTooltip:kn,DefaultAggregates:Ln,DonutChart:Es,DonutPlotArea:Is,DonutSegment:Ts,ErrorBarBase:Hi,ErrorRangeCalculator:ge,Highlight:Jn,SharedTooltip:gs,Legend:hs,LegendItem:ss,LegendLayout:ns,LineChart:tn,LinePoint:Ui,LineSegment:Zi,Pane:Rn,PieAnimation:ms,PieChart:ks,PieChartMixin:Ss,PiePlotArea:Ps,PieSegment:ws,PlotAreaBase:In,PlotAreaEventsMixin:Vn,PlotAreaFactory:ls,PointEventsMixin:Wi,RangeBar:Bn,RangeBarChart:On,RangeAreaPoint:Nn,RangeAreaChart:Xn,ScatterChart:yn,ScatterErrorBar:mn,ScatterLineChart:ys,Selection:ps,SeriesAggregator:Mn,SeriesBinder:le,SplineSegment:Ki,SplineAreaSegment:sn,StackWrap:un,Tooltip:ds,OHLCChart:Zn,OHLCPoint:Un,WaterfallChart:jn,WaterfallSegment:Yn,XYPlotArea:_s,MousewheelZoom:is,ZoomSelection:es,Pannable:ts,ChartAxis:oe,ChartPane:re,ChartPlotArea:ae,anyHasZIndex:r,appendIfNotNull:c,areNumbers:c,bindSegments:f,categoriesCount:s,countNumbers:e,equalsIgnoreCase:v,evalOptions:n,filterSeriesByType:x,getDateField:m,getField:i,hasGradientOverlay:a,hasValue:u,isDateAxis:y,segmentVisible:g,singleItemOrArray:_})}(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){r.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=k({},t),o.visibleInLegend=!1,[o];for(P(a)?(v.logToConsole("'groupNameTemplate' is obsolete and will be removed in future versions. Specify the group name template as 'series.name'"),a&&(n=B(a))):(n=B(t.name||""),0===n._slotCount&&(n=B(P(t.name)?"#= group.value #: #= series.name #":"#= group.value #"))),s=0;s<h;s++)o=k({},t),v.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}function s(t){for(var i in t)t[i]===e&&(t[i]="");return t}var o,r,a,h,l,c,u,p,d,g,f=".kendoChart",v=window.kendo,x=v.Class,m=v._outerWidth,y=v._outerHeight,_=v.dataviz,w=_.constants,b=_.Chart,A=_.SeriesBinder,S=v.ui.Widget,C=v.data.DataSource,k=v.deepExtend,P=_.defined,T=_.getField,R=_.InstanceObserver,E=_.inArray,I=_.services,V=t.proxy,M=t.isArray,L=t.extend,B=v.template,O="mouseleave"+f,z=w.AXIS_LABEL_CLICK,D=w.LEGEND_ITEM_CLICK,F=w.LEGEND_ITEM_HOVER,H=w.SERIES_CLICK,N=w.SERIES_HOVER,G=w.PLOT_AREA_CLICK,q=w.PLOT_AREA_HOVER,W=w.DRAG,X=w.DRAG_END,U=w.DRAG_START,Z=w.ZOOM_START,Y=w.ZOOM,j=w.ZOOM_END,K=w.SELECT_START,Q=w.SELECT,$=w.SELECT_END,J=w.RENDER,tt=w.NOTE_CLICK,et=w.NOTE_HOVER,it="change",nt="dataBound",st="leave",ot=w.VALUE,rt=w.PIE,at=w.DONUT,ht=w.FUNNEL,lt=v.Observable,ct=150,ut=100,pt="k-chart-tooltip-inverse",dt="k-chart-shared-tooltip",gt="rtl";for(I.DomEventsBuilder.register({create:function(t,e){return new v.UserEvents(t,k({global:!0,multiTouch:!0,fastTap:!0},e))}}),o=R.extend({handlerMap:{showTooltip:"_showTooltip",hideTooltip:"_hideTooltip",legendItemClick:"_onLegendItemClick",render:"_onRender",init:"_onInit"}}),r=S.extend({init:function(t,e){var i;v.destroy(t),S.fn.init.call(this,t),e&&(i=e.dataSource,delete e.dataSource),this.options=k({},this.options,e),this.wrapper=this.element,this._attachEvents(),e&&(e.dataSource=i),this._seriesVisibility=new l,this.bind(this.events,this.options),this._initDataSource(e),v.notify(this,_.ui)},events:[nt,H,N,z,D,F,G,q,U,W,X,Z,Y,j,K,Q,$,tt,et,J],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(nt),t._redraw()},getSize:function(){return v.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,S.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(it,e._dataChangeHandler),e.dataSource=t=C.create(t),e._hasDataSource=!0,e._hasData=!1,t.bind(it,e._dataChangeHandler),e.options.autoBind&&t.fetch()},destroy:function(){var t=this,e=t.dataSource;t.element.off(f),e&&e.unbind(it,t._dataChangeHandler),t._instance&&(t._instance.destroy(),delete this._instance),this._tooltip&&(this._tooltip.destroy(),delete this._tooltip),this._destroyCrosshairTooltips(),S.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 d(this,i[e])},findPaneByIndex:function(t){var e=this._plotArea.panes;if(e[t])return new d(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 g(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 g(this,e)},_seriesOptions:function(t){var e,i,n=this._plotArea,s=n.srcSeries||n.series;if(P(t.index))e=s[t.index];else if(P(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(O,V(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?_.autoTheme().chart:P(s)?(i=_.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 b(this.element[0],t,e,{observer:new o(this),sender:this,rtl:this._isRtl()})},_onInit:function(t){this._instance=t.sender},_initDataSource:function(t){var e=this,i=(t||{}).dataSource;e._dataChangeHandler=V(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 p(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(J)},_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(P(i[t[e]]))return!0},_initTooltip:function(){this._tooltip=this._createTooltip(),this._tooltip.bind(st,V(this._tooltipleave,this))},_onLegendItemClick:function(t){this.trigger(D,t)||this._legendItemClick(t.seriesIndex,t.pointIndex)},_legendItemClick:function(e,i){var n,s,o,r=this._instance,a=r._plotArea,h=(a.srcSeries||a.series)[e];t.inArray(h.type,[rt,at,ht])>=0?(n=h.data[i],n&&P(n.visible)?n.visible=!n.visible:(s=h.pointVisibility=h.pointVisibility||{},o=s[i],s[i]=!!P(o)&&!o)):(h.visible=!h.visible,this._seriesVisibility.save(h)),r._noTransitionsRedraw()},_createTooltip:function(){return new u(this.element,L({},this.options.tooltip,{rtl:this._isRtl()}))},_tooltipleave:function(){this._instance&&this._instance.hideElements()},_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=L({},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(nt),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=P(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=A.current.valueFields(t),s=!0;for(i=0;i<n.length;i++)if(e=n[i],e===ot?e="field":e+="Field",!P(t[e])){s=!1;break}return s},_isRtl:function(){return v.support.isRtl(this.element)&&this.element.css("direction")===gt}}),a=["getAxis","findAxisByName","plotArea","toggleHighlight","showTooltip","hideTooltip","exportVisual","_resize","_redraw","_noTransitionsRedraw","_legendItemHover","_eventCoordinates"],h=0;h<a.length;h++)i(a[h]);_.ExportMixin.extend(r.fn),v.PDFMixin&&v.PDFMixin.extend(r.fn),_.ui.plugin(r),l=x.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&&(P(t._groupValue)?this.groups[t._groupValue]=t.visible:this.index[t.index]=t.visible)}}),c=v.geometry,u=lt.extend({init:function(e,i){var n,s=this;lt.fn.init.call(s),this.setOptions(i),s.chartElement=e,s.template=u.template,s.template||(s.template=u.template=v.template("<div class='k-tooltip k-chart-tooltip#= d.rtl ? \" k-rtl\" : \"\"#' 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=V(s.move,s),s._mouseleave=V(s._mouseleave,s),n=v.format("[{0}='content'],[{0}='scroller']",v.attr("role")),s._mobileScroller=e.closest(n).data("kendoMobileScroller")},destroy:function(){this._clearShowTimeout(),this.element&&(this.element.off(O).remove(),this.element=null)},setOptions:function(t){this.options=k({},this.options,t)},options:{opacity:1,animation:{duration:ct},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 {# &nbsp; #}#</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=v.support.zoomLevel(),l=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=c.transform().scale(d.scale,d.scale,[d.x,d.y]),i=new c.Point(a,r).transform(e),a=i.x,r=i.y):(r+=n._fit(r-u,s.height,y(l)/h),a+=n._fit(a-p,s.width,m(l)/h)),{top:r,left:a}},show:function(t){this.anchor=t.anchor,this.element.css(s(t.style)),this.element.toggleClass(pt,!!t.className),this.element.toggleClass(dt,!!t.shared);var e=t.shared?this._sharedContent(t):this._pointContent(t.point);this.element.html(e),this._clearShowTimeout(),this.showTimeout=setTimeout(this.move,ut)},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=_.grep(n,function(t){return P(t.series.name)}).length,o=t.series.length>1,r=1;return s&&r++,o&&r++,e=v.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:m(this.element),height:y(this.element)};return t},_ensureElement:function(){this.element&&this.element.appendTo(document.body).on(O,this._mouseleave)},_mouseleave:function(e){var i=e.relatedTarget,n=this.chartElement[0];i&&i!==n&&!t.contains(n,i)&&this.trigger(st)},_hideElement:function(){var t=this,e=this.element;e&&e.fadeOut({always:function(){t.visible||e.off(O).remove()}})},_pointContent:function(t){var e,i,n=this,s=k({},n.options,t.options.tooltip);return P(t.value)&&(e=""+t.value),s.template?(i=B(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}}),p=u.extend({init:function(t,e){u.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=B(i.template)({value:e})),e},hide:function(){this.element.hide()}}),d=x.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 g(e,n[t]));return s}}),g=x.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)),v.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?v.isFunction(e)?this.points(e):M(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=v.isFunction(e);if(r)if(E(o.type,[rt,at,ht]))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}}),_.Tooltip=u,_.CrosshairTooltip=p,_.ChartInstanceObserver=o,_.ChartPane=d,_.ChartSeries=g}(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