@tamagui/react-native-web-lite 2.0.0-1769665879528 → 2.0.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,7 +1,9 @@
1
+ var __create = Object.create;
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf,
6
+ __hasOwnProp = Object.prototype.hasOwnProperty;
5
7
  var __export = (target, all) => {
6
8
  for (var name in all) __defProp(target, name, {
7
9
  get: all[name],
@@ -15,19 +17,32 @@ var __export = (target, all) => {
15
17
  });
16
18
  return to;
17
19
  };
18
- var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
19
- value: !0
20
- }), mod);
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
26
+ value: mod,
27
+ enumerable: !0
28
+ }) : target, mod)),
29
+ __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
30
+ value: !0
31
+ }), mod);
21
32
  var PanResponder_exports = {};
22
33
  __export(PanResponder_exports, {
23
34
  PanResponder: () => PanResponder,
24
35
  default: () => PanResponder_default
25
36
  });
26
37
  module.exports = __toCommonJS(PanResponder_exports);
27
- const currentCentroidXOfTouchesChangedAfter = () => 0,
28
- currentCentroidYOfTouchesChangedAfter = () => 0,
29
- previousCentroidXOfTouchesChangedAfter = () => 0,
30
- previousCentroidYOfTouchesChangedAfter = () => 0,
38
+ var import_react_native_web_internals = require("@tamagui/react-native-web-internals"),
39
+ import_TouchHistoryMath = __toESM(require("../TouchHistoryMath/index.cjs"), 1);
40
+ const currentCentroidXOfTouchesChangedAfter = import_TouchHistoryMath.default.currentCentroidXOfTouchesChangedAfter,
41
+ currentCentroidYOfTouchesChangedAfter = import_TouchHistoryMath.default.currentCentroidYOfTouchesChangedAfter,
42
+ previousCentroidXOfTouchesChangedAfter = import_TouchHistoryMath.default.previousCentroidXOfTouchesChangedAfter,
43
+ previousCentroidYOfTouchesChangedAfter = import_TouchHistoryMath.default.previousCentroidYOfTouchesChangedAfter,
44
+ currentCentroidX = import_TouchHistoryMath.default.currentCentroidX,
45
+ currentCentroidY = import_TouchHistoryMath.default.currentCentroidY,
31
46
  PanResponder = {
32
47
  _initializeGestureState(gestureState) {
33
48
  gestureState.moveX = 0, gestureState.moveY = 0, gestureState.x0 = 0, gestureState.y0 = 0, gestureState.dx = 0, gestureState.dy = 0, gestureState.vx = 0, gestureState.vy = 0, gestureState.numberActiveTouches = 0, gestureState._accountsForMovesUpTo = 0;
@@ -36,15 +51,19 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
36
51
  gestureState.numberActiveTouches = touchHistory.numberActiveTouches, gestureState.moveX = currentCentroidXOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo), gestureState.moveY = currentCentroidYOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo);
37
52
  const movedAfter = gestureState._accountsForMovesUpTo,
38
53
  prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter),
54
+ x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter),
39
55
  prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter),
40
- nextDX = gestureState.dx + (gestureState.moveX - prevX),
41
- nextDY = gestureState.dy + (gestureState.moveY - prevY),
56
+ y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter),
57
+ nextDX = gestureState.dx + (x - prevX),
58
+ nextDY = gestureState.dy + (y - prevY),
42
59
  dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
43
60
  gestureState.vx = (nextDX - gestureState.dx) / dt, gestureState.vy = (nextDY - gestureState.dy) / dt, gestureState.dx = nextDX, gestureState.dy = nextDY, gestureState._accountsForMovesUpTo = touchHistory.mostRecentTimeStamp;
44
61
  },
45
62
  create(config) {
46
63
  const interactionState = {
47
- handle: null
64
+ handle: null,
65
+ shouldCancelClick: !1,
66
+ timeout: null
48
67
  },
49
68
  gestureState = {
50
69
  stateID: Math.random(),
@@ -61,21 +80,49 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
61
80
  };
62
81
  return {
63
82
  panHandlers: {
64
- onStartShouldSetResponder: evt => config.onStartShouldSetPanResponder ? config.onStartShouldSetPanResponder(evt, gestureState) : !1,
65
- onMoveShouldSetResponder: evt => config.onMoveShouldSetPanResponder ? config.onMoveShouldSetPanResponder(evt, gestureState) : !1,
66
- onResponderGrant: evt => {
67
- this._initializeGestureState(gestureState), gestureState.x0 = evt.nativeEvent.pageX || 0, gestureState.y0 = evt.nativeEvent.pageY || 0, config.onPanResponderGrant && config.onPanResponderGrant(evt, gestureState);
83
+ onStartShouldSetResponder(event) {
84
+ return config.onStartShouldSetPanResponder == null ? !1 : config.onStartShouldSetPanResponder(event, gestureState);
68
85
  },
69
- onResponderMove: evt => {
70
- evt.nativeEvent.touches && evt.nativeEvent.touches.length === 1 && this._updateGestureStateOnMove(gestureState, evt.nativeEvent), config.onPanResponderMove && config.onPanResponderMove(evt, gestureState);
86
+ onMoveShouldSetResponder(event) {
87
+ return config.onMoveShouldSetPanResponder == null ? !1 : config.onMoveShouldSetPanResponder(event, gestureState);
71
88
  },
72
- onResponderRelease: evt => {
73
- config.onPanResponderRelease && config.onPanResponderRelease(evt, gestureState), interactionState.handle && (interactionState.handle = null);
89
+ onStartShouldSetResponderCapture(event) {
90
+ return event.nativeEvent.touches.length === 1 && PanResponder._initializeGestureState(gestureState), gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches, config.onStartShouldSetPanResponderCapture != null ? config.onStartShouldSetPanResponderCapture(event, gestureState) : !1;
74
91
  },
75
- onResponderTerminate: evt => {
76
- config.onPanResponderTerminate && config.onPanResponderTerminate(evt, gestureState), interactionState.handle && (interactionState.handle = null);
92
+ onMoveShouldSetResponderCapture(event) {
93
+ const touchHistory = event.touchHistory;
94
+ return gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp ? !1 : (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onMoveShouldSetPanResponderCapture ? config.onMoveShouldSetPanResponderCapture(event, gestureState) : !1);
77
95
  },
78
- onResponderTerminationRequest: evt => config.onPanResponderTerminationRequest ? config.onPanResponderTerminationRequest(evt, gestureState) : !0
96
+ onResponderGrant(event) {
97
+ return interactionState.handle || (interactionState.handle = import_react_native_web_internals.InteractionManager.createInteractionHandle()), interactionState.timeout && clearInteractionTimeout(interactionState), interactionState.shouldCancelClick = !0, gestureState.x0 = currentCentroidX(event.touchHistory), gestureState.y0 = currentCentroidY(event.touchHistory), gestureState.dx = 0, gestureState.dy = 0, config.onPanResponderGrant && config.onPanResponderGrant(event, gestureState), config.onShouldBlockNativeResponder == null ? !0 : config.onShouldBlockNativeResponder(event, gestureState);
98
+ },
99
+ onResponderReject(event) {
100
+ clearInteractionHandle(interactionState, config.onPanResponderReject, event, gestureState);
101
+ },
102
+ onResponderRelease(event) {
103
+ clearInteractionHandle(interactionState, config.onPanResponderRelease, event, gestureState), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
104
+ },
105
+ onResponderStart(event) {
106
+ const touchHistory = event.touchHistory;
107
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, config.onPanResponderStart && config.onPanResponderStart(event, gestureState);
108
+ },
109
+ onResponderMove(event) {
110
+ const touchHistory = event.touchHistory;
111
+ gestureState._accountsForMovesUpTo !== touchHistory.mostRecentTimeStamp && (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onPanResponderMove && config.onPanResponderMove(event, gestureState));
112
+ },
113
+ onResponderEnd(event) {
114
+ const touchHistory = event.touchHistory;
115
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, clearInteractionHandle(interactionState, config.onPanResponderEnd, event, gestureState);
116
+ },
117
+ onResponderTerminate(event) {
118
+ clearInteractionHandle(interactionState, config.onPanResponderTerminate, event, gestureState), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
119
+ },
120
+ onResponderTerminationRequest(event) {
121
+ return config.onPanResponderTerminationRequest == null ? !0 : config.onPanResponderTerminationRequest(event, gestureState);
122
+ },
123
+ onClickCapture: event => {
124
+ interactionState.shouldCancelClick === !0 && (event.stopPropagation(), event.preventDefault());
125
+ }
79
126
  },
80
127
  getInteractionHandle() {
81
128
  return interactionState.handle;
@@ -83,4 +130,15 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
83
130
  };
84
131
  }
85
132
  };
133
+ function clearInteractionHandle(interactionState, callback, event, gestureState) {
134
+ interactionState.handle && (import_react_native_web_internals.InteractionManager.clearInteractionHandle(interactionState.handle), interactionState.handle = null), callback && callback(event, gestureState);
135
+ }
136
+ function clearInteractionTimeout(interactionState) {
137
+ clearTimeout(interactionState.timeout);
138
+ }
139
+ function setInteractionTimeout(interactionState) {
140
+ interactionState.timeout = setTimeout(() => {
141
+ interactionState.shouldCancelClick = !1;
142
+ }, 250);
143
+ }
86
144
  var PanResponder_default = PanResponder;
@@ -1,7 +1,8 @@
1
+ var __create = Object.create;
1
2
  var __defProp = Object.defineProperty;
2
3
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
4
  var __getOwnPropNames = Object.getOwnPropertyNames;
4
- var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __getProtoOf = Object.getPrototypeOf, __hasOwnProp = Object.prototype.hasOwnProperty;
5
6
  var __export = (target, all) => {
6
7
  for (var name in all)
7
8
  __defProp(target, name, { get: all[name], enumerable: !0 });
@@ -11,14 +12,22 @@ var __export = (target, all) => {
11
12
  !__hasOwnProp.call(to, key) && key !== except && __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
12
13
  return to;
13
14
  };
14
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
16
+ // If the importer is in node compatibility mode or this is not an ESM
17
+ // file that has been converted to a CommonJS file using a Babel-
18
+ // compatible transform (i.e. "__esModule" has not been set), then set
19
+ // "default" to the CommonJS "module.exports" for node compatibility.
20
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: !0 }) : target,
21
+ mod
22
+ )), __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: !0 }), mod);
15
23
  var PanResponder_exports = {};
