!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t(require("echarts/lib/echarts"),require("echarts/lib/component/tooltip"),require("echarts/lib/component/legend"),require("echarts/lib/chart/bar")):"function"==typeof define&&define.amd?define(["echarts/lib/echarts","echarts/lib/component/tooltip","echarts/lib/component/legend","echarts/lib/chart/bar"],t):e.VeWaterfall=t(e.echarts)}(this,function(e){"use strict";e=e&&e.hasOwnProperty("default")?e.default:e;var t={th:3,mi:6,bi:9,tr:12},i={zeroFormat:null,nullFormat:null,defaultFormat:"0,0",scalePercentBy100:!0,abbrLabel:{th:"k",mi:"m",bi:"b",tr:"t"}},n=1e12,r=1e9,a=1e6,o=1e3;function s(e,t,i,n){var r=e.toString().split("."),a=t-(n||0),o=2===r.length?Math.min(Math.max(r[1].length,a),t):a,s=Math.pow(10,o),c=(i(e+"e+"+o)/s).toFixed(o);if(n>t-o){var l=new RegExp("\\.?0{1,"+(n-(t-o))+"}$");c=c.replace(l,"")}return c}function c(e,i,c,l){var h=Math.abs(i),u=!1,d=!1,f="",p="",m=!1,b=void 0,y=void 0;c=c||"",i=i||0,~c.indexOf("(")?(u=!0,c=c.replace(/[(|)]/g,"")):(~c.indexOf("+")||~c.indexOf("-"))&&(y=~c.indexOf("+")?c.indexOf("+"):i<0?c.indexOf("-"):-1,c=c.replace(/[+|-]/g,"")),~c.indexOf("a")&&(b=!!(b=c.match(/a(k|m|b|t)?/))&&b[1],~c.indexOf(" a")&&(f=" "),c=c.replace(new RegExp(f+"a[kmbt]?"),""),h>=n&&!b||"t"===b?(f+=e.abbrLabel.tr,i/=n):h=r&&!b||"b"===b?(f+=e.abbrLabel.bi,i/=r):h=a&&!b||"m"===b?(f+=e.abbrLabel.mi,i/=a):(h=o&&!b||"k"===b)&&(f+=e.abbrLabel.th,i/=o)),~c.indexOf("[.]")&&(d=!0,c=c.replace("[.]","."));var g=i.toString().split(".")[0],v=c.split(".")[1],O=c.indexOf(","),x=(c.split(".")[0].split(",")[0].match(/0/g)||[]).length;if(v?(g=(p=~v.indexOf("[")?s(i,(v=(v=v.replace("]","")).split("["))[0].length+v[1].length,l,v[1].length):s(i,v.length,l)).split(".")[0],p=~p.indexOf(".")?"."+p.split(".")[1]:"",d&&0==+p.slice(1)&&(p="")):g=s(i,0,l),f&&!b&&+g>=1e3&&f!==t.trillion&&(g=""+ +g/1e3,f=t.million),~g.indexOf("-")&&(g=g.slice(1),m=!0),g.length0;j--)g="0"+g;O>-1&&(g=g.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g,"$1,")),c.indexOf(".")||(g="");var S=g+p+(f||"");return u?S=(u&&m?"(":"")+S+(u&&m?")":""):y>=0?S=0===y?(m?"-":"+")+S:S+(m?"-":"+"):m&&(S="-"+S),S}function l(e,t){Object.keys(t).forEach(function(i){e[i]=t[i]})}var h={},u={};function d(e,t,i){return function(e,t,i){t=t||h.defaultFormat,i=i||Math.round;var n=void 0,r=void 0;if(0===e&&null!==h.zeroFormat)n=h.zeroFormat;else if(null===e&&null!==h.nullFormat)n=h.nullFormat;else{for(var a in u)if(u[a]&&t.match(u[a].regexp)){r=u[a].format;break}n=(r=r||c.bind(null,h))(e,t,i,d)}return n}(0===e||void 0===e?0:null===e||function(e){return"number"==typeof e&&isNaN(e)}(e)?null:"string"==typeof e?h.zeroFormat&&e===h.zeroFormat?0:h.nullFormat&&e===h.nullFormat||!e.replace(/[^0-9]+/g,"").length?null:+e:+e||null,t,i)}l(h,i),d.options=h,d._numberToFormat=c.bind(null,h),d.register=function(e,t){u[e]=t},d.unregister=function(e){u[e]=null},d.setOptions=function(e){l(h,e)},d.reset=function(){l(h,i)},d.register("percentage",{regexp:/%/,format:function(e,t,i,n){var r=~t.indexOf(" %")?" ":"",a=void 0;return n.options.scalePercentBy100&&(e*=100),t=t.replace(/\s?%/,""),~(a=n._numberToFormat(e,t,i)).indexOf(")")?((a=a.split("")).splice(-1,0,r+"%"),a=a.join("")):a=a+r+"%",a}});var f="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p=Object.assign||function(e){for(var t=1;t3&&void 0!==arguments[3]?arguments[3]:"-";if(isNaN(e))return n;if(!t)return e;if("[object Function]"===y(t))return t(e,d);i=isNaN(i)?0:++i;var r=".["+new Array(i).join(0)+"]",a=t;switch(t){case"KMB":a=i?"0,0"+r+"a":"0,0a";break;case"normal":a=i?"0,0"+r:"0,0";break;case"percent":a=i?"0,0"+r+"%":"0,0.[00]%"}return d(e,a)};var S=function(e,t,i,n){var r=i.dataType,a=void 0===r?"normal":r,o=i.dimension,s=void 0===o?e[0]:o,c=i.totalName,l=void 0===c?"总计":c,h=i.totalNum,u=i.remainName,d=void 0===u?"其他":u,f=i.xAxisName,m=void 0===f?s:f,b=i.labelMap,y=void 0===b?{}:b,g=i.axisVisible,v=void 0===g||g,O=i.digit,x=void 0===O?2:O,S=n.tooltipVisible,z=e.slice();z.splice(z.indexOf(s),1);var w=z[0],A=w,k=S&&function(e,t){return{trigger:"axis",axisPointer:{type:"shadow"},formatter:function(i){var n=i[1];return[n.name+"
"+n.seriesName+" :",""+j(n.value,e,t)].join("")}}}(a,x),N=parseFloat(t.reduce(function(e,t){return e+Number(t[w])},0).toFixed(x)),F=function(e,t){return t?t>e?"have-remain":"none-remain":"not-total"}(N,h);return{tooltip:k,xAxis:function(e){var t=e.dimension,i=e.rows,n=e.remainStatus,r=e.totalName,a=e.remainName,o=e.labelMap,s=e.xAxisName,c=e.axisVisible,l=[r].concat(i.map(function(e){return e[t]}));return"have-remain"===n&&(l=l.concat([a])),{type:"category",name:o&&o[s]||s,splitLine:{show:!1},data:l,show:c}}({dimension:s,rows:t,remainStatus:F,totalName:l,remainName:d,xAxisName:m,labelMap:y,axisVisible:v}),yAxis:function(e){var t=e.dataType,i=e.yAxisName,n=e.axisVisible,r=e.digit,a=e.labelMap;return{type:"value",name:null!=a[i]?a[i]:i,axisTick:{show:!1},axisLabel:{formatter:function(e){return j(e,t,r)}},show:n}}({dataType:a,yAxisName:A,axisVisible:v,digit:x,labelMap:y}),series:function(e){var t=e.dataType,i=e.rows,n=e.metrics,r=e.totalNum,a=e.remainStatus,o=e.dataSum,s=e.digit,c={type:"bar",stack:"总量"},l=o,h=r,u=void 0,d=void 0,f=i.map(function(e){return e[n]});"have-remain"===a?(u=[0].concat(i.map(function(e){return h-=e[n]})).concat([0]),d=[r].concat(f).concat([r-o])):(u=[0].concat(i.map(function(e){return l-=e[n]})),d=[o].concat(f));var m=[];return m.push(p({name:"辅助",itemStyle:{normal:{opacity:0},emphasis:{opacity:0}},data:u},c)),m.push(p({name:"数值",label:{normal:{show:!0,position:"top",formatter:function(e){return j(e.value,t,s)}}},data:d},c)),m}({dataType:a,rows:t,dimension:s,metrics:w,totalNum:h,remainStatus:F,dataSum:N,digit:x})}},z={render:function(){var e=this.$createElement,t=this._self._c||e;return t("div",{staticClass:"v-charts-component-loading"},[t("div",{staticClass:"loader"},[t("div",{staticClass:"loading-spinner"},[t("svg",{staticClass:"circular",attrs:{viewBox:"25 25 50 50"}},[t("circle",{staticClass:"path",attrs:{cx:"50",cy:"50",r:"20",fill:"none"}})])])])])},staticRenderFns:[]},w={render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"v-charts-data-empty"},[this._v(" 暂无数据 ")])},staticRenderFns:[]},A={categoryAxis:{axisLine:{show:!1},axisTick:{show:!1},splitLine:{show:!1}},valueAxis:{axisLine:{show:!1}},line:{smooth:!0},grid:{containLabel:!0,left:10,right:10}},k=["#19d4ae","#5ab1ef","#fa6e86","#ffb980","#0067a6","#c4b4e4","#d87a80","#9cbbff","#d9d0c7","#87a997","#d49ea2","#5b4947","#7ba3a8"],N=["initOptions","loading","dataEmpty","judgeWidth","widthChangeDelay"],F=["grid","dataZoom","visualMap","toolbox","title","legend","xAxis","yAxis","radar","tooltip","axisPointer","brush","geo","timeline","graphic","series","backgroundColor","textStyle"];function C(e,t){Object.keys(t).forEach(function(i){t[i]&&(e[i]=t[i])})}var E={render:function(e){return e("div",{class:[(t=this.$options.name||this.$options._componentTag,t.replace(/([a-z])([A-Z])/g,"$1-$2").toLowerCase())],style:this.canvasStyle},[e("div",{style:this.canvasStyle,class:{"v-charts-mask-status":this.dataEmpty||this.loading},ref:"canvas"}),e(w,{style:{display:this.dataEmpty?"":"none"}}),e(z,{style:{display:this.loading?"":"none"}}),this.$slots.default]);var t},props:{data:{type:[Object,Array],default:function(){return{}}},settings:{type:Object,default:function(){return{}}},width:{type:String,default:"auto"},height:{type:String,default:"400px"},beforeConfig:{type:Function},afterConfig:{type:Function},afterSetOption:{type:Function},afterSetOptionOnce:{type:Function},events:{type:Object},grid:{type:[Object,Array]},colors:{type:Array},tooltipVisible:{type:Boolean,default:!0},legendVisible:{type:Boolean,default:!0},legendPosition:{type:String},markLine:{type:Object},markArea:{type:Object},markPoint:{type:Object},visualMap:{type:[Object,Array]},dataZoom:{type:[Object,Array]},toolbox:{type:[Object,Array]},initOptions:{type:Object,default:function(){return{}}},title:[Object,Array],legend:[Object,Array],xAxis:[Object,Array],yAxis:[Object,Array],radar:Object,tooltip:Object,axisPointer:[Object,Array],brush:[Object,Array],geo:[Object,Array],timeline:[Object,Array],graphic:[Object,Array],series:[Object,Array],backgroundColor:[Object,String],textStyle:[Object,Array],animation:Object,theme:Object,themeName:String,loading:Boolean,dataEmpty:Boolean,extend:Object,judgeWidth:{type:Boolean,default:!1},widthChangeDelay:{type:Number,default:300},tooltipFormatter:{type:Function},resizeable:{type:Boolean,default:!0},resizeDelay:{type:Number,default:200},changeDelay:{type:Number,default:0},setOptionOpts:{type:[Boolean,Object],default:!0},cancelResizeCheck:Boolean,notSetUnchange:Array,log:Boolean},watch:{data:{deep:!0,handler:function(e){e&&this.changeHandler()}},settings:{deep:!0,handler:function(e){e.type&&this.chartLib&&(this.chartHandler=this.chartLib[e.type]),this.changeHandler()}},width:"nextTickResize",height:"nextTickResize",events:{deep:!0,handler:"createEventProxy"},theme:{deep:!0,handler:"themeChange"},themeName:"themeChange",resizeable:"resizeableHandler"},computed:{canvasStyle:function(){return{width:this.width,height:this.height,position:"relative"}},chartColor:function(){return this.colors||this.theme&&this.theme.color||k}},methods:{dataHandler:function(){if(this.chartHandler){var e=this.data,t=e,i=t.columns,n=void 0===i?[]:i,r=t.rows,a=void 0===r?[]:r,o={tooltipVisible:this.tooltipVisible,legendVisible:this.legendVisible,echarts:this.echarts,color:this.chartColor,tooltipFormatter:this.tooltipFormatter,_once:this._once};this.beforeConfig&&(e=this.beforeConfig(e));var s=this.chartHandler(n,a,this.settings,o);s&&("function"==typeof s.then?s.then(this.optionsHandler):this.optionsHandler(s))}},nextTickResize:function(){this.$nextTick(this.resize)},resize:function(){this.cancelResizeCheck?this.echartsResize():this.$el&&this.$el.clientWidth&&this.$el.clientHeight&&this.echartsResize()},echartsResize:function(){this.echarts&&this.echarts.resize()},optionsHandler:function(t){var i=this;if(this.legendPosition&&t.legend&&(t.legend[this.legendPosition]=10,~["left","right"].indexOf(this.legendPosition)&&(t.legend.top="middle",t.legend.orient="vertical")),t.color=this.chartColor,F.forEach(function(e){i[e]&&(t[e]=i[e])}),this.animation&&function(e,t){Object.keys(t).forEach(function(i){e[i]=t[i]})}(t,this.animation),this.markArea||this.markLine||this.markPoint){var n={markArea:this.markArea,markLine:this.markLine,markPoint:this.markPoint},r=t.series;O(r)?r.forEach(function(e){C(e,n)}):v(r)&&C(r,n)}this.extend&&function(e,t){Object.keys(t).forEach(function(i){var n=t[i];~i.indexOf(".")?function(e,t,i){if(t){var n=e,r=t.split(".");r.forEach(function(e,t){t===r.length-1?n[e]=i:(n[e]||(n[e]={}),n=n[e])})}}(e,i,n):"function"==typeof n?e[i]=n(e[i]):O(e[i])&&v(e[i][0])?e[i].forEach(function(t,r){e[i][r]=p({},t,n)}):v(e[i])?e[i]=p({},e[i],n):e[i]=n})}(t,this.extend),this.afterConfig&&(t=this.afterConfig(t));var a=this.setOptionOpts;!this.settings.bmap&&!this.settings.amap||v(a)||(a=!1),this.notSetUnchange&&this.notSetUnchange.length&&(this.notSetUnchange.forEach(function(e){var n,r=t[e];r&&(!function e(t,i){if(t===i)return!0;if(null===t||null===i||"object"!==g(t)||"object"!==g(i))return t===i;for(var n in t)if(x(t,n)){var r=t[n],a=i[n],o=g(r);if("undefined"===g(a))return!1;if("object"===o){if(!e(r,a))return!1}else if(r!==a)return!1}for(var s in i)if(x(i,s)&&"undefined"===g(t)[s])return!1;return!0}(r,i._store[e])?i._store[e]=(n=r,JSON.parse(JSON.stringify(n))):t[e]=void 0)}),v(a)?a.notMerge=!1:a=!1),this._isDestroyed||(this.log&&console.log(t),this.echarts.setOption(t,a),this.$emit("ready",this.echarts,t,e),this._once["ready-once"]||(this._once["ready-once"]=!0,this.$emit("ready-once",this.echarts,t,e)),this.judgeWidth&&this.judgeWidthHandler(t),this.afterSetOption&&this.afterSetOption(this.echarts,t,e),this.afterSetOptionOnce&&!this._once.afterSetOptionOnce&&(this._once.afterSetOptionOnce=!0,this.afterSetOptionOnce(this.echarts,t,e)))},judgeWidthHandler:function(e){var t=this,i=this.widthChangeDelay,n=this.resize;this.$el.clientWidth||this.$el.clientHeight?n():this.$nextTick(function(e){t.$el.clientWidth||t.$el.clientHeight?n():setTimeout(function(e){n(),t.$el.clientWidth&&t.$el.clientHeight||console.warn(" Can't get dom width or height ")},i)})},resizeableHandler:function(e){e&&!this._once.onresize&&this.addResizeListener(),!e&&this._once.onresize&&this.removeResizeListener()},init:function(){if(!this.echarts){var t=this.themeName||this.theme||A;this.echarts=e.init(this.$refs.canvas,t,this.initOptions),this.data&&this.changeHandler(),this.createEventProxy(),this.resizeable&&this.addResizeListener()}},addResizeListener:function(){window.addEventListener("resize",this.resizeHandler),this._once.onresize=!0},removeResizeListener:function(){window.removeEventListener("resize",this.resizeHandler),this._once.onresize=!1},addWatchToProps:function(){var e=this,t=this._watchers.map(function(e){return e.expression});Object.keys(this.$props).forEach(function(i){if(!~t.indexOf(i)&&!~N.indexOf(i)){var n={};~["[object Object]","[object Array]"].indexOf(y(e.$props[i]))&&(n.deep=!0),e.$watch(i,function(){e.changeHandler()},n)}})},createEventProxy:function(){var e=this,t=this,i=Object.keys(this.events||{});i.length&&i.forEach(function(i){-1===e.registeredEvents.indexOf(i)&&(e.registeredEvents.push(i),e.echarts.on(i,function(e){return function(){if(e in t.events){for(var i=arguments.length,n=Array(i),r=0;r