@tamagui/native 2.0.0-rc.4 → 2.0.0-rc.40
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.
- package/.turbo/turbo-build.log +2 -0
- package/dist/cjs/PressBoundary.cjs +92 -0
- package/dist/cjs/PressBoundary.native.js +105 -0
- package/dist/cjs/PressBoundary.native.js.map +1 -0
- package/dist/cjs/burntState.cjs +46 -0
- package/dist/cjs/burntState.native.js +49 -0
- package/dist/cjs/burntState.native.js.map +1 -0
- package/dist/cjs/components.cjs +20 -15
- package/dist/cjs/components.native.js +24 -22
- package/dist/cjs/components.native.js.map +1 -1
- package/dist/cjs/gesture-handler.cjs +36 -0
- package/dist/cjs/gesture-handler.native.js +39 -0
- package/dist/cjs/gesture-handler.native.js.map +1 -0
- package/dist/cjs/gestureState.cjs +124 -36
- package/dist/cjs/gestureState.native.js +130 -46
- package/dist/cjs/gestureState.native.js.map +1 -1
- package/dist/cjs/globalState.cjs +45 -0
- package/dist/cjs/globalState.native.js +48 -0
- package/dist/cjs/globalState.native.js.map +1 -0
- package/dist/cjs/index.cjs +28 -19
- package/dist/cjs/index.native.js +28 -19
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/keyboardControllerState.cjs +26 -28
- package/dist/cjs/keyboardControllerState.native.js +26 -28
- package/dist/cjs/keyboardControllerState.native.js.map +1 -1
- package/dist/cjs/linearGradientState.cjs +19 -16
- package/dist/cjs/linearGradientState.native.js +19 -16
- package/dist/cjs/linearGradientState.native.js.map +1 -1
- package/dist/cjs/nativeMenuContext.cjs +29 -0
- package/dist/cjs/nativeMenuContext.native.js +32 -0
- package/dist/cjs/nativeMenuContext.native.js.map +1 -0
- package/dist/cjs/portalState.cjs +19 -16
- package/dist/cjs/portalState.native.js +19 -16
- package/dist/cjs/portalState.native.js.map +1 -1
- package/dist/cjs/safeAreaState.cjs +43 -38
- package/dist/cjs/safeAreaState.native.js +43 -38
- package/dist/cjs/safeAreaState.native.js.map +1 -1
- package/dist/cjs/setup-burnt.cjs +17 -0
- package/dist/cjs/setup-burnt.native.js +20 -0
- package/dist/cjs/setup-burnt.native.js.map +1 -0
- package/dist/cjs/setup-expo-linear-gradient.cjs +9 -8
- package/dist/cjs/setup-expo-linear-gradient.native.js +9 -8
- package/dist/cjs/setup-expo-linear-gradient.native.js.map +1 -1
- package/dist/cjs/setup-gesture-handler.cjs +58 -18
- package/dist/cjs/setup-gesture-handler.native.js +58 -18
- package/dist/cjs/setup-gesture-handler.native.js.map +1 -1
- package/dist/cjs/setup-keyboard-controller.native.js +20 -17
- package/dist/cjs/setup-safe-area.cjs +3 -1
- package/dist/cjs/setup-safe-area.native.js +15 -17
- package/dist/cjs/setup-safe-area.native.js.map +1 -1
- package/dist/cjs/setup-teleport.cjs +13 -13
- package/dist/cjs/setup-teleport.native.js +13 -13
- package/dist/cjs/setup-teleport.native.js.map +1 -1
- package/dist/cjs/setup-worklets.cjs +11 -8
- package/dist/cjs/setup-worklets.native.js +11 -8
- package/dist/cjs/setup-worklets.native.js.map +1 -1
- package/dist/cjs/setup-zeego.cjs +13 -8
- package/dist/cjs/setup-zeego.native.js +13 -8
- package/dist/cjs/setup-zeego.native.js.map +1 -1
- package/dist/cjs/types.cjs +7 -5
- package/dist/cjs/types.native.js +7 -5
- package/dist/cjs/types.native.js.map +1 -1
- package/dist/cjs/workletsState.cjs +23 -25
- package/dist/cjs/workletsState.native.js +23 -25
- package/dist/cjs/workletsState.native.js.map +1 -1
- package/dist/cjs/zeegoState.cjs +19 -16
- package/dist/cjs/zeegoState.native.js +19 -16
- package/dist/cjs/zeegoState.native.js.map +1 -1
- package/dist/esm/PressBoundary.mjs +56 -0
- package/dist/esm/PressBoundary.mjs.map +1 -0
- package/dist/esm/PressBoundary.native.js +66 -0
- package/dist/esm/PressBoundary.native.js.map +1 -0
- package/dist/esm/burntState.mjs +21 -0
- package/dist/esm/burntState.mjs.map +1 -0
- package/dist/esm/burntState.native.js +21 -0
- package/dist/esm/burntState.native.js.map +1 -0
- package/dist/esm/components.mjs +6 -3
- package/dist/esm/components.mjs.map +1 -1
- package/dist/esm/components.native.js +10 -10
- package/dist/esm/components.native.js.map +1 -1
- package/dist/esm/gesture-handler.mjs +6 -0
- package/dist/esm/gesture-handler.mjs.map +1 -0
- package/dist/esm/gesture-handler.native.js +6 -0
- package/dist/esm/gesture-handler.native.js.map +1 -0
- package/dist/esm/gestureState.mjs +110 -26
- package/dist/esm/gestureState.mjs.map +1 -1
- package/dist/esm/gestureState.native.js +116 -36
- package/dist/esm/gestureState.native.js.map +1 -1
- package/dist/esm/globalState.mjs +20 -0
- package/dist/esm/globalState.mjs.map +1 -0
- package/dist/esm/globalState.native.js +20 -0
- package/dist/esm/globalState.native.js.map +1 -0
- package/dist/esm/index.js +12 -26
- package/dist/esm/index.js.map +1 -6
- package/dist/esm/index.mjs +4 -1
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +4 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/keyboardControllerState.mjs +14 -18
- package/dist/esm/keyboardControllerState.mjs.map +1 -1
- package/dist/esm/keyboardControllerState.native.js +14 -18
- package/dist/esm/keyboardControllerState.native.js.map +1 -1
- package/dist/esm/linearGradientState.mjs +7 -6
- package/dist/esm/linearGradientState.mjs.map +1 -1
- package/dist/esm/linearGradientState.native.js +7 -6
- package/dist/esm/linearGradientState.native.js.map +1 -1
- package/dist/esm/nativeMenuContext.mjs +4 -0
- package/dist/esm/nativeMenuContext.mjs.map +1 -0
- package/dist/esm/nativeMenuContext.native.js +4 -0
- package/dist/esm/nativeMenuContext.native.js.map +1 -0
- package/dist/esm/portalState.mjs +7 -6
- package/dist/esm/portalState.mjs.map +1 -1
- package/dist/esm/portalState.native.js +7 -6
- package/dist/esm/portalState.native.js.map +1 -1
- package/dist/esm/safeAreaState.mjs +31 -28
- package/dist/esm/safeAreaState.mjs.map +1 -1
- package/dist/esm/safeAreaState.native.js +31 -28
- package/dist/esm/safeAreaState.native.js.map +1 -1
- package/dist/esm/setup-burnt.mjs +18 -0
- package/dist/esm/setup-burnt.mjs.map +1 -0
- package/dist/esm/setup-burnt.native.js +18 -0
- package/dist/esm/setup-burnt.native.js.map +1 -0
- package/dist/esm/setup-expo-linear-gradient.mjs +9 -8
- package/dist/esm/setup-expo-linear-gradient.mjs.map +1 -1
- package/dist/esm/setup-expo-linear-gradient.native.js +9 -8
- package/dist/esm/setup-expo-linear-gradient.native.js.map +1 -1
- package/dist/esm/setup-gesture-handler.mjs +31 -18
- package/dist/esm/setup-gesture-handler.mjs.map +1 -1
- package/dist/esm/setup-gesture-handler.native.js +31 -18
- package/dist/esm/setup-gesture-handler.native.js.map +1 -1
- package/dist/esm/setup-keyboard-controller.native.js +20 -17
- package/dist/esm/setup-safe-area.mjs +2 -0
- package/dist/esm/setup-safe-area.mjs.map +1 -1
- package/dist/esm/setup-safe-area.native.js +15 -17
- package/dist/esm/setup-safe-area.native.js.map +1 -1
- package/dist/esm/setup-teleport.mjs +13 -13
- package/dist/esm/setup-teleport.mjs.map +1 -1
- package/dist/esm/setup-teleport.native.js +13 -13
- package/dist/esm/setup-teleport.native.js.map +1 -1
- package/dist/esm/setup-worklets.mjs +11 -8
- package/dist/esm/setup-worklets.mjs.map +1 -1
- package/dist/esm/setup-worklets.native.js +11 -8
- package/dist/esm/setup-worklets.native.js.map +1 -1
- package/dist/esm/setup-zeego.mjs +13 -8
- package/dist/esm/setup-zeego.mjs.map +1 -1
- package/dist/esm/setup-zeego.native.js +13 -8
- package/dist/esm/setup-zeego.native.js.map +1 -1
- package/dist/esm/workletsState.mjs +11 -15
- package/dist/esm/workletsState.mjs.map +1 -1
- package/dist/esm/workletsState.native.js +11 -15
- package/dist/esm/workletsState.native.js.map +1 -1
- package/dist/esm/zeegoState.mjs +7 -6
- package/dist/esm/zeegoState.mjs.map +1 -1
- package/dist/esm/zeegoState.native.js +7 -6
- package/dist/esm/zeegoState.native.js.map +1 -1
- package/gesture-handler/index.cjs +1 -0
- package/gesture-handler/index.js +1 -0
- package/gesture-handler/index.native.cjs +1 -0
- package/gesture-handler/index.native.js +1 -0
- package/gesture-handler.cjs +1 -0
- package/package.json +70 -69
- package/setup-burnt/index.cjs +2 -0
- package/setup-burnt/index.js +2 -0
- package/setup-burnt/index.native.cjs +2 -0
- package/setup-burnt/index.native.js +2 -0
- package/setup-burnt.cjs +1 -0
- package/setup-expo-linear-gradient/index.cjs +2 -0
- package/setup-expo-linear-gradient/index.js +2 -0
- package/setup-expo-linear-gradient/index.native.cjs +2 -0
- package/setup-expo-linear-gradient/index.native.js +2 -0
- package/setup-expo-linear-gradient.cjs +1 -0
- package/setup-gesture-handler/index.cjs +2 -0
- package/setup-gesture-handler/index.js +2 -0
- package/setup-gesture-handler/index.native.cjs +2 -0
- package/setup-gesture-handler/index.native.js +2 -0
- package/setup-gesture-handler.cjs +1 -0
- package/setup-keyboard-controller/index.cjs +2 -0
- package/setup-keyboard-controller/index.js +2 -0
- package/setup-keyboard-controller/index.native.cjs +2 -0
- package/setup-keyboard-controller/index.native.js +2 -0
- package/setup-keyboard-controller.cjs +1 -0
- package/setup-safe-area/index.cjs +2 -0
- package/setup-safe-area/index.js +2 -0
- package/setup-safe-area/index.native.cjs +2 -0
- package/setup-safe-area/index.native.js +2 -0
- package/setup-safe-area.cjs +1 -0
- package/setup-teleport/index.cjs +2 -0
- package/setup-teleport/index.js +2 -0
- package/setup-teleport/index.native.cjs +2 -0
- package/setup-teleport/index.native.js +2 -0
- package/setup-teleport.cjs +1 -0
- package/setup-worklets/index.cjs +2 -0
- package/setup-worklets/index.js +2 -0
- package/setup-worklets/index.native.cjs +2 -0
- package/setup-worklets/index.native.js +2 -0
- package/setup-worklets.cjs +1 -0
- package/setup-zeego/index.cjs +2 -0
- package/setup-zeego/index.js +2 -0
- package/setup-zeego/index.native.cjs +2 -0
- package/setup-zeego/index.native.js +2 -0
- package/setup-zeego.cjs +1 -0
- package/src/PressBoundary.tsx +81 -0
- package/src/burntState.ts +28 -0
- package/src/gesture-handler.ts +17 -0
- package/src/gestureState.ts +148 -26
- package/src/globalState.ts +32 -0
- package/src/index.ts +18 -1
- package/src/keyboardControllerState.ts +16 -31
- package/src/linearGradientState.ts +8 -4
- package/src/nativeMenuContext.ts +4 -0
- package/src/portalState.ts +8 -4
- package/src/safeAreaState.ts +16 -23
- package/src/setup-burnt.ts +38 -0
- package/src/setup-gesture-handler.ts +35 -8
- package/src/setup-zeego.ts +4 -1
- package/src/types.ts +17 -0
- package/src/workletsState.ts +11 -19
- package/src/zeegoState.ts +9 -4
- package/tsconfig.json +12 -0
- package/types/PressBoundary.d.ts +14 -0
- package/types/PressBoundary.d.ts.map +11 -0
- package/types/burntState.d.ts +9 -0
- package/types/burntState.d.ts.map +11 -0
- package/types/components.d.ts.map +2 -2
- package/types/gesture-handler.d.ts +8 -0
- package/types/gesture-handler.d.ts.map +11 -0
- package/types/gestureState.d.ts +4 -0
- package/types/gestureState.d.ts.map +4 -4
- package/types/globalState.d.ts +8 -0
- package/types/globalState.d.ts.map +11 -0
- package/types/index.d.ts +7 -2
- package/types/index.d.ts.map +4 -4
- package/types/keyboardControllerState.d.ts +2 -10
- package/types/keyboardControllerState.d.ts.map +4 -4
- package/types/linearGradientState.d.ts.map +4 -4
- package/types/nativeMenuContext.d.ts +4 -0
- package/types/nativeMenuContext.d.ts.map +11 -0
- package/types/portalState.d.ts.map +4 -4
- package/types/safeAreaState.d.ts.map +4 -4
- package/types/setup-burnt.d.ts +3 -0
- package/types/setup-burnt.d.ts.map +11 -0
- package/types/setup-expo-linear-gradient.d.ts.map +2 -2
- package/types/setup-gesture-handler.d.ts +8 -1
- package/types/setup-gesture-handler.d.ts.map +4 -4
- package/types/setup-keyboard-controller.d.ts.map +2 -2
- package/types/setup-keyboard-controller.web.d.ts.map +2 -2
- package/types/setup-safe-area.d.ts.map +2 -2
- package/types/setup-teleport.d.ts.map +2 -2
- package/types/setup-worklets.d.ts.map +2 -2
- package/types/setup-zeego.d.ts.map +3 -3
- package/types/types.d.ts +15 -0
- package/types/types.d.ts.map +4 -4
- package/types/workletsState.d.ts.map +4 -4
- package/types/zeegoState.d.ts.map +4 -4
- package/dist/cjs/components.js +0 -41
- package/dist/cjs/components.js.map +0 -6
- package/dist/cjs/gestureState.js +0 -62
- package/dist/cjs/gestureState.js.map +0 -6
- package/dist/cjs/index.js +0 -32
- package/dist/cjs/index.js.map +0 -6
- package/dist/cjs/keyboardControllerState.js +0 -46
- package/dist/cjs/keyboardControllerState.js.map +0 -6
- package/dist/cjs/linearGradientState.js +0 -34
- package/dist/cjs/linearGradientState.js.map +0 -6
- package/dist/cjs/portalState.js +0 -34
- package/dist/cjs/portalState.js.map +0 -6
- package/dist/cjs/safeAreaState.js +0 -52
- package/dist/cjs/safeAreaState.js.map +0 -6
- package/dist/cjs/setup-expo-linear-gradient.js +0 -17
- package/dist/cjs/setup-expo-linear-gradient.js.map +0 -6
- package/dist/cjs/setup-gesture-handler.js +0 -24
- package/dist/cjs/setup-gesture-handler.js.map +0 -6
- package/dist/cjs/setup-keyboard-controller.js +0 -1
- package/dist/cjs/setup-keyboard-controller.js.map +0 -6
- package/dist/cjs/setup-portal.cjs +0 -66
- package/dist/cjs/setup-portal.js +0 -53
- package/dist/cjs/setup-portal.js.map +0 -6
- package/dist/cjs/setup-portal.native.js +0 -74
- package/dist/cjs/setup-portal.native.js.map +0 -1
- package/dist/cjs/setup-safe-area.js +0 -2
- package/dist/cjs/setup-safe-area.js.map +0 -6
- package/dist/cjs/setup-teleport.js +0 -17
- package/dist/cjs/setup-teleport.js.map +0 -6
- package/dist/cjs/setup-worklets.js +0 -20
- package/dist/cjs/setup-worklets.js.map +0 -6
- package/dist/cjs/setup-zeego.js +0 -18
- package/dist/cjs/setup-zeego.js.map +0 -6
- package/dist/cjs/setup.cjs +0 -64
- package/dist/cjs/setup.js +0 -50
- package/dist/cjs/setup.js.map +0 -6
- package/dist/cjs/setup.native.js +0 -72
- package/dist/cjs/setup.native.js.map +0 -1
- package/dist/cjs/state.cjs +0 -36
- package/dist/cjs/state.js +0 -28
- package/dist/cjs/state.js.map +0 -6
- package/dist/cjs/state.native.js +0 -39
- package/dist/cjs/state.native.js.map +0 -1
- package/dist/cjs/types.js +0 -14
- package/dist/cjs/types.js.map +0 -6
- package/dist/cjs/workletsState.js +0 -45
- package/dist/cjs/workletsState.js.map +0 -6
- package/dist/cjs/zeegoState.js +0 -34
- package/dist/cjs/zeegoState.js.map +0 -6
- package/dist/esm/components.js +0 -26
- package/dist/esm/components.js.map +0 -6
- package/dist/esm/gestureState.js +0 -46
- package/dist/esm/gestureState.js.map +0 -6
- package/dist/esm/keyboardControllerState.js +0 -30
- package/dist/esm/keyboardControllerState.js.map +0 -6
- package/dist/esm/linearGradientState.js +0 -18
- package/dist/esm/linearGradientState.js.map +0 -6
- package/dist/esm/portalState.js +0 -18
- package/dist/esm/portalState.js.map +0 -6
- package/dist/esm/safeAreaState.js +0 -36
- package/dist/esm/safeAreaState.js.map +0 -6
- package/dist/esm/setup-expo-linear-gradient.js +0 -17
- package/dist/esm/setup-expo-linear-gradient.js.map +0 -6
- package/dist/esm/setup-gesture-handler.js +0 -24
- package/dist/esm/setup-gesture-handler.js.map +0 -6
- package/dist/esm/setup-keyboard-controller.js +0 -1
- package/dist/esm/setup-keyboard-controller.js.map +0 -6
- package/dist/esm/setup-portal.js +0 -37
- package/dist/esm/setup-portal.js.map +0 -6
- package/dist/esm/setup-portal.mjs +0 -43
- package/dist/esm/setup-portal.mjs.map +0 -1
- package/dist/esm/setup-portal.native.js +0 -48
- package/dist/esm/setup-portal.native.js.map +0 -1
- package/dist/esm/setup-safe-area.js +0 -2
- package/dist/esm/setup-safe-area.js.map +0 -6
- package/dist/esm/setup-teleport.js +0 -17
- package/dist/esm/setup-teleport.js.map +0 -6
- package/dist/esm/setup-worklets.js +0 -20
- package/dist/esm/setup-worklets.js.map +0 -6
- package/dist/esm/setup-zeego.js +0 -18
- package/dist/esm/setup-zeego.js.map +0 -6
- package/dist/esm/setup.js +0 -34
- package/dist/esm/setup.js.map +0 -6
- package/dist/esm/setup.mjs +0 -41
- package/dist/esm/setup.mjs.map +0 -1
- package/dist/esm/setup.native.js +0 -46
- package/dist/esm/setup.native.js.map +0 -1
- package/dist/esm/state.js +0 -12
- package/dist/esm/state.js.map +0 -6
- package/dist/esm/state.mjs +0 -12
- package/dist/esm/state.mjs.map +0 -1
- package/dist/esm/state.native.js +0 -12
- package/dist/esm/state.native.js.map +0 -1
- package/dist/esm/types.js +0 -1
- package/dist/esm/types.js.map +0 -6
- package/dist/esm/workletsState.js +0 -29
- package/dist/esm/workletsState.js.map +0 -6
- package/dist/esm/zeegoState.js +0 -18
- package/dist/esm/zeegoState.js.map +0 -6
- package/types/setup-portal.d.ts.map +0 -11
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import React from "react";
|
|
3
|
+
import { View } from "react-native";
|
|
4
|
+
import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.native.js";
|
|
5
|
+
function composeFirst(ours, theirs) {
|
|
6
|
+
return function () {
|
|
7
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
8
|
+
args[_key] = arguments[_key];
|
|
9
|
+
}
|
|
10
|
+
ours(...args);
|
|
11
|
+
theirs === null || theirs === void 0 ? void 0 : theirs(...args);
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
function composeLast(theirs, ours) {
|
|
15
|
+
return function () {
|
|
16
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
17
|
+
args[_key] = arguments[_key];
|
|
18
|
+
}
|
|
19
|
+
theirs === null || theirs === void 0 ? void 0 : theirs(...args);
|
|
20
|
+
ours(...args);
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
var PressBoundary = /* @__PURE__ */React.forwardRef(function PressBoundary2(param, forwardedRef) {
|
|
24
|
+
var {
|
|
25
|
+
enabled,
|
|
26
|
+
stopPropagation,
|
|
27
|
+
debugName,
|
|
28
|
+
onTouchStart,
|
|
29
|
+
onTouchEnd,
|
|
30
|
+
onTouchCancel,
|
|
31
|
+
onResponderGrant,
|
|
32
|
+
onResponderRelease,
|
|
33
|
+
onResponderTerminate,
|
|
34
|
+
...props
|
|
35
|
+
} = param;
|
|
36
|
+
var tokenRef = React.useRef(null);
|
|
37
|
+
var _ref;
|
|
38
|
+
var isEnabled = (_ref = enabled !== null && enabled !== void 0 ? enabled : stopPropagation) !== null && _ref !== void 0 ? _ref : true;
|
|
39
|
+
var claim = React.useCallback(function () {
|
|
40
|
+
if (!isEnabled) return;
|
|
41
|
+
if (tokenRef.current) {
|
|
42
|
+
releaseExternalPressOwnership(tokenRef.current, debugName);
|
|
43
|
+
}
|
|
44
|
+
tokenRef.current = claimExternalPressOwnership(debugName);
|
|
45
|
+
}, [debugName, isEnabled]);
|
|
46
|
+
var release = React.useCallback(function () {
|
|
47
|
+
if (!tokenRef.current) return;
|
|
48
|
+
releaseExternalPressOwnership(tokenRef.current, debugName);
|
|
49
|
+
tokenRef.current = null;
|
|
50
|
+
}, [debugName]);
|
|
51
|
+
React.useEffect(function () {
|
|
52
|
+
return release;
|
|
53
|
+
}, [release]);
|
|
54
|
+
return /* @__PURE__ */_jsx(View, {
|
|
55
|
+
ref: forwardedRef,
|
|
56
|
+
...props,
|
|
57
|
+
onTouchStart: composeFirst(claim, onTouchStart),
|
|
58
|
+
onTouchEnd: composeLast(onTouchEnd, release),
|
|
59
|
+
onTouchCancel: composeLast(onTouchCancel, release),
|
|
60
|
+
onResponderGrant: composeFirst(claim, onResponderGrant),
|
|
61
|
+
onResponderRelease: composeLast(onResponderRelease, release),
|
|
62
|
+
onResponderTerminate: composeLast(onResponderTerminate, release)
|
|
63
|
+
});
|
|
64
|
+
});
|
|
65
|
+
export { PressBoundary };
|
|
66
|
+
//# sourceMappingURL=PressBoundary.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","React","View","claimExternalPressOwnership","releaseExternalPressOwnership","composeFirst","ours","theirs","_len","arguments","length","args","Array","_key","composeLast","PressBoundary","forwardRef","PressBoundary2","param","forwardedRef","enabled","stopPropagation","debugName","onTouchStart","onTouchEnd","onTouchCancel","onResponderGrant","onResponderRelease","onResponderTerminate","props","tokenRef","useRef","_ref","isEnabled","claim","useCallback","current","release","useEffect","ref"],"sources":["../../src/PressBoundary.tsx"],"sourcesContent":[null],"mappings":"AAAA,SAAOA,GAAA,IAAAC,IAAW;AAClB,OAAAC,KAAS,aAA4B;AACrC,SAAAC,IAAA;AAAA,SACEC,2BAAA,EAAAC,6BAAA;AAAA,SACAC,aAAAC,IAAA,EAAAC,MAAA;EAAA,OAEK;IA+DH,SAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAnDJF,IAAS,CAAAE,IAAA,IAAAJ,SAA0D,CAAAI,IAAA;IACjE;IACEP,IAAA,CAAK,GAAGK,IAAI;IACZJ,MAAA,KAAS,IAAG,IAAIA,MAAA,uBAAAA,MAAA,IAAAI,IAAA;EAClB;AACF;AAEA,SAASG,YAAgDP,MAAA,EAAuBD,IAAA,EAAS;EACvF,OAAO,YAAI;IACT,SAASE,IAAG,GAAIC,SAAA,CAAAC,MAAA,EAAAC,IAAA,OAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,MAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA;MAChBF,IAAK,CAAAE,IAAG,CAAI,GAAAJ,SAAA,CAAAI,IAAA;IACd;IACFN,MAAA,aAAAA,MAAA,uBAAAA,MAAA,IAAAI,IAAA;IAEOL,IAAM,IAAAK,IAAA;EAIT;AAAA;AACA,IACAI,aAAA,kBAAAd,KAAA,CAAAe,UAAA,UAAAC,eAAAC,KAAA,EAAAC,YAAA;EACA;IAAAC,OAAA;IAAAC,eAAA;IAAAC,SAAA;IAAAC,YAAA;IAAAC,UAAA;IAAAC,aAAA;IAAAC,gBAAA;IAAAC,kBAAA;IAAAC,oBAAA;IAAA,GAAAC;EAAA,IAAAX,KAAA;EACA,IAAAY,QAAA,GAAA7B,KAAA,CAAA8B,MAAA;EACA,IAAAC,IAAA;EACA,IAAAC,SAAA,IAAAD,IAAA,GAAAZ,OAAA,aAAAA,OAAA,cAAAA,OAAA,GAAAC,eAAA,cAAAW,IAAA,cAAAA,IAAA;EACA,IAAAE,KAAA,GAAAjC,KAAA,CAAAkC,WAAA;IACA,KAAAF,SAAA;IACA,IAAGH,QAAA,CAAAM,OAAA;MAELhC,6BACA,CAAA0B,QAAA,CAAAM,OAAA,EAAAd,SAAA;IACA;IACAQ,QAAM,CAAAM,OAAY,GAAAjC,2BAA8B,CAAAmB,SAAA;EAEhD,IACEA,SAAK,EACLW,SAAI,CACF;EAAyD,IAC3DI,OAAA,GAAApC,KAAA,CAAAkC,WAAA;IACA,KAAAL,QAAS,CAAAM,OAAU;IACrBhC,6BAAyB,CAAA0B,QAAA,CAAAM,OAAA,EAAAd,SAAA;IAEzBQ,QAAM,CAAAM,OAAU,OAAM;EACpB,IACAd,SAAA,CACA;EACFrB,KAAI,CAAAqC,SAAU;IAEd,OAAMD,OAAU;EAEhB,IACGA,OAAA;EAAA,OACC,eAAKrC,IAAA,CAAAE,IAAA;IAAAqC,GACJ,EAAGpB,YAAA;IAAA,GACJU,KAAA;IAA8CN,YAC9C,EAAYlB,YAAY,CAAA6B,KAAA,EAAAX,YAAmB;IAAAC,UAC3C,EAAAV,WAAe,CAAAU,UAAY,EAAAa,OAAA,CAAe;IAAOZ,aACjD,EAAAX,WAAkB,CAAAW,aAAoB,EAAAY,OAAA;IAAgBX,gBACtD,EAAArB,YAAoB,CAAA6B,KAAY,EAAAR,gBAAoB;IAAOC,kBAC3D,EAAAb,WAAsB,CAAAa,kBAAY,EAAAU,OAAsB;IAAOT,oBAAA,EAAAd,WAAA,CAAAc,oBAAA,EAAAS,OAAA;EACjE;AAEJ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createGlobalState } from "./globalState.mjs";
|
|
2
|
+
const state = createGlobalState(`burnt`, {
|
|
3
|
+
enabled: false,
|
|
4
|
+
toast: null,
|
|
5
|
+
dismissAllAlerts: null
|
|
6
|
+
});
|
|
7
|
+
function getBurnt() {
|
|
8
|
+
return {
|
|
9
|
+
get isEnabled() {
|
|
10
|
+
return state.get().enabled;
|
|
11
|
+
},
|
|
12
|
+
get state() {
|
|
13
|
+
return state.get();
|
|
14
|
+
},
|
|
15
|
+
set(newState) {
|
|
16
|
+
state.set(newState);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export { getBurnt };
|
|
21
|
+
//# sourceMappingURL=burntState.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createGlobalState","state","enabled","toast","dismissAllAlerts","getBurnt","isEnabled","get","set","newState"],"sources":["../../src/burntState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAGlC,MAAMC,KAAA,GAAQD,iBAAA,CAA8B,SAAS;EACnDE,OAAA,EAAS;EACTC,KAAA,EAAO;EACPC,gBAAA,EAAkB;AACpB,CAAC;AAQM,SAASC,SAAA,EAA0B;EACxC,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOL,KAAA,CAAMM,GAAA,CAAI,EAAEL,OAAA;IACrB;IACA,IAAID,MAAA,EAAoB;MACtB,OAAOA,KAAA,CAAMM,GAAA,CAAI;IACnB;IACAC,IAAIC,QAAA,EAA4B;MAC9BR,KAAA,CAAMO,GAAA,CAAIC,QAAQ;IACpB;EACF;AACF","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { createGlobalState } from "./globalState.native.js";
|
|
2
|
+
var state = createGlobalState(`burnt`, {
|
|
3
|
+
enabled: false,
|
|
4
|
+
toast: null,
|
|
5
|
+
dismissAllAlerts: null
|
|
6
|
+
});
|
|
7
|
+
function getBurnt() {
|
|
8
|
+
return {
|
|
9
|
+
get isEnabled() {
|
|
10
|
+
return state.get().enabled;
|
|
11
|
+
},
|
|
12
|
+
get state() {
|
|
13
|
+
return state.get();
|
|
14
|
+
},
|
|
15
|
+
set(newState) {
|
|
16
|
+
state.set(newState);
|
|
17
|
+
}
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export { getBurnt };
|
|
21
|
+
//# sourceMappingURL=burntState.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createGlobalState","state","enabled","toast","dismissAllAlerts","getBurnt","isEnabled","get","set","newState"],"sources":["../../src/burntState.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAGlC,IAAAC,KAAM,GAAAD,iBAAQ,QAA8B;EAC1CE,OAAA,EAAS;EACTC,KAAA,EAAO;EACPC,gBAAA,EAAkB;AACpB,CAAC;AAQM,SAASC,SAAA,EAA0B;EACxC,OAAO;IACL,IAAIC,UAAA,EAAqB;MACvB,OAAOL,KAAA,CAAMM,GAAA,CAAI,EAAEL,OAAA;IACrB;IACA,IAAID,MAAA,EAAoB;MACtB,OAAOA,KAAA,CAAMM,GAAA,CAAI;IACnB;IACAC,IAAIC,QAAA,EAA4B;MAC9BR,KAAA,CAAMO,GAAA,CAAIC,QAAQ;IACpB;EACF;AACF","ignoreList":[]}
|
package/dist/esm/components.mjs
CHANGED
|
@@ -4,7 +4,8 @@ function NativePortal({
|
|
|
4
4
|
hostName = "root",
|
|
5
5
|
children
|
|
6
6
|
}) {
|
|
7
|
-
|
|
7
|
+
const state = getPortal().state;
|
|
8
|
+
if (state.type !== "teleport") return null;
|
|
8
9
|
const {
|
|
9
10
|
Portal
|
|
10
11
|
} = globalThis.__tamagui_teleport;
|
|
@@ -16,7 +17,8 @@ function NativePortal({
|
|
|
16
17
|
function NativePortalHost({
|
|
17
18
|
name
|
|
18
19
|
}) {
|
|
19
|
-
|
|
20
|
+
const state = getPortal().state;
|
|
21
|
+
if (state.type !== "teleport") return null;
|
|
20
22
|
const {
|
|
21
23
|
PortalHost
|
|
22
24
|
} = globalThis.__tamagui_teleport;
|
|
@@ -27,7 +29,8 @@ function NativePortalHost({
|
|
|
27
29
|
function NativePortalProvider({
|
|
28
30
|
children
|
|
29
31
|
}) {
|
|
30
|
-
|
|
32
|
+
const state = getPortal().state;
|
|
33
|
+
if (state.type !== "teleport") return /* @__PURE__ */jsx(Fragment, {
|
|
31
34
|
children
|
|
32
35
|
});
|
|
33
36
|
const {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;
|
|
1
|
+
{"version":3,"names":["getPortal","Fragment","jsx","NativePortal","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider","PortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,SAAA,QAAiB;AAqBjB,SAqB+BC,QAAA,EArB/BC,GAAA;AARF,SAASC,aAAa;EAC3BC,QAAA,GAAW;EACXC;AACF,GAAiC;EAC/B,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEC;EAAO,IAAKC,UAAA,CAAmBC,kBAAA;EACvC,OAAO,eAAAR,GAAA,CAACM,MAAA;IAAOJ,QAAA;IAAqBC;EAAA,CAAS;AAC/C;AAMO,SAASM,iBAAiB;EAAEC;AAAK,GAAqC;EAC3E,MAAMN,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO;EAEtC,MAAM;IAAEM;EAAW,IAAKJ,UAAA,CAAmBC,kBAAA;EAC3C,OAAO,eAAAR,GAAA,CAACW,UAAA;IAAWD;EAAA,CAAY;AACjC;AAMO,SAASE,qBAAqB;EAAET;AAAS,GAAyC;EACvF,MAAMC,KAAA,GAAQN,SAAA,CAAU,EAAEM,KAAA;EAC1B,IAAIA,KAAA,CAAMC,IAAA,KAAS,YAAY,OAAO,eAAAL,GAAA,CAAAD,QAAA;IAAGI;EAAA,CAAS;EAElD,MAAM;IAAEU;EAAe,IAAKN,UAAA,CAAmBC,kBAAA;EAC/C,OAAO,eAAAR,GAAA,CAACa,cAAA;IAAgBV;EAAA,CAAS;AACnC","ignoreList":[]}
|
|
@@ -2,10 +2,10 @@ import { jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
|
|
|
2
2
|
import { getPortal } from "./portalState.native.js";
|
|
3
3
|
function NativePortal(param) {
|
|
4
4
|
var {
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
5
|
+
hostName = "root",
|
|
6
|
+
children
|
|
7
|
+
} = param;
|
|
8
|
+
var state = getPortal().state;
|
|
9
9
|
if (state.type !== "teleport") return null;
|
|
10
10
|
var {
|
|
11
11
|
Portal
|
|
@@ -17,9 +17,9 @@ function NativePortal(param) {
|
|
|
17
17
|
}
|
|
18
18
|
function NativePortalHost(param) {
|
|
19
19
|
var {
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
20
|
+
name
|
|
21
|
+
} = param;
|
|
22
|
+
var state = getPortal().state;
|
|
23
23
|
if (state.type !== "teleport") return null;
|
|
24
24
|
var {
|
|
25
25
|
PortalHost
|
|
@@ -30,9 +30,9 @@ function NativePortalHost(param) {
|
|
|
30
30
|
}
|
|
31
31
|
function NativePortalProvider(param) {
|
|
32
32
|
var {
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
33
|
+
children
|
|
34
|
+
} = param;
|
|
35
|
+
var state = getPortal().state;
|
|
36
36
|
if (state.type !== "teleport") return /* @__PURE__ */_jsx(_Fragment, {
|
|
37
37
|
children
|
|
38
38
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","Fragment","_Fragment","getPortal","NativePortal","param","hostName","children","state","type","Portal","globalThis","__tamagui_teleport","NativePortalHost","name","PortalHost","NativePortalProvider"],"sources":["../../src/components.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,GAAA,IAAAC,IAAA,EAAAC,QAAiB,IAAAC,SAAA;AAqBjB,SAqB+BC,SAAA,QArB/B;AARF,SAASC,aAAaC,KAAA;EAC3B;IAAAC,QAAW;IAAAC;EAAA,IAAAF,KAAA;EACX,IAAAG,KAAA,GAAAL,SAAA,GAAAK,KAAA;EACF,IAAiCA,KAAA,CAAAC,IAAA;EAC/B;IAAMC;EAAA,CAAQ,GAAAC,UAAY,CAAAC,kBAAA;EAC1B,OAAI,eAAeZ,IAAA,CAAAU,MAAY;IAE/BJ,QAAQ;IACRC;EACF;AAMO;AACL,SAAMM,gBAAQA,CAAUR,KAAE;EAC1B,IAAI;IAAAS;EAAM,IAAAT,KAAS;EAEnB,IAAAG,KAAQ,GAAAL,SAAW,EAAK,CAAAK,KAAA;EACxB,IAAAA,KAAO,CAAAC,IAAA,eAAC,aAAW;EACrB;IAAAM;EAAA,IAAAJ,UAAA,CAAAC,kBAAA;EAMO,OAAS,eAAAZ,IAAA,CAAqBe,UAAE,EAAS;IAC9CD;EACA;AAEA;AACA,SAAOE,oBAACA,CAAAX,KAAA;EACV;IAAAE;EAAA,IAAAF,KAAA","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { getGestureHandler } from "./gestureState.mjs";
|
|
2
|
+
import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.mjs";
|
|
3
|
+
import { PressBoundary } from "./PressBoundary.mjs";
|
|
4
|
+
import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.mjs";
|
|
5
|
+
export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
|
|
6
|
+
//# sourceMappingURL=gesture-handler.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SACiCC,2BAAA,EACEC,6BAAA,QAC5B;AACP,SAASC,aAAA,QAAqB;AAE9B,SACEC,uBAAA,EACAC,mBAAA,QAEK","ignoreList":[]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { getGestureHandler } from "./gestureState.native.js";
|
|
2
|
+
import { claimExternalPressOwnership, releaseExternalPressOwnership } from "./gestureState.native.js";
|
|
3
|
+
import { PressBoundary } from "./PressBoundary.native.js";
|
|
4
|
+
import { getGestureHandlerConfig, setupGestureHandler } from "./setup-gesture-handler.native.js";
|
|
5
|
+
export { PressBoundary, getGestureHandler, getGestureHandlerConfig, setupGestureHandler, claimExternalPressOwnership as unstable_claimExternalPressOwnership, releaseExternalPressOwnership as unstable_releaseExternalPressOwnership };
|
|
6
|
+
//# sourceMappingURL=gesture-handler.native.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["getGestureHandler","claimExternalPressOwnership","releaseExternalPressOwnership","PressBoundary","getGestureHandlerConfig","setupGestureHandler","unstable_claimExternalPressOwnership"],"sources":["../../src/gesture-handler.ts"],"sourcesContent":[null],"mappings":"AAAA,SAASA,iBAAA,QAAyB;AAMlC,SAAAC,2BAAA,EAAAC,6BAAA;AAAA,SACiCC,aAAA;AAAA,SACEC,uBAAA,EAAAC,mBAAA;AAAA,SAEnCF,aAAS,EAETH,iBAAA,EACEI,uBAAA,EACAC,mBAAA,EAAAJ,2BAEK,IAAAK,oCAAA,E","ignoreList":[]}
|
|
@@ -1,47 +1,131 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { createGlobalState } from "./globalState.mjs";
|
|
2
|
+
const state = createGlobalState(`gesture`, {
|
|
3
|
+
enabled: false,
|
|
4
|
+
Gesture: null,
|
|
5
|
+
GestureDetector: null,
|
|
6
|
+
ScrollView: null
|
|
7
|
+
});
|
|
8
|
+
let pressGestureDebugId = 0;
|
|
9
|
+
let externalPressDebugId = 0;
|
|
10
|
+
const pressState = {
|
|
11
|
+
owner: null,
|
|
12
|
+
ownerId: null,
|
|
13
|
+
ownerSource: null,
|
|
14
|
+
timestamp: 0
|
|
15
|
+
};
|
|
16
|
+
function resetPressOwner() {
|
|
17
|
+
pressState.owner = null;
|
|
18
|
+
pressState.ownerId = null;
|
|
19
|
+
pressState.ownerSource = null;
|
|
20
|
+
pressState.timestamp = 0;
|
|
21
|
+
}
|
|
22
|
+
function resetStaleOwner(now, debugName) {
|
|
23
|
+
if (now - pressState.timestamp > 2e3) {
|
|
24
|
+
resetPressOwner();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function claimExternalPressOwnership(debugName) {
|
|
28
|
+
const now = Date.now();
|
|
29
|
+
resetStaleOwner(now, debugName);
|
|
30
|
+
const token = {};
|
|
31
|
+
const ownerId = ++externalPressDebugId;
|
|
32
|
+
const previousOwnerId = pressState.ownerId;
|
|
33
|
+
const previousOwnerSource = pressState.ownerSource;
|
|
34
|
+
pressState.owner = token;
|
|
35
|
+
pressState.ownerId = ownerId;
|
|
36
|
+
pressState.ownerSource = "external";
|
|
37
|
+
pressState.timestamp = now;
|
|
38
|
+
return token;
|
|
39
|
+
}
|
|
40
|
+
function releaseExternalPressOwnership(token, debugName) {
|
|
41
|
+
if (!token || pressState.owner !== token) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
resetPressOwner();
|
|
10
45
|
}
|
|
11
46
|
function getGestureHandler() {
|
|
12
47
|
return {
|
|
13
48
|
get isEnabled() {
|
|
14
|
-
return
|
|
49
|
+
return state.get().enabled;
|
|
15
50
|
},
|
|
16
51
|
get state() {
|
|
17
|
-
return
|
|
52
|
+
return state.get();
|
|
18
53
|
},
|
|
19
54
|
set(updates) {
|
|
20
|
-
|
|
21
|
-
Object.assign(state, updates);
|
|
55
|
+
Object.assign(state.get(), updates);
|
|
22
56
|
},
|
|
23
57
|
disable() {
|
|
24
|
-
|
|
25
|
-
state.enabled = !1;
|
|
58
|
+
state.get().enabled = false;
|
|
26
59
|
},
|
|
27
60
|
createPressGesture(config) {
|
|
28
61
|
const {
|
|
29
62
|
Gesture
|
|
30
|
-
} =
|
|
63
|
+
} = state.get();
|
|
31
64
|
if (!Gesture) return null;
|
|
32
|
-
const longPressDuration = config.delayLongPress ?? 500
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
65
|
+
const longPressDuration = config.delayLongPress ?? 500;
|
|
66
|
+
const myToken = {};
|
|
67
|
+
const myDebugId = ++pressGestureDebugId;
|
|
68
|
+
const GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
|
|
69
|
+
const tryClaimOwnership = () => {
|
|
70
|
+
const now = Date.now();
|
|
71
|
+
resetStaleOwner(now, config.debugName);
|
|
72
|
+
const withinGrace = now - pressState.timestamp < GRACE_PERIOD_MS;
|
|
73
|
+
const previousOwnerId = pressState.ownerId;
|
|
74
|
+
const previousOwnerSource = pressState.ownerSource;
|
|
75
|
+
if (pressState.owner === null || withinGrace && pressState.ownerSource !== "external") {
|
|
76
|
+
pressState.owner = myToken;
|
|
77
|
+
pressState.ownerId = myDebugId;
|
|
78
|
+
pressState.ownerSource = "internal";
|
|
79
|
+
pressState.timestamp = now;
|
|
80
|
+
}
|
|
81
|
+
return pressState.owner === myToken;
|
|
82
|
+
};
|
|
83
|
+
const isOwner = () => pressState.owner === myToken;
|
|
84
|
+
const releaseOwnership = () => {
|
|
85
|
+
if (pressState.owner === myToken) {
|
|
86
|
+
resetPressOwner();
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
const tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(e => {
|
|
90
|
+
tryClaimOwnership();
|
|
91
|
+
setTimeout(() => {
|
|
92
|
+
if (isOwner()) {
|
|
93
|
+
config.onPressIn?.(e);
|
|
94
|
+
}
|
|
95
|
+
}, GRACE_PERIOD_MS + 1);
|
|
96
|
+
}).onEnd(e => {
|
|
97
|
+
if (isOwner()) {
|
|
36
98
|
config.onPress?.(e);
|
|
37
|
-
}
|
|
99
|
+
}
|
|
100
|
+
}).onFinalize(e => {
|
|
101
|
+
if (isOwner()) {
|
|
102
|
+
config.onPressOut?.(e);
|
|
103
|
+
releaseOwnership();
|
|
104
|
+
}
|
|
105
|
+
});
|
|
106
|
+
if (config.hitSlop) tap.hitSlop(config.hitSlop);
|
|
107
|
+
if (!config.onLongPress) return tap;
|
|
108
|
+
const longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onBegin(e => {
|
|
109
|
+
tryClaimOwnership();
|
|
110
|
+
setTimeout(() => {
|
|
111
|
+
if (isOwner()) {
|
|
112
|
+
config.onPressIn?.(e);
|
|
113
|
+
}
|
|
114
|
+
}, GRACE_PERIOD_MS + 1);
|
|
115
|
+
}).onStart(e => {
|
|
116
|
+
if (isOwner()) {
|
|
117
|
+
config.onLongPress?.(e);
|
|
118
|
+
}
|
|
119
|
+
}).onFinalize(e => {
|
|
120
|
+
if (isOwner()) {
|
|
38
121
|
config.onPressOut?.(e);
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
122
|
+
releaseOwnership();
|
|
123
|
+
}
|
|
124
|
+
});
|
|
125
|
+
if (config.hitSlop) longPress.hitSlop(config.hitSlop);
|
|
126
|
+
return Gesture.Exclusive(longPress, tap);
|
|
43
127
|
}
|
|
44
128
|
};
|
|
45
129
|
}
|
|
46
|
-
export { getGestureHandler };
|
|
130
|
+
export { claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
|
|
47
131
|
//# sourceMappingURL=gestureState.mjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","pressGestureDebugId","externalPressDebugId","pressState","owner","ownerId","ownerSource","timestamp","resetPressOwner","resetStaleOwner","now","debugName","claimExternalPressOwnership","Date","token","previousOwnerId","previousOwnerSource","releaseExternalPressOwnership","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","longPressDuration","delayLongPress","myToken","myDebugId","GRACE_PERIOD_MS","process","env","TAMAGUI_RNGH_PRESS_DELAY","tryClaimOwnership","withinGrace","isOwner","releaseOwnership","tap","Tap","runOnJS","maxDuration","onBegin","e","setTimeout","onPressIn","onEnd","onPress","onFinalize","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","Exclusive"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,60 +1,140 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
1
|
+
import { createGlobalState } from "./globalState.native.js";
|
|
2
|
+
var state = createGlobalState(`gesture`, {
|
|
3
|
+
enabled: false,
|
|
4
|
+
Gesture: null,
|
|
5
|
+
GestureDetector: null,
|
|
6
|
+
ScrollView: null
|
|
7
|
+
});
|
|
8
|
+
var pressGestureDebugId = 0;
|
|
9
|
+
var externalPressDebugId = 0;
|
|
10
|
+
var pressState = {
|
|
11
|
+
owner: null,
|
|
12
|
+
ownerId: null,
|
|
13
|
+
ownerSource: null,
|
|
14
|
+
timestamp: 0
|
|
15
|
+
};
|
|
16
|
+
function resetPressOwner() {
|
|
17
|
+
pressState.owner = null;
|
|
18
|
+
pressState.ownerId = null;
|
|
19
|
+
pressState.ownerSource = null;
|
|
20
|
+
pressState.timestamp = 0;
|
|
21
|
+
}
|
|
22
|
+
function resetStaleOwner(now, debugName) {
|
|
23
|
+
if (now - pressState.timestamp > 2e3) {
|
|
24
|
+
resetPressOwner();
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
function claimExternalPressOwnership(debugName) {
|
|
28
|
+
var now = Date.now();
|
|
29
|
+
resetStaleOwner(now, debugName);
|
|
30
|
+
var token = {};
|
|
31
|
+
var ownerId = ++externalPressDebugId;
|
|
32
|
+
var previousOwnerId = pressState.ownerId;
|
|
33
|
+
var previousOwnerSource = pressState.ownerSource;
|
|
34
|
+
pressState.owner = token;
|
|
35
|
+
pressState.ownerId = ownerId;
|
|
36
|
+
pressState.ownerSource = "external";
|
|
37
|
+
pressState.timestamp = now;
|
|
38
|
+
return token;
|
|
39
|
+
}
|
|
40
|
+
function releaseExternalPressOwnership(token, debugName) {
|
|
41
|
+
if (!token || pressState.owner !== token) {
|
|
42
|
+
return;
|
|
43
|
+
}
|
|
44
|
+
resetPressOwner();
|
|
10
45
|
}
|
|
11
46
|
function getGestureHandler() {
|
|
12
47
|
return {
|
|
13
48
|
get isEnabled() {
|
|
14
|
-
return
|
|
49
|
+
return state.get().enabled;
|
|
15
50
|
},
|
|
16
51
|
get state() {
|
|
17
|
-
return
|
|
52
|
+
return state.get();
|
|
18
53
|
},
|
|
19
54
|
set(updates) {
|
|
20
|
-
|
|
21
|
-
Object.assign(state, updates);
|
|
55
|
+
Object.assign(state.get(), updates);
|
|
22
56
|
},
|
|
23
57
|
disable() {
|
|
24
|
-
|
|
25
|
-
state.enabled = !1;
|
|
58
|
+
state.get().enabled = false;
|
|
26
59
|
},
|
|
27
60
|
createPressGesture(config) {
|
|
28
61
|
var {
|
|
29
62
|
Gesture
|
|
30
|
-
} =
|
|
63
|
+
} = state.get();
|
|
31
64
|
if (!Gesture) return null;
|
|
32
|
-
var _config_delayLongPress
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
65
|
+
var _config_delayLongPress;
|
|
66
|
+
var longPressDuration = (_config_delayLongPress = config.delayLongPress) !== null && _config_delayLongPress !== void 0 ? _config_delayLongPress : 500;
|
|
67
|
+
var myToken = {};
|
|
68
|
+
var myDebugId = ++pressGestureDebugId;
|
|
69
|
+
var GRACE_PERIOD_MS = process.env.TAMAGUI_RNGH_PRESS_DELAY ? +process.env.TAMAGUI_RNGH_PRESS_DELAY : 24;
|
|
70
|
+
var tryClaimOwnership = function () {
|
|
71
|
+
var now = Date.now();
|
|
72
|
+
resetStaleOwner(now, config.debugName);
|
|
73
|
+
var withinGrace = now - pressState.timestamp < GRACE_PERIOD_MS;
|
|
74
|
+
var previousOwnerId = pressState.ownerId;
|
|
75
|
+
var previousOwnerSource = pressState.ownerSource;
|
|
76
|
+
if (pressState.owner === null || withinGrace && pressState.ownerSource !== "external") {
|
|
77
|
+
pressState.owner = myToken;
|
|
78
|
+
pressState.ownerId = myDebugId;
|
|
79
|
+
pressState.ownerSource = "internal";
|
|
80
|
+
pressState.timestamp = now;
|
|
81
|
+
}
|
|
82
|
+
return pressState.owner === myToken;
|
|
83
|
+
};
|
|
84
|
+
var isOwner = function () {
|
|
85
|
+
return pressState.owner === myToken;
|
|
86
|
+
};
|
|
87
|
+
var releaseOwnership = function () {
|
|
88
|
+
if (pressState.owner === myToken) {
|
|
89
|
+
resetPressOwner();
|
|
90
|
+
}
|
|
91
|
+
};
|
|
92
|
+
var tap = Gesture.Tap().runOnJS(true).maxDuration(1e4).onBegin(function (e) {
|
|
93
|
+
tryClaimOwnership();
|
|
94
|
+
setTimeout(function () {
|
|
95
|
+
if (isOwner()) {
|
|
96
|
+
var _config_onPressIn;
|
|
97
|
+
(_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
|
|
98
|
+
}
|
|
99
|
+
}, GRACE_PERIOD_MS + 1);
|
|
100
|
+
}).onEnd(function (e) {
|
|
101
|
+
if (isOwner()) {
|
|
38
102
|
var _config_onPress;
|
|
39
|
-
(_config_onPress = config.onPress) === null || _config_onPress === void 0
|
|
40
|
-
}
|
|
103
|
+
(_config_onPress = config.onPress) === null || _config_onPress === void 0 ? void 0 : _config_onPress.call(config, e);
|
|
104
|
+
}
|
|
105
|
+
}).onFinalize(function (e) {
|
|
106
|
+
if (isOwner()) {
|
|
41
107
|
var _config_onPressOut;
|
|
42
|
-
(_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
108
|
+
(_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
|
|
109
|
+
releaseOwnership();
|
|
110
|
+
}
|
|
111
|
+
});
|
|
112
|
+
if (config.hitSlop) tap.hitSlop(config.hitSlop);
|
|
113
|
+
if (!config.onLongPress) return tap;
|
|
114
|
+
var longPress = Gesture.LongPress().runOnJS(true).minDuration(longPressDuration).onBegin(function (e) {
|
|
115
|
+
tryClaimOwnership();
|
|
116
|
+
setTimeout(function () {
|
|
117
|
+
if (isOwner()) {
|
|
118
|
+
var _config_onPressIn;
|
|
119
|
+
(_config_onPressIn = config.onPressIn) === null || _config_onPressIn === void 0 ? void 0 : _config_onPressIn.call(config, e);
|
|
120
|
+
}
|
|
121
|
+
}, GRACE_PERIOD_MS + 1);
|
|
48
122
|
}).onStart(function (e) {
|
|
49
|
-
|
|
50
|
-
|
|
123
|
+
if (isOwner()) {
|
|
124
|
+
var _config_onLongPress;
|
|
125
|
+
(_config_onLongPress = config.onLongPress) === null || _config_onLongPress === void 0 ? void 0 : _config_onLongPress.call(config, e);
|
|
126
|
+
}
|
|
51
127
|
}).onFinalize(function (e) {
|
|
52
|
-
|
|
53
|
-
|
|
128
|
+
if (isOwner()) {
|
|
129
|
+
var _config_onPressOut;
|
|
130
|
+
(_config_onPressOut = config.onPressOut) === null || _config_onPressOut === void 0 ? void 0 : _config_onPressOut.call(config, e);
|
|
131
|
+
releaseOwnership();
|
|
132
|
+
}
|
|
54
133
|
});
|
|
55
|
-
|
|
134
|
+
if (config.hitSlop) longPress.hitSlop(config.hitSlop);
|
|
135
|
+
return Gesture.Exclusive(longPress, tap);
|
|
56
136
|
}
|
|
57
137
|
};
|
|
58
138
|
}
|
|
59
|
-
export { getGestureHandler };
|
|
139
|
+
export { claimExternalPressOwnership, getGestureHandler, releaseExternalPressOwnership };
|
|
60
140
|
//# sourceMappingURL=gestureState.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["createGlobalState","state","enabled","Gesture","GestureDetector","ScrollView","pressGestureDebugId","externalPressDebugId","pressState","owner","ownerId","ownerSource","timestamp","resetPressOwner","resetStaleOwner","now","debugName","claimExternalPressOwnership","Date","token","previousOwnerId","previousOwnerSource","releaseExternalPressOwnership","getGestureHandler","isEnabled","get","set","updates","Object","assign","disable","createPressGesture","config","_config_delayLongPress","longPressDuration","delayLongPress","myToken","myDebugId","GRACE_PERIOD_MS","process","env","TAMAGUI_RNGH_PRESS_DELAY","tryClaimOwnership","withinGrace","isOwner","releaseOwnership","tap","Tap","runOnJS","maxDuration","onBegin","e","setTimeout","_config_onPressIn","onPressIn","call","onEnd","_config_onPress","onPress","onFinalize","_config_onPressOut","onPressOut","hitSlop","onLongPress","longPress","LongPress","minDuration","onStart","_config_onLongPress"],"sources":["../../src/gestureState.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|