16
24
  __export(PanResponder_exports, {
17
25
  PanResponder: () => PanResponder,
18
26
  default: () => PanResponder_default
19
27
  });
20
28
  module.exports = __toCommonJS(PanResponder_exports);
21
- const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouchesChangedAfter = () => 0, previousCentroidXOfTouchesChangedAfter = () => 0, previousCentroidYOfTouchesChangedAfter = () => 0, PanResponder = {
29
+ var import_react_native_web_internals = require("@tamagui/react-native-web-internals"), import_TouchHistoryMath = __toESM(require("../TouchHistoryMath/index"), 1);
30
+ const currentCentroidXOfTouchesChangedAfter = import_TouchHistoryMath.default.currentCentroidXOfTouchesChangedAfter, currentCentroidYOfTouchesChangedAfter = import_TouchHistoryMath.default.currentCentroidYOfTouchesChangedAfter, previousCentroidXOfTouchesChangedAfter = import_TouchHistoryMath.default.previousCentroidXOfTouchesChangedAfter, previousCentroidYOfTouchesChangedAfter = import_TouchHistoryMath.default.previousCentroidYOfTouchesChangedAfter, currentCentroidX = import_TouchHistoryMath.default.currentCentroidX, currentCentroidY = import_TouchHistoryMath.default.currentCentroidY, PanResponder = {
22
31
  _initializeGestureState(gestureState) {
23
32
  gestureState.moveX = 0, gestureState.moveY = 0, gestureState.x0 = 0, gestureState.y0 = 0, gestureState.dx = 0, gestureState.dy = 0, gestureState.vx = 0, gestureState.vy = 0, gestureState.numberActiveTouches = 0, gestureState._accountsForMovesUpTo = 0;
24
33
  },
@@ -30,12 +39,14 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
30
39
  touchHistory,
31
40
  gestureState._accountsForMovesUpTo
32
41
  );
33
- const movedAfter = gestureState._accountsForMovesUpTo, prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), nextDX = gestureState.dx + (gestureState.moveX - prevX), nextDY = gestureState.dy + (gestureState.moveY - prevY), dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
42
+ const movedAfter = gestureState._accountsForMovesUpTo, prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), nextDX = gestureState.dx + (x - prevX), nextDY = gestureState.dy + (y - prevY), dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
34
43
  gestureState.vx = (nextDX - gestureState.dx) / dt, gestureState.vy = (nextDY - gestureState.dy) / dt, gestureState.dx = nextDX, gestureState.dy = nextDY, gestureState._accountsForMovesUpTo = touchHistory.mostRecentTimeStamp;
35
44
  },
