@tamagui/web 2.0.0-1769401121849 → 2.0.0-1769409090068

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.
@@ -38,9 +38,10 @@ __export(eventHandling_native_exports, {
38
38
  wrapWithGestureDetector: () => wrapWithGestureDetector
39
39
  });
40
40
  module.exports = __toCommonJS(eventHandling_native_exports);
41
- var import_react = __toESM(require("react"), 1),
42
- import_helpers = require("@tamagui/helpers"),
43
- import_native = require("@tamagui/native");
41
+ var import_helpers = require("@tamagui/helpers"),
42
+ import_native = require("@tamagui/native"),
43
+ import_react = __toESM(require("react"), 1),
44
+ import_mainThreadPressEvents = require("./helpers/mainThreadPressEvents.native.js");
44
45
  function getWebEvents() {
45
46
  return {};
46
47
  }
@@ -59,14 +60,16 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
59
60
  }
60
61
  var hasPressEvents = events?.onPress,
61
62
  gh = (0, import_native.getGestureHandler)();
62
- if (hasPressEvents && (stateRef.current.hasHadEvents = !0), gh.isEnabled && hasPressEvents) {
63
+ hasPressEvents && (stateRef.current.hasHadEvents = !0);
64
+ var enabled = !!(hasPressEvents || stateRef.current.hasHadEvents);
65
+ if (gh.isEnabled && enabled) {
63
66
  var callbacksRef = (0, import_react.useRef)({});
64
- callbacksRef.current = {
67
+ callbacksRef.current = hasPressEvents ? {
65
68
  onPressIn: events.onPressIn,
66
69
  onPressOut: events.onPressOut,
67
70
  onPress: events.onPress,
68
71
  onLongPress: events.onLongPress
69
- };
72
+ } : {};
70
73
  var gestureRef = (0, import_react.useRef)(null);
71
74
  return gestureRef.current || (gestureRef.current = gh.createPressGesture({
72
75
  onPressIn: function (e) {
@@ -89,13 +92,7 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
89
92
  hitSlop: viewProps.hitSlop
90
93
  })), gestureRef.current;
91
94
  }
92
- if (hasPressEvents) {
93
- var {
94
- useMainThreadPressEvents
95
- } = require("./helpers/mainThreadPressEvents.native.js");
96
- useMainThreadPressEvents(events, viewProps);
97
- }
98
- return null;
95
+ return (0, import_mainThreadPressEvents.useMainThreadPressEvents)(events, viewProps, hasPressEvents), null;
99
96
  }
100
97
  function wrapWithGestureDetector(content, gesture, stateRef) {
101
98
  var gh = (0, import_native.getGestureHandler)(),
@@ -1 +1 @@
1
- {"version":3,"names":["eventHandling_native_exports","__export","getWebEvents","useEvents","wrapWithGestureDetector","module","exports","__toCommonJS","import_react","__toESM","require","import_helpers","import_native","events","viewProps","stateRef","staticConfig","onFocus","onBlur","isInput","onPressIn","onPressOut","onPress","inputEvents","composeEventHandlers","Object","assign","hasPressEvents","gh","getGestureHandler","current","hasHadEvents","isEnabled","callbacksRef","useRef","onLongPress","gestureRef","createPressGesture","e","_callbacksRef_current_onPressIn","_callbacksRef_current","call","_callbacksRef_current_onPressOut","_callbacksRef_current_onPress","_callbacksRef_current_onLongPress","delayLongPress","hitSlop","useMainThreadPressEvents","content","gesture","GestureDetector","Gesture","state","shouldWrap","gestureToUse","Manual","default","createElement"],"sources":["../../src/eventHandling.native.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,4BAAA;AAAAC,QAAA,CAAAD,4BAAA;EAAAE,YAAA,EAAAA,CAAA,KAAAA,YAAA;EAAAC,SAAA,EAAAA,CAAA,KAAAA,SAAA;EAAAC,uBAAA,EAAAA,CAAA,KAAAA;AAAA;AAAAC,MAAA,CAAAC,OAAA,GAAAC,YAAA,CAAAP,4BAAA;AAEI,IAAAQ,YAAA,GAA8BC,OAAA,CAAAC,OAAA;EAClCC,cAAA,GAAqCD,OAAA;EACrCE,aAAA,GAAkCF,OAAA;AAE3B,SAASR,aAAA,EAAe;EAC3B,OAAO,CAAC;AACZ;AACO,SAASC,UAAUU,MAAA,EAAQC,SAAA,EAAWC,QAAA,EAAUC,YAAA,EAAc;EAWjE,IATIH,MAAA,KACIA,MAAA,CAAOI,OAAA,KACPH,SAAA,CAAUG,OAAA,GAAaJ,MAAA,CAAOI,OAAA,GAE9BJ,MAAA,CAAOK,MAAA,KACPJ,SAAA,CAAUI,MAAA,GAAYL,MAAA,CAAOK,MAAA,IAIjCF,YAAA,CAAaG,OAAA,IAAWN,MAAA,EAAQ;IAChC,IAAI;QAAEO,SAAA;QAAWC,UAAA;QAAYC;MAAQ,IAAIT,MAAA;MACrCU,WAAA,GAAc;QACdH,SAAA;QACAC,UAAA,EAAYA,UAAA,IAAcC;MAC9B;IACA,OAAID,UAAA,IAAcC,OAAA,KAEdC,WAAA,CAAYF,UAAA,OAAaV,cAAA,CAAAa,oBAAA,EAAqBF,OAAA,EAASD,UAAU,IAErEI,MAAA,CAAOC,MAAA,CAAOZ,SAAA,EAAWS,WAAW,GAE7B;EACX;EACA,IAAII,cAAA,GAC4Cd,MAAA,EAAOS,OAAA;IACnDM,EAAA,OAAKhB,aAAA,CAAAiB,iBAAA,EAAkB;EAK3B,IAHIF,cAAA,KACAZ,QAAA,CAASe,OAAA,CAAQC,YAAA,GAAe,KAEhCH,EAAA,CAAGI,SAAA,IAAaL,cAAA,EAAgB;IAGhC,IAAIM,YAAA,OAAezB,YAAA,CAAA0B,MAAA,EAAO,CAAC,CAAC;IAC5BD,YAAA,CAAaH,OAAA,GAAU;MACnBV,SAAA,EAAWP,MAAA,CAAOO,SAAA;MAClBC,UAAA,EAAYR,MAAA,CAAOQ,UAAA;MACnBC,OAAA,EAAST,MAAA,CAAOS,OAAA;MAChBa,WAAA,EAAatB,MAAA,CAAOsB;IACxB;IAEA,IAAIC,UAAA,OAAa5B,YAAA,CAAA0B,MAAA,EAAO,IAAI;IAC5B,OAAKE,UAAA,CAAWN,OAAA,KACZM,UAAA,CAAWN,OAAA,GAAUF,EAAA,CAAGS,kBAAA,CAAmB;MACvCjB,SAAA,EAAW,SAAAA,CAASkB,CAAA,EAAG;QACnB,IAAIC,+BAAA,EAAiCC,qBAAA;QACrC,QAAQD,+BAAA,IAAmCC,qBAAA,GAAwBP,YAAA,CAAaH,OAAA,EAASV,SAAA,MAAe,QAAQmB,+BAAA,KAAoC,SAAS,SAASA,+BAAA,CAAgCE,IAAA,CAAKD,qBAAA,EAAuBF,CAAC;MACvO;MACAjB,UAAA,EAAY,SAAAA,CAASiB,CAAA,EAAG;QACpB,IAAII,gCAAA,EAAkCF,qBAAA;QACtC,QAAQE,gCAAA,IAAoCF,qBAAA,GAAwBP,YAAA,CAAaH,OAAA,EAAST,UAAA,MAAgB,QAAQqB,gCAAA,KAAqC,SAAS,SAASA,gCAAA,CAAiCD,IAAA,CAAKD,qBAAA,EAAuBF,CAAC;MAC3O;MACAhB,OAAA,EAAS,SAAAA,CAASgB,CAAA,EAAG;QACjB,IAAIK,6BAAA,EAA+BH,qBAAA;QACnC,QAAQG,6BAAA,IAAiCH,qBAAA,GAAwBP,YAAA,CAAaH,OAAA,EAASR,OAAA,MAAa,QAAQqB,6BAAA,KAAkC,SAAS,SAASA,6BAAA,CAA8BF,IAAA,CAAKD,qBAAA,EAAuBF,CAAC;MAC/N;MACAH,WAAA,EAAa,SAAAA,CAASG,CAAA,EAAG;QACrB,IAAIM,iCAAA,EAAmCJ,qBAAA;QACvC,QAAQI,iCAAA,IAAqCJ,qBAAA,GAAwBP,YAAA,CAAaH,OAAA,EAASK,WAAA,MAAiB,QAAQS,iCAAA,KAAsC,SAAS,SAASA,iCAAA,CAAkCH,IAAA,CAAKD,qBAAA,EAAuBF,CAAC;MAC/O;MACAO,cAAA,EAAgBhC,MAAA,CAAOgC,cAAA;MACvBC,OAAA,EAAShC,SAAA,CAAUgC;IACvB,CAAC,IAEEV,UAAA,CAAWN,OAAA;EACtB;EACA,IAAIH,cAAA,EAAgB;IAGhB,IAAI;MAAEoB;IAAyB,IAAIrC,OAAA,CAAQ,2CAAiC;IAC5EqC,wBAAA,CAAyBlC,MAAA,EAAQC,SAAS;EAC9C;EACA,OAAO;AACX;AACO,SAASV,wBAAwB4C,OAAA,EAASC,OAAA,EAASlC,QAAA,EAAU;EAChE,IAAIa,EAAA,OAAKhB,aAAA,CAAAiB,iBAAA,EAAkB;IACvB;MAAEqB,eAAA;MAAiBC;IAAQ,IAAIvB,EAAA,CAAGwB,KAAA;IAElCC,UAAA,GAAatC,QAAA,CAASe,OAAA,CAAQC,YAAA;EAClC,IAAI,CAACmB,eAAA,IAAmB,CAACG,UAAA,EACrB,OAAOL,OAAA;EAGX,IAAIM,YAAA,GAAeL,OAAA,IAA8DE,OAAA,EAAQI,MAAA,CAAO;EAChG,OAAKD,YAAA,GAGE9C,YAAA,CAAAgD,OAAA,CAAMC,aAAA,CAAcP,eAAA,EAAiB;IACxCD,OAAA,EAASK;EACb,GAAGN,OAAO,IAJCA,OAAA;AAKf","ignoreList":[]}
1
+ {"version":3,"names":["eventHandling_native_exports","__export","getWebEvents","useEvents","wrapWithGestureDetector","module","exports","__toCommonJS","import_helpers","require","import_native","import_react","__toESM","import_mainThreadPressEvents","events","viewProps","stateRef","staticConfig","onFocus","onBlur","isInput","onPressIn","onPressOut","onPress","inputEvents","composeEventHandlers","Object","assign","hasPressEvents","gh","getGestureHandler","current","hasHadEvents","enabled","isEnabled","callbacksRef","useRef","onLongPress","gestureRef","createPressGesture","e","_callbacksRef_current_onPressIn","_callbacksRef_current","call","_callbacksRef_current_onPressOut","_callbacksRef_current_onPress","_callbacksRef_current_onLongPress","delayLongPress","hitSlop","useMainThreadPressEvents","content","gesture","GestureDetector","Gesture","state","shouldWrap","gestureToUse","Manual","default","createElement"],"sources":["../../src/eventHandling.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -25,13 +25,15 @@ __export(mainThreadPressEvents_exports, {
25
25
  module.exports = __toCommonJS(mainThreadPressEvents_exports);
26
26
  var import_helpers = require("@tamagui/helpers");
27
27
  const dontComposePressabilityKeys = {
28
- onBlur: !0,
29
- onFocus: !0
30
- };
31
- function useMainThreadPressEvents(events, viewProps) {
32
- const usePressability = require("react-native/Libraries/Pressability/usePressability").default,
33
- pressability = usePressability(events);
34
- if (pressability) {
28
+ onBlur: !0,
29
+ onFocus: !0
30
+ },
31
+ emptyConfig = {};
32
+ let usePressability = null;
33
+ function useMainThreadPressEvents(events, viewProps, enabled = !0) {
34
+ usePressability ||= require("react-native/Libraries/Pressability/usePressability").default;
35
+ const pressability = usePressability(enabled ? events : emptyConfig);
36
+ if (enabled && pressability) {
35
37
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
36
38
  for (const key in pressability) {
37
39
  const og = viewProps[key],
@@ -21,10 +21,12 @@ var import_helpers = require("@tamagui/helpers");
21
21
  const dontComposePressabilityKeys = {
22
22
  onBlur: !0,
23
23
  onFocus: !0
24
- };
25
- function useMainThreadPressEvents(events, viewProps) {
26
- const usePressability = require("react-native/Libraries/Pressability/usePressability").default, pressability = usePressability(events);
27
- if (pressability) {
24
+ }, emptyConfig = {};
25
+ let usePressability = null;
26
+ function useMainThreadPressEvents(events, viewProps, enabled = !0) {
27
+ usePressability ||= require("react-native/Libraries/Pressability/usePressability").default;
28
+ const pressability = usePressability(enabled ? events : emptyConfig);
29
+ if (enabled && pressability) {
28
30
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
29
31
  for (const key in pressability) {
30
32
  const og = viewProps[key], val = pressability[key];
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/mainThreadPressEvents.ts"],
4
- "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAKA,qBAAqC;AAErC,MAAM,8BAAuD;AAAA,EAC3D,QAAQ;AAAA,EACR,SAAS;AACX;AAEO,SAAS,yBAAyB,QAAa,WAAgB;AACpE,QAAM,kBACJ,QAAQ,qDAAqD,EAAE,SAC3D,eAAe,gBAAgB,MAAM;AAE3C,MAAI,cAAc;AAChB,IAAI,UAAU,YACZ,OAAO,UAAU,UAAU;AAE7B,eAAW,OAAO,cAAc;AAC9B,YAAM,KAAK,UAAU,GAAG,GAClB,MAAM,aAAa,GAAG;AAC5B,gBAAU,GAAG,IACX,MAAM,CAAC,4BAA4B,GAAG,QAAI,qCAAqB,IAAI,GAAG,IAAI;AAAA,IAC9E;AAAA,EACF;AACF;",
4
+ "mappings": ";;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,qBAAqC;AAErC,MAAM,8BAAuD;AAAA,EAC3D,QAAQ;AAAA,EACR,SAAS;AACX,GAGM,cAAc,CAAC;AAErB,IAAI,kBAAuB;AAEpB,SAAS,yBAAyB,QAAa,WAAgB,UAAU,IAAM;AACpF,sBACE,QAAQ,qDAAqD,EAAE;AAGjE,QAAM,eAAe,gBAAgB,UAAU,SAAS,WAAW;AAEnE,MAAI,WAAW,cAAc;AAC3B,IAAI,UAAU,YACZ,OAAO,UAAU,UAAU;AAE7B,eAAW,OAAO,cAAc;AAC9B,YAAM,KAAK,UAAU,GAAG,GAClB,MAAM,aAAa,GAAG;AAC5B,gBAAU,GAAG,IACX,MAAM,CAAC,4BAA4B,GAAG,QAAI,qCAAqB,IAAI,GAAG,IAAI;AAAA,IAC9E;AAAA,EACF;AACF;",
5
5
  "names": []
6
6
  }
@@ -29,11 +29,14 @@ var import_helpers = require("@tamagui/helpers"),
29
29
  dontComposePressabilityKeys = {
30
30
  onBlur: !0,
31
31
  onFocus: !0
32
- };
32
+ },
33
+ emptyConfig = {},
34
+ usePressability = null;
33
35
  function useMainThreadPressEvents(events, viewProps) {
34
- var usePressability = require("react-native/Libraries/Pressability/usePressability").default,
35
- pressability = usePressability(events);
36
- if (pressability) {
36
+ var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !0;
37
+ usePressability || (usePressability = require("react-native/Libraries/Pressability/usePressability").default);
38
+ var pressability = usePressability(enabled ? events : emptyConfig);
39
+ if (enabled && pressability) {
37
40
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
38
41
  for (var key in pressability) {
39
42
  var og = viewProps[key],
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","mainThreadPressEvents_exports","__export","useMainThreadPressEvents","module","exports","import_helpers","require","dontComposePressabilityKeys","onBlur","onFocus","events","viewProps","usePressability","default","pressability","hitSlop","key","og","val","composeEventHandlers"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,6BAAA;AAAAC,QAAA,CAAAD,6BAAA;EAAAE,wBAAA,EAAAA,CAAA,KAAAA;AAAA;AAKAC,MAAA,CAAAC,OAAA,GAAAT,YAAqC,CAAAK,6BAAA;AAErC,IAAAK,cAAM,GAAAC,OAAA,mBAAuD;EAAAC,2BAAA;IAC3DC,MAAA,EAAQ;IACRC,OAAA,EAAS;EACX;AAEO,SAASP,yBAAyBQ,MAAA,EAAaC,SAAA,EAAgB;EACpE,IAAAC,eAAM,GAAAN,OACJ,sDAAQ,EAAqDO,OAAE;IAAAC,YAC3D,GAAAF,eAAe,CAAAF,MAAgB;EAErC,IAAII,YAAA,EAAc;IACZH,SAAA,CAAUI,OAAA,KACZL,MAAA,CAAOK,OAAA,GAAUJ,SAAA,CAAUI,OAAA;IAE7B,SAAAC,GAAW,IAAAF,YAAO;MAChB,IAAAG,EAAM,GAAAN,SAAK,CAAAK,GAAU;QAAGE,GAClB,GAAAJ,YAAM,CAAAE,GAAa;MACzBL,SAAA,CAAUK,GAAG,IACXC,EAAA,IAAM,CAACV,2BAAA,CAA4BS,GAAG,QAAIX,cAAA,CAAAc,oBAAA,EAAqBF,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","mainThreadPressEvents_exports","__export","useMainThreadPressEvents","module","exports","import_helpers","require","dontComposePressabilityKeys","onBlur","onFocus","emptyConfig","usePressability","events","viewProps","enabled","arguments","length","default","pressability","hitSlop","key","og","val","composeEventHandlers"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,6BAAA;AAAAC,QAAA,CAAAD,6BAAA;EAAAE,wBAAA,EAAAA,CAAA,KAAAA;AAAA;AASAC,MAAA,CAAAC,OAAA,GAAAT,YAAqC,CAAAK,6BAAA;AAErC,IAAAK,cAAM,GAAAC,OAAA,mBAAuD;EAAAC,2BAAA;IAC3DC,MAAA,EAAQ;IACRC,OAAA,EAAS;EACX;EAGMC,WAAA,GAAc,CAAC;EAAAC,eAAA;AAErB,SAAIT,wBAAuBA,CAAAU,MAAA,EAAAC,SAAA;EAEpB,IAAAC,OAAS,GAAAC,SAAA,CAAAC,MAAA,GAAyB,KAAAD,SAAa,QAAgB,MAAU,GAAAA,SAAM;EACpFJ,eAAA,KACEA,eAAQ,GAAAL,OAAA,sDAAuD,EAAAW,OAAA;EAGjE,IAAAC,YAAM,GAAAP,eAAe,CAAAG,OAAgB,GAAAF,MAAU,GAAAF,WAAS;EAExD,IAAII,OAAA,IAAWI,YAAA,EAAc;IACvBL,SAAA,CAAUM,OAAA,KACZP,MAAA,CAAOO,OAAA,GAAUN,SAAA,CAAUM,OAAA;IAE7B,SAAAC,GAAW,IAAAF,YAAO;MAChB,IAAAG,EAAM,GAAAR,SAAK,CAAAO,GAAU;QAAGE,GAClB,GAAAJ,YAAM,CAAAE,GAAa;MACzBP,SAAA,CAAUO,GAAG,IACXC,EAAA,IAAM,CAACd,2BAAA,CAA4Ba,GAAG,QAAIf,cAAA,CAAAkB,oBAAA,EAAqBF,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
@@ -1,6 +1,7 @@
1
- import React, { useRef } from "react";
2
1
  import { composeEventHandlers } from "@tamagui/helpers";
3
2
  import { getGestureHandler } from "@tamagui/native";
3
+ import React, { useRef } from "react";
4
+ import { useMainThreadPressEvents } from "./helpers/mainThreadPressEvents.native.js";
4
5
  function getWebEvents() {
5
6
  return {};
6
7
  }
@@ -19,14 +20,16 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
19
20
  }
20
21
  var hasPressEvents = events?.onPress,
21
22
  gh = getGestureHandler();
22
- if (hasPressEvents && (stateRef.current.hasHadEvents = !0), gh.isEnabled && hasPressEvents) {
23
+ hasPressEvents && (stateRef.current.hasHadEvents = !0);
24
+ var enabled = !!(hasPressEvents || stateRef.current.hasHadEvents);
25
+ if (gh.isEnabled && enabled) {
23
26
  var callbacksRef = useRef({});
24
- callbacksRef.current = {
27
+ callbacksRef.current = hasPressEvents ? {
25
28
  onPressIn: events.onPressIn,
26
29
  onPressOut: events.onPressOut,
27
30
  onPress: events.onPress,
28
31
  onLongPress: events.onLongPress
29
- };
32
+ } : {};
30
33
  var gestureRef = useRef(null);
31
34
  return gestureRef.current || (gestureRef.current = gh.createPressGesture({
32
35
  onPressIn: function (e) {
@@ -49,13 +52,7 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
49
52
  hitSlop: viewProps.hitSlop
50
53
  })), gestureRef.current;
51
54
  }
52
- if (hasPressEvents) {
53
- var {
54
- useMainThreadPressEvents
55
- } = require("./helpers/mainThreadPressEvents");
56
- useMainThreadPressEvents(events, viewProps);
57
- }
58
- return null;
55
+ return useMainThreadPressEvents(events, viewProps, hasPressEvents), null;
59
56
  }
60
57
  function wrapWithGestureDetector(content, gesture, stateRef) {
61
58
  var gh = getGestureHandler(),
@@ -1 +1 @@
1
- {"version":3,"names":["React","useRef","composeEventHandlers","getGestureHandler","getWebEvents","useEvents","events","viewProps","stateRef","staticConfig","onFocus","onBlur","isInput","onPressIn","onPressOut","onPress","inputEvents","Object","assign","hasPressEvents","gh","current","hasHadEvents","isEnabled","callbacksRef","onLongPress","gestureRef","createPressGesture","e","_callbacksRef_current_onPressIn","_callbacksRef_current","call","_callbacksRef_current_onPressOut","_callbacksRef_current_onPress","_callbacksRef_current_onLongPress","delayLongPress","hitSlop","useMainThreadPressEvents","require","wrapWithGestureDetector","content","gesture","GestureDetector","Gesture","state","shouldWrap","gestureToUse","Manual","createElement"],"sources":["../../src/eventHandling.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["composeEventHandlers","getGestureHandler","React","useRef","useMainThreadPressEvents","getWebEvents","useEvents","events","viewProps","stateRef","staticConfig","onFocus","onBlur","isInput","onPressIn","onPressOut","onPress","inputEvents","Object","assign","hasPressEvents","gh","current","hasHadEvents","enabled","isEnabled","callbacksRef","onLongPress","gestureRef","createPressGesture","e","_callbacksRef_current_onPressIn","_callbacksRef_current","call","_callbacksRef_current_onPressOut","_callbacksRef_current_onPress","_callbacksRef_current_onLongPress","delayLongPress","hitSlop","wrapWithGestureDetector","content","gesture","GestureDetector","Gesture","state","shouldWrap","gestureToUse","Manual","createElement"],"sources":["../../src/eventHandling.native.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -2,10 +2,12 @@ import { composeEventHandlers } from "@tamagui/helpers";
2
2
  const dontComposePressabilityKeys = {
3
3
  onBlur: !0,
4
4
  onFocus: !0
5
- };
6
- function useMainThreadPressEvents(events, viewProps) {
7
- const usePressability = require("react-native/Libraries/Pressability/usePressability").default, pressability = usePressability(events);
8
- if (pressability) {
5
+ }, emptyConfig = {};
6
+ let usePressability = null;
7
+ function useMainThreadPressEvents(events, viewProps, enabled = !0) {
8
+ usePressability ||= require("react-native/Libraries/Pressability/usePressability").default;
9
+ const pressability = usePressability(enabled ? events : emptyConfig);
10
+ if (enabled && pressability) {
9
11
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
10
12
  for (const key in pressability) {
11
13
  const og = viewProps[key], val = pressability[key];
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../../../src/helpers/mainThreadPressEvents.ts"],
4
- "mappings": "AAKA,SAAS,4BAA4B;AAErC,MAAM,8BAAuD;AAAA,EAC3D,QAAQ;AAAA,EACR,SAAS;AACX;AAEO,SAAS,yBAAyB,QAAa,WAAgB;AACpE,QAAM,kBACJ,QAAQ,qDAAqD,EAAE,SAC3D,eAAe,gBAAgB,MAAM;AAE3C,MAAI,cAAc;AAChB,IAAI,UAAU,YACZ,OAAO,UAAU,UAAU;AAE7B,eAAW,OAAO,cAAc;AAC9B,YAAM,KAAK,UAAU,GAAG,GAClB,MAAM,aAAa,GAAG;AAC5B,gBAAU,GAAG,IACX,MAAM,CAAC,4BAA4B,GAAG,IAAI,qBAAqB,IAAI,GAAG,IAAI;AAAA,IAC9E;AAAA,EACF;AACF;",
4
+ "mappings": "AASA,SAAS,4BAA4B;AAErC,MAAM,8BAAuD;AAAA,EAC3D,QAAQ;AAAA,EACR,SAAS;AACX,GAGM,cAAc,CAAC;AAErB,IAAI,kBAAuB;AAEpB,SAAS,yBAAyB,QAAa,WAAgB,UAAU,IAAM;AACpF,sBACE,QAAQ,qDAAqD,EAAE;AAGjE,QAAM,eAAe,gBAAgB,UAAU,SAAS,WAAW;AAEnE,MAAI,WAAW,cAAc;AAC3B,IAAI,UAAU,YACZ,OAAO,UAAU,UAAU;AAE7B,eAAW,OAAO,cAAc;AAC9B,YAAM,KAAK,UAAU,GAAG,GAClB,MAAM,aAAa,GAAG;AAC5B,gBAAU,GAAG,IACX,MAAM,CAAC,4BAA4B,GAAG,IAAI,qBAAqB,IAAI,GAAG,IAAI;AAAA,IAC9E;AAAA,EACF;AACF;",
5
5
  "names": []
6
6
  }
@@ -1,12 +1,14 @@
1
1
  import { composeEventHandlers } from "@tamagui/helpers";
2
2
  const dontComposePressabilityKeys = {
3
- onBlur: !0,
4
- onFocus: !0
5
- };
6
- function useMainThreadPressEvents(events, viewProps) {
7
- const usePressability = require("react-native/Libraries/Pressability/usePressability").default,
8
- pressability = usePressability(events);
9
- if (pressability) {
3
+ onBlur: !0,
4
+ onFocus: !0
5
+ },
6
+ emptyConfig = {};
7
+ let usePressability = null;
8
+ function useMainThreadPressEvents(events, viewProps, enabled = !0) {
9
+ usePressability ||= require("react-native/Libraries/Pressability/usePressability").default;
10
+ const pressability = usePressability(enabled ? events : emptyConfig);
11
+ if (enabled && pressability) {
10
12
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
11
13
  for (const key in pressability) {
12
14
  const og = viewProps[key],
@@ -1 +1 @@
1
- {"version":3,"names":["composeEventHandlers","dontComposePressabilityKeys","onBlur","onFocus","useMainThreadPressEvents","events","viewProps","usePressability","require","default","pressability","hitSlop","key","og","val"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,oBAAA,QAA4B;AAErC,MAAMC,2BAAA,GAAuD;EAC3DC,MAAA,EAAQ;EACRC,OAAA,EAAS;AACX;AAEO,SAASC,yBAAyBC,MAAA,EAAaC,SAAA,EAAgB;EACpE,MAAMC,eAAA,GACJC,OAAA,CAAQ,qDAAqD,EAAEC,OAAA;IAC3DC,YAAA,GAAeH,eAAA,CAAgBF,MAAM;EAE3C,IAAIK,YAAA,EAAc;IACZJ,SAAA,CAAUK,OAAA,KACZN,MAAA,CAAOM,OAAA,GAAUL,SAAA,CAAUK,OAAA;IAE7B,WAAWC,GAAA,IAAOF,YAAA,EAAc;MAC9B,MAAMG,EAAA,GAAKP,SAAA,CAAUM,GAAG;QAClBE,GAAA,GAAMJ,YAAA,CAAaE,GAAG;MAC5BN,SAAA,CAAUM,GAAG,IACXC,EAAA,IAAM,CAACZ,2BAAA,CAA4BW,GAAG,IAAIZ,oBAAA,CAAqBa,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["composeEventHandlers","dontComposePressabilityKeys","onBlur","onFocus","emptyConfig","usePressability","useMainThreadPressEvents","events","viewProps","enabled","require","default","pressability","hitSlop","key","og","val"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":"AASA,SAASA,oBAAA,QAA4B;AAErC,MAAMC,2BAAA,GAAuD;IAC3DC,MAAA,EAAQ;IACRC,OAAA,EAAS;EACX;EAGMC,WAAA,GAAc,CAAC;AAErB,IAAIC,eAAA,GAAuB;AAEpB,SAASC,yBAAyBC,MAAA,EAAaC,SAAA,EAAgBC,OAAA,GAAU,IAAM;EACpFJ,eAAA,KACEK,OAAA,CAAQ,qDAAqD,EAAEC,OAAA;EAGjE,MAAMC,YAAA,GAAeP,eAAA,CAAgBI,OAAA,GAAUF,MAAA,GAASH,WAAW;EAEnE,IAAIK,OAAA,IAAWG,YAAA,EAAc;IACvBJ,SAAA,CAAUK,OAAA,KACZN,MAAA,CAAOM,OAAA,GAAUL,SAAA,CAAUK,OAAA;IAE7B,WAAWC,GAAA,IAAOF,YAAA,EAAc;MAC9B,MAAMG,EAAA,GAAKP,SAAA,CAAUM,GAAG;QAClBE,GAAA,GAAMJ,YAAA,CAAaE,GAAG;MAC5BN,SAAA,CAAUM,GAAG,IACXC,EAAA,IAAM,CAACd,2BAAA,CAA4Ba,GAAG,IAAId,oBAAA,CAAqBe,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
@@ -1,12 +1,15 @@
1
1
  import { composeEventHandlers } from "@tamagui/helpers";
2
2
  var dontComposePressabilityKeys = {
3
- onBlur: !0,
4
- onFocus: !0
5
- };
3
+ onBlur: !0,
4
+ onFocus: !0
5
+ },
6
+ emptyConfig = {},
7
+ usePressability = null;
6
8
  function useMainThreadPressEvents(events, viewProps) {
7
- var usePressability = require("react-native/Libraries/Pressability/usePressability").default,
8
- pressability = usePressability(events);
9
- if (pressability) {
9
+ var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : !0;
10
+ usePressability || (usePressability = require("react-native/Libraries/Pressability/usePressability").default);
11
+ var pressability = usePressability(enabled ? events : emptyConfig);
12
+ if (enabled && pressability) {
10
13
  viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
11
14
  for (var key in pressability) {
12
15
  var og = viewProps[key],
@@ -1 +1 @@
1
- {"version":3,"names":["composeEventHandlers","dontComposePressabilityKeys","onBlur","onFocus","useMainThreadPressEvents","events","viewProps","usePressability","require","default","pressability","hitSlop","key","og","val"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":"AAKA,SAASA,oBAAA,QAA4B;AAErC,IAAAC,2BAAM;EACJC,MAAA,EAAQ;EACRC,OAAA,EAAS;AACX;AAEO,SAASC,yBAAyBC,MAAA,EAAaC,SAAA,EAAgB;EACpE,IAAAC,eAAM,GAAAC,OACJ,sDAAQ,EAAqDC,OAAE;IAAAC,YAC3D,GAAAH,eAAe,CAAAF,MAAgB;EAErC,IAAIK,YAAA,EAAc;IACZJ,SAAA,CAAUK,OAAA,KACZN,MAAA,CAAOM,OAAA,GAAUL,SAAA,CAAUK,OAAA;IAE7B,SAAAC,GAAW,IAAAF,YAAO;MAChB,IAAAG,EAAM,GAAAP,SAAK,CAAAM,GAAU;QAAGE,GAClB,GAAAJ,YAAM,CAAAE,GAAa;MACzBN,SAAA,CAAUM,GAAG,IACXC,EAAA,IAAM,CAACZ,2BAAA,CAA4BW,GAAG,IAAIZ,oBAAA,CAAqBa,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
1
+ {"version":3,"names":["composeEventHandlers","dontComposePressabilityKeys","onBlur","onFocus","emptyConfig","usePressability","useMainThreadPressEvents","events","viewProps","enabled","arguments","length","require","default","pressability","hitSlop","key","og","val"],"sources":["../../../src/helpers/mainThreadPressEvents.ts"],"sourcesContent":[null],"mappings":"AASA,SAASA,oBAAA,QAA4B;AAErC,IAAAC,2BAAM;IACJC,MAAA,EAAQ;IACRC,OAAA,EAAS;EACX;EAGMC,WAAA,GAAc,CAAC;EAAAC,eAAA;AAErB,SAAIC,wBAAuBA,CAAAC,MAAA,EAAAC,SAAA;EAEpB,IAAAC,OAAS,GAAAC,SAAA,CAAAC,MAAA,GAAyB,KAAAD,SAAa,QAAgB,MAAU,GAAAA,SAAM;EACpFL,eAAA,KACEA,eAAQ,GAAAO,OAAA,sDAAuD,EAAAC,OAAA;EAGjE,IAAAC,YAAM,GAAAT,eAAe,CAAAI,OAAgB,GAAAF,MAAU,GAAAH,WAAS;EAExD,IAAIK,OAAA,IAAWK,YAAA,EAAc;IACvBN,SAAA,CAAUO,OAAA,KACZR,MAAA,CAAOQ,OAAA,GAAUP,SAAA,CAAUO,OAAA;IAE7B,SAAAC,GAAW,IAAAF,YAAO;MAChB,IAAAG,EAAM,GAAAT,SAAK,CAAAQ,GAAU;QAAGE,GAClB,GAAAJ,YAAM,CAAAE,GAAa;MACzBR,SAAA,CAAUQ,GAAG,IACXC,EAAA,IAAM,CAAChB,2BAAA,CAA4Be,GAAG,IAAIhB,oBAAA,CAAqBiB,EAAA,EAAIC,GAAG,IAAIA,GAAA;IAC9E;EACF;AACF","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/web",
3
- "version": "2.0.0-1769401121849",
3
+ "version": "2.0.0-1769409090068",
4
4
  "type": "module",
5
5
  "source": "src/index.ts",
6
6
  "main": "dist/cjs",
@@ -28,17 +28,17 @@
28
28
  "reset.css"
29
29
  ],
30
30
  "dependencies": {
31
- "@tamagui/compose-refs": "2.0.0-1769401121849",
32
- "@tamagui/constants": "2.0.0-1769401121849",
33
- "@tamagui/helpers": "2.0.0-1769401121849",
34
- "@tamagui/is-equal-shallow": "2.0.0-1769401121849",
35
- "@tamagui/native": "2.0.0-1769401121849",
36
- "@tamagui/normalize-css-color": "2.0.0-1769401121849",
37
- "@tamagui/timer": "2.0.0-1769401121849",
38
- "@tamagui/types": "2.0.0-1769401121849",
39
- "@tamagui/use-did-finish-ssr": "2.0.0-1769401121849",
40
- "@tamagui/use-event": "2.0.0-1769401121849",
41
- "@tamagui/use-force-update": "2.0.0-1769401121849"
31
+ "@tamagui/compose-refs": "2.0.0-1769409090068",
32
+ "@tamagui/constants": "2.0.0-1769409090068",
33
+ "@tamagui/helpers": "2.0.0-1769409090068",
34
+ "@tamagui/is-equal-shallow": "2.0.0-1769409090068",
35
+ "@tamagui/native": "2.0.0-1769409090068",
36
+ "@tamagui/normalize-css-color": "2.0.0-1769409090068",
37
+ "@tamagui/timer": "2.0.0-1769409090068",
38
+ "@tamagui/types": "2.0.0-1769409090068",
39
+ "@tamagui/use-did-finish-ssr": "2.0.0-1769409090068",
40
+ "@tamagui/use-event": "2.0.0-1769409090068",
41
+ "@tamagui/use-force-update": "2.0.0-1769409090068"
42
42
  },
43
43
  "peerDependencies": {
44
44
  "react": "*",
@@ -46,7 +46,7 @@
46
46
  "react-native": "*"
47
47
  },
48
48
  "devDependencies": {
49
- "@tamagui/build": "2.0.0-1769401121849",
49
+ "@tamagui/build": "2.0.0-1769409090068",
50
50
  "@testing-library/react": "^16.1.0",
51
51
  "csstype": "^3.0.10",
52
52
  "react": "*",
@@ -2,11 +2,14 @@
2
2
  * Native event handling - uses RNGH when available, falls back to usePressability
3
3
  */
4
4
 
5
- import React, { useRef } from 'react'
6
5
  import { composeEventHandlers } from '@tamagui/helpers'
7
6
  import { getGestureHandler } from '@tamagui/native'
7
+ import React, { useRef } from 'react'
8
8
  import type { StaticConfig, TamaguiComponentStateRef } from './types'
9
9
 
10
+ // TODO conditional improt - the way we bundle core test.native.js breaks if inline require need to fix
11
+ import { useMainThreadPressEvents } from './helpers/mainThreadPressEvents'
12
+
10
13
  // web events not used on native
11
14
  export function getWebEvents() {
12
15
  return {}
@@ -50,21 +53,27 @@ export function useEvents(
50
53
 
51
54
  const gh = getGestureHandler()
52
55
 
53
- // track if we ever had press events to avoid re-parenting
56
+ // track if we ever had press events to avoid re-parenting / hooks issues
54
57
  if (hasPressEvents) {
55
58
  stateRef.current.hasHadEvents = true
56
59
  }
57
60
 
58
- if (gh.isEnabled && hasPressEvents) {
61
+ // avoid hooks/reparenting
62
+ const enabled = Boolean(hasPressEvents || stateRef.current.hasHadEvents)
63
+
64
+ // rngh path
65
+ if (gh.isEnabled && enabled) {
59
66
  // RNGH path - return gesture for wrapping
60
67
  // store callbacks in refs so gesture doesn't need to be recreated on every render
61
68
  const callbacksRef = useRef<any>({})
62
- callbacksRef.current = {
63
- onPressIn: events.onPressIn,
64
- onPressOut: events.onPressOut,
65
- onPress: events.onPress,
66
- onLongPress: events.onLongPress,
67
- }
69
+ callbacksRef.current = hasPressEvents
70
+ ? {
71
+ onPressIn: events.onPressIn,
72
+ onPressOut: events.onPressOut,
73
+ onPress: events.onPress,
74
+ onLongPress: events.onLongPress,
75
+ }
76
+ : {}
68
77
 
69
78
  // only create gesture once, callbacks are read from ref
70
79
  const gestureRef = useRef<any>(null)
@@ -81,12 +90,9 @@ export function useEvents(
81
90
  return gestureRef.current
82
91
  }
83
92
 
84
- if (hasPressEvents) {
85
- // fallback - use usePressability when RNGH not enabled
86
- // split into separate file to avoid deep import warnings
87
- const { useMainThreadPressEvents } = require('./helpers/mainThreadPressEvents')
88
- useMainThreadPressEvents(events, viewProps)
89
- }
93
+ // fallback - use usePressability when RNGH not enabled
94
+ // split into separate file to avoid deep import warnings
95
+ useMainThreadPressEvents(events, viewProps, hasPressEvents)
90
96
 
91
97
  return null
92
98
  }
@@ -1,6 +1,10 @@
1
1
  /**
2
2
  * Fallback press handling using React Native's usePressability
3
3
  * Split into separate file to avoid deep import warnings when RNGH is enabled
4
+ *
5
+ * NOTE: This hook must be called unconditionally in the parent to avoid
6
+ * rules of hooks violations when disabled toggles. The `enabled` param
7
+ * controls whether the pressability events are actually applied.
4
8
  */
5
9
 
6
10
  import { composeEventHandlers } from '@tamagui/helpers'
@@ -10,12 +14,19 @@ const dontComposePressabilityKeys: Record<string, boolean> = {
10
14
  onFocus: true,
11
15
  }
12
16
 
13
- export function useMainThreadPressEvents(events: any, viewProps: any) {
14
- const usePressability =
17
+ // empty config for when disabled - usePressability still needs to be called
18
+ const emptyConfig = {}
19
+
20
+ let usePressability: any = null
21
+
22
+ export function useMainThreadPressEvents(events: any, viewProps: any, enabled = true) {
23
+ usePressability ||=
15
24
  require('react-native/Libraries/Pressability/usePressability').default
16
- const pressability = usePressability(events)
17
25
 
18
- if (pressability) {
26
+ // always call the hook to maintain consistent hook order
27
+ const pressability = usePressability(enabled ? events : emptyConfig)
28
+
29
+ if (enabled && pressability) {
19
30
  if (viewProps.hitSlop) {
20
31
  events.hitSlop = viewProps.hitSlop
21
32
  }
@@ -1 +1 @@
1
- {"version":3,"file":"eventHandling.native.d.ts","sourceRoot":"","sources":["../src/eventHandling.native.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAGrE,wBAAgB,YAAY,OAE3B;AAED,wBAAgB,SAAS,CACvB,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,GAAG,EACd,QAAQ,EAAE;IAAE,OAAO,EAAE,wBAAwB,CAAA;CAAE,EAC/C,YAAY,EAAE,YAAY,OAyE3B;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE;IAAE,OAAO,EAAE,wBAAwB,CAAA;CAAE,OAoBhD"}
1
+ {"version":3,"file":"eventHandling.native.d.ts","sourceRoot":"","sources":["../src/eventHandling.native.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAA;AAMrE,wBAAgB,YAAY,OAE3B;AAED,wBAAgB,SAAS,CACvB,MAAM,EAAE,GAAG,EACX,SAAS,EAAE,GAAG,EACd,QAAQ,EAAE;IAAE,OAAO,EAAE,wBAAwB,CAAA;CAAE,EAC/C,YAAY,EAAE,YAAY,OA4E3B;AAED,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,GAAG,EACZ,OAAO,EAAE,GAAG,EACZ,QAAQ,EAAE;IAAE,OAAO,EAAE,wBAAwB,CAAA;CAAE,OAoBhD"}
@@ -1,6 +1,10 @@
1
1
  /**
2
2
  * Fallback press handling using React Native's usePressability
3
3
  * Split into separate file to avoid deep import warnings when RNGH is enabled
4
+ *
5
+ * NOTE: This hook must be called unconditionally in the parent to avoid
6
+ * rules of hooks violations when disabled toggles. The `enabled` param
7
+ * controls whether the pressability events are actually applied.
4
8
  */
5
- export declare function useMainThreadPressEvents(events: any, viewProps: any): void;
9
+ export declare function useMainThreadPressEvents(events: any, viewProps: any, enabled?: boolean): void;
6
10
  //# sourceMappingURL=mainThreadPressEvents.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"mainThreadPressEvents.d.ts","sourceRoot":"","sources":["../../src/helpers/mainThreadPressEvents.ts"],"names":[],"mappings":"AAAA;;;GAGG;AASH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,QAgBnE"}
1
+ {"version":3,"file":"mainThreadPressEvents.d.ts","sourceRoot":"","sources":["../../src/helpers/mainThreadPressEvents.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAcH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,OAAO,UAAO,QAkBnF"}