UNPKG

1.13 kBJavaScriptView Raw
1import _extends from 'babel-runtime/helpers/extends';
2function PressEvent(nativeEvent) {
3 var _this = this;
4
5 this.nativeEvent = nativeEvent;
6 ['type', 'currentTarget', 'target', 'touches', 'changedTouches'].forEach(function (m) {
7 _this[m] = nativeEvent[m];
8 });
9 if (!nativeEvent.$pressSeq) {
10 nativeEvent.$pressSeq = 1;
11 } else {
12 nativeEvent.$pressSeq += 1;
13 }
14 this.$pressSeq = nativeEvent.$pressSeq;
15}
16PressEvent.prototype = _extends({}, PressEvent.prototype, {
17 preventDefault: function preventDefault() {
18 this.nativeEvent.preventDefault();
19 },
20 stopPropagation: function stopPropagation() {
21 var nativeEvent = this.nativeEvent,
22 $pressSeq = this.$pressSeq;
23
24 if (nativeEvent.$stopPressSeq) {
25 return;
26 }
27 nativeEvent.$stopPressSeq = $pressSeq;
28 }
29});
30export function shouldFirePress(e) {
31 var nativeEvent = e.nativeEvent,
32 $pressSeq = e.$pressSeq;
33
34 if (!nativeEvent.$stopPressSeq) {
35 return true;
36 }
37 return nativeEvent.$stopPressSeq >= $pressSeq;
38}
39export default PressEvent;
\No newline at end of file