UNPKG

1.51 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
8
9exports.shouldFirePress = shouldFirePress;
10function PressEvent(nativeEvent) {
11 var _this = this;
12
13 this.nativeEvent = nativeEvent;
14 ['type', 'currentTarget', 'target', 'touches', 'changedTouches'].forEach(function (m) {
15 _this[m] = nativeEvent[m];
16 });
17 if (!nativeEvent.$pressSeq) {
18 nativeEvent.$pressSeq = 1;
19 } else {
20 nativeEvent.$pressSeq += 1;
21 }
22 this.$pressSeq = nativeEvent.$pressSeq;
23}
24PressEvent.prototype = _extends({}, PressEvent.prototype, {
25 preventDefault: function preventDefault() {
26 this.nativeEvent.preventDefault();
27 },
28 stopPropagation: function stopPropagation() {
29 var nativeEvent = this.nativeEvent,
30 $pressSeq = this.$pressSeq;
31
32 if (nativeEvent.$stopPressSeq) {
33 return;
34 }
35 nativeEvent.$stopPressSeq = $pressSeq;
36 }
37});
38// because of setTimeout, can not depend on fire order
39function shouldFirePress(e) {
40 var nativeEvent = e.nativeEvent,
41 $pressSeq = e.$pressSeq;
42
43 if (!nativeEvent.$stopPressSeq) {
44 return true;
45 }
46 return nativeEvent.$stopPressSeq >= $pressSeq;
47}
48exports['default'] = PressEvent;
\No newline at end of file