{"ast":null,"code":"import _defineProperty2 from \"@babel/runtime/helpers/defineProperty\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _get from \"@babel/runtime/helpers/get\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nvar _excluded = [\"enabled\"];\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty2(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nimport { State } from \"../../State\";\nimport { EventTypes } from \"../interfaces\";\nimport GestureHandler from \"./GestureHandler\";\nvar DEFAULT_MAX_DURATION_MS = 500;\nvar DEFAULT_MAX_DELAY_MS = 500;\nvar DEFAULT_NUMBER_OF_TAPS = 1;\nvar DEFAULT_MIN_NUMBER_OF_POINTERS = 1;\nvar TapGestureHandler = function (_GestureHandler) {\n _inherits(TapGestureHandler, _GestureHandler);\n var _super = _createSuper(TapGestureHandler);\n function TapGestureHandler() {\n var _this;\n _classCallCheck(this, TapGestureHandler);\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n _this = _super.call.apply(_super, [this].concat(args));\n _defineProperty(_assertThisInitialized(_this), \"maxDeltaX\", Number.MIN_SAFE_INTEGER);\n _defineProperty(_assertThisInitialized(_this), \"maxDeltaY\", Number.MIN_SAFE_INTEGER);\n _defineProperty(_assertThisInitialized(_this), \"maxDistSq\", Number.MIN_SAFE_INTEGER);\n _defineProperty(_assertThisInitialized(_this), \"maxDurationMs\", DEFAULT_MAX_DURATION_MS);\n _defineProperty(_assertThisInitialized(_this), \"maxDelayMs\", DEFAULT_MAX_DELAY_MS);\n _defineProperty(_assertThisInitialized(_this), \"numberOfTaps\", DEFAULT_NUMBER_OF_TAPS);\n _defineProperty(_assertThisInitialized(_this), \"minNumberOfPointers\", DEFAULT_MIN_NUMBER_OF_POINTERS);\n _defineProperty(_assertThisInitialized(_this), \"currentMaxNumberOfPointers\", 1);\n _defineProperty(_assertThisInitialized(_this), \"startX\", 0);\n _defineProperty(_assertThisInitialized(_this), \"startY\", 0);\n _defineProperty(_assertThisInitialized(_this), \"offsetX\", 0);\n _defineProperty(_assertThisInitialized(_this), \"offsetY\", 0);\n _defineProperty(_assertThisInitialized(_this), \"lastX\", 0);\n _defineProperty(_assertThisInitialized(_this), \"lastY\", 0);\n _defineProperty(_assertThisInitialized(_this), \"waitTimeout\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"delayTimeout\", void 0);\n _defineProperty(_assertThisInitialized(_this), \"tapsSoFar\", 0);\n return _this;\n }\n _createClass(TapGestureHandler, [{\n key: \"init\",\n value: function init(ref, propsRef) {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"init\", this).call(this, ref, propsRef);\n }\n }, {\n key: \"updateGestureConfig\",\n value: function updateGestureConfig(_ref) {\n var _ref$enabled = _ref.enabled,\n enabled = _ref$enabled === void 0 ? true : _ref$enabled,\n props = _objectWithoutProperties(_ref, _excluded);\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"updateGestureConfig\", this).call(this, _objectSpread({\n enabled: enabled\n }, props));\n if (this.config.numberOfTaps !== undefined) {\n this.numberOfTaps = this.config.numberOfTaps;\n }\n if (this.config.maxDurationMs !== undefined) {\n this.maxDurationMs = this.config.maxDurationMs;\n }\n if (this.config.maxDelayMs !== undefined) {\n this.maxDelayMs = this.config.maxDelayMs;\n }\n if (this.config.maxDeltaX !== undefined) {\n this.maxDeltaX = this.config.maxDeltaX;\n }\n if (this.config.maxDeltaY !== undefined) {\n this.maxDeltaY = this.config.maxDeltaY;\n }\n if (this.config.maxDist !== undefined) {\n this.maxDistSq = this.config.maxDist * this.config.maxDist;\n }\n if (this.config.minPointers !== undefined) {\n this.minNumberOfPointers = this.config.minPointers;\n }\n }\n }, {\n key: \"resetConfig\",\n value: function resetConfig() {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"resetConfig\", this).call(this);\n this.maxDeltaX = Number.MIN_SAFE_INTEGER;\n this.maxDeltaY = Number.MIN_SAFE_INTEGER;\n this.maxDistSq = Number.MIN_SAFE_INTEGER;\n this.maxDurationMs = DEFAULT_MAX_DURATION_MS;\n this.maxDelayMs = DEFAULT_MAX_DELAY_MS;\n this.numberOfTaps = DEFAULT_NUMBER_OF_TAPS;\n this.minNumberOfPointers = DEFAULT_MIN_NUMBER_OF_POINTERS;\n }\n }, {\n key: \"transformNativeEvent\",\n value: function transformNativeEvent() {\n var rect = this.view.getBoundingClientRect();\n return {\n x: this.tracker.getLastAvgX() - rect.left,\n y: this.tracker.getLastAvgY() - rect.top,\n absoluteX: this.tracker.getLastAvgX(),\n absoluteY: this.tracker.getLastAvgY()\n };\n }\n }, {\n key: \"clearTimeouts\",\n value: function clearTimeouts() {\n clearTimeout(this.waitTimeout);\n clearTimeout(this.delayTimeout);\n }\n }, {\n key: \"startTap\",\n value: function startTap() {\n var _this2 = this;\n this.clearTimeouts();\n this.waitTimeout = setTimeout(function () {\n return _this2.fail();\n }, this.maxDurationMs);\n }\n }, {\n key: \"endTap\",\n value: function endTap() {\n var _this3 = this;\n this.clearTimeouts();\n if (++this.tapsSoFar === this.numberOfTaps && this.currentMaxNumberOfPointers >= this.minNumberOfPointers) {\n this.activate();\n } else {\n this.delayTimeout = setTimeout(function () {\n return _this3.fail();\n }, this.maxDelayMs);\n }\n }\n }, {\n key: \"onPointerDown\",\n value: function onPointerDown(event) {\n this.tracker.addToTracker(event);\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerDown\", this).call(this, event);\n this.trySettingPosition(event);\n this.startX = event.x;\n this.startY = event.y;\n this.lastX = event.x;\n this.lastY = event.y;\n this.updateState(event);\n }\n }, {\n key: \"onPointerAdd\",\n value: function onPointerAdd(event) {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerAdd\", this).call(this, event);\n this.tracker.addToTracker(event);\n this.trySettingPosition(event);\n this.offsetX += this.lastX - this.startX;\n this.offsetY += this.lastY - this.startY;\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n this.startX = this.tracker.getLastAvgX();\n this.startY = this.tracker.getLastAvgY();\n this.updateState(event);\n }\n }, {\n key: \"onPointerUp\",\n value: function onPointerUp(event) {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerUp\", this).call(this, event);\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n this.tracker.removeFromTracker(event.pointerId);\n this.updateState(event);\n }\n }, {\n key: \"onPointerRemove\",\n value: function onPointerRemove(event) {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerRemove\", this).call(this, event);\n this.tracker.removeFromTracker(event.pointerId);\n this.offsetX += this.lastX - this.startX;\n this.offsetY += this.lastY = this.startY;\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n this.startX = this.lastX;\n this.startY = this.lastY;\n this.updateState(event);\n }\n }, {\n key: \"onPointerMove\",\n value: function onPointerMove(event) {\n this.trySettingPosition(event);\n this.tracker.track(event);\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n this.updateState(event);\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerMove\", this).call(this, event);\n }\n }, {\n key: \"onPointerOutOfBounds\",\n value: function onPointerOutOfBounds(event) {\n this.trySettingPosition(event);\n this.tracker.track(event);\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n this.updateState(event);\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerOutOfBounds\", this).call(this, event);\n }\n }, {\n key: \"onPointerCancel\",\n value: function onPointerCancel(event) {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"onPointerCancel\", this).call(this, event);\n this.tracker.resetTracker();\n this.fail();\n }\n }, {\n key: \"updateState\",\n value: function updateState(event) {\n if (this.currentMaxNumberOfPointers < this.tracker.getTrackedPointersCount()) {\n this.currentMaxNumberOfPointers = this.tracker.getTrackedPointersCount();\n }\n if (this.shouldFail()) {\n this.fail();\n return;\n }\n switch (this.currentState) {\n case State.UNDETERMINED:\n if (event.eventType === EventTypes.DOWN) {\n this.begin();\n }\n this.startTap();\n break;\n case State.BEGAN:\n if (event.eventType === EventTypes.UP) {\n this.endTap();\n }\n if (event.eventType === EventTypes.DOWN) {\n this.startTap();\n }\n break;\n default:\n break;\n }\n }\n }, {\n key: \"trySettingPosition\",\n value: function trySettingPosition(event) {\n if (this.currentState !== State.UNDETERMINED) {\n return;\n }\n this.offsetX = 0;\n this.offsetY = 0;\n this.startX = event.x;\n this.startY = event.y;\n }\n }, {\n key: \"shouldFail\",\n value: function shouldFail() {\n var dx = this.lastX - this.startX + this.offsetX;\n if (this.maxDeltaX !== Number.MIN_SAFE_INTEGER && Math.abs(dx) > this.maxDeltaX) {\n return true;\n }\n var dy = this.lastY - this.startY + this.offsetY;\n if (this.maxDeltaY !== Number.MIN_SAFE_INTEGER && Math.abs(dy) > this.maxDeltaY) {\n return true;\n }\n var distSq = dy * dy + dx * dx;\n return this.maxDistSq !== Number.MIN_SAFE_INTEGER && distSq > this.maxDistSq;\n }\n }, {\n key: \"activate\",\n value: function activate() {\n _get(_getPrototypeOf(TapGestureHandler.prototype), \"activate\", this).call(this);\n this.end();\n }\n }, {\n key: \"onCancel\",\n value: function onCancel() {\n this.resetProgress();\n this.clearTimeouts();\n }\n }, {\n key: \"resetProgress\",\n value: function resetProgress() {\n this.clearTimeouts();\n this.tapsSoFar = 0;\n this.currentMaxNumberOfPointers = 0;\n }\n }]);\n return TapGestureHandler;\n}(GestureHandler);\nexport { TapGestureHandler as default };","map":{"version":3,"mappings":"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","names":["State","EventTypes","GestureHandler","DEFAULT_MAX_DURATION_MS","DEFAULT_MAX_DELAY_MS","DEFAULT_NUMBER_OF_TAPS","DEFAULT_MIN_NUMBER_OF_POINTERS","TapGestureHandler","args","_defineProperty","Number","MIN_SAFE_INTEGER","init","ref","propsRef","updateGestureConfig","enabled","props","config","numberOfTaps","undefined","maxDurationMs","maxDelayMs","maxDeltaX","maxDeltaY","maxDist","maxDistSq","minPointers","minNumberOfPointers","resetConfig","transformNativeEvent","rect","view","getBoundingClientRect","x","tracker","getLastAvgX","left","y","getLastAvgY","top","absoluteX","absoluteY","clearTimeouts","clearTimeout","waitTimeout","delayTimeout","startTap","setTimeout","fail","endTap","tapsSoFar","currentMaxNumberOfPointers","activate","onPointerDown","event","addToTracker","trySettingPosition","startX","startY","lastX","lastY","updateState","onPointerAdd","offsetX","offsetY","onPointerUp","removeFromTracker","pointerId","onPointerRemove","onPointerMove","track","onPointerOutOfBounds","onPointerCancel","resetTracker","getTrackedPointersCount","shouldFail","currentState","UNDETERMINED","eventType","DOWN","begin","BEGAN","UP","dx","Math","abs","dy","distSq","end","onCancel","resetProgress"],"sources":["/Users/mathildejean/Documents/BUT/LaSuperMeteo/LaSuperMeteo/iut-expo-starter/node_modules/react-native-gesture-handler/lib/module/web/handlers/TapGestureHandler.ts"],"sourcesContent":["import { State } from '../../State';\nimport { AdaptedEvent, Config, EventTypes } from '../interfaces';\n\nimport GestureHandler from './GestureHandler';\n\nconst DEFAULT_MAX_DURATION_MS = 500;\nconst DEFAULT_MAX_DELAY_MS = 500;\nconst DEFAULT_NUMBER_OF_TAPS = 1;\nconst DEFAULT_MIN_NUMBER_OF_POINTERS = 1;\n\nexport default class TapGestureHandler extends GestureHandler {\n private maxDeltaX = Number.MIN_SAFE_INTEGER;\n private maxDeltaY = Number.MIN_SAFE_INTEGER;\n private maxDistSq = Number.MIN_SAFE_INTEGER;\n private maxDurationMs = DEFAULT_MAX_DURATION_MS;\n private maxDelayMs = DEFAULT_MAX_DELAY_MS;\n\n private numberOfTaps = DEFAULT_NUMBER_OF_TAPS;\n private minNumberOfPointers = DEFAULT_MIN_NUMBER_OF_POINTERS;\n private currentMaxNumberOfPointers = 1;\n\n private startX = 0;\n private startY = 0;\n private offsetX = 0;\n private offsetY = 0;\n private lastX = 0;\n private lastY = 0;\n\n private waitTimeout: number | undefined;\n private delayTimeout: number | undefined;\n\n private tapsSoFar = 0;\n\n public init(ref: number, propsRef: React.RefObject): void {\n super.init(ref, propsRef);\n }\n\n public updateGestureConfig({ enabled = true, ...props }: Config): void {\n super.updateGestureConfig({ enabled: enabled, ...props });\n\n if (this.config.numberOfTaps !== undefined) {\n this.numberOfTaps = this.config.numberOfTaps;\n }\n\n if (this.config.maxDurationMs !== undefined) {\n this.maxDurationMs = this.config.maxDurationMs;\n }\n\n if (this.config.maxDelayMs !== undefined) {\n this.maxDelayMs = this.config.maxDelayMs;\n }\n\n if (this.config.maxDeltaX !== undefined) {\n this.maxDeltaX = this.config.maxDeltaX;\n }\n\n if (this.config.maxDeltaY !== undefined) {\n this.maxDeltaY = this.config.maxDeltaY;\n }\n\n if (this.config.maxDist !== undefined) {\n this.maxDistSq = this.config.maxDist * this.config.maxDist;\n }\n\n if (this.config.minPointers !== undefined) {\n this.minNumberOfPointers = this.config.minPointers;\n }\n }\n\n protected resetConfig(): void {\n super.resetConfig();\n\n this.maxDeltaX = Number.MIN_SAFE_INTEGER;\n this.maxDeltaY = Number.MIN_SAFE_INTEGER;\n this.maxDistSq = Number.MIN_SAFE_INTEGER;\n this.maxDurationMs = DEFAULT_MAX_DURATION_MS;\n this.maxDelayMs = DEFAULT_MAX_DELAY_MS;\n this.numberOfTaps = DEFAULT_NUMBER_OF_TAPS;\n this.minNumberOfPointers = DEFAULT_MIN_NUMBER_OF_POINTERS;\n }\n\n protected transformNativeEvent() {\n const rect: DOMRect = this.view.getBoundingClientRect();\n\n return {\n x: this.tracker.getLastAvgX() - rect.left,\n y: this.tracker.getLastAvgY() - rect.top,\n absoluteX: this.tracker.getLastAvgX(),\n absoluteY: this.tracker.getLastAvgY(),\n };\n }\n\n private clearTimeouts(): void {\n clearTimeout(this.waitTimeout);\n clearTimeout(this.delayTimeout);\n }\n\n private startTap(): void {\n this.clearTimeouts();\n\n this.waitTimeout = setTimeout(() => this.fail(), this.maxDurationMs);\n }\n\n private endTap(): void {\n this.clearTimeouts();\n\n if (\n ++this.tapsSoFar === this.numberOfTaps &&\n this.currentMaxNumberOfPointers >= this.minNumberOfPointers\n ) {\n this.activate();\n } else {\n this.delayTimeout = setTimeout(() => this.fail(), this.maxDelayMs);\n }\n }\n\n //Handling Events\n protected onPointerDown(event: AdaptedEvent): void {\n this.tracker.addToTracker(event);\n super.onPointerDown(event);\n\n this.trySettingPosition(event);\n\n this.startX = event.x;\n this.startY = event.y;\n\n this.lastX = event.x;\n this.lastY = event.y;\n\n this.updateState(event);\n }\n\n protected onPointerAdd(event: AdaptedEvent): void {\n super.onPointerAdd(event);\n this.tracker.addToTracker(event);\n this.trySettingPosition(event);\n\n this.offsetX += this.lastX - this.startX;\n this.offsetY += this.lastY - this.startY;\n\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n\n this.startX = this.tracker.getLastAvgX();\n this.startY = this.tracker.getLastAvgY();\n\n this.updateState(event);\n }\n\n protected onPointerUp(event: AdaptedEvent): void {\n super.onPointerUp(event);\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n\n this.tracker.removeFromTracker(event.pointerId);\n\n this.updateState(event);\n }\n\n protected onPointerRemove(event: AdaptedEvent): void {\n super.onPointerRemove(event);\n this.tracker.removeFromTracker(event.pointerId);\n\n this.offsetX += this.lastX - this.startX;\n this.offsetY += this.lastY = this.startY;\n\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n\n this.startX = this.lastX;\n this.startY = this.lastY;\n\n this.updateState(event);\n }\n\n protected onPointerMove(event: AdaptedEvent): void {\n this.trySettingPosition(event);\n this.tracker.track(event);\n\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n\n this.updateState(event);\n\n super.onPointerMove(event);\n }\n\n protected onPointerOutOfBounds(event: AdaptedEvent): void {\n this.trySettingPosition(event);\n this.tracker.track(event);\n\n this.lastX = this.tracker.getLastAvgX();\n this.lastY = this.tracker.getLastAvgY();\n\n this.updateState(event);\n\n super.onPointerOutOfBounds(event);\n }\n\n protected onPointerCancel(event: AdaptedEvent): void {\n super.onPointerCancel(event);\n this.tracker.resetTracker();\n this.fail();\n }\n\n private updateState(event: AdaptedEvent): void {\n if (\n this.currentMaxNumberOfPointers < this.tracker.getTrackedPointersCount()\n ) {\n this.currentMaxNumberOfPointers = this.tracker.getTrackedPointersCount();\n }\n\n if (this.shouldFail()) {\n this.fail();\n return;\n }\n\n switch (this.currentState) {\n case State.UNDETERMINED:\n if (event.eventType === EventTypes.DOWN) {\n this.begin();\n }\n this.startTap();\n break;\n case State.BEGAN:\n if (event.eventType === EventTypes.UP) {\n this.endTap();\n }\n if (event.eventType === EventTypes.DOWN) {\n this.startTap();\n }\n break;\n default:\n break;\n }\n }\n\n private trySettingPosition(event: AdaptedEvent): void {\n if (this.currentState !== State.UNDETERMINED) {\n return;\n }\n\n this.offsetX = 0;\n this.offsetY = 0;\n this.startX = event.x;\n this.startY = event.y;\n }\n\n private shouldFail(): boolean {\n const dx = this.lastX - this.startX + this.offsetX;\n\n if (\n this.maxDeltaX !== Number.MIN_SAFE_INTEGER &&\n Math.abs(dx) > this.maxDeltaX\n ) {\n return true;\n }\n\n const dy = this.lastY - this.startY + this.offsetY;\n if (\n this.maxDeltaY !== Number.MIN_SAFE_INTEGER &&\n Math.abs(dy) > this.maxDeltaY\n ) {\n return true;\n }\n\n const distSq = dy * dy + dx * dx;\n\n return (\n this.maxDistSq !== Number.MIN_SAFE_INTEGER && distSq > this.maxDistSq\n );\n }\n\n public activate(): void {\n super.activate();\n\n this.end();\n }\n\n protected onCancel(): void {\n this.resetProgress();\n this.clearTimeouts();\n }\n\n protected resetProgress(): void {\n this.clearTimeouts();\n this.tapsSoFar = 0;\n this.currentMaxNumberOfPointers = 0;\n }\n}\n"]},"metadata":{},"sourceType":"module","externalDependencies":[]}