quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 7.21 kB
JavaScript
import{extend2,defaultGaugePaletteOptions as DefaultGaugePaletteOptions,BLANKSTRING,pluck,pluckNumber,parseUnsafeString,POSITION_BOTTOM,POSITION_MIDDLE,POSITION_START,POSITION_END}from'../../../../fc-core/src/lib';import SSCartesian from'../../../../fc-charts/src/chart/_internal/sscartesian';var UNDEF,math=Math,mathMin=math.min,mathMax=math.max,mathCeil=math.ceil,GUTTER_PADDING=2,defaultGaugePaletteOptions=extend2({},DefaultGaugePaletteOptions);class SparkChartBase extends SSCartesian{static getName(){return'SparkChartBase'}constructor(){super(),this.showBorder=0,this.chartTopMargin=3,this.chartRightMargin=3,this.chartBottomMargin=3,this.chartLeftMargin=3,this.canvasborderthickness=0,this.subTitleFontSizeExtender=0,this.subTitleFontWeight=0,this.defaultPaletteOptions=extend2(extend2({},defaultGaugePaletteOptions),{paletteColors:[['555555','A6A6A6','CCCCCC','E1E1E1','F0F0F0'],['A7AA95','C4C6B7','DEDFD7','F2F2EE'],['04C2E3','66E7FD','9CEFFE','CEF8FF'],['FA9101','FEB654','FED7A0','FFEDD5'],['FF2B60','FF6C92','FFB9CB','FFE8EE']],bgColor:['FFFFFF','CFD4BE,F3F5DD','C5DADD,EDFBFE','A86402,FDC16D','FF7CA0,FFD1DD'],bgAngle:[270,270,270,270,270],bgRatio:['0,100','0,100','0,100','0,100','0,100'],bgAlpha:['100','60,50','40,20','20,10','30,30'],canvasBgColor:['FFFFFF','FFFFFF','FFFFFF','FFFFFF','FFFFFF'],canvasBgAngle:[0,0,0,0,0],canvasBgAlpha:['100','100','100','100','100'],canvasBgRatio:[BLANKSTRING,BLANKSTRING,BLANKSTRING,BLANKSTRING,BLANKSTRING],canvasBorderColor:['BCBCBC','BEC5A7','93ADBF','C97901','FF97B1'],toolTipBgColor:['FFFFFF','FFFFFF','FFFFFF','FFFFFF','FFFFFF'],toolTipBorderColor:['545454','545454','415D6F','845001','68001B'],baseFontColor:['333333','60634E','025B6A','A15E01','68001B'],trendColor:['666666','60634E','415D6F','845001','68001B'],plotFillColor:['666666','A5AE84','93ADBF','C97901','FF97B1'],borderColor:['767575','545454','415D6F','845001','68001B'],borderAlpha:[50,50,50,50,50],periodColor:['EEEEEE','ECEEE6','E6ECF0','FFF4E6','FFF2F5'],winColor:['666666','60634E','025B6A','A15E01','FF97B1'],lossColor:['CC0000','CC0000','CC0000','CC0000','CC0000'],drawColor:['666666','A5AE84','93ADBF','C97901','FF97B1'],scorelessColor:['FF0000','FF0000','FF0000','FF0000','FF0000']},!1,!0)}getName(){return'SparkChartBase'}_fetchCaptionPos(){var a,b=this,c=b.getChildren('caption')[0],d=c.config;return a=d.isOnLeft?-1:-1,a}parseChartAttr(a){super.parseChartAttr(a);let b=this,c=b.getFromEnv('dataSource').chart,d=b.config;d.origCanvasLeftMargin=pluckNumber(c.canvasleftmargin),d.origCanvasRightMargin=pluckNumber(c.canvasrightmargin),d.origCanvasTopMargin=pluckNumber(c.canvastopmargin),d.origCanvasBottomMargin=pluckNumber(c.canvasbottommargin),d.showBorder=pluckNumber(c.showborder,0)}_spaceManager(){var a,b,c,d,e,f,g,h,i,j,k=this,l=k.config,m=l.canvasBaseDepth,n=k.getChildren('canvas')[0],o=n.config.canvasBorderWidth,p=l.borderWidth,q=l.canvasMarginTop,r=l.canvasMarginBottom,s=l.canvasMarginLeft,t=l.canvasMarginRight,u=l.minCanvasHeight,v=l.minCanvasWidth,w=l.height,x=l.width,y=!1,z=!1,A=l.origCanvasTopMargin,B=l.origCanvasBottomMargin,C=l.origCanvasLeftMargin,D=l.origCanvasRightMargin;k._allocateSpace({top:p,bottom:p,left:p,right:p}),b=.325*l.availableHeight,k._getDSspace&&k._allocateSpace(k._getDSspace(b)),k._allocateSpace(k._manageActionBarSpace&&k._manageActionBarSpace(.225*l.availableHeight)||{}),l.availableWidth=l.width,a=.75*l.availableWidth,a=a-l.origMarginLeft-l.origMarginRight-2*l.borderWidth,a=mathMax(.1*l.availableWidth,a),k._manageChartMenuBar(a),a=.75*(l.availableWidth-2*l.borderWidth),k._placeOpenCloseValues&&k._allocateSpace(k._placeOpenCloseValues(a)),k._allocateSpace({top:o,bottom:o,left:o,right:o}),k._allocateSpace({bottom:m}),u>w-q-r&&(y=!0,c=l.canvasHeight-u,j=q+r,q=l.canvasMarginTop=c*q/j,r=l.canvasMarginBottom=c*r/j),v>x-s-t&&(z=!0,c=l.canvasWidth-v,j=s+t,s=l.canvasMarginLeft=c*s/j,t=l.canvasMarginRight=c*t/j),d=q>l.canvasTop?q-l.canvasTop:0,e=r>w-l.canvasBottom?r+l.canvasBottom-w:0,f=s>l.canvasLeft?s-l.canvasLeft:0,g=t>x-l.canvasRight?t+l.canvasRight-x:0,k._allocateSpace({top:d,bottom:e,left:f,right:g}),y&&(j=A+B,h=l.canvasHeight,h>u&&(c=h-u,d=c*A/j,e=c*B/j),k._allocateSpace({top:d,bottom:e})),z&&(j=C+D,i=l.canvasWidth,i>v&&(c=i-v,f=c*C/j,g=c*D/j),k._allocateSpace({left:f,right:g})),l.origCanvasLeftMargin!==UNDEF&&(l.canvasWidth=mathMax(l.canvasWidth+l.canvasLeft-l.origCanvasLeftMargin,.2*l.availableWidth),l.canvasLeft=l.origCanvasLeftMargin),n.setDimension({top:l.canvasTop,left:l.canvasLeft,width:l.canvasWidth,height:l.canvasHeight})}_manageCaptionSpacing(a){var b,c,d,e,f,g=Math.max,h=this,i=h.config,j=h.getChildren(),k=j.caption&&j.caption[0],l=j.subCaption&&j.subCaption[0],m=k.config,n=l.config,o=k.components,p=h.getFromEnv('dataSource').chart,q=h.getFromEnv('smartLabel'),r=parseUnsafeString(p.caption),s=parseUnsafeString(p.subcaption),t=m.captionPadding=pluckNumber(p.captionpadding,2),u=j.chartMenuBar&&j.chartMenuBar[0],v=u&&u.getLogicalSpace(),w=i.height-(v&&v.height||0),x=0,y=0,z=mathMax(j.canvas&&j.canvas[0].config.canvasBorderThickness,0),A=0,B=a,C={};return 3<.7*w&&(t<z&&(t=z+2),m.captionPadding=n.captionPadding=t,r!==BLANKSTRING&&(e=m.style,x=m.captionLineHeight=mathCeil(parseFloat(pluck(e.fontHeight,e.lineHeight),10),12)),s!==BLANKSTRING&&(f=n.style,y=mathCeil(parseInt(pluck(f.lineHeight,f.fontHeight),10),12)),q.useEllipsesOnOverflow(i.useEllipsesWhenOverflow),(0<x||0<y)&&(q.setStyle(e),c=q.getSmartText(r,B,w),0<c.width&&(c.width+=GUTTER_PADDING,A=c.height),q.setStyle(f),d=q.getSmartText(s,B,w-A),0<d.width&&(d.width+=GUTTER_PADDING),m.captionSubCaptionGap=c.height+0+.2*y,b=g(c.width,d.width),m.height=A=c.height,m.width=c.width,m.tooltext&&(o.originalText=c.tooltext),n.height=A=d.height,n.width=d.width,n.tooltext&&(o.originalText=d.tooltext),b=g(c.width,d.width),m.captionPadding=t=mathMin(a-b,t),0<b&&(b=mathMin(a,b+t)),m.maxCaptionWidth=n.maxCaptionWidth=b,m.isOnLeft?C.left=b:C.right=b)),C}_manageCaptionPosition(){var a=this,b=a.config,c=a.getChildren('caption')[0],d=a.getChildren('subCaption')[0],e=c.config,f=d.config,g=e.captionPosition,h=mathMax(e.width,f.width),i=b.borderWidth||0,j=b.height,k=b.sparkValues||{},l=k.openValueWidth||0,m=e.captionPadding,n=e.captionSubCaptionGap;switch(g){case POSITION_MIDDLE:e.y=(j-(e.height+f.height))/2+.5*(e._offsetHeight||0);break;case POSITION_BOTTOM:e.y=j-(e.height+f.height)-b.marginBottom-i;break;default:e.y=b.marginTop+i+(e._offsetHeight||0);}f.y=e.y+n,e.isOnLeft?(e.align=f.align=POSITION_END,e.x=f.x=b.canvasLeft-(i+l+GUTTER_PADDING+m)+b.borderWidth):(e.align=f.align=POSITION_START,e.x=f.x=b.width-b.marginRight-h-i)}_feedAxesRawData(){let a=super._feedAxesRawData(),b=a.xAxisConf[0],c=a.yAxisConf[0],d=this.getFromEnv('chart-attrib'),e=this.getFromEnv('color-manager'),f=pluckNumber(d.periodlength,0);return b.lines=c.lines=b.band=c.band={isDraw:0},f&&(b.alternateGridColor=pluck(d.periodcolor,e.getColor('periodColor')),b.alternateGridAlpha=pluck(d.periodalpha,100),b.showAlternateGridColor=!0,b.categoryDivLinesFromZero=0,b.periodLength=f,b.band={isDraw:1}),a}_checkInvalidSpecificData(){let a=this.getFromEnv('dataSource'),b=a.dataset;if(!b||!b.length||!(b[0].data&&b[0].data.length))return!0}}export default SparkChartBase;