expo-modules-core 57.0.7 → 57.0.8

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/CHANGELOG.md CHANGED
@@ -10,6 +10,12 @@
10
10
 
11
11
  ### 💡 Others
12
12
 
13
+ ## 57.0.8 — 2026-07-29
14
+
15
+ ### 🎉 New features
16
+
17
+ - Added a `layoutRoot` prop to Expo views that marks the shadow node with the `RootNodeKind` trait, so `measure()` reports coordinates relative to that node — for views that dispatch touch events from their own root view, like `RNHostView` in `@expo/ui`. ([#48217](https://github.com/expo/expo/pull/48217) by [@intergalacticspacehighway](https://github.com/intergalacticspacehighway))
18
+
13
19
  ## 57.0.7 — 2026-07-22
14
20
 
15
21
  _This version does not introduce any user-facing changes._
@@ -27,7 +27,7 @@ if (shouldIncludeCompose) {
27
27
  }
28
28
 
29
29
  group = 'host.exp.exponent'
30
- version = '57.0.7'
30
+ version = '57.0.8'
31
31
 
32
32
  def isExpoModulesCoreTests = {
33
33
  Gradle gradle = getGradle()
@@ -94,7 +94,7 @@ android {
94
94
  defaultConfig {
95
95
  consumerProguardFiles 'proguard-rules.pro'
96
96
  versionCode 1
97
- versionName "57.0.7"
97
+ versionName "57.0.8"
98
98
  buildConfigField "String", "EXPO_MODULES_CORE_VERSION", "\"${versionName}\""
99
99
  buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", "true"
100
100
 
@@ -69,6 +69,21 @@ private:
69
69
  this->traits_.unset(react::ShadowNodeTraits::Trait::ForceFlattenView);
70
70
  }
71
71
  }
72
+
73
+ {
74
+ // Views that dispatch touch events from their own root view (e.g. RNHostView) set
75
+ // `layoutRoot` so that `measure()` reports coordinates relative to this node instead of
76
+ // the surface root, matching the coordinate space of the dispatched touches. The same
77
+ // reason React Native's <Modal> shadow node sets this trait.
78
+ auto it = viewProps.propsMap.find("layoutRoot");
79
+ bool layoutRoot = (it != viewProps.propsMap.end()) && it->second.getBool();
80
+
81
+ if (layoutRoot) {
82
+ this->traits_.set(react::ShadowNodeTraits::Trait::RootNodeKind);
83
+ } else {
84
+ this->traits_.unset(react::ShadowNodeTraits::Trait::RootNodeKind);
85
+ }
86
+ }
72
87
  }
73
88
  };
74
89
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "expo-modules-core",
3
- "version": "57.0.7",
3
+ "version": "57.0.8",
4
4
  "description": "The core of Expo Modules architecture",
5
5
  "main": "src/index.ts",
6
6
  "types": "build/index.d.ts",
@@ -66,7 +66,7 @@
66
66
  "@types/invariant": "^2.2.33",
67
67
  "expo-module-scripts": "56.0.3"
68
68
  },
69
- "gitHead": "a4789f1e53353f4929b0baddcfe5a7c622b99c71",
69
+ "gitHead": "ff6a677893d78b02c3adf63f67ba159b926395b0",
70
70
  "scripts": {
71
71
  "build": "expo-module build",
72
72
  "clean": "expo-module clean",