36
45
  create(config) {
37
46
  const interactionState = {
38
- handle: null
47
+ handle: null,
48
+ shouldCancelClick: !1,
49
+ timeout: null
39
50
  }, gestureState = {
40
51
  stateID: Math.random(),
41
52
  moveX: 0,
@@ -51,21 +62,69 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
51
62
  };
52
63
  return {
53
64
  panHandlers: {
54
- onStartShouldSetResponder: (evt) => config.onStartShouldSetPanResponder ? config.onStartShouldSetPanResponder(evt, gestureState) : !1,
55
- onMoveShouldSetResponder: (evt) => config.onMoveShouldSetPanResponder ? config.onMoveShouldSetPanResponder(evt, gestureState) : !1,
56
- onResponderGrant: (evt) => {
57
- this._initializeGestureState(gestureState), gestureState.x0 = evt.nativeEvent.pageX || 0, gestureState.y0 = evt.nativeEvent.pageY || 0, config.onPanResponderGrant && config.onPanResponderGrant(evt, gestureState);
65
+ onStartShouldSetResponder(event) {
66
+ return config.onStartShouldSetPanResponder == null ? !1 : config.onStartShouldSetPanResponder(event, gestureState);
58
67
  },
59
- onResponderMove: (evt) => {
60
- evt.nativeEvent.touches && evt.nativeEvent.touches.length === 1 && this._updateGestureStateOnMove(gestureState, evt.nativeEvent), config.onPanResponderMove && config.onPanResponderMove(evt, gestureState);
68
+ onMoveShouldSetResponder(event) {
69
+ return config.onMoveShouldSetPanResponder == null ? !1 : config.onMoveShouldSetPanResponder(event, gestureState);
61
70
  },
62
- onResponderRelease: (evt) => {
63
- config.onPanResponderRelease && config.onPanResponderRelease(evt, gestureState), interactionState.handle && (interactionState.handle = null);
71
+ onStartShouldSetResponderCapture(event) {
72
+ return event.nativeEvent.touches.length === 1 && PanResponder._initializeGestureState(gestureState), gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches, config.onStartShouldSetPanResponderCapture != null ? config.onStartShouldSetPanResponderCapture(event, gestureState) : !1;
64
73
  },
65
- onResponderTerminate: (evt) => {
66
- config.onPanResponderTerminate && config.onPanResponderTerminate(evt, gestureState), interactionState.handle && (interactionState.handle = null);
74
+ onMoveShouldSetResponderCapture(event) {
75
+ const touchHistory = event.touchHistory;
76
+ return gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp ? !1 : (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onMoveShouldSetPanResponderCapture ? config.onMoveShouldSetPanResponderCapture(event, gestureState) : !1);
67
77
  },
68
- onResponderTerminationRequest: (evt) => config.onPanResponderTerminationRequest ? config.onPanResponderTerminationRequest(evt, gestureState) : !0
78
+ onResponderGrant(event) {
79
+ return interactionState.handle || (interactionState.handle = import_react_native_web_internals.InteractionManager.createInteractionHandle()), interactionState.timeout && clearInteractionTimeout(interactionState), interactionState.shouldCancelClick = !0, gestureState.x0 = currentCentroidX(event.touchHistory), gestureState.y0 = currentCentroidY(event.touchHistory), gestureState.dx = 0, gestureState.dy = 0, config.onPanResponderGrant && config.onPanResponderGrant(event, gestureState), config.onShouldBlockNativeResponder == null ? !0 : config.onShouldBlockNativeResponder(event, gestureState);
80
+ },
81
+ onResponderReject(event) {
82
+ clearInteractionHandle(
83
+ interactionState,
84
+ config.onPanResponderReject,
85
+ event,
86
+ gestureState
87
+ );
88
+ },
89
+ onResponderRelease(event) {
90
+ clearInteractionHandle(
91
+ interactionState,
92
+ config.onPanResponderRelease,
93
+ event,
94
+ gestureState
95
+ ), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
96
+ },
97
+ onResponderStart(event) {
98
+ const touchHistory = event.touchHistory;
99
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, config.onPanResponderStart && config.onPanResponderStart(event, gestureState);
100
+ },
101
+ onResponderMove(event) {
102
+ const touchHistory = event.touchHistory;
103
+ gestureState._accountsForMovesUpTo !== touchHistory.mostRecentTimeStamp && (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onPanResponderMove && config.onPanResponderMove(event, gestureState));
104
+ },
105
+ onResponderEnd(event) {
106
+ const touchHistory = event.touchHistory;
107
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, clearInteractionHandle(
108
+ interactionState,
109
+ config.onPanResponderEnd,
110
+ event,
111
+ gestureState
112
+ );
113
+ },
114
+ onResponderTerminate(event) {
115
+ clearInteractionHandle(
116
+ interactionState,
117
+ config.onPanResponderTerminate,
118
+ event,
119
+ gestureState
120
+ ), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
121
+ },
122
+ onResponderTerminationRequest(event) {
123
+ return config.onPanResponderTerminationRequest == null ? !0 : config.onPanResponderTerminationRequest(event, gestureState);
124
+ },
125
+ onClickCapture: (event) => {
126
+ interactionState.shouldCancelClick === !0 && (event.stopPropagation(), event.preventDefault());
127
+ }
69
128
  },
70
129
  getInteractionHandle() {
71
130
  return interactionState.handle;
@@ -73,5 +132,16 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
73
132
  };
74
133
  }
75
134
  };
135
+ function clearInteractionHandle(interactionState, callback, event, gestureState) {
136
+ interactionState.handle && (import_react_native_web_internals.InteractionManager.clearInteractionHandle(interactionState.handle), interactionState.handle = null), callback && callback(event, gestureState);
137
+ }
138
+ function clearInteractionTimeout(interactionState) {
139
+ clearTimeout(interactionState.timeout);
140
+ }
141
+ function setInteractionTimeout(interactionState) {
142
+ interactionState.timeout = setTimeout(() => {
143
+ interactionState.shouldCancelClick = !1;
144
+ }, 250);
145
+ }
76
146
  var PanResponder_default = PanResponder;
77
147
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/vendor/react-native/PanResponder/index.js"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAOA,MAAM,wCAAwC,MAAM,GAC9C,wCAAwC,MAAM,GAC9C,yCAAyC,MAAM,GAC/C,yCAAyC,MAAM,GAE/C,eAAe;AAAA,EACnB,wBAAwB,cAAc;AACpC,iBAAa,QAAQ,GACrB,aAAa,QAAQ,GACrB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,sBAAsB,GACnC,aAAa,wBAAwB;AAAA,EACvC;AAAA,EAEA,0BAA0B,cAAc,cAAc;AACpD,iBAAa,sBAAsB,aAAa,qBAChD,aAAa,QAAQ;AAAA,MACnB;AAAA,MACA,aAAa;AAAA,IACf,GACA,aAAa,QAAQ;AAAA,MACnB;AAAA,MACA,aAAa;AAAA,IACf;AACA,UAAM,aAAa,aAAa,uBAC1B,QAAQ,uCAAuC,cAAc,UAAU,GACvE,QAAQ,uCAAuC,cAAc,UAAU,GACvE,SAAS,aAAa,MAAM,aAAa,QAAQ,QACjD,SAAS,aAAa,MAAM,aAAa,QAAQ,QAEjD,KAAK,aAAa,sBAAsB,aAAa;AAE3D,iBAAa,MAAM,SAAS,aAAa,MAAM,IAC/C,aAAa,MAAM,SAAS,aAAa,MAAM,IAE/C,aAAa,KAAK,QAClB,aAAa,KAAK,QAClB,aAAa,wBAAwB,aAAa;AAAA,EACpD;AAAA,EAEA,OAAO,QAAQ;AACb,UAAM,mBAAmB;AAAA,MACvB,QAAQ;AAAA,IACV,GAEM,eAAe;AAAA,MACnB,SAAS,KAAK,OAAO;AAAA,MACrB,OAAO;AAAA,MACP,OAAO;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,qBAAqB;AAAA,MACrB,uBAAuB;AAAA,IACzB;AAoDA,WAAO;AAAA,MACL,aAnDkB;AAAA,QAClB,2BAA2B,CAAC,QACnB,OAAO,+BACV,OAAO,6BAA6B,KAAK,YAAY,IACrD;AAAA,QAEN,0BAA0B,CAAC,QAClB,OAAO,8BACV,OAAO,4BAA4B,KAAK,YAAY,IACpD;AAAA,QAEN,kBAAkB,CAAC,QAAQ;AACzB,eAAK,wBAAwB,YAAY,GACzC,aAAa,KAAK,IAAI,YAAY,SAAS,GAC3C,aAAa,KAAK,IAAI,YAAY,SAAS,GACvC,OAAO,uBACT,OAAO,oBAAoB,KAAK,YAAY;AAAA,QAEhD;AAAA,QACA,iBAAiB,CAAC,QAAQ;AACxB,UAAI,IAAI,YAAY,WAAW,IAAI,YAAY,QAAQ,WAAW,KAChE,KAAK,0BAA0B,cAAc,IAAI,WAAW,GAE1D,OAAO,sBACT,OAAO,mBAAmB,KAAK,YAAY;AAAA,QAE/C;AAAA,QACA,oBAAoB,CAAC,QAAQ;AAC3B,UAAI,OAAO,yBACT,OAAO,sBAAsB,KAAK,YAAY,GAE5C,iBAAiB,WACnB,iBAAiB,SAAS;AAAA,QAE9B;AAAA,QACA,sBAAsB,CAAC,QAAQ;AAC7B,UAAI,OAAO,2BACT,OAAO,wBAAwB,KAAK,YAAY,GAE9C,iBAAiB,WACnB,iBAAiB,SAAS;AAAA,QAE9B;AAAA,QACA,+BAA+B,CAAC,QACvB,OAAO,mCACV,OAAO,iCAAiC,KAAK,YAAY,IACzD;AAAA,MAER;AAAA,MAIE,uBAAuB;AACrB,eAAO,iBAAiB;AAAA,MAC1B;AAAA,IACF;AAAA,EACF;AACF;AAGA,IAAO,uBAAQ;",
5
- "names": []
4
+ "mappings": "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",
5
+ "names": ["TouchHistoryMath"]
6
6
  }
@@ -1,4 +1,6 @@
1
- const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouchesChangedAfter = () => 0, previousCentroidXOfTouchesChangedAfter = () => 0, previousCentroidYOfTouchesChangedAfter = () => 0, PanResponder = {
1
+ import { InteractionManager } from "@tamagui/react-native-web-internals";
2
+ import TouchHistoryMath from "../TouchHistoryMath/index";
3
+ const currentCentroidXOfTouchesChangedAfter = TouchHistoryMath.currentCentroidXOfTouchesChangedAfter, currentCentroidYOfTouchesChangedAfter = TouchHistoryMath.currentCentroidYOfTouchesChangedAfter, previousCentroidXOfTouchesChangedAfter = TouchHistoryMath.previousCentroidXOfTouchesChangedAfter, previousCentroidYOfTouchesChangedAfter = TouchHistoryMath.previousCentroidYOfTouchesChangedAfter, currentCentroidX = TouchHistoryMath.currentCentroidX, currentCentroidY = TouchHistoryMath.currentCentroidY, PanResponder = {
2
4
  _initializeGestureState(gestureState) {
3
5
  gestureState.moveX = 0, gestureState.moveY = 0, gestureState.x0 = 0, gestureState.y0 = 0, gestureState.dx = 0, gestureState.dy = 0, gestureState.vx = 0, gestureState.vy = 0, gestureState.numberActiveTouches = 0, gestureState._accountsForMovesUpTo = 0;
4
6
  },
@@ -10,12 +12,14 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
10
12
  touchHistory,
11
13
  gestureState._accountsForMovesUpTo
12
14
  );
13
- const movedAfter = gestureState._accountsForMovesUpTo, prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), nextDX = gestureState.dx + (gestureState.moveX - prevX), nextDY = gestureState.dy + (gestureState.moveY - prevY), dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
15
+ const movedAfter = gestureState._accountsForMovesUpTo, prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter), prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter), nextDX = gestureState.dx + (x - prevX), nextDY = gestureState.dy + (y - prevY), dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
14
16
  gestureState.vx = (nextDX - gestureState.dx) / dt, gestureState.vy = (nextDY - gestureState.dy) / dt, gestureState.dx = nextDX, gestureState.dy = nextDY, gestureState._accountsForMovesUpTo = touchHistory.mostRecentTimeStamp;
15
17
  },
