quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 1.29 kB
JavaScript
import merge from'ramda/es/merge';import TimeNavigator from'../../../_internal/components/time-navigator';import{componentFactory}from'../../../../../fc-core/src/lib';import panelConfig from'./_utils/panel-configurer';const DEFAULT_AXIS_X={orientation:'bottom',align:'bottom',visible:!0,overlap:!0,dayinmajor:!0,stickycontextlabel:!1,scalemode:'random',skipinfo:{minor:!0},offset:{x:2,y:2}},DEFAULT_AXIS_Y={orientation:'left',align:'left',visible:!0,overlap:!1},hydrateX=merge(DEFAULT_AXIS_X),hydrateY=merge(DEFAULT_AXIS_Y);export default(a=>{const b=a.config,c=b.contextAxesX||[],d=b.contextAxesY||[],e=(b.contextPanels||[]).map(a=>merge(a,{x:a.x.map(a=>merge(hydrateX(a),panelConfig(c,a.index))),y:a.y.map(a=>merge(hydrateY(a),merge(panelConfig(d,a.index),{plottype:'line'})))})),f=a.config.contextTableMap,g=a.getFocusLimit(),h=e.map(a=>merge(a,{tableMap:f,values:g}));if(componentFactory(a,TimeNavigator,'timeNavigator',e.length,h),b.contextPanels=h,a.getChildren('timeNavigator')){const b=a.getChildren('timeNavigator')[0],c=b.getChildren('brush'),d=b.getChildren('scrollbar');b.attachHandlers(),b.addExtEventListener('focusLimitChanged',()=>{b.config.values=a.getFocusLimit(),b.setChildDimension(),c[0]&&c[0].asyncDraw&&c[0].asyncDraw(),d[0]&&d[0].asyncDraw&&d[0].asyncDraw()},a)}});