fusioncharts
Version:
FusionCharts JavaScript charting framework
1 lines • 158 kB
JavaScript
!function(t){"object"==typeof module&&"undefined"!=typeof module.exports?module.exports=t:t()}((function(){(window.webpackJsonpFusionCharts=window.webpackJsonpFusionCharts||[]).push([[7],{1585:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=void 0;var o=n(a(1586));e.Gantt=o["default"];var i={name:"gantt",type:"package",requiresFusionCharts:!0,extension:function(t){return t.addDep(o["default"])}};e["default"]=i},1586:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=void 0;var o=n(a(1587))["default"];e["default"]=o},1587:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=void 0;var o,i=n(a(292)),r=n(a(626)),s=n(a(1588)),l=n(a(1590)),c=n(a(1596)),d=n(a(1597)),h=n(a(1603)),g=n(a(1605)),p=a(419),u=a(491),f=a(278),m=Math.max,v=Math.min,b=(o=[],{get:function(){return o},clear:function(){o.length=0},add:function(t,e){o.push({conf:t,handler:e})}});f.setAttribDefs&&(0,f.setAttribDefs)({showpercentlabel:{type:f.attrTypeBool,pAttr:"showpercentlabel"},fontsize:{type:f.attrTypeNum},alpha:{type:f.attrTypeNum},showborder:{type:f.attrTypeBool},borderthickness:{type:f.attrTypeNum},borderalpha:{type:f.attrTypeNum},showHoverEffect:{type:f.attrTypeNum},hoverFillAlpha:{type:f.attrTypeNum},slackHoverFillColor:{type:f.attrTypeNum},slackHoverFillAlpha:{type:f.attrTypeBool},showlabels:{type:f.attrTypeBool,pAttr:"showtasknames"},slackfillcolor:{pAttr:"slackfillcolor"},showtasklabels:{type:f.attrTypeBool,pAttr:"showtasknames"},showtasknames:{type:f.attrTypeBool,pAttr:"showlabels"},showconnectorhovereffect:{type:f.attrTypeNum,pAttr:"showhovereffect"},connectorextension:{type:f.attrTypeNum},tasklabelspadding:{type:f.attrTypeNum},taskdatepadding:{type:f.attrTypeNum},showstartdate:{type:f.attrTypeNum,pAttr:"showtaskstartdate"},showenddate:{type:f.attrTypeNum,pAttr:"showtaskenddate"},showtaskhovereffect:{type:f.attrTypeNum,pAttr:"showhovereffect"},useverticalscrolling:{type:f.attrTypeNum},taskbarroundradius:{type:f.attrTypeNum},showshadow:{type:f.attrTypeNum},showslackasfill:{type:f.attrTypeNum}});var x=function(t){function e(){var e;return(e=t.call(this)||this)._scrollBar=b,e.components={},e.fireGroupEvent=!0,e.hasInteractiveLegend=!1,e.defaultPaletteOptions=(0,f.extend2)((0,f.extend2)({},f.defaultGaugePaletteOptions),{paletteColors:[["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"],["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"],["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"],["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"],["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"]],bgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],bgAngle:[270,270,270,270,270],bgRatio:["100","100","100","100","100"],bgAlpha:["100","100","100","100","100"],canvasBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],canvasBgAngle:[0,0,0,0,0],canvasBgAlpha:["100","100","100","100","100"],canvasBgRatio:["","","","",""],canvasBorderColor:["545454","545454","415D6F","845001","68001B"],canvasBorderAlpha:[100,100,100,90,100],gridColor:["DDDDDD","D8DCC5","99C4CD","DEC49C","FEC1D0"],gridResizeBarColor:["999999","545454","415D6F","845001","D55979"],categoryBgColor:["F1F1F1","EEF0E6","F2F8F9","F7F0E6","FFF4F8"],dataTableBgColor:["F1F1F1","EEF0E6","F2F8F9","F7F0E6","FFF4F8"],toolTipBgColor:["FFFFFF","FFFFFF","FFFFFF","FFFFFF","FFFFFF"],toolTipBorderColor:["545454","545454","415D6F","845001","68001B"],baseFontColor:["555555","60634E","025B6A","A15E01","68001B"],borderColor:["767575","545454","415D6F","845001","68001B"],borderAlpha:[50,50,50,50,50],legendBgColor:["ffffff","ffffff","ffffff","ffffff","ffffff"],legendBorderColor:["666666","545454","415D6F","845001","D55979"],plotBorderColor:["999999","8A8A8A","6BA9B6","C1934D","FC819F"],plotFillColor:["EEEEEE","D8DCC5","BCD8DE","E9D8BE","FEDAE3"],scrollBarColor:["EEEEEE","D8DCC5","99C4CD","DEC49C","FEC1D0"]}),e.registerFactory("canvas",s["default"]),e.registerFactory("axis",l["default"],["canvas"]),e.registerFactory("dataset",g["default"],["canvas"]),e}(0,i["default"])(e,t),e.getName=function(){return"Gantt"};var a=e.prototype;return a.draw=function(){t.prototype.draw.call(this),this.createScrollbarContainer()},a.getName=function(){return"Gantt"},a.__setDefaultConfig=function(){t.prototype.__setDefaultConfig.call(this);var e=this.config;e.alignCaptionWithCanvas=0,e.defaultDatasetType="task",e.taskbarroundradius=0,e.taskbarfillmix=" { light-10 }, { dark-20 }, { light-50 }, { light-85 }",e.taskbarfillratio="0,8,84,8",e.showslackasfill=1,e.dateintooltip=1,e.tasklabelsalign=f.POSITION_CENTER,e.datepadding=3,e.showtasknames=0,e.showpercentlabel=!1,e.showhovereffect=1,e.slackfillcolor="FF5E5E",e.connectorextension=10,e.tasklabelspadding=2,e.taskdatepadding=3,e.showlabels=void 0,e.showtooltip=1,e.showtaskhovereffect=void 0,e.useverticalscrolling=1,e.ganttpanedurationunit=void 0,e.ganttpaneduration=void 0,e.showtaskstartdate=void 0,e.showtaskenddate=void 0,e.ganttwidthpercent=void 0,e.showshadow=1,e.taskhoverfillalpha=f.HUNDREDSTRING,e.enablemousetracking=!1},a._checkInvalidSpecificData=function(){var t=this.getFromEnv("dataSource"),e=t.processes,a=e&&e.process,n=a&&a.length,o=t.tasks,i=o&&o.task||o,r=i&&i.length,s=t.categories,l=s&&s[0]&&s[0].category,c=l&&l.length;return!n||!r||!c},a.parseChartAttr=function(e){var a=this.config,n=e&&e.chart||this.getFromEnv("chart-attrib");t.prototype.parseChartAttr.call(this,e),a.showBorder=(0,f.pluckNumber)(n.showborder,0),a.alignLegendWithCanvas=0,a.taskhoverfillalpha=e.chart.taskhoverfillalpha},a._feedAxesRawData=function(){var t=this.getFromEnv("color-manager"),e=this.getFromEnv("dataSource"),a=e.chart,n=this.is3d,o=n?f.chartPaletteStr.chart3D:f.chartPaletteStr.chart2D,i=(0,f.pluckFontSizeMaintainUnit)(a.outcnvbasefontsize,a.basefontsize,10);return{xAxisConf:[{isVertical:!1,isReverse:!1,isOpposit:!0,outCanfontFamily:(0,f.pluck)(a.outcnvbasefont,a.basefont,"Verdana,sans"),outCanfontSize:this.computeFontSize(i),outCanfontSizeWithUnit:i,outCancolor:(0,f.pluck)(a.outcnvbasefontcolor,a.basefontcolor,t.getColor(o.baseFontColor)).replace(/^#? ([a-f0-9]+)/gi,"#$1"),axisBreaks:a.xaxisbreaks,axisNamePadding:a.xaxisnamepadding,axisValuePadding:a.labelpadding,axisNameFont:a.xaxisnamefont,axisNameFontSize:this.computeFontSize(a.xaxisnamefontsize),axisNameFontSizeWithUnit:a.xaxisnamefontsize,axisNameFontColor:a.xaxisnamefontcolor,axisNameFontBold:a.xaxisnamefontbold,axisNameFontItalic:a.xaxisnamefontitalic,axisNameBgColor:a.xaxisnamebgcolor,axisNameBorderColor:a.xaxisnamebordercolor,axisNameAlpha:a.xaxisnamealpha,axisNameFontAlpha:a.xaxisnamefontalpha,axisNameBgAlpha:a.xaxisnamebgalpha,axisNameBorderAlpha:a.xaxisnameborderalpha,axisNameBorderPadding:a.xaxisnameborderpadding,axisNameBorderRadius:a.xaxisnameborderradius,axisNameBorderThickness:a.xaxisnameborderthickness,axisNameBorderDashed:a.xaxisnameborderdashed,axisNameBorderDashLen:a.xaxisnameborderdashlen,axisNameBorderDashGap:a.xaxisnameborderdashgap,useEllipsesWhenOverflow:a.useellipseswhenoverflow,divLineColor:(0,f.pluck)(a.vdivlinecolor,t.getColor(o.divLineColor)),divLineAlpha:(0,f.pluck)(a.vdivlinealpha,n?t.getColor("divLineAlpha3D"):t.getColor("divLineAlpha")),divLineThickness:(0,f.pluckNumber)(a.vdivlinethickness,1),divLineIsDashed:Boolean((0,f.pluckNumber)(a.vdivlinedashed,a.vdivlineisdashed,0)),divLineDashLen:(0,f.pluckNumber)(a.vdivlinedashlen,4),divLineDashGap:(0,f.pluckNumber)(a.vdivlinedashgap,2),showAlternateGridColor:(0,f.pluckNumber)(a.showalternatevgridcolor,0),alternateGridColor:(0,f.pluck)(a.alternatevgridcolor,t.getColor("altVGridColor")),alternateGridAlpha:(0,f.pluck)(a.alternatevgridalpha,t.getColor("altVGridAlpha")),numDivLines:(0,f.pluckNumber)(a.numvdivlines,this.config.numVDivLines),labelFont:a.labelfont,labelFontSize:this.computeFontSize(a.labelfontsize),labelFontSizeWithUnit:a.labelfontsize,labelFontColor:a.labelfontcolor,labelFontAlpha:a.labelalpha,labelFontBold:a.labelfontbold,labelFontItalic:a.labelfontitalic,maxLabelHeight:a.maxlabelheight,axisName:a.xaxisname,axisMinValue:a.xaxisminvalue,axisMaxValue:a.xaxismaxvalue,setAdaptiveMin:a.setadaptivexmin,adjustDiv:a.adjustvdiv,labelDisplay:a.labeldisplay,showLabels:a.showlabels,rotateLabels:a.rotatelabels,slantLabel:(0,f.pluckNumber)(a.slantlabels,a.slantlabel),labelStep:(0,f.pluckNumber)(a.labelstep,a.xaxisvaluesstep),showAxisValues:(0,f.pluckNumber)(a.showxaxisvalues,a.showxaxisvalue),showLimits:(0,f.pluckNumber)(a.showvlimits,this.config.showvlimits),showDivLineValues:(0,f.pluckNumber)(a.showvdivlinevalues,a.showvdivlinevalues),zeroPlaneColor:a.vzeroplanecolor,zeroPlaneThickness:a.vzeroplanethickness||2,zeroPlaneAlpha:a.vzeroplanealpha,showZeroPlaneValue:a.showvzeroplanevalue,vTrendLines:e.trendlines,trendlineColor:a.trendlinecolor,trendlineToolText:a.trendlinetooltext,trendlineThickness:a.trendlinethickness,trendlineAlpha:a.trendlinealpha,showTrendlinesOnTop:a.showtrendlinesontop,showAxisLine:(0,f.pluckNumber)(a.showxaxisline,a.showaxislines,a.drawAxisLines,0),axisLineThickness:(0,f.pluckNumber)(a.xaxislinethickness,a.axislinethickness,1),axisLineAlpha:(0,f.pluckNumber)(a.xaxislinealpha,a.axislinealpha,100),axisLineColor:(0,f.pluck)(a.xaxislinecolor,a.axislinecolor,"#000000")}],yAxisConf:[{isVertical:!0,isReverse:!0,isOpposit:!1,outCanfontFamily:(0,f.pluck)(a.outcnvbasefont,a.basefont,"Verdana,sans"),outCanfontSize:this.computeFontSize(i),outCanfontSizeWithUnit:i,outCancolor:(0,f.pluck)(a.outcnvbasefontcolor,a.basefontcolor,t.getColor(o.baseFontColor)).replace(/^#? ([a-f0-9]+)/gi,"#$1"),axisBreaks:a.yaxisbreaks,axisNamePadding:a.yaxisnamepadding,axisValuePadding:a.yaxisvaluespadding,axisNameFont:a.yaxisnamefont,axisNameFontSize:this.computeFontSize(a.yaxisnamefontsize),axisNameFontSizeWithUnit:a.yaxisnamefontsize,axisNameFontColor:a.yaxisnamefontcolor,axisNameFontBold:a.yaxisnamefontbold,axisNameFontItalic:a.yaxisnamefontitalic,axisNameBgColor:a.yaxisnamebgcolor,axisNameBorderColor:a.yaxisnamebordercolor,axisNameAlpha:a.yaxisnamealpha,axisNameFontAlpha:a.yaxisnamefontalpha,axisNameBgAlpha:a.yaxisnamebgalpha,axisNameBorderAlpha:a.yaxisnameborderalpha,axisNameBorderPadding:a.yaxisnameborderpadding,axisNameBorderRadius:a.yaxisnameborderradius,axisNameBorderThickness:a.yaxisnameborderthickness,axisNameBorderDashed:a.yaxisnameborderdashed,axisNameBorderDashLen:a.yaxisnameborderdashlen,axisNameBorderDashGap:a.yaxisnameborderdashgap,axisNameWidth:a.yaxisnamewidth,useEllipsesWhenOverflow:a.useellipseswhenoverflow,rotateAxisName:(0,f.pluckNumber)(a.rotateyaxisname,1),axisName:a.yaxisname,divLineColor:(0,f.pluck)(a.divlinecolor,t.getColor(o.divLineColor)),divLineAlpha:(0,f.pluck)(a.divlinealpha,n?t.getColor("divLineAlpha3D"):t.getColor("divLineAlpha")),divLineThickness:(0,f.pluckNumber)(a.divlinethickness,1),divLineIsDashed:Boolean((0,f.pluckNumber)(a.divlinedashed,a.divlineisdashed,0)),divLineDashLen:(0,f.pluckNumber)(a.divlinedashlen,4),divLineDashGap:(0,f.pluckNumber)(a.divlinedashgap,2),showAlternateGridColor:(0,f.pluckNumber)(a.showalternatehgridcolor,1),alternateGridColor:(0,f.pluck)(a.alternatehgridcolor,t.getColor("altHGridColor")),alternateGridAlpha:(0,f.pluck)(a.alternatehgridalpha,t.getColor("altHGridAlpha")),numDivLines:(0,f.pluckNumber)(a.numdivlines,this.numDivLines),axisMinValue:a.yaxisminvalue,axisMaxValue:a.yaxismaxvalue,setAdaptiveMin:a.setadaptiveymin,adjustDiv:a.adjustdiv,labelStep:a.yaxisvaluesstep,showAxisValues:(0,f.pluckNumber)(a.showyaxisvalues,a.showyaxisvalue),showLimits:(0,f.pluckNumber)(a.showlimits,this.showLimits),showDivLineValues:(0,f.pluckNumber)(a.showdivlinevalues,a.showdivlinevalue),zeroPlaneColor:a.zeroplanecolor,zeroPlaneThickness:a.zeroplanethickness||2,zeroPlaneAlpha:a.zeroplanealpha,showZeroPlaneValue:a.showzeroplanevalue,trendlineColor:a.trendlinecolor,trendlineToolText:a.trendlinetooltext,trendlineThickness:a.trendlinethickness,trendlineAlpha:a.trendlinealpha,showTrendlinesOnTop:a.showtrendlinesontop,showAxisLine:(0,f.pluckNumber)(a.showyaxisline,a.showaxislines,a.drawAxisLines,0),axisLineThickness:(0,f.pluckNumber)(a.yaxislinethickness,a.axislinethickness,1),axisLineAlpha:(0,f.pluckNumber)(a.yaxislinealpha,a.axislinealpha,100),axisLineColor:(0,f.pluck)(a.yaxislinecolor,a.axislinecolor,"#000000")}]}},a._resetViewPortConfig=function(){this.config.viewPortConfig={scaleX:1,scaleY:1,x:0,y:0}},a._setCategories=function(){var t=this.getFromEnv("dataSource"),e=this.getChildren("xAxis")[0],a=this.getChildren("yAxis")[0],n=t.categories,o=t.datatable,i=t.processes;a.setAxisPadding(.5,.5),a.setProcess(i),a.setDataTable(o),e.setCategory(n)},a.getDSdef=function(t){switch(t){case"milestone":return c["default"];case"connector":return h["default"];case"task":default:return d["default"]}},a._createLegendItems=function(){var t,e,a,n,o,i,r,s,l,c,d=this.getFromEnv("dataSource"),h=this.getFromEnv("legend"),g=h.getChildren("legendItem"),p=d.legend&&d.legend.item||[];if(!this.config.legendItemIds&&(this.config.legendItemIds=[]),(s=g&&g.length||0)>(l=p.length)){for(e=l;e<s;e++)h.disposeItem(g[e].getId());g&&g.splice(l,s-l)}for(e=0,t=p.length;e<t;e++)i=p[e],h.getItem(this.config.legendItemIds[e])?c=this.config.legendItemIds[e]:(c=h.createItem(),this.config.legendItemIds.push(c)),n=i.color,a=(0,f.getLightColor)(n,60).replace(f.dropHash,"#"),o={FCcolor:{color:n+","+n+","+(0,f.getLightColor)(n,40)+","+n+","+n,ratio:"0,70,30",angle:270,alpha:"100,100,100,100,100"}},r={label:i.label,interactiveLegend:!1},h.getItem(c).configure(r),h.getItem(c).setStateCosmetics("default",{symbol:{fill:(0,f.toRaphaelColor)(o),stroke:(0,f.toRaphaelColor)(a)}})},a._spaceManager=function(){var t,e,a,n,o,i,r=this.config,s=this.getChildren("xAxis")[0],l=this.getChildren("yAxis")[0],c=this.getChildren("legend")[0],d=100-(r.ganttwidthpercent||67),h=r.borderWidth,g=0,p=0;this._resetViewPortConfig(),this._allocateSpace({top:h,bottom:h,left:h,right:h}),this._allocateSpace(this._manageActionBarSpace&&this._manageActionBarSpace(.225*r.availableHeight)||{}),c&&(a=c.config.legendPos?c.config.legendPos.split("-"):[]),t=a[0]===f.POSITION_BOTTOM||a[0]===f.POSITION_TOP?.6*r.canvasHeight:.6*r.canvasWidth,this._manageChartMenuBar(t),n="right"===a[0]||"left"===a[0]?.3*r.canvasWidth:.3*r.canvasHeight,r.showLegend&&this._manageLegendSpace(n),r.actualCanvasTop=r.canvasTop,r.actualCanvasLeft=r.canvasLeft,e=r.canvasWidth*(d/100),g+=((o=l.placeAxis(e)).left||0)+(o.right||0),l&&this._allocateSpace(o),t=a[0]===f.POSITION_BOTTOM||a[0]===f.POSITION_TOP?.6*r.canvasHeight:.6*r.canvasWidth,t=.6*r.canvasHeight,p+=(o=s.placeAxis(t)).top||0,r.totalWidth=g,r.totalHeight=p,s&&this._allocateSpace(o),i=l&&l.setProcessHeight(),l.setAxisConfig({processTotalHeight:i})},a._postSpaceManagement=function(){var t,e,a,n,o,i=this.config,r=this.getChildren("xAxis")[0],s=this.getChildren("yAxis")[0],l=r.getLimit(),c=s.getAxisConfig("processTotalHeight"),d=i.canvasHeight,h=this.getChildren("legend")[0],g=i.xDepth,p=this.getChildren("canvas")[0].config,f=p.canvasBorderWidth,m=p.canvasPadding,v=this.getChildren("vScrollBar")&&this.getChildren("vScrollBar")[0],b=v&&v.config,x=p.canvasPaddingLeft,k=p.canvasPaddingRight,C=Number(i.ganttpaneduration),y=i.ganttpanedurationunit,w=this.getChildren("hProcessScrollBar")&&this.getChildren("hProcessScrollBar")[0],F=this.getChildren("hScrollBar")&&this.getChildren("hScrollBar")[0],P=F&&F.config.height||0,A=w&&w.config.height||0;i.hScrollEnabled=a=!isNaN(C)&&void 0!==y&&function(t,e,a,n){if(t>0)switch(e){case"y":return+u.timeYear.offset(a,t)<n;case"m":return+u.timeMonth.offset(a,t)<n;case"d":return+u.timeDay.offset(a,t)<n;case"h":return+u.timeHour.offset(a,t)<n;case"mn":return+u.timeMinute.offset(a,t)<n;case"s":return+u.timeSecond.offset(a,t)<n}}(C,y,l.min,l.max),n=s.getAxisConfig("totalWidth")>s.getAxisConfig("totalVisiblelWidth"),c>d-Math.max(n?A:0,a?P:0)&&(e=!0),t=e&&b.width||0,o=i.canvasWidth-(g||0)-Math.max(x,m)-Math.max(k,m)-t,r&&r.setAxisDimention({x:p.canvasLeft+(g||0)+Math.max(x,m),y:p.canvasTop-(i.shift||0),opposite:p.canvasTop+p.canvasHeight+f,axisLength:o}),i.currentCanvasWidth=o,s&&s.setAxisDimention({x:p.canvasLeft-(i.shift||0),y:p.canvasTop,opposite:p.canvasRight+f,axisLength:i.canvasHeight}),this._manageScrollbarPosition(),i.showLegend&&h.postSpaceManager(),this.setScrollDimensions(),this.allocateDimensionOfChartMenuBar()},a.createScrollbarContainer=function(){var t=this.getChildContainer(),e=this.getContainer(),a=e.scrollBarParentGroup,n=this.getFromEnv("animationManager");a||(a=e.scrollBarParentGroup=n.setAnimation({el:"group",attr:{name:"scrollBarParentGroup"},container:e.parentgroup,component:this}),this.config.scrollbarContainer=a,a.insertBefore(t.datalabelsGroup))},a.setScrollDimensions=function(){var t,e,a,n,o,i,r,s,l,c,d,h,g,p,u,f,m=this.config,v=this.getChildren(),b=v.xAxis[0],x=b.config.axisRange,k=m.viewPortConfig,C=m.scrollOptions||(m.scrollOptions={}),y=x.max,w=x.min,F=C.horizontalVxLength,P=this.getChildren("hScrollBar")[0],A=P.getChildren("scrollAnchor")[0].config,D=this.getChildren("vScrollBar")[0],L=this.getChildren("hProcessScrollBar")[0],S=m.useverticalscrolling,T=y-w,E=m.canvasRight,N=k.scaleX,M=k.scaleY,_=m.vScrollEnabled,B=v.yAxis[0],V=_?D.config.conf.width:0,O=this.getContainer();n=m.canvasLeft,o=m.canvasTop,i=m.canvasHeight,r=m.canvasWidth,s=v.canvas[0].config,C.viewPortMin=w,C.viewPortMax=y,C.scrollRatio=F/T,h=C.windowedCanvasWidth=b.getPixel(F),g=C.fullCanvasWidth=b.getPixel(y-w)-h,d=C.fullCanvasHeight=B.getAxisConfig("processTotalHeight"),c=C.windowedCanvasHeight=i,p=B.getAxisConfig("totalWidth"),u=B.getAxisConfig("totalVisiblelWidth"),l=1/M,f=O.scrollBarParentGroup,!1!==m.hScrollEnabled&&(t=P.config,P.setDimension({x:n,y:o+i,width:r-V}),t.scrollRatio=1/N,t.scrollPosition=A.scrollPosition=k.x*N/(r*(N-1)),t.roundEdges=s.isRoundEdges,t.fullCanvasWidth=g,t.windowedCanvasWidth=h,t.parentLayer=f),!1!==_&&S&&(e=D.config,D.setDimension({x:E-V,y:o,height:i}),e.scrollRatio=l,e.roundEdges=s.isRoundEdges,e.fullCanvasWidth=d,e.windowedCanvasWidth=c,e.parentLayer=f),u<p&&u>0&&(a=L.config,L.setDimension({x:n-u,y:o+i,width:u}),a.scrollRatio=u/p,a.roundEdges=s.isRoundEdges,a.fullCanvasWidth=g,a.windowedCanvasWidth=h,a.parentLayer=f)},a._setAxisScale=function(){var t,e,a,n,o,i=this.getChildren(),r=this.config,s=i.xAxis[0],l=s.getLimit(),c=l.max,d=l.min,h=new Date(d),g=i.yAxis[0],p=this.getFromEnv("number-formatter"),u=Number(r.ganttpaneduration),f=r.scrollOptions||(r.scrollOptions={}),b=r.ganttpanedurationunit,x=c-d,k=r.canvasHeight,C=r.scrolltodate,y=r.canvasWidth,w=r.canvasLeft,F=this.getChildren("hProcessScrollBar")[0],P=this.getChildren("hScrollBar")[0],A=this.getChildren("vScrollBar")[0],D=P&&P.config&&P.config.height||0,L=F&&F.config&&F.config.height||0,S=s.getPixel(c)-w,T=g.getAxisConfig("processTotalHeight");if(r.hScrollEnabled){switch(b){case"y":h.setFullYear(h.getFullYear()+u);break;case"m":h.setMonth(h.getMonth()+u);break;case"d":h.setDate(h.getDate()+u);break;case"h":h.setHours(h.getHours()+u);break;case"mn":h.setMinutes(h.getMinutes()+u);break;default:h.setSeconds(h.getSeconds()+u)}h=h.getTime(),o=s.getPixel(h)-w,r.hScrollEnabled=!0,r.viewPortConfig.scaleX=t=S/o,f.horizontalVxLength=x/void 0*u,C&&(e=p.getDateValue(C).ms,a=s.getPixel(e),r.viewPortConfig.x=v(a-w,y*(t-1))/t),r.scrollPos>=0&&(r.xOffset=r.currentCanvasWidth*(t-1)*r.scrollPos,r.viewPortConfig.x=r.xOffset/t)}else P.remove();g.getAxisConfig("totalWidth")>g.getAxisConfig("totalVisiblelWidth")?r.hProcessScrollEnabled=!0:(r.hProcessScrollEnabled=!1,F.remove()),n=k-m(r.hProcessScrollEnabled?L:0,r.hScrollEnabled?D:0),Math.floor(T)>n&&r.useverticalscrolling?(r.viewPortConfig.scaleY=T/n,r.vScrollEnabled=!0):(r.vScrollEnabled=!1,A.remove())},a._createToolBoxGantt=function(){var t,e,a,n,o,i=this,r=i.getChildren("hScrollBar")&&i.getChildren("hScrollBar")[0],s=i.getChildren("vScrollBar")&&i.getChildren("vScrollBar")[0],l=i.getChildren("hProcessScrollBar")&&i.getChildren("hProcessScrollBar")[0],c=i.getChildren(),d=c.yAxis[0],h=i._scrollBar,g=c.chartMenuBar||{},u=c.actionBar,f=h.get,m=h.add;g.drawn||u&&u.drawn||(h.clear(),m({isHorizontal:!0,scale:1,scrollPosition:0},{scroll:(o=i,function(){o.updateManagerH(arguments[0],!0)}),scrollStart:function(e){t=e,i.fireChartInstanceEvent("scrollstart",{scrollPosition:e})},scrollEnd:function(e){i.fireChartInstanceEvent("scrollend",{scrollPosition:e,prevScrollPosition:t})}}),m({isHorizontal:!1,scale:1,scrollPosition:0},{scroll:function(t,e){return function(){t.updateManagerV(arguments[0],!1)}}(i),scrollStart:function(e){t=e,i.fireChartInstanceEvent("scrollstart",{scrollPosition:e})},scrollEnd:function(e){i.fireChartInstanceEvent("scrollend",{scrollPosition:e,prevScrollPosition:t})}}),m({isHorizontal:!0,scale:1,scrollPosition:0},{scroll:function(){d.manageProcessScroll(arguments[0])},scrollStart:function(e){t=e,i.fireChartInstanceEvent("scrollstart",{scrollPosition:e})},scrollEnd:function(e){i.fireChartInstanceEvent("scrollend",{scrollPosition:e,prevScrollPosition:t})}}),e=f()[0],n=f()[1],a=f()[2],r||(r=i.attachChild(new p.ScrollBar,"hScrollBar")),r.configure(e.conf),r.attachEventHandlers(e.handler),s||(s=i.attachChild(new p.ScrollBar,"vScrollBar")),s.configure(n.conf),s.attachEventHandlers(n.handler),l||(l=i.attachChild(new p.ScrollBar,"hProcessScrollBar")),l.configure(a.conf),l.attachEventHandlers(a.handler))},a._manageScrollbarPosition=function(){var t,e,a,n=this.config,o=this.getChildren("hScrollBar")[0],i=this.getChildren("vScrollBar")[0],r=this.getChildren("hProcessScrollBar")[0],s=n.totalWidth||0,l=n.totalHeight||0;this._setAxisScale&&this._setAxisScale(),o=this.getChildren("hScrollBar")[0],i=this.getChildren("vScrollBar")[0],r=this.getChildren("hProcessScrollBar")[0],e=n.vScrollEnabled,t=n.hScrollEnabled,a=o.getLogicalSpace(),n.hScrollHeight=!1===t?0:a.height+i.config.padding,a=i.getLogicalSpace(),n.vScrollWidth=!1!==e?a.width+i.config.conf.padding:0,a=r.getLogicalSpace(),n.hProcessScrollHeight=n.hProcessScrollEnabled?a.height+r.config.padding:0,l+=m(n.hProcessScrollHeight,n.hScrollHeight),this._allocateSpace({bottom:m(n.hProcessScrollHeight,n.hScrollHeight)}),n.totalWidth=s,n.totalHeight=l},a.updateManagerH=function(t){var e,a=this.config,n=a.lastXpos||(a.lastXpos={x:0,y:0}),o=this.config.viewPortConfig,i=this.getFromEnv("animationManager"),r=o.scaleX,s=this.getChildren().xAxis[0],l=this.getChildContainer(),c=l.plotGroup,d=this.getChildContainer("datalabelsGroup"),h=l.datalabelsGroup,g=l.trackerGroup,p=a.xOffset,u=a.yOffset||0,f=a.currentCanvasWidth,m=s.getContainer("ganttPlotLineContainer");a.scrollPos=t,p=a.xOffset=f*(r-1)*t,s.translateAxis(-p,void 0),n.x=-p,e="t"+-p+", "+-u,i.setAnimation({el:c,attr:{transform:e},component:this}),i.setAnimation({el:h,attr:{transform:e},component:this}),i.setAnimation({el:g,attr:{transform:e},component:this}),i.setAnimation({el:d,attr:{transform:e},component:this}),i.setAnimation({el:m,attr:{transform:"t"+-p+", 0"},component:this})},a.updateManagerV=function(t){var e,a=this.config,n=this.getFromEnv("animationManager"),o=a.xOffset,i=this.config.viewPortConfig,r=this.getChildren().yAxis[0],s=a.yOffset,l=a.canvasHeight,c=i.scaleY,d=this.getChildContainer("datalabelsGroup"),h=r.getContainer("labelContainer"),g=this.getChildContainer("plotGroup"),p=r.getContainer("ganttPlotHoverBandContainer"),u=r.getContainer("ganttPlotLineContainer");s=a.yOffset=l*(c-1)*t,i.y=s/c,e=r.config.lastTranslate||(r.config.lastTranslate={x:0,y:0}),n.setAnimation({el:h,attr:{transform:"t"+e.x+", "+-s},component:this}),n.setAnimation({el:p,attr:{transform:"t0, "+-s},component:this}),n.setAnimation({el:g,attr:{transform:"t"+-o+", "+-s},component:this}),n.setAnimation({el:d,attr:{transform:"t"+-o+", "+-s},component:this}),n.setAnimation({el:u,attr:{transform:"t0, "+-s},component:this})},e}(r["default"]);e["default"]=x},1588:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=function(t){var e;(0,i.componentFactory)(t,o["default"],"canvas",1),e=t.getChildren("canvas");for(var a=0,n=e.length;a<n;a++)e[a].configure()};var o=n(a(1589)),i=a(278)},1589:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=void 0;var o=n(a(292)),i=n(a(526)),r=a(278),s=function(t){function e(){return t.apply(this,arguments)||this}(0,o["default"])(e,t);var a=e.prototype;return a.createGroup=function(){t.prototype.createGroup.call(this);var e,a=this.getFromEnv("chart"),n=a.config,o=n.style.inCanvasStyle,i=this.getFromEnv("animationManager"),s=a.getChildContainer("plotGroup");!this.getChildContainer("taskGroup")&&this.addChildContainer("taskGroup",i.setAnimation({el:"group",attr:{name:"task"},container:s,component:this})),!this.getChildContainer("connectorGroup")&&this.addChildContainer("connectorGroup",i.setAnimation({el:"group",attr:{name:"connector"},container:s,component:this})),!this.getChildContainer("milestoneGroup")&&this.addChildContainer("milestoneGroup",i.setAnimation({el:"group",attr:{name:"milestone"},container:s,component:this})),e=n.milestoneLabelStyle={fontSize:(0,r.pluckNumber)(n.milestonefontsize,this.computeFontSize(o.fontSizeWithUnit))+"px",fontFamily:(0,r.pluck)(n.milestonefont,o.fontFamily),fontWeight:(0,r.pluckNumber)(n.milestonefontbold,0)?"bold":"normal",fontStyle:(0,r.pluckNumber)(n.milestonefontitalic,0)?"italic":"normal"},(0,r.setLineHeight)(e),this.getChildContainer("milestoneGroup").css(e)},a.draw=function(){t.prototype.draw.call(this),this.setClipping()},a.setClipping=function(){var t,e=this.getFromEnv("chart"),a=e.config,n=this.getChildContainer("taskGroup"),o=this.getChildContainer("connectorGroup"),i=e.getChildContainer(),r=i.plotGroup,s=i.datalabelsGroup,l=i.trackerGroup,c=a.viewPortConfig,d=c.scaleX,h=c.x,g=this.getFromEnv("animationManager"),p=e.getChildren("canvas")[0].config.clip["clip-canvas"].slice(0);g.setAnimation({el:r,attr:{"clip-rect":p},state:e.config.clipSet?"updating":"appearing",component:this}),g.setAnimation({el:s,attr:{"clip-rect":p},state:e.config.clipSet?"updating":"appearing",component:this}),g.setAnimation({el:l,attr:{"clip-rect":p},state:e.config.clipSet?"updating":"appearing",component:this}),a.xOffset=t=h*d,g.setAnimation({el:r,attr:{transform:"T"+-t+",0"},component:this}),g.setAnimation({el:n,attr:{transform:"T"+-t+",0"},component:this}),g.setAnimation({el:o,attr:{transform:"T"+-t+",0"},component:this}),g.setAnimation({el:s,attr:{transform:"T"+-t+",0"},component:this}),g.setAnimation({el:l,attr:{transform:"T"+-t+",0"},component:this}),e.config.clipSet=!0},a.drawCanvas=function(){var t,e,a,n,o=this.getFromEnv("chart"),i=o.getFromEnv("dataSource").chart,s=o.config,l=this.getFromEnv("animationManager"),c=this.config,d=c.clip={},h=this.getGraphicalElement("canvasBorderElement"),g=this.getGraphicalElement("canvasElement"),p=s.actualCanvasLeft,u=s.actualCanvasTop,f=s.canvasWidth,m=s.canvasHeight,v=s.canvasLeft,b=s.canvasTop,x=s.canvasWidth+s.totalWidth,k=s.canvasHeight+s.totalHeight,C=this.getContainer("canvasGroup"),y=c.canvasBorderRadius,w=c.canvasBorderWidth,F=.5*w,P=c.canvasBorderColor,A=c.canBGColor,D=c.shadow,L=c.showCanvasBG=Boolean((0,r.pluckNumber)(i.showcanvasbg,1)),S=c.shadowOnCanvasFill;a=A,n={x:p-F,y:u-F,width:x+w,height:k+w,r:y,"stroke-width":w,stroke:P,"stroke-linejoin":w>2?"round":"miter"},c.showCanvasBorder?(t=l.setAnimation({el:h||"rect",attr:n,container:C,component:this}),h?t.show():t=this.addGraphicalElement("canvasBorderElement",t),t.shadow(D)):h&&h.hide(),d["clip-canvas"]=[Math.max(0,v),Math.max(0,b),Math.max(1,f),Math.max(1,m)],d["clip-canvas-init"]=[Math.max(0,v),Math.max(0,b),1,Math.max(1,m)],L?(n={x:p,y:u,width:x,height:k,r:y,"stroke-width":0,stroke:"none",fill:(0,r.toRaphaelColor)(a)},e=l.setAnimation({el:g||"rect",attr:n,component:this,container:C}),g?e.show():e=this.addGraphicalElement("canvasElement",e),e.shadow(S)):g&&g.hide()},e}(i["default"]);e["default"]=s},1590:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=function(t){var e,a,n=t.getChildren("canvas")[0],s={zoomable:!0,pannable:!0},l=t._feedAxesRawData();(0,o.componentFactory)(t,r["default"],"xAxis",1,l.xAxisConf),(0,o.componentFactory)(t,i["default"],"yAxis",1,l.yAxisConf),e=t.getChildren("yAxis")[0],a=t.getChildren("xAxis")[0],e.setLinkedItem("canvas",n),a.setLinkedItem("canvas",n),n.attachAxis(a,!1,t.zoomX?s:{}),n.attachAxis(e,!0,t.zoomY?s:{}),t._setCategories()};var o=a(278),i=n(a(1591)),r=n(a(1595))},1591:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e["default"]=void 0;var o=n(a(292)),i=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{"default":t};var a=s(e);if(a&&a.has(t))return a.get(t);var n={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if("default"!==i&&Object.prototype.hasOwnProperty.call(t,i)){var r=o?Object.getOwnPropertyDescriptor(t,i):null;r&&(r.get||r.set)?Object.defineProperty(n,i,r):n[i]=t[i]}n["default"]=t,a&&a.set(t,n);return n}(a(1592)),r=a(278);function s(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,a=new WeakMap;return(s=function(t){return t?a:e})(t)}var l=function(t){function e(){return t.apply(this,arguments)||this}(0,o["default"])(e,t);var a=e.prototype;return a.getName=function(){return"GanttProcess"},a.configure=function(e){var a=this.config,n=this.getFromEnv("color-manager"),o=this.getFromEnv("dataSource").chart;t.prototype.configure.call(this,e),a.lineColor=(0,r.convertColor)((0,r.pluck)(o.gridbordercolor,n.getColor("gridColor")),(0,r.pluckNumber)(o.gridborderalpha,100)),a.lineThickness=(0,r.pluckNumber)(o.gridborderthickness,1),a.lineDashStyle=(0,r.pluckNumber)(o.gridborderdashed,0)?(0,r.getDashStyle)((0,r.pluckNumber)(o.gridborderdashlen,1),o.gridborderdashgap,a.lineThickness):"none",a.plotLineColor=(0,r.convertColor)((0,r.pluck)(o.ganttlinecolor,n.getColor("gridColor")),(0,r.pluckNumber)(o.ganttlinealpha,100)),a.plotLineThickness=(0,r.pluckNumber)(o.ganttlinethickness,1),a.plotLineDashStyle=(0,r.pluckNumber)(o.ganttlinedashed,0)?(0,r.getDashStyle)((0,r.pluckNumber)(o.ganttlinedashlen,1),o.ganttlinedashgap,a.lineThickness):"none",a.gridResizeBarColor=(0,r.convertColor)((0,r.pluck)(o.gridresizebarcolor,n.getColor("gridResizeBarColor")),(0,r.pluckNumber)(o.gridresizebaralpha,100)),a.gridResizeBarThickness=(0,r.pluckNumber)(o.gridresizebarthickness,1),a.forceRowHeight=(0,r.pluckNumber)(o.forcerowheight,0),a.rowHeight=(0,r.pluckNumber)(o.rowheight,0),a.hoverColor=(0,r.pluck)(o.processhoverbandcolor,o.hoverbandcolor,n.getColor("gridColor")),a.hoverAlpha=(0,r.pluckNumber)(o.processhoverbandalpha,o.hoverbandalpha,30),a.useHover=(0,r.pluckNumber)(o.showprocesshoverband,o.showhoverband,o.showhovereffect,1),a.usePlotHover=(0,r.pluckNumber)(o.showganttpanehorizontalhoverband),a.showFullDataTable=(0,r.pluckNumber)(o.showfulldatatable,1),a.forceGanttWidthPercent=(0,r.pluckNumber)(o.forceganttwidthpercent,0),a.useVerticalScrolling=(0,r.pluckNumber)(o.useverticalscrolling,1),a.gridLineHeaderPath="",a.gridLinePath=""},a.setProcess=function(t){var e,a,n,o,s,l=this.config,c=l.startPad||0,d=l.endPad||0;if(l.processes={},t){for(l.hasProcess=1,a=l.processes.process=(0,r.extend2)({},t),(0,i.extractAttribToEnd)(a,{}),e=a.process.length,s=l.processes.processMap={},l.processes.processHeightMap={},n=0;n<e;n+=1)(o=a.process[n]).id&&(s[o.id.toLowerCase()]={catObj:o,index:n});this.setAxisRange({min:Number((0,r.toPrecision)(-c,10)),max:Number((0,r.toPrecision)(e-1+d,10)),tickInterval:Number((0,r.toPrecision)(1,10))})}else l.hasProcess=0},a.getProcessPositionByIndex=function(t){var e=this.config.processes.processHeightMap;return!!e[t]&&e[t]},a.getProcessPositionById=function(t){var e=this.config,a=e.processes&&e.processes.processMap[t],n=e.processes.processHeightMap;return!!a&&n[a.index]},a.setDataTable=function(t){var e=t,a=this.config;a.dataTables={},a.dataTables.dataTable={},e?(a.hasDataTables=1,(0,r.extend2)(a.dataTables.dataTable,e),e=a.dataTables.dataTable,(0,i.extractAttribToEnd)(e,{})):a.hasDataTables=0},a.setProcessHeight=function(){var t,e,a,n=this.config,o=this.getFromEnv("chart").config.canvasHeight,i=n.processes.process.process,s=n.processes.processHeightMap,l=n.processMaxHeight,c=0,d=n.forceRowHeight,h=n.rowHeight;for((l*i.length<o||0===n.useVerticalScrolling)&&(l=o/i.length),0===d?h&&h>l&&(l=h):l=h||l,a=0,e=i.length;a<e;a++)t=(0,r.pluckNumber)(i[a].height,l),s[a]={top:c,bottom:c+t,height:t},c+=t;return c},a.adjustWidth=function(){var t,e,a,n,o,i,s,l,c=this.config,d=c.totalWidth,h=d,g=0,p=!1;if(t=c.processVlineArr=[],h-=20*(c.hasDataTables&&c.dataTables&&c.dataTables.dataTable&&c.dataTables.dataTable.datacolumn?c.dataTables.dataTable.datacolumn.length+1:1),a=function(t){var e;return h+=20,e=t.match(/%/g)?(0,r.pluckNumber)(d*Number(t.replace(/%/g,"")/100),0):(0,r.pluckNumber)(t,0),h<20?e=20:e>h&&(e=h),h-=e,e},c.hasProcess&&(i=c.processes.process.process,"right"===c.processes.process.positioningrid&&(p=!0),n=g,g+=a((e=i._attrib).width||""+(e.rightPos-e.leftPos)),e.leftPos=n,e.rightPos=g,p?g=0:t.push({type:"process",ind:0,xPos:e.rightPos,left:e,leftLimit:e.leftPos+20})),c.hasDataTables)for(s in o=c.dataTables.dataTable.datacolumn)o.hasOwnProperty(s)&&"_attrib"!==s&&(n=g,g+=a((e=o[s]._attrib).width||""+(e.rightPos-e.leftPos)),e.leftPos=n,e.rightPos=g,(l=t[t.length-1])&&(l.right=e,l.rightLimit=e.rightPos-20),t.push({type:"dataTable",ind:s,xPos:e.rightPos,left:e,leftLimit:e.leftPos+20}));c.hasProcess&&(p?((e=i._attrib).rightPos=g+(e.rightPos-e.leftPos),e.leftPos=g,g+=e.rightPos-e.leftPos,(l=t[t.length-1])&&(l.right=e,l.rightLimit=e.rightPos-20)):t.pop()),c.totalWidth=g},a.placeAxis=function(t){var e,a,n,o,i,s,l,c,d,h,g,p,u,f,m,v,b=this.config,x=this.getFromEnv("chart"),k=x.getFromEnv("smartLabel"),C=b.labels.style,y=b.name.style,w=b.trend.trendStyle,F=0,P=0,A={left:0,right:0},D=0,L=!1,S=0,T=0,E=0;if(y.fontSize=this.computeFontSize(y.fontSizeWithUnit),y.lineHeight=(0,r.setLineHeight)(y),w.fontSize=this.computeFontSize(w.fontSizeWithUnit),w.lineHeight=(0,r.setLineHeight)(w),C.fontSize=this.computeFontSize(C.fontSizeWithUnit),C.lineHeight=(0,r.setLineHeight)(C),k.useEllipsesOnOverflow(x.config.useEllipsesWhenOverflow),k.setStyle({fontSize:C.fontSize,fontFamily:C.fontFamily,lineHeight:C.lineHeight,fontWeight:C.fontWeight}),(b.forceGanttWidthPercent||0===b.showFullDataTable)&&(E=t/((b.hasDataTables&&b.dataTables&&b.dataTables.dataTable&&b.dataTables.dataTable.datacolumn?b.dataTables.dataTable.datacolumn.length:0)+1)),b.hasProcess){for(p=b.processes.process.process,"right"===(l=b.processes.process).positioningrid&&(L=!0),l.headertext&&(l.drawLabel=(0,r.parseUnsafeString)(l.headertext),s=l._attrib,(c={fontFamily:(0,r.pluck)(s.headerfontfamily,C.fontFamily),fontSize:(0,r.pluck)(s.headerfontsize,this.computeFontSize(C.fontSizeWithUnit).toString()).replace(/px/i,"")+"px",fontWeight:(0,r.pluck)(1===Number(s.headerisbold)||"undefined"==typeof s.headerisbold?"bold":void 0,C.fontWeight),fontStyle:(0,r.pluck)(s.headerisitalic?"italic":void 0,C.fontStyle)}).lineHeight=(0,r.setLineHeight)(c),k.setStyle(c),(n=k.getOriSize(l.drawLabel)).width>P&&(F=n,P=n.width)),e=0,o=p.length;e<o;e++)s=(i=p[e])._attrib,i.drawLabel=(0,r.parseUnsafeString)(i.label||i.name),(c={fontFamily:(0,r.pluck)(s.fontfamily,C.fontFamily),fontSize:(0,r.pluck)(s.fontsize,this.computeFontSize(C.fontSizeWithUnit).toString()).replace(/px/i,"")+"px",fontWeight:(0,r.pluck)(s.isbold?"bold":void 0,C.fontWeight),fontStyle:(0,r.pluck)(s.isitalic?"italic":void 0,C.fontStyle)}).lineHeight=(0,r.setLineHeight)(c),k.setStyle(c),(n=k.getOriSize(i.drawLabel)).width>P&&(F=n,P=n.width),n.height>T&&(T=n.height);b.processMaxHeight=T+8,p._attrib.leftPos=D,L?S=E||F.width+4:D+=E||F.width+4,p._attrib.rightPos=D}if(b.hasDataTables)for(e in d=b.dataTables.dataTable.datacolumn)if(d.hasOwnProperty(e)&&"_attrib"!==e){for(u in P=0,(h=d[e]).headertext&&(s=h._attrib,h.drawLabel=(0,r.parseUnsafeString)(h.headertext),(m={fontFamily:(0,r.pluck)(s.headerfontfamily,C.fontFamily),fontSize:(0,r.pluck)(s.headerfontsize,this.computeFontSize(C.fontSizeWithUnit).toString()).replace(/px/i,"")+"px",fontWeight:(0,r.pluck)(1===Number(s.headerisbold)||"undefined"==typeof s.headerisbold?"bold":void 0,C.fontWeight),fontStyle:(0,r.pluck)(s.headerisitalic?"italic":void 0,C.fontStyle)}).lineHeight=(0,r.setLineHeight)(m),k.setStyle(m),(n=k.getOriSize(h.drawLabel)).width>P&&(v=n,P=n.width)),g=h.text)g.hasOwnProperty(u)&&"_attrib"!==u&&((a=g[u]).drawLabel=(0,r.parseUnsafeString)(a.label||a.name),f=a._attrib,(m={fontFamily:(0,r.pluck)(f.fontfamily,C.fontFamily),fontSize:(0,r.pluck)(f.fontsize,this.computeFontSize(C.fontSizeWithUnit).toString()).replace(/px/i,"")+"px",fontWeight:(0,r.pluck)(f.isbold?"bold":void 0,C.fontWeight),fontStyle:(0,r.pluck)(f.isitalic?"italic":void 0,C.fontStyle)}).lineHeight=(0,r.setLineHeight)(m),k.setStyle(m),(n=k.getOriSize(a.drawLabel)).width>P&&(v=n,P=n.width));d[e]._attrib.leftPos=D,D+=E||v.width+4,d[e]._attrib.rightPos=D}return b.hasProcess&&L&&(p._attrib.leftPos+=D,p._attrib.rightPos+=D+S,D+=S),b.totalWidth=D,this.adjustWidth(),D=b.totalWidth>t?t:b.totalWidth,b.totalVisiblelWidth=D,A.left+=D,A},a.getProcessLen=function(){return this.config.processes.process.process.length},a._drawProcessAndDataTable=function(){var t,e,a,n,o,i,r,s,l,c,d,h,g=this.config,p=this.getFromEnv("chart"),u=(g.axisDimention||{}).x,f=g.totalWidth||0,m=g.gridArr||(g.gridArr=[]),v=p.getChildren("canvas")[0],b=p.config,x=p.getFromEnv("animationManager"),k=v.canvasTop||b.canvasTop,C=v.canvasLeft||b.canvasLeft,y=v.canvasHeight||b.canvasHeight,w=v.canvasWidth||b.canvasWidth,F=p.getChildContainer("axisBottomGroup"),P=g.totalVisiblelWidth,A=0,D=0,L=this.getContainer("ganttPlotHoverBandContainer"),S=this.getContainer("ganttPlotLineContainer"),T=this.getContainer("headerContainer"),E=this.getContainer("headerBackContainer"),N=this.getContainer("headerLineContainer"),M=this.getContainer("headerTextContainer"),_=this.getContainer("labelContainer"),B=this.getContainer("labelBackContainer"),V=this.getContainer("labelLineContainer"),O=this.getContainer("labelTextContainer"),H=this.getContainer("hotContainer");if(h=this.getContainer("ganttPlotHoverBandContainerParent")||this.addContainer("ganttPlotHoverBandContainerParent",x.setAnimation({el:"group",attr:{name:"gantt-plot-band-container-parent"},container:F,component:this})),this.addContainer("ganttPlotHoverBandContainer",x.setAnimation({el:L||"group",attr:{name:"gantt-plot-band-container","clip-rect":C+","+k+","+w+","+y},container:h,component:this})),this.addContainer("ganttPlotLineContainer",x.setAnimation({el:S||"group",attr:{name:"gantt-plot-line-container","clip-rect":C+","+k+","+w+","+y},container:F,component:this})),d={name:"gantt-header-container","clip-rect":C-g.totalVisiblelWidth+","+(k-b.categorySpaceUsed)+","+g.totalVisiblelWidth+","+b.categorySpaceUsed},g.isDraged?delete d.transform:d.transform="t0,0",T=this.addContainer("headerContainer",x.setAnimation({el:T||"group",attr:d,container:F,component:this})),E||(E=this.addContainer("headerBackContainer",x.setAnimation({el:"group",attr:{name:"gantt-header-back-container"},container:T,component:this}))),N||(N=this.addContainer("headerLineContainer",x.setAnimation({el:"group",attr:{name:"gantt-header-line-container"},container:T,component:this}))),M||(M=this.addContainer("headerTextContainer",x.setAnimation({el:"group",attr:{name:"gantt-header-text-container"},container:T,component:this}))),c={name:"gantt-label-container","clip-rect":C-g.totalVisiblelWidth+","+k+","+g.totalVisiblelWidth+","+y},g.isDraged?delete c.transform:c.transform="t0,0",_=this.addContainer("labelContainer",x.setAnimation({el:_||"group",attr:c,component:this,container:F})),B||(B=this.addContainer("labelBackContainer",x.setAnimation({el:"group",attr:{name:"gantt-label-back-container"},container:_,component:this}))),V||(V=this.addContainer("labelLineContainer",x.setAnimation({el:"group",attr:{name:"gantt-label-line-container"},container:_,component:this}))),O||(O=this.addContainer("labelTextContainer",x.setAnimation({el:"group",attr:{name:"gantt-label-text-container"},container:_,component:this}))),this.addContainer("hotContainer",x.setAnimation({el:H||"group",attr:{name:"gantt-hot-container","clip-rect":C-g.totalVisiblelWidth+","+(k-b.categorySpaceUsed)+","+g.totalVisiblelWidth+","+(y+b.categorySpaceUsed)},component:this,container:p.getContainer("parentgroup")})),g.gridLinePath="",g.gridLineHeaderPath="",g.hoverElemsArr=[],g.labelHoverEventName={click:"ProcessClick",rollOver:"ProcessRollOver",rollOut:"ProcessRollOut"},g.hasProcess)for(e=g.processes.process.process,r={elem:g.processes.process,elemIndex:A,dimension:{left:u-f+e._attrib.leftPos,right:u-f+e._attrib.rightPos,top:k-b.categorySpaceUsed,bottom:k},type:"header"},this._drawProcessAndDataTableElement(r),A+=1,m=g.gridArr=[],t=0,a=e.length;t<a;t++)s=this.getProcessPositionByIndex(t),r={elem:e[t],elemIndex:A,pos:t,dimension:{left:u-f+e._attrib.leftPos,right:u-f+e._attrib.rightPos,top:k+s.top,bottom:k+s.bottom},type:"process"},this._drawProcessAndDataTableElement(r),A+=1,m.push({y:r.dimension.bottom});if(g.hasDataTables){for(t in n=g.dataTables.dataTable.datacolumn)if(n.hasOwnProperty(t)&&"_attrib"!==t)for(i in D=0,r={elem:n[t],elemIndex:A,pos:t,dimension:{left:u-f+n[t]._attrib.leftPos,right:u-f+n[t]._attrib.rightPos,top:k-b.categorySpaceUsed,bottom:k},type:"header"},this._drawProcessAndDataTableElement(r),A+=1,o=n[t].text){if(D>=a)break;o[i]._attrib&&e[i]&&e[i]._attrib&&(o[i]._attrib.hoverbandcolor=e[i]._attrib.hoverbandcolor,o[i]._attrib.hoverbandalpha=e[i]._attrib.hoverbandalpha,o[i]._attrib.showhoverband=e[i]._attrib.showhoverband),o.hasOwnProperty(i)&&"_attrib"!==i&&(s=this.getProcessPositionByIndex(i),r={elem:o[i],elemIndex:A,pos:i,dimension:{left:u-f+n[t]._attrib.leftPos,right:u-f+n[t]._attrib.rightPos,top:k+s.top,bottom:k+s.bottom},type:"datatable"},D++,this._drawProcessAndDataTableElement(r),A+=1)}g.drawFromProcessVlineDrag?g.drawFromProcessVlineDrag=!1:f>P?(l=f-P,this.resetTransletAxis(),this.translateAxis(l,void 0)):this.resetTransletAxis()}this._drawGridLine(),this._disposeExtraProcessAndDataTableElement(A)},a._drawVerticalLineAndTracker=function(){var t,e,a,n,o,i,s,l,c,d=this,h=d.config,g=d.getFromEnv("chart"),p=h.canvas,u=g.config,f=(h.axisDimention||{}).x,m=h.totalWidth||0,v=p.canvasTop||u.canvasTop,b=d.components.processVline||(d.components.processVline=[]),x=h.processVlineArr,k=d.getContainer("hotContainer"),C=d.getFromEnv("animationManager"),y=0,w=function(){var t=this.data("drag-options");t.origX=t.lastX||(t.lastX=0),t.vHoverLine.show(),g.trackerClicked=!0,t.draged=!1},F=function(t){var e,a=this.data("drag-options"),n=a.vLineSetting,o="string"==typeof t.data?+t.data.substr(0,t.data.indexOf(",")):t.data[0]||0,i=n.xPos+o,r=n.leftLimit,s=n.rightLimit;i<r&&(o=r-n.xPos),i>s&&(o=s-n.xPos),e={transform:"t"+(a.origX+o)+",0"},this.attr(e),a.vHoverLine.attr(e),a.draged=!0,a.lastX=o},P=function(){var t,e=this.data("drag-options"),a=e.vLineSetting,n=e.vLineIndex;g.trackerClicked=!1,e.vHoverLine.hide(),e.draged&&(h.isDraged=!0,a.left.rightPos+=e.lastX||0,a.right.leftPos+=e.lastX||0,a.xPos+=e.lastX||0,x[n-1]&&(x[n-1].rightLimit+=e.lastX||0),x[n+1]&&(x[n+1].leftLimit+=e.lastX||0),h.drawFromProcessVlineDrag=!0,d._drawProcessAndDataTable(),d._drawVerticalLineAndTracker(),t={transform:"t0,0"},this.attr(t),e.vHoverLine.attr(t))};for(i={stroke:h.gridResizeBarColor,"stroke-width":h.gridResizeBarThickness},s={stroke:r.TRACKER_FILL,"stroke-width":30},o=v-u.categorySpaceUsed,t=0,e=x.length;t<e;t+=1)a=["M",l=f-m+("process"===x[t].type?h.processes.process.process:h.dataTables.dataTable.datacolumn[x[t].ind])._attrib.rightPos,o,"L",l,v+h.processTotalHeight],b[y]?((c=b[y].graphics.vHoverLine).attr({path:a}).attr(i),(n=b[y].graphics.hotElement).attr({path:a}).attr(s)):(i.path=a,c=C.setAnimation({el:"path",container:k,component:d,attr:i}),s.path=a,n=C.setAnimation({el:"path",container:k,component:d,attr:s}),b[y]={},b[y].graphics={},b[y].config={},b[y].graphics.vHoverLine=c,b[y].graphics.hotElement=n),n.show(),c.hide(),n.css("cursor",r.hasSVG?"ew-resize":"e-resize").drag(F,w,P).data("drag-options",{vHoverLine:b[y].graphics.vHoverLine,vLineSetting:x[t],vLineIndex:t}),y+=1;for(t=y,e=b.length;t<e;t+=1)b[t].graphics.vHoverLine.attr({path:["M",0,0]}),b[t].graphics.hotElement.attr({path:["M",0,0]})},a._drawComponents=function(){var t=this.config;t.isDraged=!1,this._drawProcessAndDataTable(),t.drawPlotlines&&this._drawPlotLine(),this._drawVerticalLineAndTracker(),this._drawGridLine()},e}(i["default"]);e["default"]=l},1592:function(t,e,a){"use strict";var n=a(273);e.__esModule=!0,e.extractAttribToEnd=function f(t,e){var a;for(a in t._attrib=(0,c.extend2)({},e),t._attrib=(0,c.extend2)(t._attrib,function(t){var e,a={};for(e in t)t.hasOwnProperty(e)&&"string"==typeof t[e]&&t[e]&&(a[e]=t[e]);return a}(t)),t)t.hasOwnProperty(a)&&t[a]&&"object"==typeof t[a]&&"_attrib"!==a&&f(t[a],t._attrib)},e["default"]=void 0;var o,i,r,s=n(a(292)),l=function(t,e){if(!e&&t&&t.__esModule)return t;if(null===t||"object"!=typeof t&&"function"!=typeof t)return{"default":t};var a=g(e);if(a&&a.has(t))return a.get(t);var n={},o=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if("default"!==i&&Object.prototype.hasOwnProperty.call(t,i)){var r=o?Object.getOwnPropertyDescriptor(t,i):null;r&&(r.get||r.set)?Object.defineProperty(n,i,r):n[i]=t[i]}n["default"]=t,a&&a.set(t,n);return n}(a(1593)),c=a(278),d=a(286),h=n(a(1594));function g(t){if("function"!=typeof WeakMap)return null;var e=new WeakMap,a=new WeakMap;return(g=function(t){return t?a:e})(t)}var p=function(t,e){var a;for(a=0;a<t.length;a++)if(t[a].id===e)return t[a];return!1};(0,d.addDep)({name:"ganttCommonAnimation",type:"animationRule",extension:h["default"]});var u=function(t){function e(){var e;return(e=t.call(this)||this).components={},e}(0,s["default"])(e,t);var a=e.prototype;return a.getName=function(){return"GanttCommon"},a._drawPlotLine=function(){var t,e,a,n,i=this.config,r=this.getFromEnv("chart"),s=r.getChildren("canvas")[0],l=r.config,c=this.getContainer("ganttPlotLineContainer"),d=s.canvasBottom||l.canvasBottom,h=s.canvasLeft||l.canvasLeft,g=s.canvasRight||l.canvasRight,p=s.canvasTop||l.canvasTop,u=this.getFromEnv("animationManager"),f=i.gridArr,m=this.getGraphicalElement("plotLine"),v=[];for(a=0,n=f.length;a<n;a+=1)f[a].x!==o?v.push("M",f[a].x,p,"L",f[a].x,d):v.push("M",h,f[a].y,"L",g,f[a].y);t={"stroke-dasharray":i.plotLineDashStyle,"stroke-width":i.plotLineThickness,stroke:i.plotLineColor,path:v},e=u.setAnimation({el:m&&m[0]||"path",attr:t,container:c,label:"path",component:this}),m&&m[0]||this.addGraphicalElement("plotLine",e,!0)},a._drawTrendLine=function(){var t,e,a,n,i,r,s,d,h,g,u,f,m,v,b,x,k,C,y,w,F=this.getComponentInfo("trend"),P=this.getFromEnv("toolTipController"),A=this.config,D=A.isOpposit,L=A.labelPadding,S=this.getFromEnv("chart"),T=S.getFromEnv("animationManager"),E=S.config,N=S.getChildren("canvas")[0],M=N.config.canvasTop+N.config.canvasHeight,_=N.config.canvasLeft||E.canvasLeft,B=N.config.canvasRight||E.canvasRight,V=N.config.canvasTop||E.canvasTop,O=A.drawTrendLabels,H=this.getGraphicalElement("trendlabels")||[],I=A.axisTrendContainerTop,R=A.axisTrendContainerBottom,W=A.axisDimention||{},G=this._isZoomed(),z=this.getVisibleConfig(),j=-1*E.xOffset,U=this.getGraphicalElement("trendElems"),X=this.getGraphicalElement("trendlabels"),K=A.trendLines,Y=A.vTrendLines;for(!U&&(U=[]),!X&&(X=[]),t=0;t<U.length;t++)(y=p(U,t))&&y.remove();if(Y?u=D?(W.opposite||M)-(A.trendBottomPadding||0):(W.y||M)+(A.trendBottomPadding||0):(u=D?(W.opposite||_)+(L||0):(W.x||_)-(L||0),f=D?(W.x||B)+(L||0):(W.opposite||B)+(L||0)),G&&(b=Math.max(this.getPixel(z.minValue,{wrtVisible:!0}),this.getPixel(z.maxValue,{wrtVisible:!0})),x=Math.min(this.getPixel(z.minValue,{wrtVisible:!0}),this.getPixel(z.maxValue,{wrtVisible:!0}))),K||Y)for(t=0;t<F.length;t++)e=F[t].marker,a=F[t].label,n={fill:e.fill||"",stroke:e.stroke||"","stroke-width":e.strokeWidth,"stroke-dasharray":e.strokeDashArray,"shape-rendering":e.shapeRendering},i={fill:a.fill||"",text:a.text,"text-anchor":a.textAnchor,"text-bound":a.textBound},s=e.isZone,h=e.startValue,g=e.endValue,Y?(r=this.getPixel(A.hasBreakPoints?this._getRelativeBreakValue(h):h,{wrtVisible:!0}),d=g?this.getPixel(A.hasBreakPoints?this._getRelativeBreakValue(g):g,{wrtVisible:!0}):0,r+=j,d+=j,i.y=u,i["vertical-align"]="top",g!==o&&""!==g&&g!==h&&s?(n.path=["M",r,V,"L",r,M,"L",d,M,"L",d,V,"Z"],i.x=r+(d-r)/2):(m=g?(0,l.getCrispPath)(["M",r,V,"L",d,M],e.strokeWidth):(0,l.getCrispPath)(["M",r,V,"L",r,M],e.strokeWidth),n.path=m.path,i.x=g?d:r),G&&(!O||i.x>b||i.x<x)?(i.text=c.BLANKSTRING,i.visibility="hidden"):i.visibility="visible"):K&&(r=this.getPixel(h,{wrtVisible:!0}),d=g?this.getPixel(g,{wrtVisible:!0}):0,C=a.valueOnRight,g!==o&&""!==g&&g!==h&&s?(n.path=["M",_,r,"L",B,r,"L",B,d,"L",_,d,"Z"],i.x=C?f:u,i.y=r+(d-r)/2):(m=g?(0,l.getCrispPath)(["M",_,r,"L",B,d,"Z"],e.strokeWidth):(0,l.getCrispPath)(["M",_,r,"L",B,r,"Z"],e.strokeWidth),n.path=m.path,i.x=C?f:u,i.y=g&&C?d:r),G&&(!O||i.y>b||i.y<x)?(i.text=c.BLANKSTRING,i.visibility="hidden"):i.visibility="visible"),k=F[t].showOnTop,v=S.config.is3D||1!==k&&1!==A.showTrendlinesOnTop?R:I,y=p(U,t),y=T.setAnimation({el:y||"path",attr:n,container:v,label:"path",component:this}).show(),(w=X[t])&&T.setAnimation({el:w,attr:i,label:"text",component:this}),!p(U,t)