quoslibero
Version:
FusionCharts JavaScript charting framework
1 lines • 738 B
JavaScript
import{getMouseCoordinate}from'../../../../../fc-core/src/lib';let startX,pinchStart=function(a){startX=a.originalEvent.data.distanceX},pinchMove=function(a){return function(b){let c,d,e=a.getLinkedParent(),f=a.config.xConfigs[0].scale,[g,h]=f.getRange(),i=b.originalEvent.data,j=i.distanceX,k=j-startX,l=getMouseCoordinate(a.getFromEnv('chart-container'),b.originalEvent,e),m=a.getTranslation(),n=m?m.x:0,o=l.chartX-n,p=o-g,q=h-o,r=p+q;startX=j,g+=2*k*p/r,h-=2*k*q/r,c=f.getDomainValue(g),d=f.getDomainValue(h),e.setFocusLimit([c,d])}};export default function(a){let b=a.config;b.enableInteraction&&!b.pinchEventAdded&&(a.addEventListener('fc-pinchstart',pinchStart),a.addEventListener('fc-pinchmove',pinchMove(a)),b.pinchEventAdded=!0)}