function ZoomPanSelection(ctx) {
      var _this;
      _classCallCheck(this, ZoomPanSelection);
      _this = _super.call(this, ctx);
      _this.ctx = ctx;
      _this.w = ctx.w;
      _this.dragged = false;
      _this.graphics = new Graphics(_this.ctx);
      _this.eventList = ['mousedown', 'mouseleave', 'mousemove', 'touchstart', 'touchmove', 'mouseup', 'touchend', 'wheel'];
      _this.clientX = 0;
      _this.clientY = 0;
      _this.startX = 0;
      _this.endX = 0;
      _this.dragX = 0;
      _this.startY = 0;
      _this.endY = 0;
      _this.dragY = 0;
      _this.moveDirection = 'none';
      _this.debounceTimer = null;
      _this.debounceDelay = 100;
      _this.wheelDelay = 400;
      return _this;
    }
ApexCharts Zoom Class for handling zooming and panning on axes based charts.

@module ZoomPanSelection