UNPKG

quoslibero

Version:

FusionCharts JavaScript charting framework

1 lines 20 kB
import{pluckNumber,pluck,COMMASTRING,BLANK,getValidValue,parseUnsafeString,parseTooltext,toRaphaelColor,hasSVG,getFirstDefinedValue,getFirstValue,getDashStyle,getPosition,setLineHeight,HUNDREDSTRING,ZEROSTRING,toPrecision,convertColor}from'../../../../fc-core/src/lib';import HlineargaugeDataset from'../hlineargauge';import{addDep,getDep}from'../../../../fc-core/src/dependency-manager';import angularAnimation from'./index.animation';import raphaelShapesRingpath from'../../../../fc-core/src/_internal/redraphael/redraphael-shapes/redraphael-shapes.ringpath';import raphaelShapesTriangle from'../../../../fc-core/src/_internal/redraphael/redraphael-shapes/redraphael-shapes.triangle';let UNDEF,R=getDep('redraphael','plugin'),math=Math,mathAbs=math.abs,mathATan2=math.atan2,mathPI=math.PI,math2PI=2*mathPI,mathMax=math.max,BLANKSTRING='',PXSTRING='px',NORMALSTRING='normal',deg2rad=mathPI/180,FILLMIXDARK10='{dark-10}',M='M',L='L',Z='Z',animationObjStr='animationObj',configStr='config',POINTER='pointer',EVENTARGS='eventArgs',doc=window.document,hasTouch=doc.documentElement.ontouchstart!==UNDEF,ANIM_EFFECT='linear',getTouchEvent=function(a){return hasTouch&&a.sourceEvent&&a.sourceEvent.touches&&a.sourceEvent.touches[0]||a},isString=function(a){return'string'==typeof a},defined=function(a){return a!==UNDEF&&null!==a},getAttrFunction=function(){return function(a,b,c){var d,e,f,g=this,h=this._Attr,i=R.vml?-1.5:0,j=R.vml?-1.5:0;if(h||(h=g._Attr={}),isString(a)&&defined(b)&&(d=a,a={},a[d]=b),isString(a)||a===UNDEF)g='angle'==a?g._Attr[a]:g._attr(a);else for(d in a)e=a[d],'angle'===d?(h[d]=e,f=e*deg2rad,h.tooltipPos[0]=h.cx+h.toolTipRadius*Math.cos(f),h.tooltipPos[1]=h.cy+h.toolTipRadius*Math.sin(f),h.prevValue=e,c&&c.duration?g.animate({transform:'R'+e+COMMASTRING+i+COMMASTRING+j},c.duration,ANIM_EFFECT):g.attr({transform:'R'+e+COMMASTRING+i+COMMASTRING+j})):g._attr(d,e);return g}};addDep({name:'angularAnimation',type:'animationRule',extension:angularAnimation}),raphaelShapesRingpath(R),raphaelShapesTriangle(R);class AngularGaugeDataset extends HlineargaugeDataset{constructor(){super(),this.components=this.components||{},this.config.idMap={}}getType(){return'dataset'}getName(){return'angularGauge'}configure(a){if(!a)return!1;this.trimData(a),this.config.pointerArr=a;var b,c,d,e,f,g,h,j,k,l,m,n,o=this,p=o.getFromEnv('chart'),q=p.config,r=p.getFromEnv('dataSource'),s=r.chart,t=r.pointers||r.dials,u=t.pointer||t.dial||[],v=o.components.data||(o.components.data=[]),w=o.getFromEnv('scale'),x=o.getFromEnv('color-manager'),y=o.config||(o.config={}),z=pluckNumber(s.gaugescaleangle,180),A=pluckNumber(s.gaugestartangle),B=pluckNumber(s.gaugeendangle),C=defined(A),D=hasSVG?.001:.01,E=defined(B);for(q.displayValueCount=0,l=0,n=u.length;l<n;l+=1)v[l]=v[l]||(v[l]={}),m=v[l].config||(v[l].config={}),m.basewidth=u[l].basewidth,m.color=u[l].color,m.alpha=u[l].alpha,m.bgcolor=u[l].bgcolor,m.borderalpha=u[l].borderalpha,m.bordercolor=u[l].bordercolor,m.borderthickness=u[l].borderthickness,m.editmode=u[l].editmode,m.id=pluck(u[l].id,'dial'+l),m.link=u[l].link,m.radius=u[l].radius,m.rearextension=u[l].rearextension,m.showvalue=u[l].showvalue,m.tooltext=u[l].tooltext,m.topwidth=u[l].topwidth,m.value=u[l].value,m.valuex=u[l].valuex,m.valuey=u[l].valuey,m.baseradius=u[l].baseradius,m.displayvalue=u[l].displayvalue,f=y.showValue=pluckNumber(s.showvalue,s.showrealtimevalue,0),g=pluckNumber(m.showvalue,f),h=pluckNumber(getValidValue(m.valuey)),g&&!defined(h)&&(q.displayValueCount+=1);(360<z||-360>z)&&(z=0<z?360:-360),(360<B||-360>B)&&(B%=360),(360<A||-360>A)&&(A%=360),C&&E?(z=A-B,(360<z||-360>z)&&(z%=360,B=A-z)):C?(B=A-z,(360<B||-360>B)&&(B%=360,A+=0<B?-360:360)):E?(A=B+z,(360<A||-360>A)&&(A%=360,B+=0<A?-360:360)):360===z?(A=180,B=-180):-360===z?(A=-180,B=-180):(b=z/2,A=90+b,B=A-z),360===Math.abs(z)&&(z+=0<z?-D:D,B=A-z),B=360-B,A=360-A,z=-z,(360<A||360<B)&&(A-=360,B-=360),y.gaugeStartAngle=A*=deg2rad,y.gaugeEndAngle=B*=deg2rad,y.gaugeScaleAngle=z*=deg2rad,y.upperLimit=pluckNumber(s.upperlimit),y.lowerLimit=pluckNumber(s.lowerlimit),w.setAxisConfig({startAngle:A,totalAngle:-z}),e=pluckNumber(s.scaleonresize,1),y.origW=pluckNumber(s.origw,e?p.config.origRenderWidth:q.width),y.origH=pluckNumber(s.origh,e?p.config.origRenderHeight:q.height),q.showtooltip=pluckNumber(s.showtooltip,1),q.autoScale=pluckNumber(s.autoscale,1),y.rearExtension=pluckNumber(t.rearextension,0),y.gaugeinnerradius=s.gaugeinnerradius,y.valueBelowPivot=pluckNumber(s.valuebelowpivot,0),y.showShadow=pluckNumber(s.showshadow,1),c=pluckNumber(s.showgaugeborder,1),y.gaugeFillMix=getFirstDefinedValue(s.colorrangefillmix,s.gaugefillmix,p.colorRangeFillMix,'{light-10},{light-70},{dark-10}'),y.gaugeFillRatio=getFirstDefinedValue(s.colorrangefillratio,s.gaugefillratio,p.colorRangeFillRatio,s.gaugefillratio),y.gaugeFillRatio===UNDEF?y.gaugeFillRatio=',6':y.gaugeFillRatio!==BLANK&&(y.gaugeFillRatio=COMMASTRING+y.gaugeFillRatio),y.gaugeBorderColor=pluck(s.gaugebordercolor,'{dark-20}'),y.gaugeBorderThickness=c?pluckNumber(s.gaugeborderthickness,1):0,y.gaugeBorderAlpha=pluckNumber(s.gaugeborderalpha,100),d=x.parseColorMix(pluck(s.pivotfillcolor,s.pivotcolor,s.pivotbgcolor,x.getColor('pivotColor')),pluck(s.pivotfillmix,'{light-10},{light-30},{dark-20}')),y.pivotFillAlpha=x.parseAlphaList(pluck(s.pivotfillalpha,HUNDREDSTRING),d.length),y.pivotFillRatio=x.parseRatioList(pluck(s.pivotfillratio,ZEROSTRING),d.length),y.pivotFillColor=d.join(),y.pivotFillAngle=pluckNumber(s.pivotfillangle,0),y.isRadialGradient='radial'==pluck(s.pivotfilltype,'radial').toLowerCase(),y.showPivotBorder=pluckNumber(s.showpivotborder,0),y.pivotBorderThickness=pluckNumber(s.pivotborderthickness,1),y.pivotBorderColor=convertColor(pluck(s.pivotbordercolor,x.getColor('pivotBorderColor')),1==y.showPivotBorder?pluck(s.pivotborderalpha,HUNDREDSTRING):ZEROSTRING),q.dataLabels=q.dataLabels||{},k=getFirstValue(s.valuebordercolor,BLANKSTRING),k=k?convertColor(k,pluckNumber(s.valueborderalpha,s.valuealpha,100)):BLANKSTRING,j=q.dataLabels.style={fontFamily:pluck(s.valuefont,q.style.inCanfontFamily),fontSize:pluck(s.valuefontsize,parseInt(q.style.inCanfontSize,10))+PXSTRING,color:convertColor(pluck(s.valuefontcolor,q.style.inCancolor),pluckNumber(s.valuefontalpha,s.valuealpha,100)),fontWeight:pluckNumber(s.valuefontbold)?'bold':NORMALSTRING,fontStyle:pluckNumber(s.valuefontitalic)?'italic':NORMALSTRING,border:k||s.valuebgcolor?pluckNumber(s.valueborderthickness,1)+'px solid':UNDEF,borderColor:k,borderThickness:pluckNumber(s.valueborderthickness,1),borderPadding:pluckNumber(s.valueborderpadding,2),borderRadius:pluckNumber(s.valueborderradius,0),backgroundColor:s.valuebgcolor?convertColor(s.valuebgcolor,pluckNumber(s.valuebgalpha,s.valuealpha,100)):BLANKSTRING,borderDash:pluckNumber(s.valueborderdashed,0)?getDashStyle(pluckNumber(s.valueborderdashlen,4),pluckNumber(s.valueborderdashgap,2)):BLANK},setLineHeight(j)}trimData(a){var b,c,d=this;b=d.components.data&&d.components.data.length,c=a.dial&&a.dial.length||0,b>c&&d.removeData(b-c)}_drawBackground(){var a,b,c,d,e,f,g,h,j,k,l,m,n,o,p,q,r=this,s=r.getFromEnv('chart'),t=s.getChildren('canvas')[0],u=r.config,v=r.getFromEnv('scale'),w=r.getFromEnv('color-manager'),z=v.config.axisRange,A=r.getFromEnv('colorRange'),B=s.getChildContainer('plotGroup'),C=s.getChildContainer('defaultShadowGroup'),D=s.getChildContainer('datalabelsGroup'),E=r.getFromEnv('animationManager'),F=u.gaugeOuterRadius,G=u.gaugeInnerRadius,H=u.gaugeFillRatio,I=u.gaugeBorderColor,J=u.gaugeBorderThickness,K=u.gaugeBorderAlpha,L=u.gaugeFillMix,M=u.gaugeOriginX,x=u.gaugeOriginY,y=u.gaugeStartAngle,N=u.showShadow,O=z.min,P=z.max,Q=A?A.getColorRangeArr(O,P):[],R=0,S=Q.length,T=y,U=r.getContainer('bandGroup'),V=r.getContainer('pointGroup'),W=0,X=function(){this.hide()},Y=function(){this.show()};for(l=E.setAnimation({el:U||'group',attr:{name:'bandGroup'},container:B,component:r,label:'group'}),U||(l=r.addContainer('bandGroup',l)),m=E.setAnimation({el:V||'group',attr:{name:'pointGroup',transform:'t'+M+COMMASTRING+x},container:D,component:r,label:'group'}),V||r.addContainer('pointGroup',m);R<S;R+=1)a=Q[R],b=v.getAngle(Math.min(a.maxvalue,P)),d=w.parseColorMix(a.code,L),e=w.parseAlphaList(a.alpha,d.length),f=w.parseRatioList(100*(G/F)+H,d.length),h=a.bordercolor,j=pluckNumber(a.borderAlpha,K),h=h&&-1==h.indexOf('{')?convertColor(h,j):w.parseColorMix(a.code,pluck(h,I))[0],h=convertColor(h,j),g=e.split(COMMASTRING),g=mathMax.apply(Math,g),g=N?mathMax(j||0,g):0,c=b,T>b&&(T+=b,b=T-b,T-=b),a._startAngle=T,a._endAngle=b,p=t.getGraphicalElement('bands')&&t.getGraphicalElement('bands')[R],q=E.setAnimation({el:p||'ringpath',attr:{ringpath:[M,x,F,G,T,b],fill:toRaphaelColor({FCcolor:{cx:M,cy:x,r:F,gradientUnits:'userSpaceOnUse',color:d.join(),alpha:e,ratio:f,radialGradient:!0}}),"stroke-width":J,stroke:h},container:l,callback:Y,component:r,label:'plotBackground'}),p||(t.addGraphicalElement('bands',q,!0),q.shadow({apply:N,opacity:g/100})),T=c,W+=1;for(S=t.getGraphicalElement('bands')&&t.getGraphicalElement('bands').length,R=W;R<S;R++)a=Q[R]||u.oldColorArr[R],a&&E.setAnimation({el:t.getGraphicalElement('bands')[R],attr:{ringpath:[M,x,F,G,a._startAngle,a._startAngle]},component:r,callback:X,label:'plotBackground'});u.oldColorArr=Q,k=u.isRadialGradient?{color:u.pivotFillColor,alpha:u.pivotFillAlpha,ratio:u.pivotFillRatio,radialGradient:!0,angle:u.pivotFillAngle,cx:.5,cy:.5,r:'50%'}:{color:u.pivotFillColor,alpha:u.pivotFillAlpha,ratio:u.pivotFillRatio,radialGradient:!1,angle:u.pivotFillAngle},o=r.getGraphicalElement('pivot'),n=E.setAnimation({el:o||'circle',attr:{cx:M,cy:x,r:u.pivotRadius,fill:toRaphaelColor({FCcolor:k}),"stroke-width":u.pivotBorderThickness,stroke:u.pivotBorderColor},container:D,component:r,label:'pivot'}),o||(n=r.addGraphicalElement('pivot',n),n.shadow({apply:N},C))}removeData(a){var b,c=this,d=c.getFromEnv('animationManager'),e=function(){this.remove()},f=c.components.data;for(b=0;b<a;b++)f[b].graphics.pointersPath&&d.setAnimation({el:f[b].graphics.pointersPath,attr:{opacity:0},callback:e,component:c}),f[b].graphics.pointersTpath&&d.setAnimation({el:f[b].graphics.pointersTpath,attr:{opacity:0},callback:e,component:c}),f[b].graphics.dataLabel&&d.setAnimation({el:f[b].graphics.dataLabel,attr:{opacity:0},callback:e,component:c});c.removeDataArr||(c.removeDataArr=[]),c.removeDataArr=c.removeDataArr.concat(f.splice(0,a))}draw(a){this._drawBackground();var b,c,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,z,A,B,C,D,E,F,G,H,I,J,K,N,O,P,Q,S,T,U,V,W,X,Y,$,_,aa,ba,ca,da,ea,fa,ga,ha,ia,ja,ka,la,ma,na,oa,pa,qa,ra,sa,ta,ua,va=this,wa=va.getFromEnv('chart'),xa=va.getFromEnv('toolTipController'),ya=va.config.idMap,za=wa.config,Aa=wa.getFromEnv('dataSource'),Ba=Aa.chart,Ca=va.components.data,Da=va.config,Ea=Da,Fa=va.getFromEnv('number-formatter'),Ga=va.getFromEnv('color-manager'),Ha=va.getFromEnv('scale'),Ia=va.getFromEnv('animationManager'),Ja=+Da.gaugeOriginX,Ka=+Da.gaugeOriginY,La=Da.gaugeStartAngle,Ma=Da.gaugeEndAngle,Na=Da.showShadow,Oa=za.showtooltip,Pa=Ha.config.axisRange,Qa=Pa.min,Ra=Pa.max,Sa=va.getContainer('pointGroup'),Ta=va.getLinkedParent().getChildContainer('datalabelsGroup'),Ua=Ra-Qa||1,Va=Ma-La,Wa=Ua/Va,Xa=Ba.plottooltext,Ya=pluckNumber(Ba.showhovereffect),Za=va.showValue=pluckNumber(Ba.showvalue,Ba.showrealtimevalue,0),$a=0,_a=za.dataLabels.style,ab={fontFamily:_a.fontFamily,fontSize:_a.fontSize,lineHeight:_a.lineHeight,fontWeight:_a.fontWeight,fontStyle:_a.fontStyle},bb=za.scaleFactor,cb=pluckNumber(parseInt(_a.lineHeight,10),12),db=Da.valueBelowPivot,eb=0,fb=Ca&&Ca.length,gb={pageX:0,pageY:0},hb=getAttrFunction(La,Ma),ib=function(a,b,c,d){return mathATan2(b-c[1]-d.top,a-c[0]-d.left)},jb=function(a){var b=Ca[this.pos],c=b.config||{},d=a.data[0],e=a.data[1];c.editMode&&(Ja=+Da.gaugeOriginX,Ka=+Da.gaugeOriginY,s=getPosition(wa.getFromEnv('chart-container')),za.rotationStartAngle=ib(d,e,[Ja,Ka],s),c.dragStartY=c.value,r=wa._getDataJSON())},kb=function(){var a,b=Ca[this.pos],c=b.config,d=wa.getFromEnv('chartInstance');if(b.config.editMode){a=d&&d.jsVars,a&&(a._rtLastUpdatedData=wa._getDataJSON()),wa.fireChartInstanceEvent('RealTimeUpdateComplete',{data:'&value='+c.updatedValStr,updateObject:{values:[c.updatedValStr]},prevData:r.values,source:'editMode',url:null});try{window.FC_ChartUpdated&&window.FC_ChartUpdated(d.id)}catch(a){setTimeout(function(){throw a},1)}}},lb=function(a){var b,c,d,e,f,g,h,j,k,l=Ca[this.pos],m=hasTouch&&getTouchEvent(a)||gb,n=Ha.config.axisRange,o=a.data[2],p=a.data[3];if(l.config.editMode){for(za.fromDrag=!0,Ja=+Da.gaugeOriginX,Ka=+Da.gaugeOriginY,Qa=n.min,Ra=n.max,La=Da.gaugeStartAngle,Ma=Da.gaugeEndAngle,Ua=Ra-Qa,Va=Ma-La,Wa=Ua/Va,b=ib(o,p,[Ja,Ka],s),c=za.rotationStartAngle-b,d=0>c?math2PI+c:c-math2PI,e=l.config.dragStartY-c*Wa,f=l.config.dragStartY-d*Wa,(e<Qa||e>Ra)&&f>=Qa&&f<=Ra&&(e=f),e<Qa?e=mathAbs(f-Ra)<mathAbs(e-Qa)?Ra:Qa:e>Ra&&(e=mathAbs(e-Ra)<mathAbs(f-Qa)?Ra:Qa),l.config.updatedValStr=e+BLANK,g=[],j=[],h=0,k=l.config.index;h<k;h+=1)g.push(BLANK),j.push(BLANK);g.push({value:e,animation:{duration:0,transposeAnimDuration:0,initAnimDuration:0}}),j.push(e),l.config.y!==e&&va.updateData({data:g})&&(l.config.updatedValStr=j.join('|'),l.config.dragStartX=Ja||a.pageX||m.pageX)}},mb=va.getFromEnv('smartLabel'),nb=R.vml?-1.5:0,ob=R.vml?-1.5:0;for(ha=ia=Da.pivotRadius,Ea.dataById===UNDEF&&(Ea.dataById={}),a&&0===a.duration&&wa.getFromEnv('animationManager').setAnimationState('dialDrag'),F=function(a){var b=this;return za.fromDrag?void(za.fromDrag=!1):void wa.plotEventHandler(b,a)},fb||(fb=0),mb.setStyle(ab),0!==Ya&&(Ya||Ba.dialborderhovercolor||Ba.dialborderhoveralpha||0===Ba.dialborderhoveralpha||Ba.dialborderhoverthickness||0===Ba.dialborderhoverthickness||Ba.dialbghovercolor||Ba.plotfillhovercolor||Ba.dialbghoveralpha||Ba.plotfillhoveralpha||0===Ba.dialbghoveralpha)&&(Ya=1),pa=function(a){var b,c=this,d=c.data('rolloverProperties');wa.plotEventHandler(c,a,'DataPlotRollOver'),d.enabled&&(b=c.attr('transform'),c.attr('transform',BLANK),c.attr(d.hoverAttr),c.attr('transform',b))},qa=function(a){var b,c=this,d=c.data('rolloverProperties');wa.plotEventHandler(c,a,'DataPlotRollOut'),d.enabled&&(b=c.attr('transform'),c.attr('transform',BLANK),c.attr(d.outAttr),c.attr('transform',b))};$a<fb;$a+=1)g=Ca[$a],g.config=g.config||{},H=g.config,g.config.index=$a,ya[H.id]={index:$a,config:g.config},ua=!1,H.id!==UNDEF&&(Ea.dataById[H.id]={index:$a,point:g}),ta=Ca[$a].graphics||(Ca[$a].graphics={}),I=Fa.getCleanValue(H.value),I=+toPrecision(I,10),m=pluckNumber(H.rearextension,0)*bb,ha=Math.max(ha,m*bb),J=Fa.dataLabels(I),K=getValidValue(H.displayvalue,J,BLANKSTRING),P=pluckNumber(H.showvalue,Za),Q=pluckNumber(getValidValue(H.valuey)*bb),ja=pluckNumber(getValidValue(H.valuex)*bb),H.itemValue=I,H.formatedVal=J,S=getValidValue(parseUnsafeString(pluck(H.tooltext,g.hovertext,Xa))),S=S?parseTooltext(S,[1,2],{formattedValue:J},g.config,Ba):K,T=pluck(H.color,H.bgcolor,Ga.getColor('dialColor')),U=pluckNumber(H.alpha,g.bgalpha,100),V=toRaphaelColor({FCcolor:{color:T,alpha:U,angle:90}}),W=pluck(H.bordercolor,Ga.getColor('dialBorderColor')),X=pluckNumber(H.borderalpha,100),Y=convertColor(W,X),$=pluckNumber(H.borderthickness,1),h=pluckNumber(H.radius)*bb,j=pluckNumber(pluckNumber(H.basewidth*bb,1.6*ia)),k=pluckNumber(H.topwidth,0)*bb,l=pluckNumber(H.baseradius,0),b=pluckNumber(H.editmode,Ba.editmode,0),t=pluck(H.link,BLANKSTRING),ka=S,H.toolText=ka,la=pluck(K,BLANKSTRING),K=P?pluck(K,BLANK):BLANKSTRING,_=pluckNumber(g.showhovereffect,Ya),0!==_&&(_||g.borderhovercolor||g.borderhoveralpha||0===g.borderhoveralpha||g.borderhoverthickness||0===g.borderhoverthickness||g.bghovercolor||g.bghoveralpha||0===g.bghoveralpha)&&(_=!0,f={},e={},aa=pluck(g.borderhovercolor,Ba.dialborderhovercolor,FILLMIXDARK10),ba=pluckNumber(g.borderhoveralpha,Ba.dialborderhoveralpha,X),ca=pluckNumber(g.borderhoverthickness,Ba.dialborderhoverthickness,$),ca&&(f.stroke=Y,da=/\{/.test(aa),e.stroke=convertColor(da?Ga.parseColorMix(W,aa)[0]:aa,ba)),ca!==$&&(e['stroke-width']=ca,f['stroke-width']=$),ea=pluck(g.bghovercolor,Ba.dialbghovercolor,Ba.plotfillhovercolor,FILLMIXDARK10),fa=pluckNumber(g.bghoveralpha,Ba.dialbghoveralpha,Ba.plotfillhoveralpha,U),f.fill=V,ga=/\{/.test(ea),ea=ga?Ga.parseColorMix(T,ea).join():ea,d={FCcolor:{color:ea,alpha:fa,angle:90}},e.fill=toRaphaelColor(d)),v=H.rolloverProperties={enabled:_,hasHoverSizeChange:c,hoverRadius:pluckNumber(z*bb),baseHoverWidth:pluckNumber(A*bb,1.6*ia),topHoverWidth:pluckNumber(C*bb),rearHoverExtension:pluckNumber(E*bb),hoverFill:d,hoverAttr:e,outAttr:f},h=pluckNumber(h,(+Da.gaugeOuterRadius+ +Da.gaugeInnerRadius)/2),n=j/2,o=k/2,H.tooltipPos=[Ja,Ka],t=H.editMode?UNDEF:H.link,w=[M,h,-o,L,h,o,-m,n,-m,-n,Z],v.hasHoverSizeChange&&(v.outAttr.path=w,z=pluckNumber(v.hoverRadius,h),A=v.baseHoverWidth,B=A/2,C=v.topHoverWidth,D=C/2,E=v.rearHoverExtension,v.hoverAttr.path=[M,z,-D,L,z,D,-E,B,-E,-B,Z]),u={link:H.link,value:I,displayValue:la,toolText:ka},I>=Qa&&I<=Ra&&(G=(I-Qa)/Ua*Va,p=(La+G)/deg2rad),ta.pointersTpath?k?(Ia.setAnimation({el:ta.pointersPath,attr:{path:w,transform:'R'+p+COMMASTRING+nb+COMMASTRING+ob},component:va,label:'dialPath'}),ta.pointersTpath._attr({trianglepath:[0,0,0,0,0,0,0,0,0]})):(Ia.setAnimation({el:ta.pointersTpath,attr:{trianglepath:[h,o,-m,n,-m,-n,0,l,l],transform:'R'+p+COMMASTRING+nb+COMMASTRING+ob},component:va,label:'trianglepath'}),ta.pointersPath._attr({path:'M0,0'})):(k?(sa=w,ra=[0,0,0,0,0,0,0,0,0]):(sa=['M',0,0],ra=[h,o,-m,n,-m,-n,0,l,l]),ta.pointersPath=Ia.setAnimation({el:'path',attr:{path:sa,transform:'R'+p+COMMASTRING+nb+COMMASTRING+ob},container:Sa,component:va,label:'dialPath'}),ta.pointersTpath=Ia.setAnimation({el:'trianglepath',attr:{trianglepath:ra,transform:'R'+p+COMMASTRING+nb+COMMASTRING+ob},container:Sa,component:va,label:'dialPath'}),q=k?ta.pointersPath:ta.pointersTpath,(j||k||$)&&q.shadow({apply:Na}),ua=!0),q=k?ta.pointersPath:ta.pointersTpath,ta.pointersPath._attr||(ta.pointersPath._attr=ta.pointersPath.attr,ta.pointersPath.attr=hb),ta.pointersTpath._attr||(ta.pointersTpath._attr=ta.pointersTpath.attr,ta.pointersTpath.attr=hb),q._attr({fill:V,stroke:Y,"stroke-width":$}).data(EVENTARGS,u).data('rolloverProperties',v),q._Attr={tooltipPos:H.tooltipPos,cx:Ja,cy:Ka,toolTipRadius:h-m,color:H.color},ua&&(p=La/deg2rad,q.hover(pa,qa)),H.index=$a,H.editMode=b,q.css({cursor:b||t?POINTER:'default',_cursor:b?'hand':'default'}),ta.pointersPath.pos=$a,ta.pointersTpath.pos=$a,ua&&(ta.pointersPath.on('fc-dragstart',jb),ta.pointersPath.on('fc-dragmove',lb),ta.pointersPath.on('fc-dragend',kb),ta.pointersTpath.on('fc-dragstart',jb),ta.pointersTpath.on('fc-dragmove',lb),ta.pointersTpath.on('fc-dragend',kb),ta.pointersPath.on('fc-click',F),ta.pointersTpath.on('fc-click',F)),H.y=I,Oa&&ka!==BLANK?xa.enableToolTip(q,ka):xa.disableToolTip(q),defined(K)&&K!==BLANK?(ma=Ka+(db?cb/2+ia+2:-(cb/2)-ia-2),na=Q,oa=pluckNumber(ja,Ja),!defined(na)&&(na=db?ma+cb*eb:ma-cb*eb),N=mb.getSmartText(K),K=N.text,O=N.tooltext||BLANKSTRING,ta.dataLabel=Ia.setAnimation({el:ta.dataLabel||'text',attr:{x:oa,y:na,direction:za.textDirection,text:K,title:g.originalText||BLANK,fill:_a.color,"text-bound":[_a.backgroundColor,_a.borderColor,_a.borderThickness,_a.borderPadding,_a.borderRadius,_a.borderDash]},css:ab,container:Ta,component:va,label:'text'}),ta.dataLabel.show(),eb+=1,Oa?xa.enableToolTip(ta.dataLabel,O):xa.disableToolTip(ta.dataLabel)):(ta.dataLabel&&ta.dataLabel.hide(),ta.dataLabel&&xa.disableToolTip(ta.dataLabel))}updateData(a){var b,c,d,e,f,g,h,k,l,m,n,o,p,q,r,s={};if(a===this.config.lastUpdatedObj)return!1;for(b=this,c=b.getFromEnv('chart'),d=b.components.data,h=b.components.data,k=h&&h.length||0,a=a.data,o=a.length,l=0;l<o;l++)m=a[l].id,m&&(s[m]=a[l]);if(n=Object.keys(s).length,k){for(;k--;)(e=d[k].config,m=e.id,p=UNDEF,p=n?s[m]:a[k],!!p)&&(q=p.animation||c.get(configStr,animationObjStr),r=p.value,g=p.tooltext,f=p.label,e.value=pluckNumber(r,e.value,0),e.tooltext=pluck(g,e.value),e.displayvalue=f);return this.config.lastUpdatedObj=a,this.draw(q),!0}}}export default AngularGaugeDataset;