UNPKG

1.43 kBJavaScriptView Raw
1'use strict';
2
3Object.defineProperty(exports, "__esModule", {
4 value: true
5});
6
7var _extends2 = require('babel-runtime/helpers/extends');
8
9var _extends3 = _interopRequireDefault(_extends2);
10
11exports.shouldFirePress = shouldFirePress;
12
13function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
14
15function PressEvent(nativeEvent) {
16 var _this = this;
17
18 this.nativeEvent = nativeEvent;
19 ['type', 'currentTarget', 'target', 'touches', 'changedTouches'].forEach(function (m) {
20 _this[m] = nativeEvent[m];
21 });
22 if (!nativeEvent.$pressSeq) {
23 nativeEvent.$pressSeq = 1;
24 } else {
25 nativeEvent.$pressSeq += 1;
26 }
27 this.$pressSeq = nativeEvent.$pressSeq;
28}
29PressEvent.prototype = (0, _extends3['default'])({}, PressEvent.prototype, {
30 preventDefault: function preventDefault() {
31 this.nativeEvent.preventDefault();
32 },
33 stopPropagation: function stopPropagation() {
34 var nativeEvent = this.nativeEvent,
35 $pressSeq = this.$pressSeq;
36
37 if (nativeEvent.$stopPressSeq) {
38 return;
39 }
40 nativeEvent.$stopPressSeq = $pressSeq;
41 }
42});
43function shouldFirePress(e) {
44 var nativeEvent = e.nativeEvent,
45 $pressSeq = e.$pressSeq;
46
47 if (!nativeEvent.$stopPressSeq) {
48 return true;
49 }
50 return nativeEvent.$stopPressSeq >= $pressSeq;
51}
52exports['default'] = PressEvent;
\No newline at end of file