"use strict";function _interopDefault(e){return e&&"object"==typeof e&&"default"in e?e.default:e}var utils=require('./utils'),utilsLite=require("utils-lite"),constants=require('./constants');require("echarts/lib/chart/scatter");var Core=_interopDefault(require('./core')),_extends=Object.assign||function(e){for(var i=1;i"),e.forEach(function(e){var r,n=e.seriesName,s=e.data,l=e.marker,u=~o.indexOf(n)?t[1]:t[0],m=utilsLite.isArray(s)?s[1]:s;r=utils.getFormated(m,u,a),i.push(l),i.push(n+": "+r),i.push("
")}),i.join("")}}}function getLegend(e){var i=e.metrics,t=e.legendName,a=e.labelMap;return t||a?{data:a?i.map(function(e){return null==a[e]?e:a[e]}):i,formatter:function(e){return null!=t[e]?t[e]:e}}:{data:i}}var line=function(e,i,t,a){i=utilsLite.isArray(i)?i:[],e=utilsLite.isArray(e)?e:[];var r=t.axisSite,n=void 0===r?{}:r,s=t.yAxisType,o=void 0===s?["normal","normal"]:s,l=t.xAxisType,u=void 0===l?"category":l,m=t.yAxisName,c=void 0===m?[]:m,d=t.dimension,x=void 0===d?[e[0]]:d,y=t.xAxisName,f=void 0===y?[]:y,p=t.axisVisible,b=void 0===p||p,g=t.area,v=t.stack,h=t.scale,A=void 0===h?[!1,!1]:h,S=t.min,T=void 0===S?[null,null]:S,L=t.max,N=void 0===L?[null,null]:L,w=t.nullAddZero,V=void 0!==w&&w,M=t.digit,E=void 0===M?2:M,O=t.legendName,k=void 0===O?{}:O,z=t.labelMap,_=void 0===z?{}:z,j=t.label,F=t.itemStyle,q=t.lineStyle,C=t.areaStyle,R=a.tooltipVisible,X=a.legendVisible,Y=a.tooltipFormatter,Z=e.slice();n.left&&n.right?Z=n.left.concat(n.right):n.left&&!n.right?Z=n.left:t.metrics?Z=t.metrics:Z.splice(e.indexOf(x[0]),1);var D=X&&getLegend({metrics:Z,legendName:k,labelMap:_}),P=R&&getLineTooltip({axisSite:n,yAxisType:o,digit:E,labelMap:_,xAxisType:u,tooltipFormatter:Y}),$=getLineXAxis({dimension:x,rows:i,xAxisName:f,axisVisible:b,xAxisType:u}),G=getLineYAxis({yAxisName:c,yAxisType:o,axisVisible:b,scale:A,min:T,max:N,digit:E});return{legend:D,xAxis:$,series:getLineSeries({rows:i,axisSite:n,metrics:Z,area:g,stack:v,nullAddZero:V,labelMap:_,label:j,itemStyle:F,lineStyle:q,areaStyle:C,xAxisType:u,dimension:x}),yAxis:G,tooltip:P}};function getScatterLegend(e,i){return{data:e,formatter:function(e){return null!=i[e]?i[e]:e}}}function getScatterTooltip(e){return{trigger:e.tooltipTrigger,formatter:function(i){return utilsLite.isArray(i)?i.map(function(i){return getTooltipContent(i,e)}).join(""):getTooltipContent(i,e)}}}function getTooltipContent(e,i){var t=i.labelMap,a=i.columns,r=i.dataType,n=i.digit,s=[],o=e.color,l=e.seriesName,u=e.data.value;return s.push(constants.itemPoint(o)+" "+l+"
"),u.forEach(function(e,i){var o=t[a[i]]||a[i],l=isNaN(e)?e:utils.getFormated(e,r[a[i]],n);s.push(o+": "+l+"
")}),s.join("")}function getScatterXAxis(e){var i=e.xAxisName,t=e.axisVisible,a=e.xAxisType,r=e.rows,n=e.dataLabels,s=e.dimension,o=[];return n.forEach(function(e){r[e].forEach(function(e){var i=e[s];i&&!~o.indexOf(i)&&o.push(i)})}),[{type:a,show:t,name:i,data:o}]}function getScatterYAxis(e){var i=e.min,t=e.max,a=e.scale,r=e.yAxisName,n=e.dataType,s=e.metrics,o=e.digit;return{type:"value",show:e.axisVisible,scale:a,min:i,max:t,axisTick:{show:!1},name:r,axisLabel:{formatter:function(e){return utils.getFormated(e,n[s[0]],o)}}}}function getScatterSeries(e){var i=e.rows,t=e.dataLabels,a=e.columns,r=e.metrics,n=e.dimension,s=e.label,o=e.itemStyle,l=e.symbol,u=e.symbolSizeMax,m=e.symbolSize,c=e.symbolRotate,d=e.symbolOffset,x=e.cursor,y=a.filter(function(e){return!~r.indexOf(e)&&e!==n}),f=[];t.forEach(function(e){i[e].forEach(function(e){f.push(e[r[1]])})});var p=Math.max.apply(null,f),b=[];return t.forEach(function(e){var t=[];i[e].forEach(function(e){var i={value:[]};i.value.push(e[n],e[r[0]],e[r[1]]),y.forEach(function(t){i.value.push(e[t])}),i.symbolSize=m||e[r[1]]/p*u,t.push(i)}),b.push({type:"scatter",data:t,name:e,label:s,itemStyle:o,symbol:l,symbolRotate:c,symbolOffset:d,cursor:x})}),b}var scatter$1=function(e,i,t,a){var r=t.dimension,n=void 0===r?e[0]:r,s=t.metrics,o=void 0===s?[e[1],e[2]]:s,l=t.dataType,u=void 0===l?{}:l,m=t.xAxisType,c=void 0===m?"category":m,d=t.xAxisName,x=t.yAxisName,y=t.digit,f=void 0===y?2:y,p=t.legendName,b=void 0===p?{}:p,g=t.labelMap,v=void 0===g?{}:g,h=t.tooltipTrigger,A=void 0===h?"item":h,S=t.axisVisible,T=void 0===S||S,L=t.symbolSizeMax,N=void 0===L?50:L,w=t.symbol,V=t.symbolSize,M=t.symbolRotate,E=t.symbolOffset,O=t.cursor,k=t.min,z=t.max,_=t.scale,j=t.label,F=t.itemStyle;if(utilsLite.isArray(i)){var q=_extends({},t,{xAxisName:d?[d]:void 0,yAxisName:x?[x]:void 0,scale:_?[_]:void 0,min:k?[k]:void 0,max:z?[z]:void 0,dimension:n?[n]:void 0}),C=line(e,i,q,a);return C&&C.series?(C.series.forEach(function(e){_extends(e,{type:"scatter",symbol:w,symbolSize:V||10,symbolRotate:M,symbolOffset:E,cursor:O,label:j,itemStyle:F})}),C):{}}var R=a.tooltipVisible,X=a.legendVisible,Y=Object.keys(i);return{legend:X&&getScatterLegend(Y,b),tooltip:R&&getScatterTooltip({tooltipTrigger:A,labelMap:v,columns:e,dataType:u,digit:f}),xAxis:getScatterXAxis({xAxisName:d,axisVisible:T,xAxisType:c,dataLabels:Y,dimension:n,rows:i}),yAxis:getScatterYAxis({min:k,max:z,scale:_,yAxisName:x,dataType:u,metrics:o,digit:f,axisVisible:T}),series:getScatterSeries({rows:i,dataLabels:Y,columns:e,metrics:o,dimension:n,label:j,itemStyle:F,symbol:w,symbolSizeMax:N,symbolSize:V,symbolRotate:M,symbolOffset:E,cursor:O})}},index=_extends({},Core,{name:"VeScatter",data:function(){return this.chartHandler=scatter$1,{}}});module.exports=index;