{"ast":null,"code":"import { __assign } from \"tslib\";\nimport { getPosition } from './get-position';\nvar Tracker = /** @class */function () {\n  function Tracker(touch) {\n    this.velocityMultiplier = window.devicePixelRatio;\n    this.updateTime = Date.now();\n    this.delta = {\n      x: 0,\n      y: 0\n    };\n    this.velocity = {\n      x: 0,\n      y: 0\n    };\n    this.lastPosition = {\n      x: 0,\n      y: 0\n    };\n    this.lastPosition = getPosition(touch);\n  }\n  Tracker.prototype.update = function (touch) {\n    var _a = this,\n      velocity = _a.velocity,\n      updateTime = _a.updateTime,\n      lastPosition = _a.lastPosition;\n    var now = Date.now();\n    var position = getPosition(touch);\n    var delta = {\n      x: -(position.x - lastPosition.x),\n      y: -(position.y - lastPosition.y)\n    };\n    var duration = now - updateTime || 16.7;\n    var vx = delta.x / duration * 16.7;\n    var vy = delta.y / duration * 16.7;\n    velocity.x = vx * this.velocityMultiplier;\n    velocity.y = vy * this.velocityMultiplier;\n    this.delta = delta;\n    this.updateTime = now;\n    this.lastPosition = position;\n  };\n  return Tracker;\n}();\nexport { Tracker };\nvar TouchRecord = /** @class */function () {\n  function TouchRecord() {\n    this._touchList = {};\n  }\n  Object.defineProperty(TouchRecord.prototype, \"_primitiveValue\", {\n    get: function () {\n      return {\n        x: 0,\n        y: 0\n      };\n    },\n    enumerable: true,\n    configurable: true\n  });\n  TouchRecord.prototype.isActive = function () {\n    return this._activeTouchID !== undefined;\n  };\n  TouchRecord.prototype.getDelta = function () {\n    var tracker = this._getActiveTracker();\n    if (!tracker) {\n      return this._primitiveValue;\n    }\n    return __assign({}, tracker.delta);\n  };\n  TouchRecord.prototype.getVelocity = function () {\n    var tracker = this._getActiveTracker();\n    if (!tracker) {\n      return this._primitiveValue;\n    }\n    return __assign({}, tracker.velocity);\n  };\n  TouchRecord.prototype.getEasingDistance = function (damping) {\n    var deAcceleration = 1 - damping;\n    var distance = {\n      x: 0,\n      y: 0\n    };\n    var vel = this.getVelocity();\n    Object.keys(vel).forEach(function (dir) {\n      // ignore small velocity\n      var v = Math.abs(vel[dir]) <= 10 ? 0 : vel[dir];\n      while (v !== 0) {\n        distance[dir] += v;\n        v = v * deAcceleration | 0;\n      }\n    });\n    return distance;\n  };\n  TouchRecord.prototype.track = function (evt) {\n    var _this = this;\n    var targetTouches = evt.targetTouches;\n    Array.from(targetTouches).forEach(function (touch) {\n      _this._add(touch);\n    });\n    return this._touchList;\n  };\n  TouchRecord.prototype.update = function (evt) {\n    var _this = this;\n    var touches = evt.touches,\n      changedTouches = evt.changedTouches;\n    Array.from(touches).forEach(function (touch) {\n      _this._renew(touch);\n    });\n    this._setActiveID(changedTouches);\n    return this._touchList;\n  };\n  TouchRecord.prototype.release = function (evt) {\n    var _this = this;\n    delete this._activeTouchID;\n    Array.from(evt.changedTouches).forEach(function (touch) {\n      _this._delete(touch);\n    });\n  };\n  TouchRecord.prototype._add = function (touch) {\n    if (this._has(touch)) {\n      // reset tracker\n      this._delete(touch);\n    }\n    var tracker = new Tracker(touch);\n    this._touchList[touch.identifier] = tracker;\n  };\n  TouchRecord.prototype._renew = function (touch) {\n    if (!this._has(touch)) {\n      return;\n    }\n    var tracker = this._touchList[touch.identifier];\n    tracker.update(touch);\n  };\n  TouchRecord.prototype._delete = function (touch) {\n    delete this._touchList[touch.identifier];\n  };\n  TouchRecord.prototype._has = function (touch) {\n    return this._touchList.hasOwnProperty(touch.identifier);\n  };\n  TouchRecord.prototype._setActiveID = function (touches) {\n    this._activeTouchID = touches[touches.length - 1].identifier;\n  };\n  TouchRecord.prototype._getActiveTracker = function () {\n    var _a = this,\n      _touchList = _a._touchList,\n      _activeTouchID = _a._activeTouchID;\n    return _touchList[_activeTouchID];\n  };\n  return TouchRecord;\n}();\nexport { TouchRecord };","map":{"version":3,"names":["getPosition","Tracker","touch","velocityMultiplier","window","devicePixelRatio","updateTime","Date","now","delta","x","y","velocity","lastPosition","prototype","update","_a","position","duration","vx","vy","TouchRecord","_touchList","Object","defineProperty","get","isActive","_activeTouchID","undefined","getDelta","tracker","_getActiveTracker","_primitiveValue","__assign","getVelocity","getEasingDistance","damping","deAcceleration","distance","vel","keys","forEach","dir","v","Math","abs","track","evt","_this","targetTouches","Array","from","_add","touches","changedTouches","_renew","_setActiveID","release","_delete","_has","identifier","hasOwnProperty","length"],"sources":["C:\\Users\\user\\Desktop\\000newport\\node_modules\\smooth-scrollbar\\src\\utils\\touch-record.ts"],"sourcesContent":["import { getPosition } from './get-position';\n\nexport class Tracker {\n  readonly velocityMultiplier = window.devicePixelRatio;\n\n  updateTime = Date.now();\n  delta = { x: 0, y: 0 };\n  velocity = { x: 0, y: 0 };\n  lastPosition = { x: 0, y: 0 };\n\n  constructor(touch: Touch) {\n    this.lastPosition = getPosition(touch);\n  }\n\n  update(touch: Touch) {\n    const {\n      velocity,\n      updateTime,\n      lastPosition,\n    } = this;\n\n    const now = Date.now();\n    const position = getPosition(touch);\n\n    const delta = {\n      x: -(position.x - lastPosition.x),\n      y: -(position.y - lastPosition.y),\n    };\n\n    const duration = (now - updateTime) || 16.7;\n    const vx = delta.x / duration * 16.7;\n    const vy = delta.y / duration * 16.7;\n    velocity.x = vx * this.velocityMultiplier;\n    velocity.y = vy * this.velocityMultiplier;\n\n    this.delta = delta;\n    this.updateTime = now;\n    this.lastPosition = position;\n  }\n}\n\nexport class TouchRecord {\n  private _activeTouchID: number;\n  private _touchList: { [id: number]: Tracker } = {};\n\n  private get _primitiveValue() {\n    return { x: 0, y: 0 };\n  }\n\n  isActive() {\n    return this._activeTouchID !== undefined;\n  }\n\n  getDelta() {\n    const tracker = this._getActiveTracker();\n\n    if (!tracker) {\n      return this._primitiveValue;\n    }\n\n    return { ...tracker.delta };\n  }\n\n  getVelocity() {\n    const tracker = this._getActiveTracker();\n\n    if (!tracker) {\n      return this._primitiveValue;\n    }\n\n    return { ...tracker.velocity };\n  }\n\n  getEasingDistance(damping: number) {\n    const deAcceleration = 1 - damping;\n\n    let distance = {\n      x: 0,\n      y: 0,\n    };\n\n    const vel = this.getVelocity();\n\n    Object.keys(vel).forEach(dir => {\n      // ignore small velocity\n      let v = Math.abs(vel[dir]) <= 10 ? 0 : vel[dir];\n\n      while (v !== 0) {\n        distance[dir] += v;\n        v = (v * deAcceleration) | 0;\n      }\n    });\n\n    return distance;\n  }\n\n  track(evt: TouchEvent) {\n    const {\n      targetTouches,\n    } = evt;\n\n    Array.from(targetTouches).forEach(touch => {\n      this._add(touch);\n    });\n\n    return this._touchList;\n  }\n\n  update(evt: TouchEvent) {\n    const {\n      touches,\n      changedTouches,\n    } = evt;\n\n    Array.from(touches).forEach(touch => {\n      this._renew(touch);\n    });\n\n    this._setActiveID(changedTouches);\n\n    return this._touchList;\n  }\n\n  release(evt: TouchEvent) {\n    delete this._activeTouchID;\n\n    Array.from(evt.changedTouches).forEach(touch => {\n      this._delete(touch);\n    });\n  }\n\n  private _add(touch: Touch) {\n    if (this._has(touch)) {\n      // reset tracker\n      this._delete(touch);\n    }\n\n    const tracker = new Tracker(touch);\n\n    this._touchList[touch.identifier] = tracker;\n  }\n\n  private _renew(touch: Touch) {\n    if (!this._has(touch)) {\n      return;\n    }\n\n    const tracker = this._touchList[touch.identifier];\n\n    tracker.update(touch);\n  }\n\n  private _delete(touch: Touch) {\n    delete this._touchList[touch.identifier];\n  }\n\n  private _has(touch: Touch): boolean {\n    return this._touchList.hasOwnProperty(touch.identifier);\n  }\n\n  private _setActiveID(touches: TouchList) {\n    this._activeTouchID = touches[touches.length - 1].identifier;\n  }\n\n  private _getActiveTracker(): Tracker {\n    const {\n      _touchList,\n      _activeTouchID,\n    } = this;\n\n    return _touchList[_activeTouchID];\n  }\n}\n"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}