UNPKG

zingchart

Version:

Our JavaScript charting library is a commercial product. But the full branded version is free to try, forever.

8 lines (7 loc) 18.3 kB
/* All of the code within the ZingChart software is developed and copyrighted by ZingChart, Inc., and may not be copied, replicated, or used in any other software or application without prior permission from ZingChart. All usage must coincide with the ZingChart End User License Agreement which can be requested by email at support@zingchart.com. Build 2.9.16-hf1 */ zingchart.setModule("treemap"),function(){if(!ZC.AFT){var AF8={},SEQ=0;ZC.AFT=function(){this.AK="",this.sTextO="",this.K="",this.AEJ=0,this.AEI=0,this.o={},this.P={},this.AEK=[],this.A=null,this.AF8=null,this.FE=0,this.L=0,this.AEL="#336699",this.AGM=function(){var i=0,t=0,e=[];if(this.AEK.length>0){for(var h=0;h<this.AEK.length;h++)i+=(e=this.AEK[h].AGM())[0],t=Math.max(t,e[1]);this.AEJ=i,this.AEI=t}else i=this.AEJ,t=this.AEI,this.AF8.SI=Math.max(this.AF8.SI,this.AF8.tx(this.AEJ)),this.AF8.OP=Math.min(this.AF8.OP,this.AF8.tx(this.AEJ)),this.AF8.AF7=Math.max(this.AF8.AF7,this.AEI),this.AF8.AF6=Math.min(this.AF8.AF6,this.AEI);return[i,t]},this.sortChildren=function(){if(this.AEK.length>0){this.AEK.sort(function(i,t){return"./"===i.AK||i.AK.indexOf("index.")>0?-1:"./"===t.AK||t.AK.indexOf("index.")>0?1:i.AEJ>t.AEJ?-1:i.AEJ<t.AEJ?1:0});for(var i=0;i<this.AEK.length;i++)this.AEK[i].sortChildren()}}},ZC.AFU=function(){this.G=null,this.iX=0,this.iY=0,this.I=800,this.F=600,this.LL=0,this.AEM=[],this.sTextAttr="text",this.sValueAttr="value",this.OP=ZC.MAX,this.SI=-ZC.MAX,this.AF6=ZC.MAX,this.AF7=-ZC.MAX,this.AEN=[],this.AEO=[],this.AEP=0,this.AEL="",this.AEQ=0,this.AER=[],this.AES=5,this.AET=25,this.AEU=[],this.C9=-ZC.MAX,this.CC=ZC.MAX,this.bCustomMaxChildren=!1,this.AEV="balanced",this.AEW="palette",this.AEX=!1,this.AEY=.4,this.AEZ="#336699",this.AF0="#99ccff",this.AF5=!1,this.BP=null,this.BC={"decimals-separator":".","thousands-separator":"",decimals:-1},this.BS="lin",this.tx=function(i){return"log"===this.BS?ZC.FV(i):i},this.iPairedChildren=4,this.o={},this.setDefaults=function(i,t){var e={},h=zingchart.getLoader(i);if(null===ZC._n_(h))return{};ZC._cp_({palette:h.B6.B6.palette||[]},e),ZC._cp_(this.B6,e),this.NT[t]&&ZC._cp_(this.NT[t],e),this.BP=[];for(var a=0;a<e.palette.length;a++)this.BP.push(e.palette[a][1]);ZC._cp_(h.B6.B6.treemap,e),this.o=e},this.B6={},this.NT={light:{padding:"4 6",borderColor:"#fff"},dark:{padding:"4 6",borderColor:"#221F1F"}},this.oGroupBox={},this.BT={textAlign:"left",verticalAlign:"top",borderWidth:1,color:"#fff",bold:0},ZC._todash_(this.BT),this.AF1=null,this.AF2={padding:8,borderWidth:1,shadow:0,borderColor:"#fff",color:"#fff",bold:0,text:"%text:%value-size"},ZC._todash_(this.AF2),this.AF3={padding:8,borderWidth:1,shadow:0,borderColor:"#fff",color:"#fff",bold:0,text:"%text"},ZC._todash_(this.AF3),this.IK={backgroundColor:"#fff",alpha:.2,borderColor:"#000"},ZC._todash_(this.IK),this.AF4={},this.parse=function(i,t){var e;0===t&&(this.AF1=zingchart.getInstance(this.G,"textbox"),this.AF1.append(this.BT),this.AF1.parse());for(var h=[],a=0;a<i.length;a++){ZC._todash_(i[a]);var s=new ZC.AFT;for(var r in s.sTextO=s.AK=i[a][this.sTextAttr]||"",null!==ZC._n_(i[a].id)?s.K=i[a].id.replace(/[^a-z0-9_]+/gi,"")+a:s.K="N"+SEQ++,null!==ZC._n_(e=i[a][this.sValueAttr])&&(s.AEJ=s.AEI=Math.max(0,parseFloat(e))),null!==ZC._n_(e=i[a]["value-size"])&&(s.AEJ=s.AEI=Math.max(0,parseFloat(e))),null!==ZC._n_(e=i[a]["value-aspect"])&&(s.AEI=Math.max(0,parseFloat(e))),null!==ZC._n_(e=i[a].style)&&(s.P=e),i[a])i[a].hasOwnProperty(r)&&"data-"===r.substring(0,5)&&(s.o[r]=i[a][r]||"");if(s.AF8=this,s.FE=t,s.L=this.AEN.length,0===t&&(s.A=null,this.AEN.push(s),this.AEO.push(s)),i[a].children&&i[a].children.length>0){s.AEK=this.parse(i[a].children,t+1);for(var A=0;A<s.AEK.length;A++)this.AEO.push(s.AEK[A]),s.FE=t,s.AEK[A].A=s}h.push(s)}return h},this.AGO=function(i,t){for(var e=0;e<i.length;e++)i[e].FE===this.AEQ?this.AF5?i[e].AEL=this.BP[e%this.BP.length]:i[e].AEL=ZC.AO.GD(this.BP[e%this.BP.length]):i[e].AEL=t,i[e].AEK.length>0&&this.AGO(i[e].AEK,i[e].AEL)},this.paint=function(){1===this.AEN.length&&(this.AEQ=1),this.AGO(this.AEN,"#333333");for(var i=0;i<this.AEN.length;i++)this.AEN[i].AGM(),this.SI=Math.max(this.SI,this.tx(this.AEN[i].AEJ)),this.OP=Math.min(this.OP,this.tx(this.AEN[i].AEJ)),this.AF7=Math.max(this.AF7,this.AEN[i].AEI),this.AF6=Math.min(this.AF6,this.AEN[i].AEI);this.AGP();for(var t=0;t<this.AEN.length;t++)this.AEN[t].sortChildren();this.AEP=0,this.AER=this.AEN,this.render(this.AEN,this.iX,this.iY,this.I,this.F,0,0)},this.render=function(AEN,iX,iY,I,F,iLevel,iCount){var iColor,aColors,c,cLen;if(!(I<2||F<2))if(0===iLevel&&this.AGT(null,this.iX,this.iY,this.I,this.F,"#fff",1,{}),AEN.length>1){var i=0,j=0,aNodes_=[],iChildren;for(iChildren=this.bCustomMaxChildren?"undefined"!=typeof this.AEU[iLevel]?Math.min(this.AEU[iLevel],AEN.length):Math.min(this.AET,AEN.length):AEN.length,i=0;i<iChildren;i++)(AEN[i].AEK.length>0||AEN[i].AEJ>=this.C9&&AEN[i].AEJ<=this.CC)&&aNodes_.push(AEN[i]);AEN=aNodes_;var aNodes1=[],aNodes2=[],iValue1=0,iValue2=0,iSide,iTotal;switch(this.AEV){case"alternate":for(i=0;i<AEN.length;i++)i%2==0?(aNodes1.push(AEN[i]),iValue1+=this.tx(AEN[i].AEJ)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ));break;case"random":for(iSide=1,i=0;i<AEN.length;i++)iSide=Math.random()>=.75?1:2,1===iSide?(aNodes1.push(AEN[i]),iValue1+=this.tx(AEN[i].AEJ)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ));break;case"squarifyV2":for(iSide=1,iTotal=0,i=0;i<AEN.length;i++)iTotal+=this.tx(AEN[i].AEJ);for(i=0;i<AEN.length;i++)1===iSide?(iValue1+=this.tx(AEN[i].AEJ),aNodes1.push(AEN[i]),iValue1>=iTotal/2&&(iSide=2)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ));break;case"squarify":iSide=1;var fRatio=9999,iSideWidth,iSideHeight,iNodeWidth,iNodeHeight,fNodeRatio;for(iTotal=0,i=0;i<AEN.length;i++)iTotal+=this.tx(AEN[i].AEJ);for(i=0;i<AEN.length;i++)1===iSide?(iValue1+=this.tx(AEN[i].AEJ),I>=F?(iSideWidth=I*iValue1/iTotal,iSideHeight=F,iNodeWidth=iSideWidth,iNodeHeight=this.tx(AEN[i].AEJ)*iSideHeight/iValue1):(iSideHeight=F*iValue1/iTotal,iSideWidth=I,iNodeHeight=iSideHeight,iNodeWidth=this.tx(AEN[i].AEJ)*iSideWidth/iValue1),fNodeRatio=Math.max(iNodeWidth,iNodeHeight)/Math.min(iNodeWidth,iNodeHeight),fNodeRatio<fRatio?(fRatio=fNodeRatio,aNodes1.push(AEN[i])):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ),iSide=2)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ));break;default:for(iSide=1,i=0;i<AEN.length;i++)iSide=iValue1<=iValue2?1:2,1===iSide?(aNodes1.push(AEN[i]),iValue1+=this.tx(AEN[i].AEJ)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ));break;case"balancedV2":for(iSide=1,iTotal=0,i=0;i<AEN.length;i++)iTotal+=this.tx(AEN[i].AEJ);for(i=0;i<AEN.length;i++)if(1===iSide){if(iValue1+=this.tx(AEN[i].AEJ),aNodes1.push(AEN[i]),iValue1>=iTotal/3){if(AEN.length>2*this.iPairedChildren){var iCnt=0,aIndexes=[];for(j=i;j<AEN.length;j++)this.tx(AEN[j].AEJ)/this.tx(AEN[i].AEJ)<1/this.iPairedChildren&&iCnt<this.iPairedChildren&&(aNodes1.push(AEN[j]),iValue1+=this.tx(AEN[j].AEJ),aIndexes.push(j),iCnt++);for(aIndexes.reverse(),j=0;j<aIndexes.length;j++)AEN.splice(aIndexes[j],1)}iSide=2}}else aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ);break;case"horizontal":case"vertical":for(i=0;i<AEN.length;i++)i<AEN.length/2?(aNodes1.push(AEN[i]),iValue1+=this.tx(AEN[i].AEJ)):(aNodes2.push(AEN[i]),iValue2+=this.tx(AEN[i].AEJ))}var fPercent1=iValue1/(iValue1+iValue2),iWidth1=0,iHeight1=0,iWidth2=0,iHeight2=0,BK=0,BJ=0;switch(this.AEV){case"alternate":iCount%2==0?(iWidth1=Math.ceil(I*fPercent1),iHeight1=F,iWidth2=Math.abs(I-iWidth1),iHeight2=F,BK=iWidth1,BJ=0):(iWidth1=I,iHeight1=Math.ceil(F*fPercent1),iWidth2=I,iHeight2=Math.abs(F-iHeight1),BK=0,BJ=iHeight1);break;default:iWidth1=Math.ceil(I*fPercent1),iHeight1=F,iWidth2=Math.abs(I-iWidth1),iHeight2=F;var fRatioV=0;iHeight1+iHeight2>0&&(fRatioV=(iWidth1+iWidth2)/(iHeight1+iHeight2)),fRatioV=fRatioV<1&&fRatioV>0?1/fRatioV:fRatioV,iWidth1=I,iHeight1=Math.ceil(F*fPercent1),iWidth2=I,iHeight2=Math.abs(F-iHeight1),BK=0,BJ=iHeight1;var fRatioH=0;iHeight1+iHeight2>0&&(fRatioH=(iWidth1+iWidth2)/(iHeight1+iHeight2)),fRatioH=fRatioH<1&&fRatioH>0?1/fRatioH:fRatioH,fRatioV<fRatioH?(iWidth1=Math.ceil(I*fPercent1),iHeight1=F,iWidth2=Math.abs(I-iWidth1),iHeight2=F,BK=iWidth1,BJ=0):(iWidth1=I,iHeight1=Math.ceil(F*fPercent1),iWidth2=I,iHeight2=Math.abs(F-iHeight1),BK=0,BJ=iHeight1);break;case"vertical":iWidth1=Math.ceil(I*fPercent1),iHeight1=F,iWidth2=Math.abs(I-iWidth1),iHeight2=F,BK=iWidth1,BJ=0;break;case"horizontal":iWidth1=I,iHeight1=Math.ceil(F*fPercent1),iWidth2=I,iHeight2=Math.abs(F-iHeight1),BK=0,BJ=iHeight1}this.render(aNodes1,iX,iY,iWidth1,iHeight1,iLevel,iCount+1),this.render(aNodes2,iX+BK,iY+BJ,iWidth2,iHeight2,iLevel,iCount+1)}else if(1===AEN.length&&AEN[0].FE-this.AEP<this.AES){AEN[0].AEK.length>0&&("[+] "!==AEN[0].AK.substring(0,4)&&"[-] "!==AEN[0].AK.substring(0,4)||(AEN[0].AK=AEN[0].AK.substring(4)),AEN[0].AK=0===iCount?"[-] "+AEN[0].AK:"[+] "+AEN[0].AK);var C6=1,C2,P;if("()"===this.AEW.substring(this.AEW.length-2)){var E4=ZC.AO.AAJ(this.AEW),A06=E4[0],O={id:AEN[0].K,text:AEN[0].sTextO,children:AEN[0].AEK.length,depth:AEN[0].FE,index:AEN[0].L,valueAspect:AEN[0].AEI,valueSize:AEN[0].AEJ,minValueAspect:this.AF6,maxValueAspect:this.AF7,minValueSize:this.OP,maxValueSize:this.SI,arguments:E4[1],data:AEN[0].o};try{var mReturn=eval(A06).call(this,O);mReturn instanceof Object?P=mReturn:C2=mReturn}catch(JB){C2="#fff"}}else switch(this.AEW){case"random":C2=this.AGQ();break;case"red":iColor=75+ZC._i_(180*(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6)),C2="#"+iColor.toString(16)+"0000";break;case"green":iColor=75+ZC._i_(180*(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6)),C2="#00"+iColor.toString(16)+"00";break;case"blue":iColor=75+ZC._i_(180*(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6)),C2="#0000"+iColor.toString(16);break;default:var fPercent=this.AF7-this.AF6!=0?40*(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6):0;if(this.AF5){if(C2={},ZC._cp_(AEN[0].AEL,C2),null!==ZC._n_(C2.gradientColors)){for(aColors=C2.gradientColors.split(/\s/),c=0,cLen=aColors.length;c<cLen;c++)aColors[c]=ZC.AO.JQ(ZC.AO.GD(aColors[c]),fPercent);C2.gradientColors=aColors.join(" ")}else if(null!==ZC._n_(C2.backgroundColor)){for(aColors=C2.backgroundColor.split(/\s/),c=0,cLen=aColors.length;c<cLen;c++)aColors[c]=ZC.AO.JQ(ZC.AO.GD(aColors[c]),fPercent);C2.backgroundColor=aColors.join(" ")}}else C2=ZC.AO.JQ(ZC.AO.GD(AEN[0].AEL),fPercent);break;case"transition":var AEZ=ZC.AO.GD(this.AEZ),AF0=ZC.AO.GD(this.AF0),aRGBStart=[parseInt(AEZ.substring(1,3),16),parseInt(AEZ.substring(3,5),16),parseInt(AEZ.substring(5,7),16)],aRGBEnd=[parseInt(AF0.substring(1,3),16),parseInt(AF0.substring(3,5),16),parseInt(AF0.substring(5,7),16)],R8=(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6),aRGB=[aRGBStart[0]+ZC._i_((aRGBEnd[0]-aRGBStart[0])*R8),aRGBStart[1]+ZC._i_((aRGBEnd[1]-aRGBStart[1])*R8),aRGBStart[2]+ZC._i_((aRGBEnd[2]-aRGBStart[2])*R8)];C2="#"+this.AGR(aRGB[0].toString(16))+this.AGR(aRGB[1].toString(16))+this.AGR(aRGB[2].toString(16))}this.AEX&&(C6=this.AEY+(1-this.AEY)*(AEN[0].AEI-this.AF6)/(this.AF7-this.AF6)),this.AGT(AEN[0],iX,iY,I,F,C2,C6,P),AEN[0].AEK.length>0&&this.render(AEN[0].AEK,iX+4,iY+2+this.AF1.FH+1.5*this.AF1.DI,I-8,F-this.AF1.FH-this.AF1.FR-1.5*this.AF1.DI-4,iLevel+1,iCount)}},this.AGP=function(){this.AEN.sort(function(i,t){return"./"===i.AK||i.AK.indexOf("index.")>0?-1:"./"===t.AK||t.AK.indexOf("index.")>0?1:i.AEJ>t.AEJ?-1:i.AEJ<t.AEJ?1:0})},this.AGQ=function(){for(var i=(16777215*Math.random()+1<<0).toString(16);i.length<6;)i="0"+i;return"#"+i},this.AGR=function(i){return 1===i.length&&(i="0"+i),i},this.AGS=function(i,t,e){for(var h=(""+i).split(/<br>|<br\/>|<br \/>|\n/),a=0;a<h.length;a++)h[a]=h[a].substring(0,Math.floor(t/(.7*e)));return h.join("<br>")},this.AGT=function(i,t,e,h,a,s,r,A){var n,l,o,d,E;if(i){h=Math.min(Math.max(h,0),this.I),a=Math.min(Math.max(a,0),this.F);var u=this.AF1.AU;if(A&&ZC._todash_(A),h>1&&a>1){this.AF5?(n={},ZC._cp_(s,n)):n={backgroundColor:s},ZC._todash_(n),0===i.AEK.length?ZC._cp_(this.AF2,n):ZC._cp_(this.AF3,n);var g=ZC.AO.G5(i.AEJ,this.BC,null,!1),C=ZC.AO.G5(i.AEI,this.BC,null,!1),c=i.AK,p=["value-aspect","value-size","value","text"],f={text:c.replace("[-] ","").replace("[+] ",""),value:g,"value-size":g,"value-aspect":C};for(E in i.o)i.o.hasOwnProperty(E)&&(p.push(E),f[E]=i.o[E]);for(o=0,d=p.length;o<d;o++)n.text=n.text.replace("%"+p[o],f[p[o]]),c=c.replace("%"+p[o],f[p[o]]);var _={};ZC._cp_(this.IK,_);var N=0;i.P&&(null!==ZC._n_(l=i.P["padding-left"])&&(N+=ZC._i_(l)),null!==ZC._n_(l=i.P["padding-right"])&&(N+=ZC._i_(l)));var F={x:Math.max(0,t-u),y:Math.max(0,e-u),id:i?i.K:"",flat:!1,width:h+u,height:a+u,text:a>1.5*this.AF1.DI&&h>20?this.AGS(c,h-N,this.AF1.DI):"",borderColor:ZC.AO.JQ(ZC.AO.GD(s),40),alpha:r,tooltip:n,hoverState:_,generated:!0};for(E in this.o.padding&&(F.padding=this.o.padding),this.o.borderColor&&(F.borderColor=this.o.borderColor),i.o)i.o.hasOwnProperty(E)&&"data-"===E.substring(0,5)&&(F[E]=i.o[E]);this.AF5?ZC._cp_(s,F):F.backgroundColor=s,ZC._todash_(F),ZC._cp_(this.BT,F),i.AEK.length>0&&ZC._cp_(this.oGroupBox,F),A&&ZC._cp_(A,F),ZC._cp_(i.P,F),this.AEM.push(F)}}}},zingchart.bind(null,"label_click",function(i){var t=zingchart.getLoader(i.id);if(t){var e=zingchart.getGraph(t,i.graphid);if(e&&"treemap"===e.o.type&&!(i.ev.button>0||i.ev.ctrlKey)){var h=!1,a=null,s=null,r=[],A=AF8[t.K+"-"+e.L];if(null!==ZC._n_(A.AF4[i.labelid]))A.AEM=[],A.AF4[i.labelid].A?(A.AER=[A.AF4[i.labelid].A],A.AEP=A.AF4[i.labelid].FE-1):(A.AER=A.AEN,A.AF4[i.labelid].FE=0),A.AF4[i.labelid]=null,h=!0;else{for(var n=-1,l=0;l<A.AEO.length;l++)if(A.AEO[l].K===i.labelid){n=l,a=A.AEO[l],s=A.AEO[l];break}if(-1!==n){for(h=!0,s.AEK.length&&(A.AF4[i.labelid]=a),r.push({id:a.K,text:a.sTextO,valueSize:a.AEJ,valueAspect:a.AEI});a.A;)a=a.A,r.push({id:a.K,text:a.sTextO,valueSize:a.AEJ,valueAspect:a.AEI}),s.AEK.length&&(A.AF4[a.K]=a);A.AEM=[],A.AER=[A.AEO[n]]}}i.path=r,ZC.AO.C0("node_click",t,i),h&&(A.AER&&A.AER[0]&&A.AER[0].AEK.length>0?(zingchart.exec(i.id,"disable"),window.setTimeout(function(){A.render(A.AER,A.iX,A.iY,A.I,A.F,0,0),t.AG[A.LL].o.labels=A.AEM,t.AG[A.LL].KC()},50),zingchart.exec(i.id,"enable")):A.AF4[i.labelid]=null)}}}),zingchart.bind(null,"dataparse",function(i,t){for(var e,h=zingchart.getLoader(i.id),a=0,s=t.graphset.length;a<s;a++)if(t.graphset[a].type&&"treemap"===t.graphset[a].type){var r=t.graphset[a].type,A=t.graphset[a],n={};A.options&&(n=A.options[r]||A.options),ZC._todash_(n),A.series=A.series||[],A.series[0]=A.series[0]||{},A.labels=A.labels||[];var l=zingchart.getGraphInfo(h,t,a),o=AF8[h.K+"-"+l.graph.index]=new ZC.AFU;if(o.G=h,o.LL=a,o.iX=l.plotarea.x,o.iY=l.plotarea.y,o.I=l.plotarea.width,o.F=l.plotarea.height,o.setDefaults(i.id,i.theme),o.sTextAttr=n["text-attr"]||"text",o.sValueAttr=n["value-attr"]||"value",null!==ZC._n_(e=n["max-depth"])&&(o.AES=ZC._i_(e)),null!==ZC._n_(e=n["max-children"])&&(o.bCustomMaxChildren=!0,e instanceof Array?o.AEU=e:o.AET=ZC._i_(e)),null!==ZC._n_(e=n.progression)&&(o.BS=e),null!==ZC._n_(e=n["split-type"])&&(o.AEV=e),null!==ZC._n_(e=n["aspect-type"])&&(o.AEW=e),null!==ZC._n_(e=n["paired-children"])&&(o.iPairedChildren=ZC._i_(e)),null!==ZC._n_(e=n["alpha-aspect"])&&(o.AEX=ZC._b_(e)),null!==ZC._n_(e=n["min-alpha"])&&(o.AEY=ZC._f_(e)),null!==ZC._n_(e=n.decimals)&&(o.BC.decimals=ZC._i_(e)),null!==ZC._n_(e=n["decimals-separator"])&&(o.BC["decimals-separator"]=e),null!==ZC._n_(e=n["thousands-separator"])&&(o.BC["thousands-separator"]=e),null!==ZC._n_(e=n["min-value"])&&(o.C9=ZC._f_(e)),null!==ZC._n_(e=n["max-value"])&&(o.CC=ZC._f_(e)),null!==ZC._n_(e=n.palette)&&(o.BP=e,e[0]instanceof Object&&"palette"===o.AEW&&(o.AF5=!0)),null!==ZC._n_(e=n["color-start"])&&(o.AEZ=e),null!==ZC._n_(e=n["color-end"])&&(o.AF0=e),null!==ZC._n_(e=n.box)&&ZC._cp_(e,o.BT),null!==ZC._n_(e=n["group-box"])&&ZC._cp_(e,o.oGroupBox),null!==ZC._n_(e=n["tooltip-box"])&&ZC._cp_(e,o.AF2),null!==ZC._n_(e=n["tooltip-group"])&&ZC._cp_(e,o.AF3),null!==ZC._n_(e=n["hover-state"])&&ZC._cp_(e,o.IK),A.series[0]instanceof Array){var d,E,u,g,C,c,p={};for(d=0;d<A.series[0].length;d++)for(u in p[E=A.series[0][d].id]||(p[E]={children:[]}),A.series[0][d])p[E][u]=A.series[0][d][u];for(g in p)""!==(C=p[g].parent||"")&&(c=p[C])&&c.children.push(p[g]);var f={};for(g in p)""===(C=p[g].parent||"")&&(f=p[g]);p=null,A.series[0]=f}o.parse(A.series,0),o.paint(),A.labels=A.labels.concat(o.AEM)}return t}),zingchart.extendAPI("treemap.updateNode",function(i,t){var e=function(i,t,h,a){for(var s=0;s<i.length;s++)if(i[s].children)e(i[s].children,t,h,a);else if(i[s].id&&i[s].id===t||i[s].text&&i[s].text===h)return void ZC._cp_(a,i[s])},h=zingchart.getLoader(i),a=h.CB(t.graphid||"0");if(a){var s=a.L,r=t.id||"",A=t.text||"",n=t.data||{},l=null===ZC._n_(t.update)||ZC._b_(t.update);if(s<h.o.graphset.length&&h.o.graphset[s].type&&"treemap"===h.o.graphset[s].type){var o=h.o.graphset[s].series||[];e(o,r,A,n);for(var d=h.o.graphset[s].labels||[],E=d.length-1;E>=0;E--)d[E].generated&&d.splice(E,1);l&&zingchart.exec(i,"setdata",{data:h.o})}}}),zingchart.extendAPI("treemap.addNode",function(i,t){var e=function(i,t,h,a){for(var s=0;s<i.length;s++)if(i[s].children){if(i[s].id&&i[s].id===t||i[s].text&&i[s].text===h)return void i[s].children.push(a);e(i[s].children,t,h,a)}else(i[s].id&&i[s].id===t||i[s].text&&i[s].text===h)&&(i[s].children=[a])},h=zingchart.getLoader(i),a=h.CB(t.graphid||"0");if(a){var s=a.L,r=t.id||"",A=t.text||"",n=t.data||{},l=null===ZC._n_(t.update)||ZC._b_(t.update);if(s<h.o.graphset.length&&h.o.graphset[s].type&&"treemap"===h.o.graphset[s].type){var o=h.o.graphset[s].series||[];e(o,r,A,n);for(var d=h.o.graphset[s].labels||[],E=d.length-1;E>=0;E--)d[E].generated&&d.splice(E,1);l&&zingchart.exec(i,"setdata",{data:h.o})}}}),zingchart.extendAPI("treemap.removeNode",function(i,t){var e=function(i,t,h){for(var a=0;a<i.length;a++){if(i[a].id&&i[a].id===t||i[a].text&&i[a].text===h)return void i.splice(a,1);i[a].children&&e(i[a].children,t,h)}},h=zingchart.getLoader(i),a=h.CB(t.graphid||"0");if(a){var s=a.L,r=t.id||"",A=t.text||"",n=null===ZC._n_(t.update)||ZC._b_(t.update);if(s<h.o.graphset.length&&h.o.graphset[s].type&&"treemap"===h.o.graphset[s].type){var l=h.o.graphset[s].series||[];e(l,r,A);for(var o=h.o.graphset[s].labels||[],d=o.length-1;d>=0;d--)o[d].generated&&o.splice(d,1);n&&zingchart.exec(i,"setdata",{data:h.o})}}})}}();