16
18
  create(config) {
17
19
  const interactionState = {
18
- handle: null
20
+ handle: null,
21
+ shouldCancelClick: !1,
22
+ timeout: null
19
23
  }, gestureState = {
20
24
  stateID: Math.random(),
21
25
  moveX: 0,
@@ -31,21 +35,69 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
31
35
  };
32
36
  return {
33
37
  panHandlers: {
34
- onStartShouldSetResponder: (evt) => config.onStartShouldSetPanResponder ? config.onStartShouldSetPanResponder(evt, gestureState) : !1,
35
- onMoveShouldSetResponder: (evt) => config.onMoveShouldSetPanResponder ? config.onMoveShouldSetPanResponder(evt, gestureState) : !1,
36
- onResponderGrant: (evt) => {
37
- this._initializeGestureState(gestureState), gestureState.x0 = evt.nativeEvent.pageX || 0, gestureState.y0 = evt.nativeEvent.pageY || 0, config.onPanResponderGrant && config.onPanResponderGrant(evt, gestureState);
38
+ onStartShouldSetResponder(event) {
39
+ return config.onStartShouldSetPanResponder == null ? !1 : config.onStartShouldSetPanResponder(event, gestureState);
38
40
  },
39
- onResponderMove: (evt) => {
40
- evt.nativeEvent.touches && evt.nativeEvent.touches.length === 1 && this._updateGestureStateOnMove(gestureState, evt.nativeEvent), config.onPanResponderMove && config.onPanResponderMove(evt, gestureState);
41
+ onMoveShouldSetResponder(event) {
42
+ return config.onMoveShouldSetPanResponder == null ? !1 : config.onMoveShouldSetPanResponder(event, gestureState);
41
43
  },
42
- onResponderRelease: (evt) => {
43
- config.onPanResponderRelease && config.onPanResponderRelease(evt, gestureState), interactionState.handle && (interactionState.handle = null);
44
+ onStartShouldSetResponderCapture(event) {
45
+ return event.nativeEvent.touches.length === 1 && PanResponder._initializeGestureState(gestureState), gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches, config.onStartShouldSetPanResponderCapture != null ? config.onStartShouldSetPanResponderCapture(event, gestureState) : !1;
44
46
  },
45
- onResponderTerminate: (evt) => {
46
- config.onPanResponderTerminate && config.onPanResponderTerminate(evt, gestureState), interactionState.handle && (interactionState.handle = null);
47
+ onMoveShouldSetResponderCapture(event) {
48
+ const touchHistory = event.touchHistory;
49
+ return gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp ? !1 : (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onMoveShouldSetPanResponderCapture ? config.onMoveShouldSetPanResponderCapture(event, gestureState) : !1);
47
50
  },
48
- onResponderTerminationRequest: (evt) => config.onPanResponderTerminationRequest ? config.onPanResponderTerminationRequest(evt, gestureState) : !0
51
+ onResponderGrant(event) {
52
+ return interactionState.handle || (interactionState.handle = InteractionManager.createInteractionHandle()), interactionState.timeout && clearInteractionTimeout(interactionState), interactionState.shouldCancelClick = !0, gestureState.x0 = currentCentroidX(event.touchHistory), gestureState.y0 = currentCentroidY(event.touchHistory), gestureState.dx = 0, gestureState.dy = 0, config.onPanResponderGrant && config.onPanResponderGrant(event, gestureState), config.onShouldBlockNativeResponder == null ? !0 : config.onShouldBlockNativeResponder(event, gestureState);
53
+ },
54
+ onResponderReject(event) {
55
+ clearInteractionHandle(
56
+ interactionState,
57
+ config.onPanResponderReject,
58
+ event,
59
+ gestureState
60
+ );
61
+ },
62
+ onResponderRelease(event) {
63
+ clearInteractionHandle(
64
+ interactionState,
65
+ config.onPanResponderRelease,
66
+ event,
67
+ gestureState
68
+ ), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
69
+ },
70
+ onResponderStart(event) {
71
+ const touchHistory = event.touchHistory;
72
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, config.onPanResponderStart && config.onPanResponderStart(event, gestureState);
73
+ },
74
+ onResponderMove(event) {
75
+ const touchHistory = event.touchHistory;
76
+ gestureState._accountsForMovesUpTo !== touchHistory.mostRecentTimeStamp && (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onPanResponderMove && config.onPanResponderMove(event, gestureState));
77
+ },
78
+ onResponderEnd(event) {
79
+ const touchHistory = event.touchHistory;
80
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, clearInteractionHandle(
81
+ interactionState,
82
+ config.onPanResponderEnd,
83
+ event,
84
+ gestureState
85
+ );
86
+ },
87
+ onResponderTerminate(event) {
88
+ clearInteractionHandle(
89
+ interactionState,
90
+ config.onPanResponderTerminate,
91
+ event,
92
+ gestureState
93
+ ), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
94
+ },
95
+ onResponderTerminationRequest(event) {
96
+ return config.onPanResponderTerminationRequest == null ? !0 : config.onPanResponderTerminationRequest(event, gestureState);
97
+ },
98
+ onClickCapture: (event) => {
99
+ interactionState.shouldCancelClick === !0 && (event.stopPropagation(), event.preventDefault());
100
+ }
49
101
  },
50
102
  getInteractionHandle() {
51
103
  return interactionState.handle;
@@ -53,6 +105,17 @@ const currentCentroidXOfTouchesChangedAfter = () => 0, currentCentroidYOfTouches
53
105
  };
54
106
  }
55
107
  };
108
+ function clearInteractionHandle(interactionState, callback, event, gestureState) {
109
+ interactionState.handle && (InteractionManager.clearInteractionHandle(interactionState.handle), interactionState.handle = null), callback && callback(event, gestureState);
110
+ }
111
+ function clearInteractionTimeout(interactionState) {
112
+ clearTimeout(interactionState.timeout);
113
+ }
114
+ function setInteractionTimeout(interactionState) {
115
+ interactionState.timeout = setTimeout(() => {
116
+ interactionState.shouldCancelClick = !1;
117
+ }, 250);
118
+ }
56
119
  var PanResponder_default = PanResponder;
57
120
  export {
58
121
  PanResponder,
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../../../src/vendor/react-native/PanResponder/index.js"],
4
- "mappings": "AAOA,MAAM,wCAAwC,MAAM,GAC9C,wCAAwC,MAAM,GAC9C,yCAAyC,MAAM,GAC/C,yCAAyC,MAAM,GAE/C,eAAe;AAAA,EACnB,wBAAwB,cAAc;AACpC,iBAAa,QAAQ,GACrB,aAAa,QAAQ,GACrB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,KAAK,GAClB,aAAa,sBAAsB,GACnC,aAAa,wBAAwB;AAAA,EACvC;AAAA,EAEA,0BAA0B,cAAc,cAAc;AACpD,iBAAa,sBAAsB,aAAa,qBAChD,aAAa,QAAQ;AAAA,MACnB;AAAA,MACA,aAAa;AAAA,IACf,GACA,aAAa,QAAQ;AAAA,MACnB;AAAA,MACA,aAAa;AAAA,IACf;AACA,UAAM,aAAa,aAAa,uBAC1B,QAAQ,uCAAuC,cAAc,UAAU,GACvE,QAAQ,uCAAuC,cAAc,UAAU,GACvE,SAAS,aAAa,MAAM,aAAa,QAAQ,QACjD,SAAS,aAAa,MAAM,aAAa,QAAQ,QAEjD,KAAK,aAAa,sBAAsB,aAAa;AAE3D,iBAAa,MAAM,SAAS,aAAa,MAAM,IAC/C,aAAa,MAAM,SAAS,aAAa,MAAM,IAE/C,aAAa,KAAK,QAClB,aAAa,KAAK,QAClB,aAAa,wBAAwB,aAAa;AAAA,EACpD;AAAA,EAEA,OAAO,QAAQ;AACb,UAAM,mBAAmB;AAAA,MACvB,QAAQ;AAAA,IACV,GAEM,eAAe;AAAA,MACnB,SAAS,KAAK,OAAO;AAAA,MACrB,OAAO;AAAA,MACP,OAAO;AAAA,MACP,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,IAAI;AAAA,MACJ,qBAAqB;AAAA,MACrB,uBAAuB;AAAA,IACzB;AAoDA,WAAO;AAAA,MACL,aAnDkB;AAAA,QAClB,2BAA2B,CAAC,QACnB,OAAO,+BACV,OAAO,6BAA6B,KAAK,YAAY,IACrD;AAAA,QAEN,0BAA0B,CAAC,QAClB,OAAO,8BACV,OAAO,4BAA4B,KAAK,YAAY,IACpD;AAAA,QAEN,kBAAkB,CAAC,QAAQ;AACzB,eAAK,wBAAwB,YAAY,GACzC,aAAa,KAAK,IAAI,YAAY,SAAS,GAC3C,aAAa,KAAK,IAAI,YAAY,SAAS,GACvC,OAAO,uBACT,OAAO,oBAAoB,KAAK,YAAY;AAAA,QAEhD;AAAA,QACA,iBAAiB,CAAC,QAAQ;AACxB,UAAI,IAAI,YAAY,WAAW,IAAI,YAAY,QAAQ,WAAW,KAChE,KAAK,0BAA0B,cAAc,IAAI,WAAW,GAE1D,OAAO,sBACT,OAAO,mBAAmB,KAAK,YAAY;AAAA,QAE/C;AAAA,QACA,oBAAoB,CAAC,QAAQ;AAC3B,UAAI,OAAO,yBACT,OAAO,sBAAsB,KAAK,YAAY,GAE5C,iBAAiB,WACnB,iBAAiB,SAAS;AAAA,QAE9B;AAAA,QACA,sBAAsB,CAAC,QAAQ;AAC7B,UAAI,OAAO,2BACT,OAAO,wBAAwB,KAAK,YAAY,GAE9C,iBAAiB,WACnB,iBAAiB,SAAS;AAAA,QAE9B;AAAA,QACA,+BAA+B,CAAC,QACvB,OAAO,mCACV,OAAO,iCAAiC,KAAK,YAAY,IACzD;AAAA,MAER;AAAA,MAIE,uBAAuB;AACrB,eAAO,iBAAiB;AAAA,MAC1B;AAAA,IACF;AAAA,EACF;AACF;AAGA,IAAO,uBAAQ;",
4
+ "mappings": "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",
5
5
  "names": []
6
6
  }
@@ -1,7 +1,11 @@
1
- const currentCentroidXOfTouchesChangedAfter = () => 0,
2
- currentCentroidYOfTouchesChangedAfter = () => 0,
3
- previousCentroidXOfTouchesChangedAfter = () => 0,
4
- previousCentroidYOfTouchesChangedAfter = () => 0,
1
+ import { InteractionManager } from "@tamagui/react-native-web-internals";
2
+ import TouchHistoryMath from "../TouchHistoryMath/index.mjs";
3
+ const currentCentroidXOfTouchesChangedAfter = TouchHistoryMath.currentCentroidXOfTouchesChangedAfter,
4
+ currentCentroidYOfTouchesChangedAfter = TouchHistoryMath.currentCentroidYOfTouchesChangedAfter,
5
+ previousCentroidXOfTouchesChangedAfter = TouchHistoryMath.previousCentroidXOfTouchesChangedAfter,
6
+ previousCentroidYOfTouchesChangedAfter = TouchHistoryMath.previousCentroidYOfTouchesChangedAfter,
7
+ currentCentroidX = TouchHistoryMath.currentCentroidX,
8
+ currentCentroidY = TouchHistoryMath.currentCentroidY,
5
9
  PanResponder = {
6
10
  _initializeGestureState(gestureState) {
7
11
  gestureState.moveX = 0, gestureState.moveY = 0, gestureState.x0 = 0, gestureState.y0 = 0, gestureState.dx = 0, gestureState.dy = 0, gestureState.vx = 0, gestureState.vy = 0, gestureState.numberActiveTouches = 0, gestureState._accountsForMovesUpTo = 0;
@@ -10,15 +14,19 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
10
14
  gestureState.numberActiveTouches = touchHistory.numberActiveTouches, gestureState.moveX = currentCentroidXOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo), gestureState.moveY = currentCentroidYOfTouchesChangedAfter(touchHistory, gestureState._accountsForMovesUpTo);
11
15
  const movedAfter = gestureState._accountsForMovesUpTo,
12
16
  prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter),
17
+ x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter),
13
18
  prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter),
14
- nextDX = gestureState.dx + (gestureState.moveX - prevX),
15
- nextDY = gestureState.dy + (gestureState.moveY - prevY),
19
+ y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter),
20
+ nextDX = gestureState.dx + (x - prevX),
21
+ nextDY = gestureState.dy + (y - prevY),
16
22
  dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo;
17
23
  gestureState.vx = (nextDX - gestureState.dx) / dt, gestureState.vy = (nextDY - gestureState.dy) / dt, gestureState.dx = nextDX, gestureState.dy = nextDY, gestureState._accountsForMovesUpTo = touchHistory.mostRecentTimeStamp;
18
24
  },
