@tamagui/core 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.
package/dist/native.cjs CHANGED
@@ -9471,6 +9471,22 @@ function getGestureHandler() {
9471
9471
  }
9472
9472
  };
9473
9473
  }
9474
+ var dontComposePressabilityKeys = {
9475
+ onBlur: true,
9476
+ onFocus: true
9477
+ }, emptyConfig = {}, usePressability = null;
9478
+ function useMainThreadPressEvents(events, viewProps) {
9479
+ var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
9480
+ usePressability || (usePressability = require("react-native/Libraries/Pressability/usePressability").default);
9481
+ var pressability = usePressability(enabled ? events : emptyConfig);
9482
+ if (enabled && pressability) {
9483
+ viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
9484
+ for (var key in pressability) {
9485
+ var og = viewProps[key], val = pressability[key];
9486
+ viewProps[key] = og && !dontComposePressabilityKeys[key] ? composeEventHandlers(og, val) : val;
9487
+ }
9488
+ }
9489
+ }
9474
9490
  function useEvents(events, viewProps, stateRef, staticConfig) {
9475
9491
  if (events && (events.onFocus && (viewProps.onFocus = events.onFocus), events.onBlur && (viewProps.onBlur = events.onBlur)), staticConfig.isInput && events) {
9476
9492
  var {
@@ -9484,14 +9500,16 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
9484
9500
  return onPressOut && onPress && (inputEvents.onPressOut = composeEventHandlers(onPress, onPressOut)), Object.assign(viewProps, inputEvents), null;
9485
9501
  }
9486
9502
  var hasPressEvents = events == null ? void 0 : events.onPress, gh = getGestureHandler();
9487
- if (hasPressEvents && (stateRef.current.hasHadEvents = true), gh.isEnabled && hasPressEvents) {
9503
+ hasPressEvents && (stateRef.current.hasHadEvents = true);
9504
+ var enabled = !!(hasPressEvents || stateRef.current.hasHadEvents);
9505
+ if (gh.isEnabled && enabled) {
9488
9506
  var callbacksRef = React.useRef({});
9489
- callbacksRef.current = {
9507
+ callbacksRef.current = hasPressEvents ? {
9490
9508
  onPressIn: events.onPressIn,
9491
9509
  onPressOut: events.onPressOut,
9492
9510
  onPress: events.onPress,
9493
9511
  onLongPress: events.onLongPress
9494
- };
9512
+ } : {};
9495
9513
  var gestureRef = React.useRef(null);
9496
9514
  return gestureRef.current || (gestureRef.current = gh.createPressGesture({
9497
9515
  onPressIn: function(e) {
@@ -9514,13 +9532,7 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
9514
9532
  hitSlop: viewProps.hitSlop
9515
9533
  })), gestureRef.current;
9516
9534
  }
9517
- if (hasPressEvents) {
9518
- var {
9519
- useMainThreadPressEvents
9520
- } = require("./helpers/mainThreadPressEvents");
9521
- useMainThreadPressEvents(events, viewProps);
9522
- }
9523
- return null;
9535
+ return useMainThreadPressEvents(events, viewProps, hasPressEvents), null;
9524
9536
  }
9525
9537
  function wrapWithGestureDetector(content, gesture, stateRef) {
9526
9538
  var gh = getGestureHandler(), {
@@ -1388,6 +1388,22 @@ function getGestureHandler() {
1388
1388
  }
1389
1389
  };
1390
1390
  }
1391
+ var dontComposePressabilityKeys = {
1392
+ onBlur: true,
1393
+ onFocus: true
1394
+ }, emptyConfig = {}, usePressability = null;
1395
+ function useMainThreadPressEvents(events, viewProps) {
1396
+ var enabled = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : true;
1397
+ usePressability || (usePressability = require("react-native/Libraries/Pressability/usePressability").default);
1398
+ var pressability = usePressability(enabled ? events : emptyConfig);
1399
+ if (enabled && pressability) {
1400
+ viewProps.hitSlop && (events.hitSlop = viewProps.hitSlop);
1401
+ for (var key in pressability) {
1402
+ var og = viewProps[key], val = pressability[key];
1403
+ viewProps[key] = og && !dontComposePressabilityKeys[key] ? composeEventHandlers(og, val) : val;
1404
+ }
1405
+ }
1406
+ }
1391
1407
  function useEvents(events, viewProps, stateRef, staticConfig) {
1392
1408
  if (events && (events.onFocus && (viewProps.onFocus = events.onFocus), events.onBlur && (viewProps.onBlur = events.onBlur)), staticConfig.isInput && events) {
1393
1409
  var {
@@ -1401,14 +1417,16 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
1401
1417
  return onPressOut && onPress && (inputEvents.onPressOut = composeEventHandlers(onPress, onPressOut)), Object.assign(viewProps, inputEvents), null;
1402
1418
  }
1403
1419
  var hasPressEvents = events == null ? void 0 : events.onPress, gh = getGestureHandler();
1404
- if (hasPressEvents && (stateRef.current.hasHadEvents = true), gh.isEnabled && hasPressEvents) {
1420
+ hasPressEvents && (stateRef.current.hasHadEvents = true);
1421
+ var enabled = !!(hasPressEvents || stateRef.current.hasHadEvents);
1422
+ if (gh.isEnabled && enabled) {
1405
1423
  var callbacksRef = React.useRef({});
1406
- callbacksRef.current = {
1424
+ callbacksRef.current = hasPressEvents ? {
1407
1425
  onPressIn: events.onPressIn,
1408
1426
  onPressOut: events.onPressOut,
1409
1427
  onPress: events.onPress,
1410
1428
  onLongPress: events.onLongPress
1411
- };
1429
+ } : {};
1412
1430
  var gestureRef = React.useRef(null);
1413
1431
  return gestureRef.current || (gestureRef.current = gh.createPressGesture({
1414
1432
  onPressIn: function(e) {
@@ -1431,13 +1449,7 @@ function useEvents(events, viewProps, stateRef, staticConfig) {
1431
1449
  hitSlop: viewProps.hitSlop
1432
1450
  })), gestureRef.current;
1433
1451
  }
1434
- if (hasPressEvents) {
1435
- var {
1436
- useMainThreadPressEvents
1437
- } = require("./helpers/mainThreadPressEvents");
1438
- useMainThreadPressEvents(events, viewProps);
1439
- }
1440
- return null;
1452
+ return useMainThreadPressEvents(events, viewProps, hasPressEvents), null;
1441
1453
  }
1442
1454
  function wrapWithGestureDetector(content, gesture, stateRef) {
1443
1455
  var gh = getGestureHandler(), {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tamagui/core",
3
- "version": "2.0.0-1769401121849",
3
+ "version": "2.0.0-1769409090068",
4
4
  "type": "module",
5
5
  "source": "src/index.tsx",
6
6
  "main": "dist/cjs",
@@ -33,18 +33,18 @@
33
33
  "native-test.d.ts"
34
34
  ],
35
35
  "dependencies": {
36
- "@tamagui/helpers": "2.0.0-1769401121849",
37
- "@tamagui/react-native-media-driver": "2.0.0-1769401121849",
38
- "@tamagui/react-native-use-pressable": "2.0.0-1769401121849",
39
- "@tamagui/react-native-use-responder-events": "2.0.0-1769401121849",
40
- "@tamagui/use-element-layout": "2.0.0-1769401121849",
41
- "@tamagui/use-event": "2.0.0-1769401121849",
42
- "@tamagui/web": "2.0.0-1769401121849"
36
+ "@tamagui/helpers": "2.0.0-1769409090068",
37
+ "@tamagui/react-native-media-driver": "2.0.0-1769409090068",
38
+ "@tamagui/react-native-use-pressable": "2.0.0-1769409090068",
39
+ "@tamagui/react-native-use-responder-events": "2.0.0-1769409090068",
40
+ "@tamagui/use-element-layout": "2.0.0-1769409090068",
41
+ "@tamagui/use-event": "2.0.0-1769409090068",
42
+ "@tamagui/web": "2.0.0-1769409090068"
43
43
  },
44
44
  "devDependencies": {
45
- "@tamagui/build": "2.0.0-1769401121849",
46
- "@tamagui/native-bundle": "2.0.0-1769401121849",
47
- "@tamagui/react-native-web-lite": "2.0.0-1769401121849",
45
+ "@tamagui/build": "2.0.0-1769409090068",
46
+ "@tamagui/native-bundle": "2.0.0-1769409090068",
47
+ "@tamagui/react-native-web-lite": "2.0.0-1769409090068",
48
48
  "@testing-library/react": "^16.1.0",
49
49
  "csstype": "^3.0.10",
50
50
  "react": "*",