UNPKG

@fusioncharts/charts

Version:

JavaScript Data Visualisation Library

1 lines 9.05 kB
"use strict";var _interopRequireDefault=require("@babel/runtime/helpers/interopRequireDefault");var _extends=require("@babel/runtime/helpers/extends");exports.__esModule=true;exports.default=void 0;var _lib=require("@fusioncharts/core/src/lib");var defaultPaletteOptions=_interopRequireWildcard(require("./chart-palette-colors"));var _isArray=_interopRequireDefault(require("@fusioncharts/utils/src/type/is-array"));function _interopRequireWildcard(e,t){if("function"==typeof WeakMap)var r=new WeakMap,n=new WeakMap;return(_interopRequireWildcard=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;var o,i,f=_extends({},null,{default:e});if(null===e||"object"!=typeof e&&"function"!=typeof e)return f;if(o=t?n:r){if(o.has(e))return o.get(e);o.set(e,f)}for(var _t in e)"default"!==_t&&{}.hasOwnProperty.call(e,_t)&&((i=(o=Object.defineProperty)&&Object.getOwnPropertyDescriptor(e,_t))&&(i.get||i.set)?o(f,_t,i):f[_t]=e[_t]);return f})(e,t)}var FIFTY_STR="50,50";function parseColorMix(aColor,mixture){var strConsts=ColorManager.stringConstants,mix=mixture.replace(/\s/g,strConsts.BLANK).toLowerCase(),rtnArr=[],dashIndex,intensity,tokens,colors,j,defToken,defColor,token,color,removeBrecReg,i;if(mix===strConsts.BLANK||mix===null||typeof mix==="undefined"){rtnArr=[aColor]}else{tokens=mix.split(strConsts.COMMASTRING);colors=aColor.split(strConsts.COMMASTRING);j=Math.max(tokens.length,colors.length,1);defToken=tokens[0];defColor=colors[0];removeBrecReg=/[\{\}]/gi;for(i=0;i<j;i++){token=(tokens[i]||defToken).replace(removeBrecReg,"");color=colors[i]||defColor;if(token==="color"){rtnArr.push(color)}else if(token.substr(0,5)==="light"){dashIndex=token.indexOf("-");intensity=dashIndex===-1?1:token.substr(dashIndex+1,token.length-dashIndex);intensity=100-intensity;rtnArr.push((0,_lib.getLightColor)(color,intensity))}else if(token.substr(0,4)==="dark"){dashIndex=token.indexOf("-");intensity=dashIndex===-1?1:token.substr(dashIndex+1,token.length-dashIndex);intensity=100-intensity;rtnArr.push((0,_lib.getDarkColor)(color,intensity))}else{rtnArr.push(token)}}}return rtnArr}function parseAlphaList(strAlphas,numColors){var arrInputAlphas=strAlphas.toString().split(ColorManager.stringConstants.COMMASTRING),arrAlphas=[],alpha,usedAlpha=100,i;for(i=0;i<numColors;i++){alpha=(0,_lib.pluckNumber)(arrInputAlphas[i]);if(ColorManager.defined(alpha)){usedAlpha=alpha}arrAlphas[i]=usedAlpha}return arrAlphas.join()}function parseRatioList(strRatios,numColors){var arrInputRatios=strRatios.split(ColorManager.stringConstants.COMMASTRING),arrRatios=[],sumRatio=0,ratio,i;for(i=0;i<numColors;i++){ratio=arrInputRatios[i];ratio=isNaN(ratio)||typeof ratio==="undefined"?0:Math.abs(Number(ratio));ratio=ratio>100?100:ratio;arrRatios[i]=ratio;sumRatio+=ratio}sumRatio=sumRatio>100?100:sumRatio;if(arrInputRatios.length<numColors){for(i=arrInputRatios.length;i<numColors;i++){arrRatios[i]=(100-sumRatio)/(numColors-arrInputRatios.length)}}arrRatios[-1]=0;return arrRatios.join()}var ColorManager=function(){function ColorManager(chart){this.parseColorMix=parseColorMix;this.parseAlphaList=parseAlphaList;this.parseRatioList=parseRatioList;this.linkedItems={iapi:chart};this.configure();this.paletteColors=["AFD8F8","F6BD0F","8BBA00","FF8E46","008E8E","D64646","8E468E","588526","B3AA00","008ED6","9D080D","A186BE","CC6600","FDC689","ABA000","F26D7D","FFF200","0054A6","F7941C","CC3300","006600","663300","6DCFF6"]}var _proto=ColorManager.prototype;_proto.configure=function configure(){var cm=this,strConsts=ColorManager.stringConstants,iapi=cm.linkedItems.iapi,dataObj=iapi.getFromEnv("dataSource"),FCChartObj=dataObj.chart||{},pO=cm.paletteOptions=(0,_lib.extend2)((0,_lib.extend2)({},defaultPaletteOptions),iapi.defaultPaletteOptions||{},false,true),themeColor=cm.themeEnabled=FCChartObj.palettethemecolor;cm.paletteIndex=(FCChartObj.palette>0&&FCChartObj.palette<6?FCChartObj.palette:(0,_lib.pluckNumber)(iapi.paletteIndex,1))-1;cm.iterator=0;cm.paletteColors=pO.paletteColors[cm.themeEnabled?0:cm.paletteIndex];if(ColorManager.defined(FCChartObj.palettecolors)&&FCChartObj.palettecolors!==strConsts.BLANK){cm.paletteColors=(0,_isArray.default)(FCChartObj.palettecolors)?FCChartObj.palettecolors.slice():FCChartObj.palettecolors.split(/\s*\,\s*/)}cm.paletteLen=cm.paletteColors.length;cm.useFlatColors=(0,_lib.pluckNumber)(FCChartObj.useflatdataplotcolor,iapi.useFlatColor,0);if(themeColor){cm.paletteIndex=5;pO.bgColor[5]=(0,_lib.getLightColor)(themeColor,35)+strConsts.COMMASTRING+(0,_lib.getLightColor)(themeColor,10);pO.bgAngle[5]=270;pO.bgRatio[5]=strConsts.BGRATIOSTRING;pO.bgAlpha[5]=FIFTY_STR;pO.canvasBgColor[5]=strConsts.COLOR_WHITE;pO.canvasBgAngle[5]=0;pO.canvasBgAlpha[5]=strConsts.HUNDREDSTRING;pO.canvasBgRatio[5]=strConsts.BLANK;pO.canvasBorderColor[5]=(0,_lib.getDarkColor)(themeColor,80);pO.canvasBorderAlpha[5]=100;pO.showShadow[5]=1;pO.divLineColor[5]=(0,_lib.getDarkColor)(themeColor,20);pO.divLineAlpha[5]=40;pO.altHGridColor[5]=(0,_lib.getLightColor)(themeColor,20);pO.altHGridAlpha[5]=15;pO.altVGridColor[5]=(0,_lib.getLightColor)(themeColor,80);pO.altVGridAlpha[5]=10;pO.anchorBgColor[5]=strConsts.COLOR_WHITE;pO.toolTipBgColor[5]=strConsts.COLOR_WHITE;pO.toolTipBorderColor[5]=(0,_lib.getDarkColor)(themeColor,80);pO.baseFontColor[5]=themeColor.split&&themeColor.split(strConsts.COMMASTRING)[0];pO.borderColor[5]=(0,_lib.getDarkColor)(themeColor,60);pO.borderAlpha[5]=50;pO.legendBgColor[5]=strConsts.COLOR_WHITE;pO.legendBorderColor[5]=(0,_lib.getDarkColor)(themeColor,80);pO.plotGradientColor[5]=strConsts.COLOR_WHITE;pO.plotBorderColor[5]=(0,_lib.getDarkColor)(themeColor,85);pO.plotFillColor[5]=(0,_lib.getDarkColor)(themeColor,85);pO.bgColor3D[5]=strConsts.COLOR_WHITE;pO.bgAlpha3D[5]=strConsts.HUNDREDSTRING;pO.bgAngle3D[5]=90;pO.bgRatio3D[5]=strConsts.BLANK;pO.canvasBgColor3D[5]=(0,_lib.getLightColor)(themeColor,20);pO.canvasBaseColor3D[5]=(0,_lib.getLightColor)(themeColor,40);pO.divLineColor3D[5]=(0,_lib.getDarkColor)(themeColor,20);pO.divLineAlpha3D[5]=40;pO.legendBgColor3D[5]=strConsts.COLOR_WHITE;pO.legendBorderColor3D[5]=(0,_lib.getDarkColor)(themeColor,80);pO.toolTipbgColor3D[5]=strConsts.COLOR_WHITE;pO.toolTipBorderColor3D[5]=(0,_lib.getDarkColor)(themeColor,80);pO.baseFontColor3D[5]=themeColor.split&&themeColor.split(strConsts.COMMASTRING)[0];pO.anchorBgColor3D[5]=strConsts.COLOR_WHITE;pO.tickColor&&(pO.tickColor[5]=(0,_lib.getDarkColor)(themeColor,90));pO.trendDarkColor&&(pO.trendDarkColor[5]=(0,_lib.getDarkColor)(themeColor,90));pO.trendLightColor&&(pO.trendLightColor[5]=(0,_lib.getLightColor)(themeColor,pO.TrendLightShadeOffset));pO.msgLogColor&&(pO.msgLogColor[5]=(0,_lib.getLightColor)(themeColor,80));pO.dialColor&&(pO.dialColor[5]=(0,_lib.getDarkColor)(themeColor,95)+",FFFFFF,"+(0,_lib.getDarkColor)(themeColor,95));pO.dialBorderColor&&(pO.dialBorderColor[5]=(0,_lib.getDarkColor)(themeColor,95)+",FFFFFF,"+(0,_lib.getDarkColor)(themeColor,95));pO.pivotColor&&(pO.pivotColor[5]=(0,_lib.getLightColor)(themeColor,95)+",FFFFFF,"+(0,_lib.getLightColor)(themeColor,95));pO.pivotBorderColor&&(pO.pivotBorderColor[5]=(0,_lib.getDarkColor)(themeColor,95)+",FFFFFF,"+(0,_lib.getDarkColor)(themeColor,95));pO.pointerBorderColor&&(pO.pointerBorderColor[5]=(0,_lib.getDarkColor)(themeColor,75));pO.pointerBgColor&&(pO.pointerBgColor[5]=(0,_lib.getDarkColor)(themeColor,75));pO.thmBorderColor&&(pO.thmBorderColor[5]=(0,_lib.getDarkColor)(themeColor,90));pO.thmFillColor&&(pO.thmFillColor[5]=(0,_lib.getLightColor)(themeColor,55));pO.gaugeBorderColor&&(pO.gaugeBorderColor[5]=(0,_lib.getDarkColor)(themeColor,90));pO.gaugeFillColor&&(pO.gaugeFillColor[5]=(0,_lib.getLightColor)(themeColor,55));pO.cylFillColor&&(pO.cylFillColor[5]=(0,_lib.getLightColor)(themeColor,55));pO.periodColor&&(pO.periodColor[5]=(0,_lib.getLightColor)(themeColor,10));pO.winColor&&(pO.winColor[5]="666666");pO.lossColor&&(pO.lossColor[5]="CC0000");pO.drawColor&&(pO.drawColor[5]="666666");pO.scorelessColor&&(pO.scorelessColor[5]="FF0000");pO.gridColor&&(pO.gridColor[5]=(0,_lib.getLightColor)(themeColor,30));pO.categoryBgColor&&(pO.categoryBgColor[5]=(0,_lib.getLightColor)(themeColor,10));pO.dataTableBgColor&&(pO.dataTableBgColor[5]=(0,_lib.getLightColor)(themeColor,10));pO.gridResizeBarColor&&(pO.gridResizeBarColor[5]=(0,_lib.getDarkColor)(themeColor,90));pO.scrollBarColor&&(pO.scrollBarColor[5]=(0,_lib.getLightColor)(themeColor,50))}};_proto.getColor=function getColor(key){return this.paletteOptions[key][this.paletteIndex]};_proto.getPlotColor=function getPlotColor(index){var cm=this,paletteColors=cm.paletteColors,strColor=cm.useFlatColors?cm.getColor("plotFillColor"):paletteColors[index%cm.paletteLen];if(!strColor){if(cm.iterator===cm.paletteLen){cm.iterator=0}strColor=paletteColors[cm.iterator];cm.iterator+=1}return strColor};return ColorManager}();ColorManager.stringConstants={BLANK:"",COMMASTRING:",",BGRATIOSTRING:"0,100",COLOR_WHITE:"FFFFFF",HUNDREDSTRING:"100"};ColorManager.defined=function(obj){return typeof obj!=="undefined"&&obj!==null};var _default=exports.default=ColorManager;