19
25
  create(config) {
20
26
  const interactionState = {
21
- handle: null
27
+ handle: null,
28
+ shouldCancelClick: !1,
29
+ timeout: null
22
30
  },
23
31
  gestureState = {
24
32
  stateID: Math.random(),
@@ -35,21 +43,49 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
35
43
  };
36
44
  return {
37
45
  panHandlers: {
38
- onStartShouldSetResponder: evt => config.onStartShouldSetPanResponder ? config.onStartShouldSetPanResponder(evt, gestureState) : !1,
39
- onMoveShouldSetResponder: evt => config.onMoveShouldSetPanResponder ? config.onMoveShouldSetPanResponder(evt, gestureState) : !1,
40
- onResponderGrant: evt => {
41
- this._initializeGestureState(gestureState), gestureState.x0 = evt.nativeEvent.pageX || 0, gestureState.y0 = evt.nativeEvent.pageY || 0, config.onPanResponderGrant && config.onPanResponderGrant(evt, gestureState);
46
+ onStartShouldSetResponder(event) {
47
+ return config.onStartShouldSetPanResponder == null ? !1 : config.onStartShouldSetPanResponder(event, gestureState);
42
48
  },
43
- onResponderMove: evt => {
44
- evt.nativeEvent.touches && evt.nativeEvent.touches.length === 1 && this._updateGestureStateOnMove(gestureState, evt.nativeEvent), config.onPanResponderMove && config.onPanResponderMove(evt, gestureState);
49
+ onMoveShouldSetResponder(event) {
50
+ return config.onMoveShouldSetPanResponder == null ? !1 : config.onMoveShouldSetPanResponder(event, gestureState);
45
51
  },
46
- onResponderRelease: evt => {
47
- config.onPanResponderRelease && config.onPanResponderRelease(evt, gestureState), interactionState.handle && (interactionState.handle = null);
52
+ onStartShouldSetResponderCapture(event) {
53
+ return event.nativeEvent.touches.length === 1 && PanResponder._initializeGestureState(gestureState), gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches, config.onStartShouldSetPanResponderCapture != null ? config.onStartShouldSetPanResponderCapture(event, gestureState) : !1;
48
54
  },
49
- onResponderTerminate: evt => {
50
- config.onPanResponderTerminate && config.onPanResponderTerminate(evt, gestureState), interactionState.handle && (interactionState.handle = null);
55
+ onMoveShouldSetResponderCapture(event) {
56
+ const touchHistory = event.touchHistory;
57
+ return gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp ? !1 : (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onMoveShouldSetPanResponderCapture ? config.onMoveShouldSetPanResponderCapture(event, gestureState) : !1);
51
58
  },
52
- onResponderTerminationRequest: evt => config.onPanResponderTerminationRequest ? config.onPanResponderTerminationRequest(evt, gestureState) : !0
59
+ onResponderGrant(event) {
60
+ return interactionState.handle || (interactionState.handle = InteractionManager.createInteractionHandle()), interactionState.timeout && clearInteractionTimeout(interactionState), interactionState.shouldCancelClick = !0, gestureState.x0 = currentCentroidX(event.touchHistory), gestureState.y0 = currentCentroidY(event.touchHistory), gestureState.dx = 0, gestureState.dy = 0, config.onPanResponderGrant && config.onPanResponderGrant(event, gestureState), config.onShouldBlockNativeResponder == null ? !0 : config.onShouldBlockNativeResponder(event, gestureState);
61
+ },
62
+ onResponderReject(event) {
63
+ clearInteractionHandle(interactionState, config.onPanResponderReject, event, gestureState);
64
+ },
65
+ onResponderRelease(event) {
66
+ clearInteractionHandle(interactionState, config.onPanResponderRelease, event, gestureState), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
67
+ },
68
+ onResponderStart(event) {
69
+ const touchHistory = event.touchHistory;
70
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, config.onPanResponderStart && config.onPanResponderStart(event, gestureState);
71
+ },
72
+ onResponderMove(event) {
73
+ const touchHistory = event.touchHistory;
74
+ gestureState._accountsForMovesUpTo !== touchHistory.mostRecentTimeStamp && (PanResponder._updateGestureStateOnMove(gestureState, touchHistory), config.onPanResponderMove && config.onPanResponderMove(event, gestureState));
75
+ },
76
+ onResponderEnd(event) {
77
+ const touchHistory = event.touchHistory;
78
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches, clearInteractionHandle(interactionState, config.onPanResponderEnd, event, gestureState);
79
+ },
80
+ onResponderTerminate(event) {
81
+ clearInteractionHandle(interactionState, config.onPanResponderTerminate, event, gestureState), setInteractionTimeout(interactionState), PanResponder._initializeGestureState(gestureState);
82
+ },
83
+ onResponderTerminationRequest(event) {
84
+ return config.onPanResponderTerminationRequest == null ? !0 : config.onPanResponderTerminationRequest(event, gestureState);
85
+ },
86
+ onClickCapture: event => {
87
+ interactionState.shouldCancelClick === !0 && (event.stopPropagation(), event.preventDefault());
88
+ }
53
89
  },
54
90
  getInteractionHandle() {
55
91
  return interactionState.handle;
@@ -57,6 +93,17 @@ const currentCentroidXOfTouchesChangedAfter = () => 0,
57
93
  };
58
94
  }
59
95
  };
96
+ function clearInteractionHandle(interactionState, callback, event, gestureState) {
97
+ interactionState.handle && (InteractionManager.clearInteractionHandle(interactionState.handle), interactionState.handle = null), callback && callback(event, gestureState);
98
+ }
99
+ function clearInteractionTimeout(interactionState) {
100
+ clearTimeout(interactionState.timeout);
101
+ }
102
+ function setInteractionTimeout(interactionState) {
103
+ interactionState.timeout = setTimeout(() => {
104
+ interactionState.shouldCancelClick = !1;
105
+ }, 250);
106
+ }
60
107
  var PanResponder_default = PanResponder;
61
108
  export { PanResponder, PanResponder_default as default };
62
109
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"names":["currentCentroidXOfTouchesChangedAfter","currentCentroidYOfTouchesChangedAfter","previousCentroidXOfTouchesChangedAfter","previousCentroidYOfTouchesChangedAfter","PanResponder","_initializeGestureState","gestureState","moveX","moveY","x0","y0","dx","dy","vx","vy","numberActiveTouches","_accountsForMovesUpTo","_updateGestureStateOnMove","touchHistory","movedAfter","prevX","prevY","nextDX","nextDY","dt","mostRecentTimeStamp","create","config","interactionState","handle","stateID","Math","random","panHandlers","onStartShouldSetResponder","evt","onStartShouldSetPanResponder","onMoveShouldSetResponder","onMoveShouldSetPanResponder","onResponderGrant","nativeEvent","pageX","pageY","onPanResponderGrant","onResponderMove","touches","length","onPanResponderMove","onResponderRelease","onPanResponderRelease","onResponderTerminate","onPanResponderTerminate","onResponderTerminationRequest","onPanResponderTerminationRequest","getInteractionHandle","PanResponder_default"],"sources":["../../../../../src/vendor/react-native/PanResponder/index.js"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["InteractionManager","TouchHistoryMath","currentCentroidXOfTouchesChangedAfter","currentCentroidYOfTouchesChangedAfter","previousCentroidXOfTouchesChangedAfter","previousCentroidYOfTouchesChangedAfter","currentCentroidX","currentCentroidY","PanResponder","_initializeGestureState","gestureState","moveX","moveY","x0","y0","dx","dy","vx","vy","numberActiveTouches","_accountsForMovesUpTo","_updateGestureStateOnMove","touchHistory","movedAfter","prevX","x","prevY","y","nextDX","nextDY","dt","mostRecentTimeStamp","create","config","interactionState","handle","shouldCancelClick","timeout","stateID","Math","random","panHandlers","onStartShouldSetResponder","event","onStartShouldSetPanResponder","onMoveShouldSetResponder","onMoveShouldSetPanResponder","onStartShouldSetResponderCapture","nativeEvent","touches","length","onStartShouldSetPanResponderCapture","onMoveShouldSetResponderCapture","onMoveShouldSetPanResponderCapture","onResponderGrant","createInteractionHandle","clearInteractionTimeout","onPanResponderGrant","onShouldBlockNativeResponder","onResponderReject","clearInteractionHandle","onPanResponderReject","onResponderRelease","onPanResponderRelease","setInteractionTimeout","onResponderStart","onPanResponderStart","onResponderMove","onPanResponderMove","onResponderEnd","onPanResponderEnd","onResponderTerminate","onPanResponderTerminate","onResponderTerminationRequest","onPanResponderTerminationRequest","onClickCapture","stopPropagation","preventDefault","getInteractionHandle","callback","clearTimeout","setTimeout","PanResponder_default"],"sources":["../../../../../src/vendor/react-native/PanResponder/index.js"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/react-native-web-lite",
3
- "version": "2.0.0-1769665879528",
3
+ "version": "2.0.0-rc.0",
4
4
  "type": "module",
5
5
  "description": "React Native for Web",
6
6
  "main": "dist/cjs",
@@ -61,16 +61,16 @@
61
61
  }
62
62
  },
63
63
  "dependencies": {
64
- "@tamagui/normalize-css-color": "2.0.0-1769665879528",
65
- "@tamagui/react-native-use-pressable": "2.0.0-1769665879528",
66
- "@tamagui/react-native-use-responder-events": "2.0.0-1769665879528",
67
- "@tamagui/react-native-web-internals": "2.0.0-1769665879528",
68
- "@tamagui/web": "2.0.0-1769665879528",
64
+ "@tamagui/normalize-css-color": "2.0.0-rc.0",
65
+ "@tamagui/react-native-use-pressable": "2.0.0-rc.0",
66
+ "@tamagui/react-native-use-responder-events": "2.0.0-rc.0",
67
+ "@tamagui/react-native-web-internals": "2.0.0-rc.0",
68
+ "@tamagui/web": "2.0.0-rc.0",
69
69
  "invariant": "^2.2.4",
70
70
  "memoize-one": "^6.0.0"
71
71
  },
72
72
  "devDependencies": {
73
- "@tamagui/build": "2.0.0-1769665879528",
73
+ "@tamagui/build": "2.0.0-rc.0",
74
74
  "react": "*",
75
75
  "react-dom": "*"
76
76
  },
@@ -5,10 +5,19 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- const currentCentroidXOfTouchesChangedAfter = () => 0
9
- const currentCentroidYOfTouchesChangedAfter = () => 0
10
- const previousCentroidXOfTouchesChangedAfter = () => 0
11
- const previousCentroidYOfTouchesChangedAfter = () => 0
8
+ import { InteractionManager } from '@tamagui/react-native-web-internals'
9
+ import TouchHistoryMath from '../TouchHistoryMath/index'
10
+
11
+ const currentCentroidXOfTouchesChangedAfter =
12
+ TouchHistoryMath.currentCentroidXOfTouchesChangedAfter
13
+ const currentCentroidYOfTouchesChangedAfter =
14
+ TouchHistoryMath.currentCentroidYOfTouchesChangedAfter
15
+ const previousCentroidXOfTouchesChangedAfter =
16
+ TouchHistoryMath.previousCentroidXOfTouchesChangedAfter
17
+ const previousCentroidYOfTouchesChangedAfter =
18
+ TouchHistoryMath.previousCentroidYOfTouchesChangedAfter
19
+ const currentCentroidX = TouchHistoryMath.currentCentroidX
20
+ const currentCentroidY = TouchHistoryMath.currentCentroidY
12
21
 
13
22
  const PanResponder = {
14
23
  _initializeGestureState(gestureState) {
@@ -36,12 +45,13 @@ const PanResponder = {
36
45
  )
37
46
  const movedAfter = gestureState._accountsForMovesUpTo
38
47
  const prevX = previousCentroidXOfTouchesChangedAfter(touchHistory, movedAfter)
48
+ const x = currentCentroidXOfTouchesChangedAfter(touchHistory, movedAfter)
39
49
  const prevY = previousCentroidYOfTouchesChangedAfter(touchHistory, movedAfter)
40
- const nextDX = gestureState.dx + (gestureState.moveX - prevX)
41
- const nextDY = gestureState.dy + (gestureState.moveY - prevY)
50
+ const y = currentCentroidYOfTouchesChangedAfter(touchHistory, movedAfter)
51
+ const nextDX = gestureState.dx + (x - prevX)
52
+ const nextDY = gestureState.dy + (y - prevY)
42
53
 
43
54
  const dt = touchHistory.mostRecentTimeStamp - gestureState._accountsForMovesUpTo
44
-
45
55
  gestureState.vx = (nextDX - gestureState.dx) / dt
46
56
  gestureState.vy = (nextDY - gestureState.dy) / dt
47
57
 
@@ -53,6 +63,8 @@ const PanResponder = {
53
63
  create(config) {
54
64
  const interactionState = {
55
65
  handle: null,
66
+ shouldCancelClick: false,
67
+ timeout: null,
56
68
  }
57
69
 
58
70
  const gestureState = {
@@ -70,52 +82,131 @@ const PanResponder = {
70
82
  }
71
83
 
72
84
  const panHandlers = {
73
- onStartShouldSetResponder: (evt) => {
74
- return config.onStartShouldSetPanResponder
75
- ? config.onStartShouldSetPanResponder(evt, gestureState)
76
- : false
85
+ onStartShouldSetResponder(event) {
86
+ return config.onStartShouldSetPanResponder == null
87
+ ? false
88
+ : config.onStartShouldSetPanResponder(event, gestureState)
89
+ },
90
+
91
+ onMoveShouldSetResponder(event) {
92
+ return config.onMoveShouldSetPanResponder == null
93
+ ? false
94
+ : config.onMoveShouldSetPanResponder(event, gestureState)
77
95
  },
78
- onMoveShouldSetResponder: (evt) => {
79
- return config.onMoveShouldSetPanResponder
80
- ? config.onMoveShouldSetPanResponder(evt, gestureState)
96
+
97
+ onStartShouldSetResponderCapture(event) {
98
+ if (event.nativeEvent.touches.length === 1) {
99
+ PanResponder._initializeGestureState(gestureState)
100
+ }
101
+ gestureState.numberActiveTouches = event.touchHistory.numberActiveTouches
102
+ return config.onStartShouldSetPanResponderCapture != null
103
+ ? config.onStartShouldSetPanResponderCapture(event, gestureState)
81
104
  : false
82
105
  },
83
- onResponderGrant: (evt) => {
84
- this._initializeGestureState(gestureState)
85
- gestureState.x0 = evt.nativeEvent.pageX || 0
86
- gestureState.y0 = evt.nativeEvent.pageY || 0
87
- if (config.onPanResponderGrant) {
88
- config.onPanResponderGrant(evt, gestureState)
106
+
107
+ onMoveShouldSetResponderCapture(event) {
108
+ const touchHistory = event.touchHistory
109
+ if (gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp) {
110
+ return false
89
111
  }
112
+ PanResponder._updateGestureStateOnMove(gestureState, touchHistory)
113
+ return config.onMoveShouldSetPanResponderCapture
114
+ ? config.onMoveShouldSetPanResponderCapture(event, gestureState)
115
+ : false
90
116
  },
91
- onResponderMove: (evt) => {
92
- if (evt.nativeEvent.touches && evt.nativeEvent.touches.length === 1) {
93
- this._updateGestureStateOnMove(gestureState, evt.nativeEvent)
117
+
118
+ onResponderGrant(event) {
119
+ if (!interactionState.handle) {
120
+ interactionState.handle = InteractionManager.createInteractionHandle()
94
121
  }
95
- if (config.onPanResponderMove) {
96
- config.onPanResponderMove(evt, gestureState)
122
+ if (interactionState.timeout) {
123
+ clearInteractionTimeout(interactionState)
97
124
  }
98
- },
99
- onResponderRelease: (evt) => {
100
- if (config.onPanResponderRelease) {
101
- config.onPanResponderRelease(evt, gestureState)
125
+ interactionState.shouldCancelClick = true
126
+ gestureState.x0 = currentCentroidX(event.touchHistory)
127
+ gestureState.y0 = currentCentroidY(event.touchHistory)
128
+ gestureState.dx = 0
129
+ gestureState.dy = 0
130
+ if (config.onPanResponderGrant) {
131
+ config.onPanResponderGrant(event, gestureState)
102
132
  }
103
- if (interactionState.handle) {
104
- interactionState.handle = null
133
+ return config.onShouldBlockNativeResponder == null
134
+ ? true
135
+ : config.onShouldBlockNativeResponder(event, gestureState)
136
+ },
137
+
138
+ onResponderReject(event) {
139
+ clearInteractionHandle(
140
+ interactionState,
141
+ config.onPanResponderReject,
142
+ event,
143
+ gestureState
144
+ )
145
+ },
146
+
147
+ onResponderRelease(event) {
148
+ clearInteractionHandle(
149
+ interactionState,
150
+ config.onPanResponderRelease,
151
+ event,
152
+ gestureState
153
+ )
154
+ setInteractionTimeout(interactionState)
155
+ PanResponder._initializeGestureState(gestureState)
156
+ },
157
+
158
+ onResponderStart(event) {
159
+ const touchHistory = event.touchHistory
160
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches
161
+ if (config.onPanResponderStart) {
162
+ config.onPanResponderStart(event, gestureState)
105
163
  }
106
164
  },
107
- onResponderTerminate: (evt) => {
108
- if (config.onPanResponderTerminate) {
109
- config.onPanResponderTerminate(evt, gestureState)
165
+
166
+ onResponderMove(event) {
167
+ const touchHistory = event.touchHistory
168
+ if (gestureState._accountsForMovesUpTo === touchHistory.mostRecentTimeStamp) {
169
+ return
110
170
  }
111
- if (interactionState.handle) {
112
- interactionState.handle = null
171
+ PanResponder._updateGestureStateOnMove(gestureState, touchHistory)
172
+ if (config.onPanResponderMove) {
173
+ config.onPanResponderMove(event, gestureState)
113
174
  }
114
175
  },
115
- onResponderTerminationRequest: (evt) => {
116
- return config.onPanResponderTerminationRequest
117
- ? config.onPanResponderTerminationRequest(evt, gestureState)
118
- : true
176
+
177
+ onResponderEnd(event) {
178
+ const touchHistory = event.touchHistory
179
+ gestureState.numberActiveTouches = touchHistory.numberActiveTouches
180
+ clearInteractionHandle(
181
+ interactionState,
182
+ config.onPanResponderEnd,
183
+ event,
184
+ gestureState
185
+ )
186
+ },
187
+
188
+ onResponderTerminate(event) {
189
+ clearInteractionHandle(
190
+ interactionState,
191
+ config.onPanResponderTerminate,
192
+ event,
193
+ gestureState
194
+ )
195
+ setInteractionTimeout(interactionState)
196
+ PanResponder._initializeGestureState(gestureState)
197
+ },
198
+
199
+ onResponderTerminationRequest(event) {
200
+ return config.onPanResponderTerminationRequest == null
201
+ ? true
202
+ : config.onPanResponderTerminationRequest(event, gestureState)
203
+ },
204
+
205
+ onClickCapture: (event) => {
206
+ if (interactionState.shouldCancelClick === true) {
207
+ event.stopPropagation()
208
+ event.preventDefault()
209
+ }
119
210
  },
120
211
  }
121
212
 
@@ -128,5 +219,25 @@ const PanResponder = {
128
219
  },
129
220
  }
130
221
 
222
+ function clearInteractionHandle(interactionState, callback, event, gestureState) {
223
+ if (interactionState.handle) {
224
+ InteractionManager.clearInteractionHandle(interactionState.handle)
225
+ interactionState.handle = null
226
+ }
227
+ if (callback) {
228
+ callback(event, gestureState)
229
+ }
230
+ }
231
+
232
+ function clearInteractionTimeout(interactionState) {
233
+ clearTimeout(interactionState.timeout)
234
+ }
235
+
236
+ function setInteractionTimeout(interactionState) {
237
+ interactionState.timeout = setTimeout(() => {
238
+ interactionState.shouldCancelClick = false
239
+ }, 250)
240
+ }
241
+
131
242
  export { PanResponder }
132
243
  export default PanResponder