UNPKG

1.39 kBJavaScriptView Raw
1var _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; };
2
3function PressEvent(nativeEvent) {
4 var _this = this;
5
6 this.nativeEvent = nativeEvent;
7 ['type', 'currentTarget', 'target', 'touches', 'changedTouches'].forEach(function (m) {
8 _this[m] = nativeEvent[m];
9 });
10 if (!nativeEvent.$pressSeq) {
11 nativeEvent.$pressSeq = 1;
12 } else {
13 nativeEvent.$pressSeq += 1;
14 }
15 this.$pressSeq = nativeEvent.$pressSeq;
16}
17PressEvent.prototype = _extends({}, PressEvent.prototype, {
18 preventDefault: function preventDefault() {
19 this.nativeEvent.preventDefault();
20 },
21 stopPropagation: function stopPropagation() {
22 var nativeEvent = this.nativeEvent,
23 $pressSeq = this.$pressSeq;
24
25 if (nativeEvent.$stopPressSeq) {
26 return;
27 }
28 nativeEvent.$stopPressSeq = $pressSeq;
29 }
30});
31// because of setTimeout, can not depend on fire order
32export function shouldFirePress(e) {
33 var nativeEvent = e.nativeEvent,
34 $pressSeq = e.$pressSeq;
35
36 if (!nativeEvent.$stopPressSeq) {
37 return true;
38 }
39 return nativeEvent.$stopPressSeq >= $pressSeq;
40}
41export default PressEvent;
\No newline at end of file