quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 998 B
JavaScript
import{getMouseCoordinate}from'../../../fc-core/src/lib';let fireAssociatedEvent=(a,b)=>{let c=a.sender,d=c.getLinkedItem('owner'),e=c.getFromEnv('chart'),f=d&&d.getEventArgs?d.getEventArgs(c):{},g=getMouseCoordinate(c.getFromEnv('chart-container'),a,e);f.chartX=g.chartX,f.chartY=g.chartY,f.pageX=g.pageX,f.pageY=g.pageY,f.id=e.getId(),f.legendItemId=c.getId(),f.legendItemIndex=c.config.index,e.fireChartInstanceEvent(b,f,a)},manageLedendItemsEvent=a=>{a.addEventListener('fc-click',function(a){fireAssociatedEvent(a,'legendItemClicked')}),a.addEventListener('fc-mouseover',function(a){fireAssociatedEvent(a,'legendItemRollover')}),a.addEventListener('fc-mouseout',function(a){fireAssociatedEvent(a,'legendItemRollout')})},legendEventManagerLinker=a=>{let b;a.addEventListener('instantiated',function(a){b=a.sender,'legendItem'===b.getType()&&manageLedendItemsEvent(b)})};export default{extension:legendEventManagerLinker,name:'legendEventManagerLinker',type:'extension',requiresFusionCharts:!0};