UNPKG

quoslibero

Version:

FusionCharts JavaScript charting framework

1 lines 5.16 kB
import CommonSpaceManager from'../../../../fc-charts/src/chart/_internal/commonspacemanager';import{priorityList}from'../../../../fc-core/src/schedular';import{getMouseCoordinate}from'../../../../fc-core/src/lib';import{Tool}from'../../../../fc-core/src/toolbox';import TreeMapDS from'../../dataset/treemap';import _ref from'./helper';import{getDep}from'../../../../fc-core/src/dependency-manager';import datasetFactory from'../../../../fc-charts/src/factories/singleseries-dataset';import{_manageLegendSpace,manageGradientLegendSpace}from'../../../../fc-charts/src/_internal/common-chart-api/legend-spacemanager.js';import legendItemFactory from'../../../../fc-charts/src/factories/legend';import createColorRangeManager from'../../../../fc-charts/src/factories/colorrange';import decideLegendCreation from'../../../../fc-charts/src/factories/legendmanager';import mousetrackerFactory from'../../../../fc-charts/src/factories/mouse-tracker';import raphaelShapesButton from'../../../../fc-core/src/_internal/redraphael/redraphael-shapes/redraphael-shapes.button';let Raphael=getDep('redraphael','plugin'),MOUSEOUT='fc-mouseout';raphaelShapesButton(Raphael),Raphael.addSymbol({backIcon:function(a,b,c){var d=c-1,e=a,f=b+d,g=e,h=f-d/2,i=g+d,j=h,k=j-d;return['M',a,b-d,'L',a-d,b,e,f,g,h,i,j,i,k,i-d,k,'Z']},homeIcon:function(a,b,c){var d=c-1,e=2*d,f=a-d,g=b,h=f+e/6,i=h,j=b+d,k=i+e/4,l=j,m=k,n=l-d/2,o=m+e/6,p=n+d/2,q=o+e/4,r=p,s=r-d;return['M',a,b-d,'L',f,g,h,g,i,j,k,l,m,n,o,n,o,p,q,r,q,s,q+e/6,s,'Z']}});class TreeMap extends CommonSpaceManager{static getName(){return'TreeMap'}constructor(){super(),this._lastAttached={},this.hasGradientLegend=!0,this.addToEnv('ref',_ref()),this.registerFactory('legend',legendItemFactory),this.registerFactory('legend',decideLegendCreation,['canvas']),this.registerFactory('colormanager-decider',createColorRangeManager,['legend']),this.registerFactory('mouseTracker',mousetrackerFactory),this.registerFactory('dataset',datasetFactory,['vCanvas'])}getName(){return'TreeMap'}__setDefaultConfig(){super.__setDefaultConfig(),this.config.enablemousetracking=!0,this.config.skipCanvasDrawing=!0,this.config.valuefontbold=0}configureAttributes(a){var b=this;b.config.skipConfigureIteration={},b.config.valuesset=!1,b.parseChartAttr(a),b.createComponent(a),b.setTooltipStyle(),b.configureChildren(),b._createToolBox()}mouseoutHandler(a,b,c){let d=this,e=d.config.datasetOrder||d.getDatasets(),f=d.getChildren('mouseTracker')[0];e[b]._firePlotEvent(MOUSEOUT,c,a),delete f._lastDatasetIndex,delete f._lastPointIndex}_mouseEvtHandler(a,b){let c,d,e,f,g,h=this,k=b.mouseTracker,m=a.originalEvent,n=h.config,o=n.canvasLeft,p=n.canvasRight,q=n.canvasBottom,r=n.canvasTop,s=n.datasetOrder||h.getDatasets(),t=getMouseCoordinate(h.getFromEnv('chart-container'),m,h),u=t.chartX,v=t.chartY,w=!1,x=s.length,y=k._lastDatasetIndex,z=k._lastPointIndex;if(u>o&&u<p&&v>r&&v<q||h.config.plotOverFlow)for(;x--&&!w;)c=s[x],c&&(d=c._getHoveredPlot&&c._getHoveredPlot(u,v),d&&d.hovered&&(w=!0,d.datasetIndex=x,g=k.getMouseEvents(a,d.datasetIndex,d.pointIndex)));if((!w||g&&g.fireOut)&&void 0!==y&&s[y]&&s[y]._firePlotEvent&&(g&&!g.events.length?k.mouseoutTimer=setTimeout(function(){h.mouseoutHandler(a,y,z)},20):(h.mouseoutHandler(a,y,z),clearTimeout(k.mouseoutTimer))),w)for(f=g.events&&g.events.length,f&&(k._lastDatasetIndex=d.datasetIndex,z=k._lastPointIndex=d.pointIndex),e=0;e<f;e+=1)c&&c._firePlotEvent&&c._firePlotEvent(g.events[e],z,a)}_checkInvalidSpecificData(){let a=this.getFromEnv('dataSource');if(!a.data)return!0}addData(){var a=this.getFromEnv('ref'),b=a.algorithmFactory,c=Array.prototype.slice.call(arguments,0);c.unshift('addData'),c.unshift(this._getCleanValue()),b.realTimeUpdate.apply(this,c)}removeData(){var a=this.getFromEnv('ref'),b=a.algorithmFactory,c=Array.prototype.slice.call(arguments,0);c.unshift('deleteData'),c.unshift(this._getCleanValue()),b.realTimeUpdate.apply(this,c)}triggerKDTreePartioning(){var a=this.getDatasets()[0];a.addJob('partitioning',a.kdTreePartioning.bind(a),priorityList.tracker)}resetSingleTracker(){var a=this.getDatasets()[0],b=a&&a.graphics&&a.graphics.singleTracker;b&&b.attr({x:0,y:0,width:0,height:0,stroke:'rgba(255,255,255,0)',"fill-opacity":0})}_manageLegendSpace(){_manageLegendSpace.call(this)}manageGradientLegendSpace(a){return manageGradientLegendSpace.call(this,a)}flushKDTree(){var a=this.getDatasets()[0];a.kdTree={}}_createToolBox(){super._createToolBox();let a,b=this,c=b.config,d='t'===c.toolbarVAlign?'chartMenuBar':'actionBar',e=b.getFromEnv('tool-config');a=b.getChildren(d)[0];for(let c=0;2>c;c++)a.attachChild(Tool,'tool',`${0===c?'home':'back'}-${a.getId()}-${b.getId()}`);a.getChild(`back-${a.getId()}-${b.getId()}`).configure(Object.assign({},e,{name:'backIcon',isHidden:!0})),a.getChild(`home-${a.getId()}-${b.getId()}`).configure(Object.assign({},e,{name:'homeIcon',isHidden:!0})),b.addToEnv('toolbarBtns',{back:a.getChild(`back-${a.getId()}-${b.getId()}`),home:a.getChild(`home-${a.getId()}-${b.getId()}`)})}_getCleanValue(){let a=this.getFromEnv('number-formatter');return function(b){return a.getCleanValue(b)}}getDSdef(){return TreeMapDS}}export default TreeMap;