|
- var Chart=function(){"use strict";function t(t,e){return"string"==typeof t?(e||document).querySelector(t):t||null}function e(t){var e=t.getBoundingClientRect();return{top:e.top+(document.documentElement.scrollTop||document.body.scrollTop),left:e.left+(document.documentElement.scrollLeft||document.body.scrollLeft)}}function i(t){var e=t.getBoundingClientRect();return e.top>=0&&e.left>=0&&e.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&e.right<=(window.innerWidth||document.documentElement.clientWidth)}function n(t){var e=window.getComputedStyle(t),i=parseFloat(e.paddingLeft)+parseFloat(e.paddingRight);return t.clientWidth-i}function a(t,e,i){var n=document.createEvent("HTMLEvents");n.initEvent(e,!0,!0);for(var a in i)n[a]=i[a];return t.dispatchEvent(n)}function s(t){return parseFloat(t.toFixed(2))}function r(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];i||(i=n?t[0]:t[t.length-1]);var a=new Array(Math.abs(e)).fill(i);return t=n?a.concat(t):t.concat(a)}function o(t,e){return(t+"").length*e}function l(t,e){var i=void 0,n=void 0;return t<=e?(i=e-t,n=t):(i=t-e,n=e),[i,n]}function h(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:e.length-t.length;return i>0?t=r(t,i):e=r(e,i),[t,e]}function c(t,e,i,n){var a="string"==typeof e?e:e.join(", ");return[t,{transform:i.join(", ")},n,At,"translate",{transform:a}]}function u(t,e,i){return c(t,[i,0],[e,0],_t)}function d(t,e,i){return c(t,[0,i],[0,e],_t)}function p(t,e,i,n){var a=e-i,s=t.childNodes[0];return[[s,{height:a,"stroke-dasharray":s.getAttribute("width")+", "+a},_t,At],c(t,[0,n],[0,i],_t)]}function f(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:0,s=l(i,(arguments.length>6&&void 0!==arguments[6]?arguments[6]:{}).zeroLine),r=yt(s,2),o=r[0],h=r[1];return h-=a,"rect"!==t.nodeName?[[t.childNodes[0],{width:n,height:o},xt,At],c(t,t.getAttribute("transform").split("(")[1].slice(0,-1),[e,h],_t)]:[[t,{width:n,height:o,x:e,y:h},xt,At]]}function v(t,e,i){return"circle"!==t.nodeName?[c(t,t.getAttribute("transform").split("(")[1].slice(0,-1),[e,i],_t)]:[[t,{cx:e,cy:i},xt,At]]}function g(t,e,i,n){var a=[],s=i.map(function(t,i){return e[i]+","+t}).join("L"),r=[t.path,{d:"M"+s},kt,At];if(a.push(r),t.region){var o=e[0]+","+n+"L",l="L"+e.slice(-1)[0]+", "+n,h=[t.region,{d:"M"+o+s+l},kt,At];a.push(h)}return a}function y(t,e){return"string"==typeof t?(e||document).querySelector(t):t||null}function m(t,e){var i=document.createElementNS("http://www.w3.org/2000/svg",t);for(var n in e){var a=e[n];if("inside"===n)y(a).appendChild(i);else if("around"===n){var s=y(a);s.parentNode.insertBefore(i,s),i.appendChild(s)}else"styles"===n?"object"===(void 0===a?"undefined":ut(a))&&Object.keys(a).map(function(t){i.style[t]=a[t]}):("className"===n&&(n="class"),"innerHTML"===n?i.textContent=a:i.setAttribute(n,a))}return i}function b(t,e){return m("linearGradient",{inside:t,id:e,x1:0,x2:0,y1:0,y2:1})}function x(t,e,i,n){return m("stop",{inside:t,style:"stop-color: "+i,offset:e,"stop-opacity":n})}function k(t,e,i,n){return m("svg",{className:e,inside:t,width:i,height:n})}function _(t){return m("defs",{inside:t})}function w(t,e){return m("g",{className:e,inside:t,transform:arguments.length>2&&void 0!==arguments[2]?arguments[2]:""})}function A(t){return m("path",{className:arguments.length>1&&void 0!==arguments[1]?arguments[1]:"",d:t,styles:{stroke:arguments.length>2&&void 0!==arguments[2]?arguments[2]:"none",fill:arguments.length>3&&void 0!==arguments[3]?arguments[3]:"none"}})}function D(t,e){var i=arguments.length>2&&void 0!==arguments[2]&&arguments[2],n="path-fill-gradient-"+e+"-"+(i?"lighter":"default"),a=b(t,n),s=[1,.6,.2];return i&&(s=[.4,.2,0]),x(a,"0%",e,s[0]),x(a,"50%",e,s[1]),x(a,"100%",e,s[2]),n}function P(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"none",s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},r={className:t,x:e,y:i,width:n,height:n,fill:a};return Object.keys(s).map(function(t){r[t]=s[t]}),m("rect",r)}function M(t,e,i,n){return m("text",{className:t,x:e,y:i,dy:Ot/2+"px","font-size":Ot+"px",innerHTML:n})}function T(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};a.stroke||(a.stroke=Ct);var s=m("line",{className:"line-vertical "+a.className,x1:0,x2:0,y1:i,y2:n,styles:{stroke:a.stroke}}),r=m("text",{x:0,y:i>n?i+Tt:i-Tt-Ot,dy:Ot+"px","font-size":Ot+"px","text-anchor":"middle",innerHTML:e}),o=m("g",{transform:"translate("+t+", 0)"});return o.appendChild(s),o.appendChild(r),o}function O(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{};a.stroke||(a.stroke=Ct),a.lineType||(a.lineType="");var s=m("line",{className:"line-horizontal "+a.className+("dashed"===a.lineType?"dashed":""),x1:i,x2:n,y1:0,y2:0,styles:{stroke:a.stroke}}),r=m("text",{x:i<n?i-Tt:i+Tt,y:0,dy:Ot/2-2+"px","font-size":Ot+"px","text-anchor":i<n?"end":"start",innerHTML:e+""}),o=m("g",{transform:"translate(0, "+t+")","stroke-opacity":1});return 0!==r&&"0"!==r||(o.style.stroke="rgba(27, 31, 35, 0.6)"),o.appendChild(s),o.appendChild(r),o}function C(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n.pos||(n.pos="left"),n.offset||(n.offset=0),n.mode||(n.mode="span"),n.stroke||(n.stroke=Ct),n.className||(n.className="");var a=-1*Mt,s="span"===n.mode?i+Mt:0;return"tick"===n.mode&&"right"===n.pos&&(a=i+Mt,s=i),a+=n.offset,s+=n.offset,O(t,e,a,s,{stroke:n.stroke,className:n.className,lineType:n.lineType})}function L(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{};n.pos||(n.pos="bottom"),n.offset||(n.offset=0),n.mode||(n.mode="span"),n.stroke||(n.stroke=Ct),n.className||(n.className="");var a=i+Mt,s="span"===n.mode?-1*Mt:i;return"tick"===n.mode&&"top"===n.pos&&(a=-1*Mt,s=0),T(t,e,a,s,{stroke:n.stroke,className:n.className,lineType:n.lineType})}function N(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=m("text",{className:"chart-label",x:i-o(e,5)-Tt,y:0,dy:Ot/-2+"px","font-size":Ot+"px","text-anchor":"start",innerHTML:e+""}),s=O(t,"",0,i,{stroke:n.stroke||Ct,className:n.className||"",lineType:n.lineType});return s.appendChild(a),s}function E(t,e,i,n){var a=t-e,s=m("rect",{className:"bar mini",styles:{fill:"rgba(228, 234, 239, 0.49)",stroke:Ct,"stroke-dasharray":i+", "+a},x:0,y:0,width:i,height:a}),r=m("text",{className:"chart-label",x:i-o(n,4.5)-Tt,y:0,dy:Ot/-2+"px","font-size":Ot+"px","text-anchor":"start",innerHTML:n+""}),l=m("g",{transform:"translate(0, "+e+")"});return l.appendChild(s),l.appendChild(r),l}function W(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,r=arguments.length>6&&void 0!==arguments[6]?arguments[6]:0,o=arguments.length>7&&void 0!==arguments[7]?arguments[7]:{},h=l(e,o.zeroLine),c=yt(h,2),u=c[0],d=c[1],p=m("rect",{className:"bar mini",style:"fill: "+n,"data-point-index":s,x:t,y:d-=r,width:i,height:u||o.minHeight});if(a||a.length){p.setAttribute("y",0),p.setAttribute("x",0);var f=m("text",{className:"data-point-value",x:i/2,y:0,dy:Ot/2*-1+"px","font-size":Ot+"px","text-anchor":"middle",innerHTML:a}),v=m("g",{transform:"translate("+t+", "+d+")"});return v.appendChild(p),v.appendChild(f),v}return p}function S(t,e,i,n){var a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"",s=m("circle",{style:"fill: "+n,"data-point-index":arguments.length>5&&void 0!==arguments[5]?arguments[5]:0,cx:t,cy:e,r:i});if(a||a.length){s.setAttribute("cy",0),s.setAttribute("cx",0);var r=m("text",{className:"data-point-value",x:0,y:0,dy:Ot/2*-1-i+"px","font-size":Ot+"px","text-anchor":"middle",innerHTML:a}),o=m("g",{transform:"translate("+t+", "+e+")"});return o.appendChild(s),o.appendChild(r),o}return s}function z(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:{},a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:{},s=e.map(function(e,i){return t[i]+","+e}).join("L"),r=A("M"+s,"line-graph-path",i);if(n.heatline){var o=D(a.svgDefs,i);r.style.stroke="url(#"+o+")"}var l={path:r};if(n.regionFill){var h=D(a.svgDefs,i,!0),c="M"+t[0]+","+a.zeroLine+"L"+s+"L"+t.slice(-1)[0]+","+a.zeroLine;l.region=A(c,"region-fill","none","url(#"+h+")")}return l}function j(t){return t>255?255:t<0?0:t}function Y(t,e){var i=St(t),n=!1;"#"==i[0]&&(i=i.slice(1),n=!0);var a=parseInt(i,16),s=j((a>>16)+e),r=j((a>>8&255)+e),o=j((255&a)+e);return(n?"#":"")+(o|r<<8|s<<16).toString(16)}function H(t){return/(^#[0-9A-F]{6}$)|(^#[0-9A-F]{3}$)/i.test(t)}function R(t,e,i,n){if(t!==e){zt.includes(t)||console.error("'"+t+"' is not a valid chart type."),jt[e].includes(t)||console.error("'"+e+"' chart cannot be converted to a '"+t+"' chart.");var a=Yt[e].includes(t);return new Jt(i,{title:n.title,data:n.data,type:t,height:n.height,colors:a?n.colors:void 0})}}function F(t,e,i){var n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"linear",a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:void 0,s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:{},r=t.cloneNode(!0),o=t.cloneNode(!0);for(var l in e){var h=void 0;h="transform"===l?document.createElementNS("http://www.w3.org/2000/svg","animateTransform"):document.createElementNS("http://www.w3.org/2000/svg","animate");var c=s[l]||t.getAttribute(l),u=e[l],d={attributeName:l,from:c,to:u,begin:"0s",dur:i/1e3+"s",values:c+";"+u,keySplines:Ht[n],keyTimes:"0;1",calcMode:"spline",fill:"freeze"};a&&(d.type=a);for(var p in d)h.setAttribute(p,d[p]);r.appendChild(h),a?o.setAttribute(l,"translate("+u+")"):o.setAttribute(l,u)}return[r,o]}function I(t,e){t.style.transform=e,t.style.webkitTransform=e,t.style.msTransform=e,t.style.mozTransform=e,t.style.oTransform=e}function G(t,e){var i=[],n=[];e.map(function(t){var e=t[0],a=e.parentNode,s=void 0,r=void 0;t[0]=e;var o=F.apply(void 0,mt(t)),l=yt(o,2);s=l[0],r=l[1],i.push(r),n.push([s,a]),a.replaceChild(s,e)});var a=t.cloneNode(!0);return n.map(function(t,n){t[1].replaceChild(i[n],t[0]),e[n][0]=i[n]}),a}function B(t,e,i){if(0!==i.length){var n=G(e,i);e.parentNode==t&&(t.removeChild(e),t.appendChild(n)),setTimeout(function(){n.parentNode==t&&(t.removeChild(n),t.appendChild(e))},wt)}}function X(t){var e=new Date(t);return e.setMinutes(e.getMinutes()-e.getTimezoneOffset()),e}function q(t){var e=t.getDate(),i=t.getMonth()+1;return[(e>9?"":"0")+e,(i>9?"":"0")+i,t.getFullYear()].join("-")}function U(t,e){return Math.ceil(V(t,e)/7)}function V(t,e){return(X(e)-X(t))/864e5}function J(t,e){t.setDate(t.getDate()+e)}function K(t){if(0===t)return[0,0];if(isNaN(t))return{mantissa:-6755399441055744,exponent:972};var e=t>0?1:-1;if(!isFinite(t))return{mantissa:4503599627370496*e,exponent:972};t=Math.abs(t);var i=Math.floor(Math.log10(t));return[e*(t/Math.pow(10,i)),i]}function $(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=Math.ceil(t),n=Math.floor(e),a=i-n,s=a,r=1;a>5&&(a%2!=0&&(a=++i-n),s=a/2,r=2),a<=2&&(r=a/(s=4)),0===a&&(s=5,r=1);for(var o=[],l=0;l<=s;l++)o.push(n+r*l);return o}function Q(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,i=K(t),n=yt(i,2),a=n[0],s=n[1],r=e?e/Math.pow(10,s):0,o=$(a=a.toFixed(6),r);return o=o.map(function(t){return t*Math.pow(10,s)})}function Z(t){function e(t,e){for(var i=Q(t),n=i[1]-i[0],a=0,s=1;a<e;s++)a+=n,i.unshift(-1*a);return i}var i=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=Math.max.apply(Math,mt(t)),a=Math.min.apply(Math,mt(t)),s=[];if(n>=0&&a>=0)K(n)[1],s=i?Q(n,a):Q(n);else if(n>0&&a<0){var r=Math.abs(a);n>=r?(K(n)[1],s=e(n,r)):(K(r)[1],s=e(r,n).map(function(t){return-1*t}))}else if(n<=0&&a<=0){var o=Math.abs(a),l=Math.abs(n);K(o)[1],s=(s=i?Q(o,l):Q(o)).reverse().map(function(t){return-1*t})}return s}function tt(t){var e=et(t);return t.indexOf(0)>=0?t.indexOf(0):t[0]>0?-1*t[0]/e:-1*t[t.length-1]/e+(t.length-1)}function et(t){return t[1]-t[0]}function it(t){return t[t.length-1]-t[0]}function nt(t,e){return s(e.zeroLine-t*e.scaleMultiplier)}function at(t,e){for(var i=Math.max.apply(Math,mt(t)),n=1/(e-1),a=[],s=0;s<e;s++){var r=i*(n*s);a.push(r)}return a}function st(t,e){return e.filter(function(e){return e<t}).length}function rt(t,e){t.labels=t.labels||[];var i=t.labels.length,n=t.datasets,a=new Array(i).fill(0);return n||(n=[{values:a}]),n.map(function(t,n){if(t.values){var s=t.values;s=(s=s.map(function(t){return isNaN(t)?0:t})).length>i?s.slice(0,i):r(s,i-s.length,0)}else t.values=a;t.chartType||(Dt.includes(e),t.chartType=e)}),t.yRegions&&t.yRegions.map(function(t){if(t.end<t.start){var e=[t.end,t.start];t.start=e[0],t.end=e[1]}}),t}function ot(t){var e=t.labels.length,i=new Array(e).fill(0),n={labels:t.labels.slice(0,-1),datasets:t.datasets.map(function(t){return{name:"",values:i.slice(0,-1),chartType:t.chartType}})};return t.yMarkers&&(n.yMarkers=[{value:0,label:""}]),t.yRegions&&(n.yRegions=[{start:0,end:0,label:""}]),n}function lt(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:[],i=!(arguments.length>2&&void 0!==arguments[2])||arguments[2],n=t/e.length/Pt;return e.map(function(t,e){return(t+="").length>n&&(i?e%Math.ceil(t.length/n)!=0&&(t=""):t=n-3>0?t.slice(0,n-3)+" ...":t.slice(0,n)+".."),t})}function ht(t,e,i){var n=Object.keys(qt).filter(function(e){return t.includes(e)}),a=qt[n[0]];return Object.assign(a,{constants:e,getData:i}),new Xt(a)}function ct(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"line",e=arguments[1],i=arguments[2];return"line"===t?(i.type="line",new Ut(e,i)):"bar"===t?(i.type="bar",new Ut(e,i)):"axis-mixed"===t?(i.type="line",new Ut(e,i)):Vt[t]?new Vt[t](e,i):void console.error("Undefined chart type: "+t)}!function(t,e){void 0===e&&(e={});var i=e.insertAt;if(t&&"undefined"!=typeof document){var n=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===i&&n.firstChild?n.insertBefore(a,n.firstChild):n.appendChild(a),a.styleSheet?a.styleSheet.cssText=t:a.appendChild(document.createTextNode(t))}}('.chart-container{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.chart-container .graph-focus-margin{margin:0 5%}.chart-container>.title{margin-top:25px;margin-left:25px;text-align:left;font-weight:400;font-size:12px;color:#6c7680}.chart-container .graphics{margin-top:10px;padding-top:10px;padding-bottom:10px;position:relative}.chart-container .graph-stats-group{-ms-flex-pack:distribute;-webkit-box-flex:1;-ms-flex:1;flex:1}.chart-container .graph-stats-container,.chart-container .graph-stats-group{display:-webkit-box;display:-ms-flexbox;display:flex;justify-content:space-around}.chart-container .graph-stats-container{-ms-flex-pack:distribute;padding-top:10px}.chart-container .graph-stats-container .stats{padding-bottom:15px}.chart-container .graph-stats-container .stats-title{color:#8d99a6}.chart-container .graph-stats-container .stats-value{font-size:20px;font-weight:300}.chart-container .graph-stats-container .stats-description{font-size:12px;color:#8d99a6}.chart-container .graph-stats-container .graph-data .stats-value{color:#98d85b}.chart-container .axis,.chart-container .chart-label{fill:#555b51}.chart-container .axis line,.chart-container .chart-label line{stroke:#dadada}.chart-container .percentage-graph .progress{margin-bottom:0}.chart-container .dataset-units circle{stroke:#fff;stroke-width:2}.chart-container .dataset-units path{fill:none;stroke-opacity:1;stroke-width:2px}.chart-container .dataset-path,.chart-container .multiaxis-chart .line-horizontal,.chart-container .multiaxis-chart .y-axis-guide{stroke-width:2px}.chart-container .path-group path{fill:none;stroke-opacity:1;stroke-width:2px}.chart-container line.dashed{stroke-dasharray:5,3}.chart-container .axis-line .specific-value{text-anchor:start}.chart-container .axis-line .y-line{text-anchor:end}.chart-container .axis-line .x-line{text-anchor:middle}.chart-container .progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.chart-container .progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#36414c;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;transition:width .6s ease}.chart-container .graph-svg-tip{position:absolute;z-index:1;padding:10px;font-size:12px;color:#959da5;text-align:center;background:rgba(0,0,0,.8);border-radius:3px}.chart-container .graph-svg-tip ol,.chart-container .graph-svg-tip ul{padding-left:0;display:-webkit-box;display:-ms-flexbox;display:flex}.chart-container .graph-svg-tip ul.data-point-list li{min-width:90px;-webkit-box-flex:1;-ms-flex:1;flex:1;font-weight:600}.chart-container .graph-svg-tip strong{color:#dfe2e5;font-weight:600}.chart-container .graph-svg-tip .svg-pointer{position:absolute;height:5px;margin:0 0 0 -5px;content:" ";border:5px solid transparent;border-top-color:rgba(0,0,0,.8)}.chart-container .graph-svg-tip.comparison{padding:0;text-align:left;pointer-events:none}.chart-container .graph-svg-tip.comparison .title{display:block;padding:10px;margin:0;font-weight:600;line-height:1;pointer-events:none}.chart-container .graph-svg-tip.comparison ul{margin:0;white-space:nowrap;list-style:none}.chart-container .graph-svg-tip.comparison li{display:inline-block;padding:5px 10px}.chart-container .indicator,.chart-container .indicator-right{background:none;font-size:12px;vertical-align:middle;font-weight:700;color:#6c7680}.chart-container .indicator i{content:"";display:inline-block;height:8px;width:8px;border-radius:8px}.chart-container .indicator:before,.chart-container .indicator i{margin:0 4px 0 0}.chart-container .indicator-right:after{margin:0 0 0 4px}',{});var ut="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},dt=(function(){function t(t){this.value=t}function e(e){function i(t,e){return new Promise(function(i,a){var o={key:t,arg:e,resolve:i,reject:a,next:null};r?r=r.next=o:(s=r=o,n(t,e))})}function n(i,s){try{var r=e[i](s),o=r.value;o instanceof t?Promise.resolve(o.value).then(function(t){n("next",t)},function(t){n("throw",t)}):a(r.done?"return":"normal",r.value)}catch(t){a("throw",t)}}function a(t,e){switch(t){case"return":s.resolve({value:e,done:!0});break;case"throw":s.reject(e);break;default:s.resolve({value:e,done:!1})}(s=s.next)?n(s.key,s.arg):r=null}var s,r;this._invoke=i,"function"!=typeof e.return&&(this.return=void 0)}"function"==typeof Symbol&&Symbol.asyncIterator&&(e.prototype[Symbol.asyncIterator]=function(){return this}),e.prototype.next=function(t){return this._invoke("next",t)},e.prototype.throw=function(t){return this._invoke("throw",t)},e.prototype.return=function(t){return this._invoke("return",t)}}(),function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}),pt=function(){function t(t,e){for(var i=0;i<e.length;i++){var n=e[i];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,n.key,n)}}return function(e,i,n){return i&&t(e.prototype,i),n&&t(e,n),e}}(),ft=function t(e,i,n){null===e&&(e=Function.prototype);var a=Object.getOwnPropertyDescriptor(e,i);if(void 0===a){var s=Object.getPrototypeOf(e);return null===s?void 0:t(s,i,n)}if("value"in a)return a.value;var r=a.get;if(void 0!==r)return r.call(n)},vt=function(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)},gt=function(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e},yt=function(){function t(t,e){var i=[],n=!0,a=!1,s=void 0;try{for(var r,o=t[Symbol.iterator]();!(n=(r=o.next()).done)&&(i.push(r.value),!e||i.length!==e);n=!0);}catch(t){a=!0,s=t}finally{try{!n&&o.return&&o.return()}finally{if(a)throw s}}return i}return function(e,i){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return t(e,i);throw new TypeError("Invalid attempt to destructure non-iterable instance")}}(),mt=function(t){if(Array.isArray(t)){for(var e=0,i=Array(t.length);e<t.length;e++)i[e]=t[e];return i}return Array.from(t)};t.create=function(e,i){var n=document.createElement(e);for(var a in i){var s=i[a];if("inside"===a)t(s).appendChild(n);else if("around"===a){var r=t(s);r.parentNode.insertBefore(n,r),n.appendChild(r)}else"styles"===a?"object"===(void 0===s?"undefined":ut(s))&&Object.keys(s).map(function(t){n.style[t]=s[t]}):a in n?n[a]=s:n.setAttribute(a,s)}return n};var bt=function(){function e(t){var i=t.parent,n=void 0===i?null:i,a=t.colors,s=void 0===a?[]:a;dt(this,e),this.parent=n,this.colors=s,this.title_name="",this.title_value="",this.list_values=[],this.title_value_first=0,this.x=0,this.y=0,this.top=0,this.left=0,this.setup()}return pt(e,[{key:"setup",value:function(){this.make_tooltip()}},{key:"refresh",value:function(){this.fill(),this.calc_position()}},{key:"make_tooltip",value:function(){var e=this;this.container=t.create("div",{inside:this.parent,className:"graph-svg-tip comparison",innerHTML:'<span class="title"></span>\n\t\t\t\t<ul class="data-point-list"></ul>\n\t\t\t\t<div class="svg-pointer"></div>'}),this.hide_tip(),this.title=this.container.querySelector(".title"),this.data_point_list=this.container.querySelector(".data-point-list"),this.parent.addEventListener("mouseleave",function(){e.hide_tip()})}},{key:"fill",value:function(){var e=this,i=void 0;i=this.title_value_first?"<strong>"+this.title_value+"</strong>"+this.title_name:this.title_name+"<strong>"+this.title_value+"</strong>",this.title.innerHTML=i,this.data_point_list.innerHTML="",this.list_values.map(function(i,n){var a=e.colors[n]||"black",s=t.create("li",{styles:{"border-top":"3px solid "+a},innerHTML:'<strong style="display: block;">'+(0===i.value||i.value?i.value:"")+"</strong>\n\t\t\t\t\t"+(i.title?i.title:"")});e.data_point_list.appendChild(s)})}},{key:"calc_position",value:function(){var t=this.container.offsetWidth;this.top=this.y-this.container.offsetHeight,this.left=this.x-t/2;var e=this.parent.offsetWidth-t,i=this.container.querySelector(".svg-pointer");if(this.left<0)i.style.left="calc(50% - "+-1*this.left+"px)",this.left=0;else if(this.left>e){var n="calc(50% + "+(this.left-e)+"px)";i.style.left=n,this.left=e}else i.style.left="50%"}},{key:"set_values",value:function(t,e){var i=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"",n=arguments.length>3&&void 0!==arguments[3]?arguments[3]:"",a=arguments.length>4&&void 0!==arguments[4]?arguments[4]:[],s=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;this.title_name=i,this.title_value=n,this.list_values=a,this.x=t,this.y=e,this.title_value_first=s,this.refresh()}},{key:"hide_tip",value:function(){this.container.style.top="0px",this.container.style.left="0px",this.container.style.opacity="0"}},{key:"show_tip",value:function(){this.container.style.top=this.top+"px",this.container.style.left=this.left+"px",this.container.style.opacity="1"}}]),e}(),xt=350,kt=350,_t=xt,wt=250,At="easein",Dt=["line","bar"],Pt=8,Mt=6,Tt=4,Ot=10,Ct="#dadada",Lt={bar:function(t){var e=void 0;"rect"!==t.nodeName&&(e=t.getAttribute("transform"),t=t.childNodes[0]);var i=t.cloneNode();return i.style.fill="#000000",i.style.opacity="0.4",e&&i.setAttribute("transform",e),i},dot:function(t){var e=void 0;"circle"!==t.nodeName&&(e=t.getAttribute("transform"),t=t.childNodes[0]);var i=t.cloneNode(),n=t.getAttribute("r");return i.setAttribute("r",n+4),i.style.fill="#000000",i.style.opacity="0.4",e&&i.setAttribute("transform",e),i}},Nt={bar:function(t,e){var i=void 0;"rect"!==t.nodeName&&(i=t.getAttribute("transform"),t=t.childNodes[0]);var n=["x","y","width","height"];Object.values(t.attributes).filter(function(t){return n.includes(t.name)&&t.specified}).map(function(t){e.setAttribute(t.name,t.nodeValue)}),i&&e.setAttribute("transform",i)},dot:function(t,e){var i=void 0;"circle"!==t.nodeName&&(i=t.getAttribute("transform"),t=t.childNodes[0]);var n=["cx","cy"];Object.values(t.attributes).filter(function(t){return n.includes(t.name)&&t.specified}).map(function(t){e.setAttribute(t.name,t.nodeValue)}),i&&e.setAttribute("transform",i)}},Et={"light-blue":"#7cd6fd",blue:"#5e64ff",violet:"#743ee2",red:"#ff5858",orange:"#ffa00a",yellow:"#feef72",green:"#28a745","light-green":"#98d85b",purple:"#b554ff",magenta:"#ffa3ef",black:"#36114C",grey:"#bdd3e6","light-grey":"#f0f4f7","dark-grey":"#b8c2cc"},Wt=["light-blue","blue","violet","red","orange","yellow","green","light-green","purple","magenta"],St=function(t){return Et[t]||t},zt=["line","scatter","bar","percentage","heatmap","pie"],jt={bar:["line","scatter","percentage","pie"],line:["scatter","bar","percentage","pie"],pie:["line","scatter","percentage","bar"],scatter:["line","bar","percentage","pie"],percentage:["bar","line","scatter","pie"],heatmap:[]},Yt={bar:["line","scatter"],line:["scatter","bar"],pie:["percentage"],scatter:["line","bar"],percentage:["pie"],heatmap:[]},Ht={ease:"0.25 0.1 0.25 1",linear:"0 0 1 1",easein:"0.1 0.8 0.2 1",easeout:"0 0 0.58 1",easeinout:"0.42 0 0.58 1"},Rt=function(){function e(t,i){if(dt(this,e),this.rawChartArgs=i,this.parent="string"==typeof t?document.querySelector(t):t,!(this.parent instanceof HTMLElement))throw new Error("No `parent` element to render on was provided.");this.title=i.title||"",this.subtitle=i.subtitle||"",this.argHeight=i.height||240,this.type=i.type||"",this.realData=this.prepareData(i.data),this.data=this.prepareFirstData(this.realData),this.colors=[],this.config={showTooltip:1,showLegend:i.showLegend||1,isNavigable:i.isNavigable||0,animate:1},this.state={},this.options={},this.config.isNavigable&&(this.overlays=[]),this.configure(i)}return pt(e,[{key:"configure",value:function(t){var e=this;this.setColors(),this.setMargins(),window.addEventListener("resize",function(){return e.draw(!0)}),window.addEventListener("orientationchange",function(){return e.draw(!0)})}},{key:"setColors",value:function(){var t=this.rawChartArgs,e="percentage"===t.type||"pie"===t.type?t.data.labels:t.data.datasets;!t.colors||e&&t.colors.length<e.length?this.colors=Wt:this.colors=t.colors,this.colors=this.colors.map(function(t){return St(t)})}},{key:"setMargins",value:function(){var t=this.argHeight;this.baseHeight=t,this.height=t-40,this.translateY=20,this.leftMargin=60,this.rightMargin=40}},{key:"validate",value:function(){return!0}},{key:"setup",value:function(){this.validate()&&this._setup()}},{key:"_setup",value:function(){this.makeContainer(),this.makeTooltip(),this.draw(!1,!0)}},{key:"setupComponents",value:function(){this.components=new Map}},{key:"makeContainer",value:function(){this.container=t.create("div",{className:"chart-container",innerHTML:'<h6 class="title">'+this.title+'</h6>\n\t\t\t\t<h6 class="sub-title uppercase">'+this.subtitle+'</h6>\n\t\t\t\t<div class="frappe-chart graphics"></div>\n\t\t\t\t<div class="graph-stats-container"></div>'}),this.parent.innerHTML="",this.parent.appendChild(this.container),this.chartWrapper=this.container.querySelector(".frappe-chart"),this.statsWrapper=this.container.querySelector(".graph-stats-container")}},{key:"makeTooltip",value:function(){this.tip=new bt({parent:this.chartWrapper,colors:this.colors}),this.bindTooltip()}},{key:"bindTooltip",value:function(){}},{key:"draw",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.calcWidth(),this.calc(e),this.makeChartArea(),this.setupComponents(),this.components.forEach(function(e){return e.setup(t.drawArea)}),this.render(this.components,!1),i&&(this.data=this.realData,setTimeout(function(){t.update()},700)),this.renderLegend(),this.setupNavigation(i)}},{key:"calcWidth",value:function(){this.baseWidth=n(this.parent),this.width=this.baseWidth-(this.leftMargin+this.rightMargin)}},{key:"update",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.data;this.data=this.prepareData(t),this.calc(),this.render()}},{key:"prepareData",value:function(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.data}},{key:"prepareFirstData",value:function(){return arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.data}},{key:"calc",value:function(){}},{key:"render",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.components,i=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];this.config.isNavigable&&this.overlays.map(function(t){return t.parentNode.removeChild(t)});var n=[];e.forEach(function(t){n=n.concat(t.update(i))}),n.length>0?(B(this.chartWrapper,this.svg,n),setTimeout(function(){e.forEach(function(t){return t.make()}),t.updateNav()},400)):(e.forEach(function(t){return t.make()}),this.updateNav())}},{key:"updateNav",value:function(){this.config.isNavigable&&(this.makeOverlay(),this.bindUnits())}},{key:"makeChartArea",value:function(){this.svg&&this.chartWrapper.removeChild(this.svg),this.svg=k(this.chartWrapper,"chart",this.baseWidth,this.baseHeight),this.svgDefs=_(this.svg),this.drawArea=w(this.svg,this.type+"-chart","translate("+this.leftMargin+", "+this.translateY+")")}},{key:"renderLegend",value:function(){}},{key:"setupNavigation",value:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.config.isNavigable&&e&&(this.bindOverlay(),this.keyActions={13:this.onEnterKey.bind(this),37:this.onLeftArrow.bind(this),38:this.onUpArrow.bind(this),39:this.onRightArrow.bind(this),40:this.onDownArrow.bind(this)},document.addEventListener("keydown",function(e){i(t.chartWrapper)&&(e=e||window.event,t.keyActions[e.keyCode]&&t.keyActions[e.keyCode]())}))}},{key:"makeOverlay",value:function(){}},{key:"updateOverlay",value:function(){}},{key:"bindOverlay",value:function(){}},{key:"bindUnits",value:function(){}},{key:"onLeftArrow",value:function(){}},{key:"onRightArrow",value:function(){}},{key:"onUpArrow",value:function(){}},{key:"onDownArrow",value:function(){}},{key:"onEnterKey",value:function(){}},{key:"getDataPoint",value:function(){}},{key:"setCurrentDataPoint",value:function(t){}},{key:"updateDataset",value:function(t,e){}},{key:"addDataset",value:function(t,e){}},{key:"removeDataset",value:function(){}},{key:"updateDatasets",value:function(t){}},{key:"updateDataPoint",value:function(t){}},{key:"addDataPoint",value:function(t){}},{key:"removeDataPoint",value:function(){}},{key:"getDifferentChart",value:function(t){return R(t,this.type,this.parent,this.rawChartArgs)}}]),e}(),Ft=function(e){function i(t,e){dt(this,i);var n=gt(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,t,e));return n.type="percentage",n.max_slices=10,n.max_legend_points=6,n.setup(),n}return vt(i,e),pt(i,[{key:"makeChartArea",value:function(){this.chartWrapper.className+=" graph-focus-margin",this.chartWrapper.style.marginTop="45px",this.statsWrapper.className+=" graph-focus-margin",this.statsWrapper.style.marginBottom="30px",this.statsWrapper.style.paddingTop="0px",this.svg=t.create("div",{className:"div",inside:this.chartWrapper}),this.chart=t.create("div",{className:"progress-chart",inside:this.svg}),this.percentageBar=t.create("div",{className:"progress",inside:this.chart})}},{key:"render",value:function(){var e=this;this.grand_total=this.sliceTotals.reduce(function(t,e){return t+e},0),this.slices=[],this.sliceTotals.map(function(i,n){var a=t.create("div",{className:"progress-bar",inside:e.percentageBar,styles:{background:e.colors[n],width:100*i/e.grand_total+"%"}});e.slices.push(a)})}},{key:"calc",value:function(){var t=this;this.sliceTotals=[];var e=this.data.labels.map(function(e,i){var n=0;return t.data.datasets.map(function(t){n+=t.values[i]}),[n,e]}).filter(function(t){return t[0]>0}),i=e;if(e.length>this.max_slices){e.sort(function(t,e){return e[0]-t[0]}),i=e.slice(0,this.max_slices-1);var n=0;e.slice(this.max_slices-1).map(function(t){n+=t[0]}),i.push([n,"Rest"]),this.colors[this.max_slices-1]="grey"}this.labels=[],i.map(function(e){t.sliceTotals.push(e[0]),t.labels.push(e[1])}),this.legend_totals=this.sliceTotals.slice(0,this.max_legend_points)}},{key:"bindTooltip",value:function(){}},{key:"renderLegend",value:function(){}}]),i}(Rt),It=Math.PI/180,Gt=function(i){function n(t,e){dt(this,n);var i=gt(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,t,e));return i.type="pie",i.elements_to_animate=null,i.hoverRadio=e.hoverRadio||.1,i.max_slices=10,i.max_legend_points=6,i.isAnimate=!1,i.startAngle=e.startAngle||0,i.clockWise=e.clockWise||!1,i.mouseMove=i.mouseMove.bind(i),i.mouseLeave=i.mouseLeave.bind(i),i.setup(),i}return vt(n,i),pt(n,[{key:"calc",value:function(){var t=this;this.centerX=this.width/2,this.centerY=this.height/2,this.radius=this.height>this.width?this.centerX:this.centerY,this.slice_totals=[];var e=this.data.labels.map(function(e,i){var n=0;return t.data.datasets.map(function(t){n+=t.values[i]}),[n,e]}).filter(function(t){return t[0]>0}),i=e;if(e.length>this.max_slices){e.sort(function(t,e){return e[0]-t[0]}),i=e.slice(0,this.max_slices-1);var n=0;e.slice(this.max_slices-1).map(function(t){n+=t[0]}),i.push([n,"Rest"]),this.colors[this.max_slices-1]="grey"}this.labels=[],i.map(function(e){t.slice_totals.push(e[0]),t.labels.push(e[1])}),this.legend_totals=this.slice_totals.slice(0,this.max_legend_points)}},{key:"makeArcPath",value:function(t,e){var i=this.centerX,n=this.centerY,a=this.radius,s=this.clockWise;return"M"+i+" "+n+" L"+(i+t.x)+" "+(n+t.y)+" A "+a+" "+a+" 0 0 "+(s?1:0)+" "+(i+e.x)+" "+(n+e.y)+" z"}},{key:"render",value:function(t){var e=this,i=this.radius,a=this.clockWise;this.grand_total=this.slice_totals.reduce(function(t,e){return t+e},0);var s=this.slicesProperties||[];this.slices=[],this.elements_to_animate=[],this.slicesProperties=[];var r=180-this.startAngle;this.slice_totals.map(function(o,l){var h=r,c=o/e.grand_total*360,u=a?-c:c,d=r+=u,p=n.getPositionByAngle(h,i),f=n.getPositionByAngle(d,i),v=t&&s[l],g=void 0,y=void 0;t?(g=v?v.startPosition:p,y=v?v.endPosition:p):(g=p,y=f);var m=e.makeArcPath(g,y),b=A(m,"pie-path","none",e.colors[l]);b.style.transition="transform .3s;",e.drawArea.appendChild(b),e.slices.push(b),e.slicesProperties.push({startPosition:p,endPosition:f,value:o,total:e.grand_total,startAngle:h,endAngle:d,angle:u}),t&&e.elements_to_animate.push([{unit:b,array:e.slices,index:e.slices.length-1},{d:e.makeArcPath(p,f)},650,"easein",null,{d:m}])}),t&&B(this.chartWrapper,this.svg,this.elements_to_animate)}},{key:"calTranslateByAngle",value:function(t){var e=this.radius,i=this.hoverRadio,a=n.getPositionByAngle(t.startAngle+t.angle/2,e);return"translate3d("+a.x*i+"px,"+a.y*i+"px,0)"}},{key:"hoverSlice",value:function(t,i,n,a){if(t){var s=this.colors[i];if(n){I(t,this.calTranslateByAngle(this.slicesProperties[i])),t.style.fill=Y(s,50);var r=e(this.svg),o=a.pageX-r.left+10,l=a.pageY-r.top-10,h=(this.formatted_labels&&this.formatted_labels.length>0?this.formatted_labels[i]:this.labels[i])+": ",c=(100*this.slice_totals[i]/this.grand_total).toFixed(1);this.tip.set_values(o,l,h,c+"%"),this.tip.show_tip()}else I(t,"translate3d(0,0,0)"),this.tip.hide_tip(),t.style.fill=s}}},{key:"mouseMove",value:function(t){for(var e=t.target,i=this.curActiveSliceIndex,n=this.curActiveSlice,a=0;a<this.slices.length;a++)if(e===this.slices[a]){this.hoverSlice(n,i,!1),this.curActiveSlice=e,this.curActiveSliceIndex=a,this.hoverSlice(e,a,!0,t);break}}},{key:"mouseLeave",value:function(){this.hoverSlice(this.curActiveSlice,this.curActiveSliceIndex,!1)}},{key:"bindTooltip",value:function(){}},{key:"renderLegend",value:function(){var e=this,i=this.formatted_labels&&this.formatted_labels.length>0?this.formatted_labels:this.labels;this.legend_totals.map(function(n,a){var s=e.colors[a];n&&(t.create("div",{className:"stats",inside:e.statsWrapper}).innerHTML='<span class="indicator">\n\t\t\t\t\t<i style="background-color:'+s+';"></i>\n\t\t\t\t\t<span class="text-muted">'+i[a]+":</span>\n\t\t\t\t\t"+n+"\n\t\t\t\t</span>")})}}],[{key:"getPositionByAngle",value:function(t,e){return{x:Math.sin(t*It)*e,y:Math.cos(t*It)*e}}}]),n}(Rt),Bt=function(t){function e(t,i){dt(this,e);var n=gt(this,(e.__proto__||Object.getPrototypeOf(e)).call(this,t,i));n.type="heatmap",n.domain=i.domain||"",n.subdomain=i.subdomain||"",n.data=i.data||{},n.discrete_domains=i.discrete_domains||1,n.count_label=i.count_label||"";var a=new Date;n.start=i.start||J(a,365);var s=(i.legend_colors||[]).slice(0,5);return n.legend_colors=n.validate_colors(s)?s:["#ebedf0","#c6e48b","#7bc96f","#239a3b","#196127"],n.distribution_size=5,n.translateX=0,n.setup(),n}return vt(e,t),pt(e,[{key:"validate_colors",value:function(t){if(t.length<5)return 0;var e=1;return t.forEach(function(t){H(t)||(e=0,console.warn('"'+t+'" is not a valid color.'))},this),e}},{key:"configure",value:function(){ft(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"configure",this).call(this),this.today=new Date,this.start||(this.start=new Date,this.start.setFullYear(this.start.getFullYear()-1)),this.first_week_start=new Date(this.start.toDateString()),this.last_week_start=new Date(this.today.toDateString()),7!==this.first_week_start.getDay()&&J(this.first_week_start,-1*this.first_week_start.getDay()),7!==this.last_week_start.getDay()&&J(this.last_week_start,-1*this.last_week_start.getDay()),this.no_of_cols=U(this.first_week_start+"",this.last_week_start+"")+1}},{key:"calcWidth",value:function(){this.baseWidth=12*(this.no_of_cols+3),this.discrete_domains&&(this.baseWidth+=144)}},{key:"makeChartArea",value:function(){ft(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"makeChartArea",this).call(this),this.domainLabelGroup=w(this.drawArea,"domain-label-group chart-label"),this.dataGroups=w(this.drawArea,"data-groups","translate(0, 20)")}},{key:"calc",value:function(){var t=this,e=Object.keys(this.data).map(function(e){return t.data[e]});this.distribution=at(e,this.distribution_size),this.month_names=["January","February","March","April","May","June","July","August","September","October","November","December"]}},{key:"render",value:function(){this.renderAllWeeksAndStoreXValues(this.no_of_cols)}},{key:"renderAllWeeksAndStoreXValues",value:function(t){this.domainLabelGroup.textContent="",this.dataGroups.textContent="";var e=new Date(this.first_week_start);this.week_col=0,this.current_month=e.getMonth(),this.months=[this.current_month+""],this.month_weeks={},this.month_start_points=[],this.month_weeks[this.current_month]=0,this.month_start_points.push(13);for(var i=0;i<t;i++){var n=void 0,a=0,s=new Date(e),r=this.get_week_squares_group(s,this.week_col),o=yt(r,2);n=o[0],a=o[1],this.dataGroups.appendChild(n),this.week_col+=1+parseInt(this.discrete_domains&&a),this.month_weeks[this.current_month]++,a&&(this.current_month=(this.current_month+1)%12,this.months.push(this.current_month+""),this.month_weeks[this.current_month]=1),J(e,7)}this.render_month_labels()}},{key:"get_week_squares_group",value:function(t,e){for(var i=this.today.getTime(),n=0,a=0,s=w(this.dataGroups,"data-group"),r=0,o=0;o<7;o+=1,r+=12){var l=0,h=0,c=t.getTime()/1e3,u=Math.floor(c-c%86400).toFixed(1);this.data[u]&&(l=this.data[u]),this.data[Math.round(u)]&&(l=this.data[Math.round(u)]),l&&(h=st(l,this.distribution));var d=13+12*(e+a),p={"data-date":q(t),"data-value":l,"data-day":t.getDay()},f=P("day",d,r,10,this.legend_colors[h],p);s.appendChild(f);var v=new Date(t);if(J(v,1),v.getTime()>i)break;v.getMonth()-t.getMonth()&&(n=1,this.discrete_domains&&(a=1),this.month_start_points.push(13+12*(e+a))),t=v}return[s,n]}},{key:"render_month_labels",value:function(){var t=this;this.months.shift(),this.month_start_points.shift(),this.months.pop(),this.month_start_points.pop(),this.month_start_points.map(function(e,i){var n=M("y-value-text",e+12,10,t.month_names[t.months[i]].substring(0,3));t.domainLabelGroup.appendChild(n)})}},{key:"bindTooltip",value:function(){var t=this;Array.prototype.slice.call(document.querySelectorAll(".data-group .day")).map(function(e){e.addEventListener("mouseenter",function(e){var i=e.target.getAttribute("data-value"),n=e.target.getAttribute("data-date").split("-"),a=t.month_names[parseInt(n[1])-1].substring(0,3),s=t.chartWrapper.getBoundingClientRect(),r=e.target.getBoundingClientRect(),o=parseInt(e.target.getAttribute("width")),l=r.left-s.left+(o+2)/2,h=r.top-s.top-(o+2)/2,c=i+" "+t.count_label,u=" on "+a+" "+n[0]+", "+n[2];t.tip.set_values(l,h,u,c,[],1),t.tip.show_tip()})})}},{key:"update",value:function(t){ft(e.prototype.__proto__||Object.getPrototypeOf(e.prototype),"update",this).call(this,t),this.bindTooltip()}}]),e}(Rt),Xt=function(){function t(e){var i=e.layerClass,n=void 0===i?"":i,a=e.layerTransform,s=void 0===a?"":a,r=e.constants,o=e.getData,l=e.makeElements,h=e.animateElements;dt(this,t),this.layerTransform=s,this.constants=r,this.makeElements=l,this.getData=o,this.animateElements=h,this.store=[],this.layerClass=n,this.layerClass="function"==typeof this.layerClass?this.layerClass():this.layerClass,this.refresh()}return pt(t,[{key:"refresh",value:function(t){this.data=t||this.getData()}},{key:"setup",value:function(t){this.layer=w(t,this.layerClass,this.layerTransform)}},{key:"make",value:function(){this.render(this.data),this.oldData=this.data}},{key:"render",value:function(t){var e=this;this.store=this.makeElements(t),this.layer.textContent="",this.store.forEach(function(t){e.layer.appendChild(t)})}},{key:"update",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.refresh();var e=[];return t&&(e=this.animateElements(this.data)),e}}]),t}(),qt={yAxis:{layerClass:"y axis",makeElements:function(t){var e=this;return t.positions.map(function(i,n){return C(i,t.labels[n],e.constants.width,{mode:e.constants.mode,pos:e.constants.pos})})},animateElements:function(t){var e=t.positions,i=t.labels,n=this.oldData.positions,a=this.oldData.labels,s=h(n,e),r=yt(s,2);n=r[0],e=r[1];var o=h(a,i),l=yt(o,2);return a=l[0],i=l[1],this.render({positions:n,labels:i}),this.store.map(function(t,i){return d(t,e[i],n[i])})}},xAxis:{layerClass:"x axis",makeElements:function(t){var e=this;return t.positions.map(function(i,n){return L(i,t.calcLabels[n],e.constants.height,{mode:e.constants.mode,pos:e.constants.pos})})},animateElements:function(t){var e=t.positions,i=t.calcLabels,n=this.oldData.positions,a=this.oldData.calcLabels,s=h(n,e),r=yt(s,2);n=r[0],e=r[1];var o=h(a,i),l=yt(o,2);return a=l[0],i=l[1],this.render({positions:n,calcLabels:i}),this.store.map(function(t,i){return u(t,e[i],n[i])})}},yMarkers:{layerClass:"y-markers",makeElements:function(t){var e=this;return t.map(function(t){return N(t.position,t.label,e.constants.width,{pos:"right",mode:"span",lineType:"dashed"})})},animateElements:function(t){var e=h(this.oldData,t),i=yt(e,2);this.oldData=i[0];var n=(t=i[1]).map(function(t){return t.position}),a=t.map(function(t){return t.label}),s=this.oldData.map(function(t){return t.position});this.oldData.map(function(t){return t.label});return this.render(s.map(function(t,e){return{position:s[e],label:a[e]}})),this.store.map(function(t,e){return d(t,n[e],s[e])})}},yRegions:{layerClass:"y-regions",makeElements:function(t){var e=this;return t.map(function(t){return E(t.start,t.end,e.constants.width,t.label)})},animateElements:function(t){var e=h(this.oldData,t),i=yt(e,2);this.oldData=i[0];var n=(t=i[1]).map(function(t){return t.end}),a=t.map(function(t){return t.label}),s=t.map(function(t){return t.start}),r=this.oldData.map(function(t){return t.end}),o=(this.oldData.map(function(t){return t.label}),this.oldData.map(function(t){return t.start}));this.render(r.map(function(t,e){return{start:o[e],end:r[e],label:a[e]}}));var l=[];return this.store.map(function(t,e){l=l.concat(p(t,s[e],n[e],r[e]))}),l}},barGraph:{layerClass:function(){return"dataset-units dataset-bars dataset-"+this.constants.index},makeElements:function(t){var e=this.constants;return this.unitType="bar",this.units=t.yPositions.map(function(i,n){return W(t.xPositions[n],i,t.barWidth,e.color,t.labels[n],n,t.offsets[n],{zeroLine:t.zeroLine,barsWidth:t.barsWidth,minHeight:e.minHeight})}),this.units},animateElements:function(t){var e=this.constants,i=t.xPositions,n=t.yPositions,a=t.offsets,s=t.labels,r=this.oldData.xPositions,o=this.oldData.yPositions,l=this.oldData.offsets,c=this.oldData.labels,u=h(r,i),d=yt(u,2);r=d[0],i=d[1];var p=h(o,n),v=yt(p,2);o=v[0],n=v[1];var g=h(l,a),y=yt(g,2);l=y[0],a=y[1];var m=h(c,s),b=yt(m,2);c=b[0],s=b[1],this.render({xPositions:r,yPositions:o,offsets:l,labels:s,zeroLine:this.oldData.zeroLine,barsWidth:this.oldData.barsWidth,barWidth:this.oldData.barWidth});var x=[];return this.store.map(function(s,r){x=x.concat(f(s,i[r],n[r],t.barWidth,a[r],e.index,{zeroLine:t.zeroLine}))}),x}},lineGraph:{layerClass:function(){return"dataset-units dataset-line dataset-"+this.constants.index},makeElements:function(t){var e=this.constants;return this.unitType="dot",this.paths={},e.hideLine||(this.paths=z(t.xPositions,t.yPositions,e.color,{heatline:e.heatline,regionFill:e.regionFill},{svgDefs:e.svgDefs,zeroLine:t.zeroLine})),this.units=[],e.hideDots||(this.units=t.yPositions.map(function(i,n){return S(t.xPositions[n],i,t.radius,e.color,e.valuesOverPoints?t.values[n]:"",n)})),Object.values(this.paths).concat(this.units)},animateElements:function(t){var e=t.xPositions,i=t.yPositions,n=t.values,a=this.oldData.xPositions,s=this.oldData.yPositions,r=this.oldData.values,o=h(a,e),l=yt(o,2);a=l[0],e=l[1];var c=h(s,i),u=yt(c,2);s=u[0],i=u[1];var d=h(r,n),p=yt(d,2);r=p[0],n=p[1],this.render({xPositions:a,yPositions:s,values:n,zeroLine:this.oldData.zeroLine,radius:this.oldData.radius});var f=[];return Object.keys(this.paths).length&&(f=f.concat(g(this.paths,e,i,t.zeroLine))),this.units.length&&this.units.map(function(t,n){f=f.concat(v(t,e[n],i[n]))}),f}}},Ut=function(t){function i(t,e){dt(this,i);var n=gt(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,t,e));return n.barOptions=e.barOptions||{},n.lineOptions=e.lineOptions||{},n.type=e.type||"line",n.setup(),n}return vt(i,t),pt(i,[{key:"configure",value:function(t){ft(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"configure",this).call(this),t.axisOptions=t.axisOptions||{},t.tooltipOptions=t.tooltipOptions||{},this.config.xAxisMode=t.axisOptions.xAxisMode||"span",this.config.yAxisMode=t.axisOptions.yAxisMode||"span",this.config.xIsSeries=t.axisOptions.xIsSeries||1,this.config.formatTooltipX=t.tooltipOptions.formatTooltipX,this.config.formatTooltipY=t.tooltipOptions.formatTooltipY,this.config.valuesOverPoints=t.valuesOverPoints}},{key:"setMargins",value:function(){ft(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"setMargins",this).call(this),this.leftMargin=60,this.rightMargin=60}},{key:"prepareData",value:function(){return rt(arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.data,this.type)}},{key:"prepareFirstData",value:function(){return ot(arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.data)}},{key:"calc",value:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.calcXPositions(),t||this.calcYAxisParameters(this.getAllYValues(),"line"===this.type)}},{key:"calcXPositions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.state,e=this.data.labels;t.datasetLength=e.length,t.unitWidth=this.width/t.datasetLength,t.xOffset=t.unitWidth/2,t.xAxis={labels:e,positions:e.map(function(e,i){return s(t.xOffset+i*t.unitWidth)})}}},{key:"calcYAxisParameters",value:function(t){var e=Z(t,arguments.length>1&&void 0!==arguments[1]?arguments[1]:"false"),i=this.height/it(e),n=et(e)*i,a=this.height-tt(e)*n;this.state.yAxis={labels:e,positions:e.map(function(t){return a-t*i}),scaleMultiplier:i,zeroLine:a},this.calcDatasetPoints(),this.calcYExtremes(),this.calcYRegions()}},{key:"calcDatasetPoints",value:function(){var t=this.state,e=function(e){return e.map(function(e){return nt(e,t.yAxis)})};t.datasets=this.data.datasets.map(function(t,i){var n=t.values,a=t.cumulativeYs||[];return{name:t.name,index:i,chartType:t.chartType,values:n,yPositions:e(n),cumulativeYs:a,cumulativeYPos:e(a)}})}},{key:"calcYExtremes",value:function(){var t=this.state;if(this.barOptions.stacked)return void(t.yExtremes=t.datasets[t.datasets.length-1].cumulativeYPos);t.yExtremes=new Array(t.datasetLength).fill(9999),t.datasets.map(function(e,i){e.yPositions.map(function(e,i){e<t.yExtremes[i]&&(t.yExtremes[i]=e)})})}},{key:"calcYRegions",value:function(){var t=this.state;this.data.yMarkers&&(this.state.yMarkers=this.data.yMarkers.map(function(e){return e.position=nt(e.value,t.yAxis),e.label.includes(":")||(e.label+=": "+e.value),e})),this.data.yRegions&&(this.state.yRegions=this.data.yRegions.map(function(e){return e.start=nt(e.start,t.yAxis),e.end=nt(e.end,t.yAxis),e}))}},{key:"getAllYValues",value:function(){var t,e=this,i="values";if(this.barOptions.stacked){i="cumulativeYs";var n=new Array(this.state.datasetLength).fill(0);this.data.datasets.map(function(t,a){var s=e.data.datasets[a].values;t[i]=n=n.map(function(t,e){return t+s[e]})})}return(t=[]).concat.apply(t,mt(this.data.datasets.map(function(t){return t[i]})))}},{key:"setupComponents",value:function(){var t=this,e=[["yAxis",{mode:this.config.yAxisMode,width:this.width},function(){return this.state.yAxis}.bind(this)],["xAxis",{mode:this.config.xAxisMode,height:this.height},function(){var t=this.state;return t.xAxis.calcLabels=lt(this.width,t.xAxis.labels,this.config.xIsSeries),t.xAxis}.bind(this)],["yRegions",{width:this.width,pos:"right"},function(){return this.state.yRegions}.bind(this)]],i=this.state.datasets.filter(function(t){return"bar"===t.chartType}),n=this.state.datasets.filter(function(t){return"line"===t.chartType}),a=i.map(function(e){var n=e.index;return["barGraph-"+e.index,{index:n,color:t.colors[n],stacked:t.barOptions.stacked,valuesOverPoints:t.config.valuesOverPoints,minHeight:.01*t.height},function(){var t=this.state,e=t.datasets[n],a=this.barOptions.stacked,s=this.barOptions.spaceRatio||.5,r=t.unitWidth*(1-s),o=r/(a?1:i.length),l=t.xAxis.positions.map(function(t){return t-r/2});a||(l=l.map(function(t){return t+o*n}));var h=new Array(t.datasetLength).fill("");this.valuesOverPoints&&(h=a&&e.index===t.datasets.length-1?e.cumulativeYs:e.values);var c=new Array(t.datasetLength).fill(0);return a&&(c=e.yPositions.map(function(t,i){return t-e.cumulativeYPos[i]})),{xPositions:l,yPositions:e.yPositions,offsets:c,labels:h,zeroLine:t.yAxis.zeroLine,barsWidth:r,barWidth:o}}.bind(t)]}),s=n.map(function(e){var i=e.index;return["lineGraph-"+e.index,{index:i,color:t.colors[i],svgDefs:t.svgDefs,heatline:t.lineOptions.heatline,regionFill:t.lineOptions.regionFill,hideDots:t.lineOptions.hideDots,hideLine:t.lineOptions.hideLine,valuesOverPoints:t.config.valuesOverPoints},function(){var t=this.state,e=t.datasets[i];return{xPositions:t.xAxis.positions,yPositions:e.yPositions,values:e.values,zeroLine:t.yAxis.zeroLine,radius:this.lineOptions.dotSize||4}}.bind(t)]}),r=[["yMarkers",{width:this.width,pos:"right"},function(){return this.state.yMarkers}.bind(this)]];e=e.concat(a,s,r);var o=["yMarkers","yRegions"];this.dataUnitComponents=[],this.components=new Map(e.filter(function(e){return!o.includes(e[0])||t.state[e[0]]}).map(function(e){var i=ht.apply(void 0,mt(e));return(e[0].includes("lineGraph")||e[0].includes("barGraph"))&&t.dataUnitComponents.push(i),[e[0],i]}))}},{key:"bindTooltip",value:function(){var t=this;this.chartWrapper.addEventListener("mousemove",function(i){var n=e(t.chartWrapper),a=i.pageX-n.left-t.leftMargin;i.pageY-n.top-t.translateY<t.height+2*t.translateY?t.mapTooltipXPosition(a):t.tip.hide_tip()})}},{key:"mapTooltipXPosition",value:function(t){var e=this,i=this.state;if(i.yExtremes){var n=i.xAxis.labels;this.formatTooltipX&&this.formatTooltipX(n[0])&&(n=n.map(function(t){return e.formatTooltipX(t)}));for(var a=this.formatTooltipY&&this.formatTooltipY(this.y[0].values[0]),s=i.datasetLength-1;s>=0;s--){var r=i.xAxis.positions[s];if(t>r-i.unitWidth/2){var o=r+this.leftMargin,l=i.yExtremes[s]+this.translateY,h=this.data.datasets.map(function(t,i){return{title:t.title,value:a?e.formatTooltipY(t.values[s]):t.values[s],color:e.colors[i]}});this.tip.set_values(o,l,n[s],"",h),this.tip.show_tip();break}}}}},{key:"makeOverlay",value:function(){var t=this;this.overlayGuides&&this.overlayGuides.forEach(function(t){var e=t.overlay;e.parentNode.removeChild(e)}),this.overlayGuides=this.dataUnitComponents.map(function(t){return{type:t.unitType,overlay:void 0,units:t.units}}),void 0===this.state.currentIndex&&(this.state.currentIndex=this.state.datasetLength-1),this.overlayGuides.map(function(e){var i=e.units[t.state.currentIndex];e.overlay=Lt[e.type](i),t.drawArea.appendChild(e.overlay)})}},{key:"updateOverlayGuides",value:function(){this.overlayGuides&&this.overlayGuides.forEach(function(t){var e=t.overlay;e.parentNode.removeChild(e)})}},{key:"bindOverlay",value:function(){var t=this;this.parent.addEventListener("data-select",function(e){t.updateOverlay()})}},{key:"bindUnits",value:function(t){}},{key:"updateOverlay",value:function(){var t=this;this.overlayGuides.map(function(e){var i=e.units[t.state.currentIndex];Nt[e.type](i,e.overlay)})}},{key:"onLeftArrow",value:function(){this.setCurrentDataPoint(this.state.currentIndex-1)}},{key:"onRightArrow",value:function(){this.setCurrentDataPoint(this.state.currentIndex+1)}},{key:"getDataPoint",value:function(){return{index:arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.state.currentIndex}}},{key:"setCurrentDataPoint",value:function(t){var e=this.state;(t=parseInt(t))<0&&(t=0),t>=e.xAxis.labels.length&&(t=e.xAxis.labels.length-1),t!==e.currentIndex&&(e.currentIndex=t,a(this.parent,"data-select",this.getDataPoint()))}},{key:"addDataPoint",value:function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:this.state.datasetLength;ft(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"addDataPoint",this).call(this,t,e,n),this.data.labels.splice(n,0,t),this.data.datasets.map(function(t,i){t.values.splice(n,0,e[i])}),this.update(this.data)}},{key:"removeDataPoint",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.state.datasetLength-1;ft(i.prototype.__proto__||Object.getPrototypeOf(i.prototype),"removeDataPoint",this).call(this,t),this.data.labels.splice(t,1),this.data.datasets.map(function(e){e.values.splice(t,1)}),this.update(this.data)}},{key:"updateDataset",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;this.data.datasets[e].values=t,this.update(this.data)}}]),i}(Rt),Vt={percentage:Ft,heatmap:Bt,pie:Gt},Jt=function t(e,i){return dt(this,t),ct(i.type,e,i)};return Jt}();
- //# sourceMappingURL=frappe-charts.min.js.map
|