react-native-tvos 0.85.3-0 → 0.86.0-0rc2

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.
Files changed (667) hide show
  1. package/Libraries/Animated/AnimatedImplementation.js +6 -6
  2. package/Libraries/Animated/NativeAnimatedAllowlist.js +21 -0
  3. package/Libraries/Animated/components/AnimatedImage.js +3 -3
  4. package/Libraries/Animated/components/AnimatedText.js +3 -3
  5. package/Libraries/Animated/createAnimatedComponent.js +7 -7
  6. package/Libraries/Animated/nodes/AnimatedAddition.js +1 -1
  7. package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
  8. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +1 -1
  9. package/Libraries/Animated/nodes/AnimatedDivision.js +1 -1
  10. package/Libraries/Animated/nodes/AnimatedInterpolation.js +22 -24
  11. package/Libraries/Animated/nodes/AnimatedModulo.js +1 -1
  12. package/Libraries/Animated/nodes/AnimatedMultiplication.js +1 -1
  13. package/Libraries/Animated/nodes/AnimatedStyle.js +2 -2
  14. package/Libraries/Animated/nodes/AnimatedSubtraction.js +1 -1
  15. package/Libraries/Animated/nodes/AnimatedTracking.js +1 -1
  16. package/Libraries/Animated/nodes/AnimatedValue.js +2 -2
  17. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +4 -0
  18. package/Libraries/AppDelegate/RCTRootViewFactory.h +5 -5
  19. package/Libraries/AppDelegate/RCTRootViewFactory.mm +2 -2
  20. package/Libraries/AppState/AppState.js +1 -1
  21. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  22. package/Libraries/Blob/RCTBlobCollector.h +1 -1
  23. package/Libraries/Blob/RCTBlobCollector.mm +14 -26
  24. package/Libraries/Blob/RCTBlobManager.mm +11 -3
  25. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +29 -23
  26. package/Libraries/Components/Keyboard/Keyboard.js +4 -2
  27. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  28. package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -27
  29. package/Libraries/Components/Pressable/Pressable.d.ts +1 -0
  30. package/Libraries/Components/Pressable/Pressable.js +2 -2
  31. package/Libraries/Components/Pressable/useAndroidRippleForView.js +7 -8
  32. package/Libraries/Components/ScrollView/ScrollView.js +3 -3
  33. package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
  34. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +2 -2
  35. package/Libraries/Components/Switch/Switch.js +1 -1
  36. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +25 -1
  37. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +1 -1
  38. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -2
  39. package/Libraries/Components/TextInput/TextInput.d.ts +24 -0
  40. package/Libraries/Components/TextInput/TextInput.flow.js +24 -0
  41. package/Libraries/Components/TextInput/TextInput.js +5 -5
  42. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +5 -5
  43. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
  44. package/Libraries/Components/Touchable/PooledClass.js +4 -4
  45. package/Libraries/Components/Touchable/Touchable.js +1 -1
  46. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -10
  47. package/Libraries/Components/View/ReactNativeStyleAttributes.js +10 -2
  48. package/Libraries/Components/View/View.js +96 -91
  49. package/Libraries/Components/View/ViewPropTypes.js +3 -1
  50. package/Libraries/Core/Devtools/loadBundleFromServer.js +8 -0
  51. package/Libraries/Core/ExceptionsManager.js +2 -8
  52. package/Libraries/Core/InitializeCore.js +0 -13
  53. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  54. package/Libraries/Core/ReactNativeVersion.js +3 -3
  55. package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
  56. package/Libraries/Core/Timers/JSTimers.js +2 -2
  57. package/Libraries/Core/Timers/immediateShim.js +1 -1
  58. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  59. package/Libraries/Core/setUpSegmentFetcher.js +1 -1
  60. package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
  61. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -5
  62. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -2
  63. package/Libraries/Image/Image.android.js +15 -35
  64. package/Libraries/Image/RCTImageLoader.mm +4 -2
  65. package/Libraries/Image/RelativeImageStub.js +2 -2
  66. package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -12
  67. package/Libraries/Linking/Linking.js +1 -1
  68. package/Libraries/Lists/FlatList.js +1 -1
  69. package/Libraries/LogBox/LogBox.js +2 -2
  70. package/Libraries/LogBox/LogBoxInspectorContainer.js +24 -2
  71. package/Libraries/LogBox/LogBoxNotificationContainer.js +27 -4
  72. package/Libraries/LogBox/UI/LogBoxButton.js +47 -33
  73. package/Libraries/LogBox/UI/LogBoxInspector.js +61 -1
  74. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -0
  75. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +3 -1
  76. package/Libraries/LogBox/UI/LogBoxNotification.js +2 -0
  77. package/Libraries/Modal/Modal.js +12 -7
  78. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
  79. package/Libraries/NativeComponent/BaseViewConfig.android.js +15 -0
  80. package/Libraries/NativeComponent/BaseViewConfig.ios.js +17 -0
  81. package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
  82. package/Libraries/NativeComponent/ViewConfigIgnore.js +4 -2
  83. package/Libraries/Network/RCTNetworking.android.js +1 -1
  84. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  85. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  86. package/Libraries/Network/RCTNetworking.mm +1 -2
  87. package/Libraries/Network/XMLHttpRequest.js +29 -12
  88. package/Libraries/Pressability/Pressability.js +2 -2
  89. package/Libraries/ReactNative/AppContainer-dev.js +2 -3
  90. package/Libraries/ReactNative/AppContainer-prod.js +1 -2
  91. package/Libraries/ReactNative/AppContainer.js +0 -1
  92. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  93. package/Libraries/ReactNative/AppRegistry.flow.js +1 -2
  94. package/Libraries/ReactNative/AppRegistryImpl.js +16 -16
  95. package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
  96. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  97. package/Libraries/{Utilities → ReactNative}/IPerformanceLogger.d.ts +8 -5
  98. package/Libraries/{Utilities/IPerformanceLogger.js → ReactNative/IPerformanceLogger.flow.js} +12 -9
  99. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +14 -14
  100. package/Libraries/ReactNative/RendererImplementation.js +26 -143
  101. package/Libraries/ReactNative/RendererProxy.js +4 -15
  102. package/Libraries/ReactNative/renderApplication.js +33 -59
  103. package/Libraries/ReactNative/requireNativeComponent.js +3 -3
  104. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -0
  105. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -32
  106. package/Libraries/Settings/Settings.ios.js +1 -1
  107. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  108. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +3 -3
  109. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  110. package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
  111. package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
  112. package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
  113. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +6 -8
  114. package/Libraries/StyleSheet/StyleSheetTypes.js +11 -11
  115. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  116. package/Libraries/StyleSheet/private/_TransformStyle.js +1 -1
  117. package/Libraries/StyleSheet/processBackgroundImage.js +19 -9
  118. package/Libraries/StyleSheet/processBackgroundSize.js +7 -12
  119. package/Libraries/StyleSheet/processBoxShadow.js +9 -47
  120. package/Libraries/StyleSheet/processFilter.js +16 -8
  121. package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
  122. package/Libraries/Text/Text.js +4 -4
  123. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +16 -2
  124. package/Libraries/Text/TextNativeComponent.js +4 -4
  125. package/Libraries/TurboModule/RCTExport.js +1 -1
  126. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
  127. package/Libraries/Types/CodegenTypes.js +7 -4
  128. package/Libraries/Types/ReactDevToolsTypes.js +1 -1
  129. package/Libraries/Utilities/BackHandler.android.js +11 -3
  130. package/Libraries/Utilities/BackHandler.d.ts +11 -1
  131. package/Libraries/Utilities/BackHandler.ios.js +3 -1
  132. package/Libraries/Utilities/BackHandler.js.flow +6 -1
  133. package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
  134. package/Libraries/Utilities/ReactNativeTestTools.js +4 -4
  135. package/Libraries/Utilities/binaryToBase64.js +1 -1
  136. package/Libraries/Utilities/codegenNativeCommands.js +2 -2
  137. package/Libraries/Utilities/codegenNativeComponent.js +4 -4
  138. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -2
  139. package/Libraries/Utilities/stringifySafe.js +1 -1
  140. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  141. package/Libraries/vendor/core/ErrorUtils.js +4 -4
  142. package/Libraries/vendor/emitter/EventEmitter.js +27 -13
  143. package/React/Base/RCTBundleURLProvider.h +19 -1
  144. package/React/Base/RCTBundleURLProvider.mm +82 -0
  145. package/React/Base/RCTDefines.h +1 -1
  146. package/React/Base/RCTMultipartDataTask.h +1 -1
  147. package/React/Base/RCTMultipartDataTask.m +0 -3
  148. package/React/Base/RCTRootView.h +4 -0
  149. package/React/Base/RCTRootViewDelegate.h +5 -2
  150. package/React/Base/RCTVersion.m +3 -3
  151. package/React/Base/Surface/RCTSurface.h +3 -0
  152. package/React/Base/Surface/RCTSurfaceDelegate.h +7 -3
  153. package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
  154. package/React/Base/Surface/RCTSurfaceView.mm +2 -1
  155. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -0
  156. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +0 -3
  157. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -1
  158. package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
  159. package/React/CoreModules/RCTRedBox2AnsiParser.mm +1 -1
  160. package/React/CoreModules/RCTWebSocketModule.mm +45 -6
  161. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -1
  162. package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -0
  163. package/React/DevSupport/RCTPackagerConnection.mm +13 -11
  164. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +108 -43
  165. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  166. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  167. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +1 -1
  168. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
  169. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +70 -8
  170. package/React/Fabric/RCTConversions.h +14 -0
  171. package/React/Fabric/RCTScheduler.mm +18 -0
  172. package/React/Fabric/RCTSurfacePointerHandler.mm +8 -2
  173. package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -0
  174. package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
  175. package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
  176. package/React/Modules/RCTUIManager.mm +1 -1
  177. package/React/Profiler/RCTProfile.h +5 -0
  178. package/React/Profiler/RCTProfile.m +2 -1
  179. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  180. package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
  181. package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
  182. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  183. package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
  184. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +5 -5
  185. package/React/Views/RCTLayout.m +4 -3
  186. package/React/Views/ScrollView/RCTScrollView.h +6 -2
  187. package/ReactAndroid/api/ReactAndroid.api +37 -27
  188. package/ReactAndroid/build.gradle.kts +28 -21
  189. package/ReactAndroid/gradle.properties +1 -1
  190. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
  191. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -3
  192. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
  193. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +40 -110
  194. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +32 -87
  195. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +9 -99
  197. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +7 -28
  198. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +2 -19
  199. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
  200. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +36 -0
  201. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
  202. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
  203. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
  205. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
  206. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
  208. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +9 -34
  210. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +9 -10
  211. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
  212. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +10 -10
  213. package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +15 -13
  214. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
  215. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +139 -43
  216. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +223 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
  218. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +34 -1
  219. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +104 -65
  220. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +9 -1
  221. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +172 -36
  222. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
  223. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +41 -29
  225. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +71 -51
  226. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +15 -11
  227. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +16 -12
  228. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +79 -57
  229. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -3
  230. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -4
  231. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +15 -11
  232. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -9
  233. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
  234. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
  235. package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +1 -1
  236. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +3 -0
  237. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +10 -5
  238. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
  239. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
  240. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
  241. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
  242. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
  243. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +59 -62
  244. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +8 -0
  245. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +45 -36
  246. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +3 -3
  247. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +5 -2
  248. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
  249. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +18 -5
  250. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +8 -1
  251. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +21 -19
  252. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +4 -0
  253. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  254. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +77 -72
  255. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +7 -16
  256. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
  257. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +3 -0
  258. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
  259. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +25 -0
  260. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +2 -2
  261. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
  262. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
  263. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +18 -0
  264. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +20 -12
  265. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +18 -24
  266. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
  267. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -0
  268. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +11 -71
  269. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -17
  270. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +29 -30
  271. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
  272. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
  273. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -0
  274. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +1 -0
  275. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +30 -0
  276. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
  277. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -9
  278. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +27 -3
  279. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +4 -0
  280. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
  281. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
  282. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +18 -20
  283. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +20 -21
  284. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +19 -20
  285. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +14 -5
  286. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
  287. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +5 -162
  288. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +1 -1
  289. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +71 -97
  290. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +1 -4
  291. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +1 -1
  292. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +7 -13
  293. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +40 -2
  294. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
  295. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +84 -20
  296. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +41 -65
  297. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +85 -13
  298. package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
  299. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +5 -1
  300. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
  301. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
  302. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +3 -1
  303. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +39 -0
  304. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +20 -12
  305. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +101 -0
  306. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
  307. package/ReactAndroid/src/main/jni/CMakeLists.txt +10 -1
  308. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
  309. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +0 -2
  310. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
  311. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
  312. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +47 -0
  313. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +20 -6
  314. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +24 -1
  315. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -0
  316. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
  317. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
  318. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
  319. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
  320. package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
  321. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +97 -69
  322. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +21 -15
  323. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
  324. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
  325. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -1
  326. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
  327. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
  328. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
  329. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  330. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +10 -0
  331. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +7 -0
  332. package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
  333. package/ReactCommon/React-Fabric.podspec +7 -0
  334. package/ReactCommon/React-FabricComponents.podspec +1 -1
  335. package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
  336. package/ReactCommon/jsc/JSCRuntime.cpp +9 -0
  337. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -0
  338. package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
  339. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
  340. package/ReactCommon/jsi/jsi/decorator.h +93 -0
  341. package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
  342. package/ReactCommon/jsi/jsi/jsi.cpp +208 -27
  343. package/ReactCommon/jsi/jsi/jsi.h +553 -224
  344. package/ReactCommon/jsi/jsi/test/testlib.cpp +453 -0
  345. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +1 -1
  346. package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
  347. package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
  348. package/ReactCommon/jsinspector-modern/HostAgent.cpp +10 -1
  349. package/ReactCommon/jsinspector-modern/HostTarget.h +25 -0
  350. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +6 -2
  351. package/ReactCommon/jsinspector-modern/InspectorFlags.h +5 -2
  352. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -2
  353. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +3 -0
  354. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +10 -0
  355. package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +0 -1
  356. package/ReactCommon/logger/react_native_log.cpp +0 -1
  357. package/ReactCommon/react/bridging/Array.h +1 -1
  358. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +29 -21
  359. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +35 -25
  360. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +168 -132
  361. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +18 -14
  362. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +28 -20
  363. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +61 -43
  364. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -3
  365. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +9 -7
  366. package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
  367. package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
  368. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -9
  369. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +0 -1
  370. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
  371. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
  372. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
  373. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +2 -2
  374. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +35 -25
  375. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +15 -11
  376. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -2
  377. package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
  378. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
  379. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
  380. package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
  381. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
  382. package/ReactCommon/react/networking/NetworkReporter.h +0 -1
  383. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
  384. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
  385. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
  386. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -12
  387. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +1 -1
  388. package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +3 -0
  389. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -3
  390. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
  391. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +4 -0
  392. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +1 -1
  393. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +0 -1
  394. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
  395. package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
  396. package/ReactCommon/react/renderer/animations/utils.h +12 -1
  397. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
  398. package/ReactCommon/react/renderer/attributedstring/conversions.h +104 -3
  399. package/ReactCommon/react/renderer/components/image/conversions.h +2 -3
  400. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  401. package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
  402. package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
  403. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +531 -21
  404. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -0
  405. package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -2
  406. package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -0
  407. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +8 -0
  408. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
  409. package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
  410. package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
  411. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
  412. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
  413. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +5 -0
  414. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +33 -28
  415. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
  416. package/ReactCommon/react/renderer/components/view/conversions.h +44 -28
  417. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +53 -5
  418. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
  419. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
  420. package/ReactCommon/react/renderer/{graphics/DoubleConversions.h → components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h} +2 -4
  421. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
  422. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
  423. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
  424. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
  425. package/ReactCommon/react/renderer/components/view/propsConversions.h +8 -2
  426. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +86 -0
  427. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +34 -0
  428. package/ReactCommon/react/renderer/core/EventEmitter.cpp +67 -2
  429. package/ReactCommon/react/renderer/core/EventEmitter.h +25 -0
  430. package/ReactCommon/react/renderer/core/EventPipe.h +3 -1
  431. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +18 -10
  432. package/ReactCommon/react/renderer/core/EventTarget.cpp +8 -5
  433. package/ReactCommon/react/renderer/core/LayoutContext.h +9 -2
  434. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
  435. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
  436. package/ReactCommon/react/renderer/core/Props.cpp +20 -0
  437. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  438. package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
  439. package/ReactCommon/react/renderer/core/ShadowNode.h +2 -2
  440. package/ReactCommon/react/renderer/core/conversions.h +4 -0
  441. package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
  442. package/ReactCommon/react/renderer/core/propsConversions.h +1 -1
  443. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
  444. package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
  445. package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +1 -1
  446. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
  447. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
  448. package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
  449. package/ReactCommon/react/renderer/graphics/BlendMode.h +5 -0
  450. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
  451. package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
  452. package/ReactCommon/react/renderer/graphics/LinearGradient.h +3 -0
  453. package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -0
  454. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
  455. package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
  456. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +0 -5
  457. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +2 -2
  458. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +0 -4
  459. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +5 -1
  460. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +12 -4
  461. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
  462. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +307 -4
  463. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +27 -2
  464. package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +95 -0
  465. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +212 -0
  466. package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +154 -0
  467. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +314 -18
  468. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +38 -20
  469. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +20 -22
  470. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
  471. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +76 -3
  472. package/ReactCommon/react/renderer/scheduler/Scheduler.h +12 -0
  473. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +5 -0
  474. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -7
  475. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +2 -1
  476. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +16 -1
  477. package/ReactCommon/react/renderer/uimanager/UIManager.h +8 -0
  478. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
  479. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +347 -5
  480. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +5 -3
  481. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +5 -0
  482. package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
  483. package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
  484. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +520 -0
  485. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +161 -0
  486. package/ReactCommon/react/runtime/TimerManager.cpp +4 -2
  487. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +37 -0
  488. package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
  489. package/ReactCommon/react/timing/React-timing.podspec +2 -0
  490. package/ReactCommon/react/timing/primitives.h +33 -1
  491. package/ReactCommon/yoga/yoga/YGEnums.cpp +32 -0
  492. package/ReactCommon/yoga/yoga/YGEnums.h +20 -4
  493. package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
  494. package/ReactCommon/yoga/yoga/YGNode.h +1 -1
  495. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
  496. package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
  497. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +40 -9
  498. package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
  499. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +106 -14
  500. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
  501. package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
  502. package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
  503. package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
  504. package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
  505. package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
  506. package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
  507. package/ReactCommon/yoga/yoga/event/event.h +1 -0
  508. package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
  509. package/ReactCommon/yoga/yoga/node/Node.h +4 -4
  510. package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
  511. package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
  512. package/ReactCommon/yoga/yoga/style/Style.h +261 -71
  513. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -1
  514. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  515. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
  516. package/cli.js +1 -1
  517. package/flow/HermesInternalType.js +1 -1
  518. package/flow/bom.js.flow +95 -3
  519. package/flow/dom.js.flow +89 -89
  520. package/gradle/libs.versions.toml +3 -1
  521. package/index.js +30 -3
  522. package/index.js.flow +23 -1
  523. package/package.json +11 -11
  524. package/react-native.config.js +3 -3
  525. package/scripts/cocoapods/rncore.rb +65 -11
  526. package/scripts/cocoapods/rndependencies.rb +65 -11
  527. package/scripts/cocoapods/utils.rb +52 -0
  528. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +1 -1
  529. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +13 -4
  530. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
  531. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +1 -1
  532. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +17 -6
  533. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
  534. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +1 -1
  535. package/scripts/codegen/generate-artifacts-executor/index.js +2 -0
  536. package/scripts/codegen/generate-artifacts-executor/utils.js +1 -1
  537. package/scripts/codegen/generate-specs-cli-executor.js +1 -1
  538. package/scripts/generate-codegen-artifacts.js +20 -2
  539. package/scripts/generate-provider-cli.js +1 -1
  540. package/scripts/react_native_pods.rb +25 -2
  541. package/scripts/react_native_pods_utils/script_phases.rb +9 -3
  542. package/scripts/replace-rncore-version.js +20 -0
  543. package/scripts/xcode/with-environment.sh +7 -1
  544. package/sdks/.hermesv1version +1 -1
  545. package/sdks/.hermesversion +1 -1
  546. package/sdks/hermes-engine/hermes-utils.rb +92 -5
  547. package/sdks/hermes-engine/version.properties +2 -2
  548. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  549. package/src/private/animated/createAnimatedPropsHook.js +2 -2
  550. package/src/private/components/virtualcollection/FlingConstants.js +21 -0
  551. package/src/private/components/virtualcollection/Virtual.js +62 -0
  552. package/src/private/components/virtualcollection/VirtualCollectionView.js +238 -0
  553. package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
  554. package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
  555. package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +13 -0
  556. package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
  557. package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
  558. package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
  559. package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
  560. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
  561. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +1 -1
  562. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +1 -1
  563. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  564. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
  565. package/src/private/featureflags/ReactNativeFeatureFlags.js +41 -37
  566. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
  567. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +9 -7
  568. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  569. package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
  570. package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
  571. package/src/private/renderer/events/ReactNativeResponder.js +687 -0
  572. package/src/private/renderer/events/ResponderEvent.js +40 -0
  573. package/src/private/renderer/events/ResponderTouchHistoryStore.js +258 -0
  574. package/src/private/renderer/events/dispatchNativeEvent.js +83 -0
  575. package/src/private/setup/setUpDOM.js +20 -0
  576. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +2 -2
  577. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +2 -2
  578. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  579. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  580. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
  581. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +2 -2
  582. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +2 -2
  583. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +2 -2
  584. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +2 -2
  585. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +2 -2
  586. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +2 -2
  587. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
  588. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +2 -2
  589. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +1 -1
  590. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
  591. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +1 -1
  592. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
  593. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +1 -1
  594. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +1 -1
  595. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +1 -1
  596. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +1 -1
  597. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -1
  598. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +1 -1
  599. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
  600. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +1 -1
  601. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
  602. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  603. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +1 -1
  604. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
  605. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +2 -2
  606. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +1 -1
  607. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
  608. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
  609. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +2 -2
  610. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +1 -1
  611. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
  612. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +1 -1
  613. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +1 -1
  614. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +1 -1
  615. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +1 -1
  616. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +1 -1
  617. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -1
  618. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  619. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
  620. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +2 -2
  621. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +2 -2
  622. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +1 -1
  623. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +2 -2
  624. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +1 -1
  625. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +2 -2
  626. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +1 -1
  627. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
  628. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -1
  629. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +1 -1
  630. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +1 -1
  631. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +1 -1
  632. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +2 -2
  633. package/src/private/styles/composeStyles.js +1 -1
  634. package/src/private/types/HostComponent.js +1 -1
  635. package/src/private/utilities/toExtendedError.js +1 -1
  636. package/src/private/viewtransition/specs/NativeViewTransition.js +33 -0
  637. package/src/private/webapis/dom/events/Event.js +10 -1
  638. package/src/private/webapis/dom/events/EventTarget.js +60 -18
  639. package/src/private/webapis/dom/events/internals/EventInternals.js +18 -1
  640. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +12 -0
  641. package/src/private/webapis/dom/nodes/ReactNativeElement.js +24 -0
  642. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +4 -6
  643. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +70 -1
  644. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
  645. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +1 -1
  646. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
  647. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +5 -9
  648. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +2 -2
  649. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +2 -2
  650. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +2 -2
  651. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
  652. package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
  653. package/src/private/webapis/structuredClone/structuredClone.js +1 -1
  654. package/src/private/webapis/webidl/PlatformObjects.js +4 -4
  655. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19669
  656. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11129
  657. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12930
  658. package/Libraries/Renderer/shims/ReactNative.js +0 -27
  659. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
  660. package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
  661. package/Libraries/Utilities/createPerformanceLogger.js +0 -329
  662. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -442
  663. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
  665. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
  666. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
  667. package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
@@ -11,6 +11,7 @@
11
11
  #include <react/renderer/core/ReactPrimitives.h>
12
12
  #include <react/renderer/debug/DebugStringConvertible.h>
13
13
  #include <react/renderer/graphics/Point.h>
14
+ #include <react/timing/primitives.h>
14
15
 
15
16
  namespace facebook::react {
16
17
 
@@ -53,9 +54,15 @@ struct BaseTouch {
53
54
 
54
55
  /*
55
56
  * The time in seconds when the touch occurred or when it was last mutated.
57
+ * @deprecated Use timeStamp instead.
56
58
  */
57
59
  Float timestamp{0.0f};
58
60
 
61
+ /*
62
+ * The time when the touch occurred.
63
+ */
64
+ HighResTimeStamp timeStamp{};
65
+
59
66
  /*
60
67
  * The particular implementation of `Hasher` and (especially) `Comparator`
61
68
  * make sense only when `Touch` object is used as a *key* in indexed
@@ -540,6 +540,14 @@ void BaseViewProps::setProp(
540
540
  VIEW_EVENT_CASE(PointerOverCapture);
541
541
  VIEW_EVENT_CASE(PointerOut);
542
542
  VIEW_EVENT_CASE(PointerOutCapture);
543
+ VIEW_EVENT_CASE(Click);
544
+ VIEW_EVENT_CASE(ClickCapture);
545
+ VIEW_EVENT_CASE(PointerDown);
546
+ VIEW_EVENT_CASE(PointerDownCapture);
547
+ VIEW_EVENT_CASE(PointerUp);
548
+ VIEW_EVENT_CASE(PointerUpCapture);
549
+ VIEW_EVENT_CASE(GotPointerCapture);
550
+ VIEW_EVENT_CASE(LostPointerCapture);
543
551
  VIEW_EVENT_CASE(MoveShouldSetResponder);
544
552
  VIEW_EVENT_CASE(MoveShouldSetResponderCapture);
545
553
  VIEW_EVENT_CASE(StartShouldSetResponder);
@@ -98,6 +98,8 @@ std::vector<DebugStringConvertibleObject> getDebugProps(
98
98
  .value = getDebugDescription(pointerEvent.isPrimary, options)},
99
99
  {.name = "button",
100
100
  .value = getDebugDescription(pointerEvent.button, options)},
101
+ {.name = "timeStamp",
102
+ .value = getDebugDescription(pointerEvent.timeStamp, options)},
101
103
  };
102
104
  }
103
105
 
@@ -11,6 +11,7 @@
11
11
  #include <react/renderer/core/ReactPrimitives.h>
12
12
  #include <react/renderer/debug/DebugStringConvertible.h>
13
13
  #include <react/renderer/graphics/Point.h>
14
+ #include <react/timing/primitives.h>
14
15
 
15
16
  namespace facebook::react {
16
17
 
@@ -110,6 +111,10 @@ struct PointerEvent : public EventPayload {
110
111
  * was fired.
111
112
  */
112
113
  int button;
114
+ /*
115
+ * The time when the event occurred.
116
+ */
117
+ HighResTimeStamp timeStamp{};
113
118
 
114
119
  /*
115
120
  * EventPayload implementations
@@ -9,8 +9,6 @@
9
9
 
10
10
  #include <react/renderer/debug/DebugStringConvertible.h>
11
11
 
12
- #include <unordered_set>
13
-
14
12
  #include <react/renderer/components/view/Touch.h>
15
13
 
16
14
  namespace facebook::react {
@@ -42,26 +42,38 @@ static jsi::Value touchEventPayload(
42
42
  return object;
43
43
  }
44
44
 
45
+ static HighResTimeStamp getTimestampFromTouchEvent(const TouchEvent& event) {
46
+ if (!event.changedTouches.empty()) {
47
+ const auto& firstChangedTouch = *event.changedTouches.begin();
48
+ return firstChangedTouch.timeStamp;
49
+ }
50
+ return HighResTimeStamp::now();
51
+ }
52
+
45
53
  void TouchEventEmitter::dispatchTouchEvent(
46
54
  std::string type,
47
55
  TouchEvent event,
48
56
  RawEvent::Category category) const {
57
+ auto eventTimestamp = getTimestampFromTouchEvent(event);
49
58
  dispatchEvent(
50
59
  std::move(type),
51
60
  [event = std::move(event)](jsi::Runtime& runtime) {
52
61
  return touchEventPayload(runtime, event);
53
62
  },
54
- category);
63
+ category,
64
+ eventTimestamp);
55
65
  }
56
66
 
57
67
  void TouchEventEmitter::dispatchPointerEvent(
58
68
  std::string type,
59
69
  PointerEvent event,
60
70
  RawEvent::Category category) const {
71
+ auto eventTimestamp = event.timeStamp;
61
72
  dispatchEvent(
62
73
  std::move(type),
63
74
  std::make_shared<PointerEvent>(std::move(event)),
64
- category);
75
+ category,
76
+ eventTimestamp);
65
77
  }
66
78
 
67
79
  void TouchEventEmitter::onTouchStart(TouchEvent event) const {
@@ -70,10 +82,13 @@ void TouchEventEmitter::onTouchStart(TouchEvent event) const {
70
82
  }
71
83
 
72
84
  void TouchEventEmitter::onTouchMove(TouchEvent event) const {
85
+ auto eventTimestamp = getTimestampFromTouchEvent(event);
73
86
  dispatchUniqueEvent(
74
- "touchMove", [event = std::move(event)](jsi::Runtime& runtime) {
87
+ "touchMove",
88
+ [event = std::move(event)](jsi::Runtime& runtime) {
75
89
  return touchEventPayload(runtime, event);
76
- });
90
+ },
91
+ eventTimestamp);
77
92
  }
78
93
 
79
94
  void TouchEventEmitter::onTouchEnd(TouchEvent event) const {
@@ -101,8 +116,11 @@ void TouchEventEmitter::onPointerDown(PointerEvent event) const {
101
116
  }
102
117
 
103
118
  void TouchEventEmitter::onPointerMove(PointerEvent event) const {
119
+ auto eventTimestamp = event.timeStamp;
104
120
  dispatchUniqueEvent(
105
- "pointerMove", std::make_shared<PointerEvent>(std::move(event)));
121
+ "pointerMove",
122
+ std::make_shared<PointerEvent>(std::move(event)),
123
+ eventTimestamp);
106
124
  }
107
125
 
108
126
  void TouchEventEmitter::onPointerUp(PointerEvent event) const {
@@ -13,6 +13,7 @@
13
13
  #include <react/renderer/core/LayoutMetrics.h>
14
14
  #include <react/renderer/core/ReactPrimitives.h>
15
15
  #include <react/renderer/debug/DebugStringConvertible.h>
16
+ #include <react/timing/primitives.h>
16
17
 
17
18
  namespace facebook::react {
18
19
 
@@ -899,6 +899,11 @@ yoga::Config& YogaLayoutableShadowNode::initializeYogaConfig(
899
899
  YGConfigSetErrata(&config, YGConfigGetErrata(previousConfig));
900
900
  }
901
901
 
902
+ if (ReactNativeFeatureFlags::fixYogaFlexBasisFitContentInMainAxis()) {
903
+ YGConfigSetExperimentalFeatureEnabled(
904
+ &config, YGExperimentalFeatureFixFlexBasisFitContent, true);
905
+ }
906
+
902
907
  return config;
903
908
  }
904
909
 
@@ -147,35 +147,40 @@ void YogaStylableProps::setProp(
147
147
  REBUILD_FIELD_SWITCH_CASE_YSP(flexBasis, setFlexBasis);
148
148
  REBUILD_FIELD_SWITCH_CASE2(positionType, setPositionType, "position");
149
149
  REBUILD_FIELD_YG_GUTTER(gap, setGap, "rowGap", "columnGap", "gap");
150
- REBUILD_FIELD_SWITCH_CASE_YSP(aspectRatio, setAspectRatio);
151
- REBUILD_FIELD_SWITCH_CASE_YSP(boxSizing, setBoxSizing);
152
- REBUILD_FIELD_YG_DIMENSION(dimension, setDimension, "width", "height");
153
- REBUILD_FIELD_YG_DIMENSION(
154
- minDimension, setMinDimension, "minWidth", "minHeight");
155
- REBUILD_FIELD_YG_DIMENSION(
156
- maxDimension, setMaxDimension, "maxWidth", "maxHeight");
157
- REBUILD_FIELD_YG_EDGES_POSITION();
158
- REBUILD_FIELD_YG_EDGES(margin, setMargin, "margin", "");
159
- REBUILD_FIELD_YG_EDGES(padding, setPadding, "padding", "");
160
- REBUILD_FIELD_YG_EDGES(border, setBorder, "border", "Width");
150
+ case CONSTEXPR_RAW_PROPS_KEY_HASH("aspectRatio"): {
151
+ yogaStyle.setAspectRatio(
152
+ value.hasValue() ? convertAspectRatio(context, value)
153
+ : ygDefaults.aspectRatio());
154
+ return;
155
+ }
156
+ REBUILD_FIELD_SWITCH_CASE_YSP(boxSizing, setBoxSizing);
157
+ REBUILD_FIELD_YG_DIMENSION(dimension, setDimension, "width", "height");
158
+ REBUILD_FIELD_YG_DIMENSION(
159
+ minDimension, setMinDimension, "minWidth", "minHeight");
160
+ REBUILD_FIELD_YG_DIMENSION(
161
+ maxDimension, setMaxDimension, "maxWidth", "maxHeight");
162
+ REBUILD_FIELD_YG_EDGES_POSITION();
163
+ REBUILD_FIELD_YG_EDGES(margin, setMargin, "margin", "");
164
+ REBUILD_FIELD_YG_EDGES(padding, setPadding, "padding", "");
165
+ REBUILD_FIELD_YG_EDGES(border, setBorder, "border", "Width");
161
166
 
162
- // Aliases
163
- RAW_SET_PROP_SWITCH_CASE(insetBlockEnd, "insetBlockEnd");
164
- RAW_SET_PROP_SWITCH_CASE(insetBlockStart, "insetBlockStart");
165
- RAW_SET_PROP_SWITCH_CASE(insetInlineEnd, "insetInlineEnd");
166
- RAW_SET_PROP_SWITCH_CASE(insetInlineStart, "insetInlineStart");
167
- RAW_SET_PROP_SWITCH_CASE(marginInline, "marginInline");
168
- RAW_SET_PROP_SWITCH_CASE(marginInlineStart, "marginInlineStart");
169
- RAW_SET_PROP_SWITCH_CASE(marginInlineEnd, "marginInlineEnd");
170
- RAW_SET_PROP_SWITCH_CASE(marginBlock, "marginBlock");
171
- RAW_SET_PROP_SWITCH_CASE(marginBlockStart, "marginBlockStart");
172
- RAW_SET_PROP_SWITCH_CASE(marginBlockEnd, "marginBlockEnd");
173
- RAW_SET_PROP_SWITCH_CASE(paddingInline, "paddingInline");
174
- RAW_SET_PROP_SWITCH_CASE(paddingInlineStart, "paddingInlineStart");
175
- RAW_SET_PROP_SWITCH_CASE(paddingInlineEnd, "paddingInlineEnd");
176
- RAW_SET_PROP_SWITCH_CASE(paddingBlock, "paddingBlock");
177
- RAW_SET_PROP_SWITCH_CASE(paddingBlockStart, "paddingBlockStart");
178
- RAW_SET_PROP_SWITCH_CASE(paddingBlockEnd, "paddingBlockEnd");
167
+ // Aliases
168
+ RAW_SET_PROP_SWITCH_CASE(insetBlockEnd, "insetBlockEnd");
169
+ RAW_SET_PROP_SWITCH_CASE(insetBlockStart, "insetBlockStart");
170
+ RAW_SET_PROP_SWITCH_CASE(insetInlineEnd, "insetInlineEnd");
171
+ RAW_SET_PROP_SWITCH_CASE(insetInlineStart, "insetInlineStart");
172
+ RAW_SET_PROP_SWITCH_CASE(marginInline, "marginInline");
173
+ RAW_SET_PROP_SWITCH_CASE(marginInlineStart, "marginInlineStart");
174
+ RAW_SET_PROP_SWITCH_CASE(marginInlineEnd, "marginInlineEnd");
175
+ RAW_SET_PROP_SWITCH_CASE(marginBlock, "marginBlock");
176
+ RAW_SET_PROP_SWITCH_CASE(marginBlockStart, "marginBlockStart");
177
+ RAW_SET_PROP_SWITCH_CASE(marginBlockEnd, "marginBlockEnd");
178
+ RAW_SET_PROP_SWITCH_CASE(paddingInline, "paddingInline");
179
+ RAW_SET_PROP_SWITCH_CASE(paddingInlineStart, "paddingInlineStart");
180
+ RAW_SET_PROP_SWITCH_CASE(paddingInlineEnd, "paddingInlineEnd");
181
+ RAW_SET_PROP_SWITCH_CASE(paddingBlock, "paddingBlock");
182
+ RAW_SET_PROP_SWITCH_CASE(paddingBlockStart, "paddingBlockStart");
183
+ RAW_SET_PROP_SWITCH_CASE(paddingBlockEnd, "paddingBlockEnd");
179
184
  }
180
185
  }
181
186
 
@@ -7,7 +7,6 @@
7
7
 
8
8
  #pragma once
9
9
 
10
- #include <folly/dynamic.h>
11
10
  #include <glog/logging.h>
12
11
  #include <react/debug/react_native_assert.h>
13
12
  #include <react/debug/react_native_expect.h>
@@ -22,6 +22,7 @@
22
22
  #include <react/renderer/css/CSSTransform.h>
23
23
  #include <react/renderer/css/CSSTransformOrigin.h>
24
24
  #include <react/renderer/css/CSSValueParser.h>
25
+ #include <react/renderer/debug/DebugStringConvertible.h>
25
26
  #include <react/renderer/debug/flags.h>
26
27
  #include <react/renderer/graphics/BackgroundPosition.h>
27
28
  #include <react/renderer/graphics/BackgroundRepeat.h>
@@ -133,6 +134,8 @@ inline DisplayType displayTypeFromYGDisplay(YGDisplay display)
133
134
  return DisplayType::Contents;
134
135
  case YGDisplayFlex:
135
136
  return DisplayType::Flex;
137
+ case YGDisplayGrid:
138
+ return DisplayType::Grid;
136
139
  }
137
140
  }
138
141
 
@@ -498,6 +501,23 @@ inline void fromRawValue(const PropsParserContext &context, const RawValue &valu
498
501
  result = value.hasType<float>() ? yoga::FloatOptional((float)value) : yoga::FloatOptional();
499
502
  }
500
503
 
504
+ inline yoga::FloatOptional convertAspectRatio(const PropsParserContext & /*context*/, const RawValue &value)
505
+ {
506
+ if (value.hasType<float>()) {
507
+ return yoga::FloatOptional((float)value);
508
+ }
509
+ if (ReactNativeFeatureFlags::enableNativeCSSParsing() && value.hasType<std::string>()) {
510
+ auto ratio = parseCSSProperty<CSSRatio>((std::string)value);
511
+ if (std::holds_alternative<CSSRatio>(ratio)) {
512
+ auto r = std::get<CSSRatio>(ratio);
513
+ if (!r.isDegenerate()) {
514
+ return yoga::FloatOptional(r.numerator / r.denominator);
515
+ }
516
+ }
517
+ }
518
+ return {};
519
+ }
520
+
501
521
  inline std::optional<Float> toRadians(const RawValue &value)
502
522
  {
503
523
  if (value.hasType<Float>()) {
@@ -1573,9 +1593,9 @@ inline std::string toString(const std::array<float, N> vec)
1573
1593
 
1574
1594
  s.append("{");
1575
1595
  for (size_t i = 0; i < N - 1; i++) {
1576
- s.append(std::to_string(vec[i]) + ", ");
1596
+ s.append(toString(vec[i]) + ", ");
1577
1597
  }
1578
- s.append(std::to_string(vec[N - 1]));
1598
+ s.append(toString(vec[N - 1]));
1579
1599
  s.append("}");
1580
1600
 
1581
1601
  return s;
@@ -1628,9 +1648,9 @@ inline std::string toString(const yoga::Style::Length &length)
1628
1648
  } else if (length.isAuto()) {
1629
1649
  return "auto";
1630
1650
  } else if (length.isPoints()) {
1631
- return std::to_string(length.value().unwrap());
1651
+ return toString(length.value().unwrap());
1632
1652
  } else if (length.isPercent()) {
1633
- return std::to_string(length.value().unwrap()) + "%";
1653
+ return toString(length.value().unwrap()) + "%";
1634
1654
  } else {
1635
1655
  return "unknown";
1636
1656
  }
@@ -1643,9 +1663,9 @@ inline std::string toString(const yoga::Style::SizeLength &length)
1643
1663
  } else if (length.isAuto()) {
1644
1664
  return "auto";
1645
1665
  } else if (length.isPoints()) {
1646
- return std::to_string(length.value().unwrap());
1666
+ return toString(length.value().unwrap());
1647
1667
  } else if (length.isPercent()) {
1648
- return std::to_string(length.value().unwrap()) + "%";
1668
+ return toString(length.value().unwrap()) + "%";
1649
1669
  } else if (length.isMaxContent()) {
1650
1670
  return "max-content";
1651
1671
  } else if (length.isFitContent()) {
@@ -1663,7 +1683,7 @@ inline std::string toString(const yoga::FloatOptional &value)
1663
1683
  return "undefined";
1664
1684
  }
1665
1685
 
1666
- return std::to_string(value.unwrap());
1686
+ return toString(value.unwrap());
1667
1687
  }
1668
1688
 
1669
1689
  inline std::string toString(const LayoutConformance &value)
@@ -1679,14 +1699,10 @@ inline std::string toString(const LayoutConformance &value)
1679
1699
  inline std::string toString(const std::array<Float, 16> &m)
1680
1700
  {
1681
1701
  std::string result;
1682
- result += "[ " + std::to_string(m[0]) + " " + std::to_string(m[1]) + " " + std::to_string(m[2]) + " " +
1683
- std::to_string(m[3]) + " ]\n";
1684
- result += "[ " + std::to_string(m[4]) + " " + std::to_string(m[5]) + " " + std::to_string(m[6]) + " " +
1685
- std::to_string(m[7]) + " ]\n";
1686
- result += "[ " + std::to_string(m[8]) + " " + std::to_string(m[9]) + " " + std::to_string(m[10]) + " " +
1687
- std::to_string(m[11]) + " ]\n";
1688
- result += "[ " + std::to_string(m[12]) + " " + std::to_string(m[13]) + " " + std::to_string(m[14]) + " " +
1689
- std::to_string(m[15]) + " ]";
1702
+ result += "[ " + toString(m[0]) + " " + toString(m[1]) + " " + toString(m[2]) + " " + toString(m[3]) + " ]\n";
1703
+ result += "[ " + toString(m[4]) + " " + toString(m[5]) + " " + toString(m[6]) + " " + toString(m[7]) + " ]\n";
1704
+ result += "[ " + toString(m[8]) + " " + toString(m[9]) + " " + toString(m[10]) + " " + toString(m[11]) + " ]\n";
1705
+ result += "[ " + toString(m[12]) + " " + toString(m[13]) + " " + toString(m[14]) + " " + toString(m[15]) + " ]";
1690
1706
  return result;
1691
1707
  }
1692
1708
 
@@ -1703,48 +1719,48 @@ inline std::string toString(const Transform &transform)
1703
1719
 
1704
1720
  switch (operation.type) {
1705
1721
  case TransformOperationType::Perspective: {
1706
- result += "{\"perspective\": " + std::to_string(operation.x.value) + "}";
1722
+ result += "{\"perspective\": " + toString(operation.x.value) + "}";
1707
1723
  break;
1708
1724
  }
1709
1725
  case TransformOperationType::Rotate: {
1710
1726
  if (operation.x.value != 0 && operation.y.value == 0 && operation.z.value == 0) {
1711
- result += R"({"rotateX": ")" + std::to_string(operation.x.value) + "rad\"}";
1727
+ result += R"({"rotateX": ")" + toString(operation.x.value) + "rad\"}";
1712
1728
  } else if (operation.x.value == 0 && operation.y.value != 0 && operation.z.value == 0) {
1713
- result += R"({"rotateY": ")" + std::to_string(operation.y.value) + "rad\"}";
1729
+ result += R"({"rotateY": ")" + toString(operation.y.value) + "rad\"}";
1714
1730
  } else if (operation.x.value == 0 && operation.y.value == 0 && operation.z.value != 0) {
1715
- result += R"({"rotateZ": ")" + std::to_string(operation.z.value) + "rad\"}";
1731
+ result += R"({"rotateZ": ")" + toString(operation.z.value) + "rad\"}";
1716
1732
  }
1717
1733
  break;
1718
1734
  }
1719
1735
  case TransformOperationType::Scale: {
1720
1736
  if (operation.x.value == operation.y.value && operation.x.value == operation.z.value) {
1721
- result += "{\"scale\": " + std::to_string(operation.x.value) + "}";
1737
+ result += "{\"scale\": " + toString(operation.x.value) + "}";
1722
1738
  } else if (operation.y.value == 1 && operation.z.value == 1) {
1723
- result += "{\"scaleX\": " + std::to_string(operation.x.value) + "}";
1739
+ result += "{\"scaleX\": " + toString(operation.x.value) + "}";
1724
1740
  } else if (operation.x.value == 1 && operation.z.value == 1) {
1725
- result += "{\"scaleY\": " + std::to_string(operation.y.value) + "}";
1741
+ result += "{\"scaleY\": " + toString(operation.y.value) + "}";
1726
1742
  } else if (operation.x.value == 1 && operation.y.value == 1) {
1727
- result += "{\"scaleZ\": " + std::to_string(operation.z.value) + "}";
1743
+ result += "{\"scaleZ\": " + toString(operation.z.value) + "}";
1728
1744
  }
1729
1745
  break;
1730
1746
  }
1731
1747
  case TransformOperationType::Translate: {
1732
1748
  if (operation.x.value != 0 && operation.y.value != 0 && operation.z.value == 0) {
1733
1749
  result += "{\"translate\": [";
1734
- result += std::to_string(operation.x.value) + ", " + std::to_string(operation.y.value);
1750
+ result += toString(operation.x.value) + ", " + toString(operation.y.value);
1735
1751
  result += "]}";
1736
1752
  } else if (operation.x.value != 0 && operation.y.value == 0) {
1737
- result += "{\"translateX\": " + std::to_string(operation.x.value) + "}";
1753
+ result += "{\"translateX\": " + toString(operation.x.value) + "}";
1738
1754
  } else if (operation.x.value == 0 && operation.y.value != 0) {
1739
- result += "{\"translateY\": " + std::to_string(operation.y.value) + "}";
1755
+ result += "{\"translateY\": " + toString(operation.y.value) + "}";
1740
1756
  }
1741
1757
  break;
1742
1758
  }
1743
1759
  case TransformOperationType::Skew: {
1744
1760
  if (operation.x.value != 0 && operation.y.value == 0) {
1745
- result += R"({"skewX": ")" + std::to_string(operation.x.value) + "rad\"}";
1761
+ result += R"({"skewX": ")" + toString(operation.x.value) + "rad\"}";
1746
1762
  } else if (operation.x.value == 0 && operation.y.value != 0) {
1747
- result += R"({"skewY": ")" + std::to_string(operation.y.value) + "rad\"}";
1763
+ result += R"({"skewY": ")" + toString(operation.y.value) + "rad\"}";
1748
1764
  }
1749
1765
  break;
1750
1766
  }
@@ -180,7 +180,24 @@ HostPlatformViewProps::HostPlatformViewProps(
180
180
  rawProps,
181
181
  "nextFocusUp",
182
182
  sourceProps.nextFocusUp,
183
- {})) {}
183
+ {})) {
184
+ if (!ReactNativeFeatureFlags::enableCppPropsIteratorSetter()) {
185
+ if (ReactNativeFeatureFlags::enableNativeViewPropTransformations()) {
186
+ // tabIndex -> focusable
187
+ auto* tabIndexValue = rawProps.at("tabIndex", nullptr, nullptr);
188
+ if (tabIndexValue != nullptr) {
189
+ if (tabIndexValue->hasValue()) {
190
+ int tabIndex = 0;
191
+ fromRawValue(context, *tabIndexValue, tabIndex);
192
+ focusable = tabIndex == 0;
193
+ } else {
194
+ focusable = {};
195
+ }
196
+ }
197
+ }
198
+ }
199
+ }
200
+
184
201
  #define VIEW_EVENT_CASE(eventType) \
185
202
  case CONSTEXPR_RAW_PROPS_KEY_HASH("on" #eventType): { \
186
203
  const auto offset = ViewEvents::Offset::eventType; \
@@ -220,6 +237,19 @@ void HostPlatformViewProps::setProp(
220
237
  RAW_SET_PROP_SWITCH_CASE_BASIC(nextFocusLeft);
221
238
  RAW_SET_PROP_SWITCH_CASE_BASIC(nextFocusRight);
222
239
  RAW_SET_PROP_SWITCH_CASE_BASIC(nextFocusUp);
240
+ case CONSTEXPR_RAW_PROPS_KEY_HASH("tabIndex"): {
241
+ if (!ReactNativeFeatureFlags::enableNativeViewPropTransformations()) {
242
+ return;
243
+ }
244
+ if (value.hasValue()) {
245
+ int tabIndex = 0;
246
+ fromRawValue(context, value, tabIndex);
247
+ focusable = tabIndex == 0;
248
+ } else {
249
+ focusable = defaults.focusable;
250
+ }
251
+ return;
252
+ }
223
253
  }
224
254
  }
225
255
 
@@ -389,7 +419,7 @@ static void updateBorderStyleProps(
389
419
  break;
390
420
  }
391
421
  } else {
392
- result["borderStyle"] = NULL;
422
+ result["borderStyle"] = folly::dynamic(nullptr);
393
423
  }
394
424
  }
395
425
  }
@@ -460,8 +490,25 @@ inline static void updateNativeDrawableProp(
460
490
  nativeDrawableResult["rippleRadius"] =
461
491
  nativeDrawableValue.ripple.rippleRadius.value();
462
492
  }
463
- if (nativeDrawableValue.ripple.color.has_value()) {
464
- nativeDrawableResult["color"] = nativeDrawableValue.ripple.color.value();
493
+ if (nativeDrawableValue.ripple.color.has_value() ||
494
+ nativeDrawableValue.ripple.colorResourcePaths.has_value()) {
495
+ if (nativeDrawableValue.ripple.colorResourcePaths.has_value()) {
496
+ folly::dynamic resourcePaths = folly::dynamic::array();
497
+ for (const auto& path :
498
+ nativeDrawableValue.ripple.colorResourcePaths.value()) {
499
+ resourcePaths.push_back(path);
500
+ }
501
+ folly::dynamic platformColorMap = folly::dynamic::object();
502
+ platformColorMap["resource_paths"] = resourcePaths;
503
+ nativeDrawableResult["color"] = platformColorMap;
504
+ } else {
505
+ nativeDrawableResult["color"] =
506
+ toAndroidRepr(nativeDrawableValue.ripple.color.value());
507
+ }
508
+ if (nativeDrawableValue.ripple.alpha.has_value()) {
509
+ nativeDrawableResult["alpha"] =
510
+ nativeDrawableValue.ripple.alpha.value();
511
+ }
465
512
  }
466
513
  nativeDrawableResult["borderless"] = nativeDrawableValue.ripple.borderless;
467
514
  } else {
@@ -633,7 +680,8 @@ folly::dynamic HostPlatformViewProps::getDiffProps(
633
680
  }
634
681
 
635
682
  if (zIndex != oldProps->zIndex) {
636
- result["zIndex"] = zIndex.value();
683
+ result["zIndex"] =
684
+ zIndex.has_value() ? zIndex.value() : folly::dynamic(nullptr);
637
685
  }
638
686
 
639
687
  if (boxShadow != oldProps->boxShadow) {
@@ -10,6 +10,7 @@
10
10
  #include <glog/logging.h>
11
11
  #include <react/debug/react_native_expect.h>
12
12
  #include <react/renderer/core/PropsParserContext.h>
13
+ #include <react/renderer/core/graphicsConversions.h>
13
14
  #include <react/renderer/graphics/Float.h>
14
15
  #include <unordered_map>
15
16
 
@@ -22,14 +23,16 @@ struct NativeDrawable {
22
23
  };
23
24
 
24
25
  struct Ripple {
25
- std::optional<int32_t> color{};
26
+ std::optional<SharedColor> color{};
27
+ std::optional<std::vector<std::string>> colorResourcePaths{};
26
28
  std::optional<Float> rippleRadius{};
27
29
  bool borderless{false};
30
+ std::optional<Float> alpha{};
28
31
 
29
32
  bool operator==(const Ripple &rhs) const
30
33
  {
31
- return std::tie(this->color, this->borderless, this->rippleRadius) ==
32
- std::tie(rhs.color, rhs.borderless, rhs.rippleRadius);
34
+ return std::tie(this->color, this->colorResourcePaths, this->borderless, this->rippleRadius, this->alpha) ==
35
+ std::tie(rhs.color, rhs.colorResourcePaths, rhs.borderless, rhs.rippleRadius, rhs.alpha);
33
36
  }
34
37
  };
35
38
 
@@ -59,8 +62,7 @@ struct NativeDrawable {
59
62
  ~NativeDrawable() = default;
60
63
  };
61
64
 
62
- static inline void
63
- fromRawValue(const PropsParserContext & /*context*/, const RawValue &rawValue, NativeDrawable &result)
65
+ static inline void fromRawValue(const PropsParserContext &context, const RawValue &rawValue, NativeDrawable &result)
64
66
  {
65
67
  auto map = (std::unordered_map<std::string, RawValue>)rawValue;
66
68
 
@@ -73,24 +75,53 @@ fromRawValue(const PropsParserContext & /*context*/, const RawValue &rawValue, N
73
75
  react_native_expect(attrIterator != map.end() && attrIterator->second.hasType<std::string>());
74
76
 
75
77
  result = NativeDrawable{
76
- (std::string)attrIterator->second,
77
- {},
78
- NativeDrawable::Kind::ThemeAttr,
78
+ .themeAttr = (std::string)attrIterator->second,
79
+ .ripple = {},
80
+ .kind = NativeDrawable::Kind::ThemeAttr,
79
81
  };
80
82
  } else if (type == "RippleAndroid") {
81
83
  auto color = map.find("color");
82
84
  auto borderless = map.find("borderless");
83
85
  auto rippleRadius = map.find("rippleRadius");
86
+ auto alpha = map.find("alpha");
87
+
88
+ std::optional<SharedColor> parsedColor{};
89
+ std::optional<std::vector<std::string>> parsedColorResourcePaths{};
90
+ if (color != map.end()) {
91
+ if (color->second.hasType<std::unordered_map<std::string, std::vector<std::string>>>()) {
92
+ auto colorMap = (std::unordered_map<std::string, std::vector<std::string>>)color->second;
93
+ auto pathsIt = colorMap.find("resource_paths");
94
+ if (pathsIt != colorMap.end()) {
95
+ parsedColorResourcePaths = pathsIt->second;
96
+ }
97
+ } else {
98
+ SharedColor resolved;
99
+ fromRawValue(context, color->second, resolved);
100
+ if (resolved) {
101
+ parsedColor = resolved;
102
+ }
103
+ }
104
+ }
105
+
106
+ std::optional<Float> parsedAlpha{};
107
+ if (alpha != map.end() && alpha->second.hasType<Float>()) {
108
+ parsedAlpha = (Float)alpha->second;
109
+ }
84
110
 
85
111
  result = NativeDrawable{
86
- std::string{},
87
- NativeDrawable::Ripple{
88
- color != map.end() && color->second.hasType<int32_t>() ? (int32_t)color->second : std::optional<int32_t>{},
89
- rippleRadius != map.end() && rippleRadius->second.hasType<Float>() ? (Float)rippleRadius->second
90
- : std::optional<Float>{},
91
- borderless != map.end() && borderless->second.hasType<bool>() ? (bool)borderless->second : false,
92
- },
93
- NativeDrawable::Kind::Ripple,
112
+ .themeAttr = std::string{},
113
+ .ripple =
114
+ NativeDrawable::Ripple{
115
+ .color = parsedColor,
116
+ .colorResourcePaths = parsedColorResourcePaths,
117
+ .rippleRadius = rippleRadius != map.end() && rippleRadius->second.hasType<Float>()
118
+ ? (Float)rippleRadius->second
119
+ : std::optional<Float>{},
120
+ .borderless =
121
+ borderless != map.end() && borderless->second.hasType<bool>() ? (bool)borderless->second : false,
122
+ .alpha = parsedAlpha,
123
+ },
124
+ .kind = NativeDrawable::Kind::Ripple,
94
125
  };
95
126
  } else {
96
127
  LOG(ERROR) << "Unknown native drawable type: " << type;
@@ -12,12 +12,12 @@
12
12
 
13
13
  namespace facebook::react::HostPlatformViewTraitsInitializer {
14
14
 
15
- inline bool formsStackingContext(const ViewProps &props)
15
+ inline bool formsStackingContext(const ViewProps & /*props*/)
16
16
  {
17
17
  return false;
18
18
  }
19
19
 
20
- inline bool formsView(const ViewProps &props)
20
+ inline bool formsView(const ViewProps & /*props*/)
21
21
  {
22
22
  return false;
23
23
  }
@@ -7,10 +7,8 @@
7
7
 
8
8
  #pragma once
9
9
 
10
- #include <string>
10
+ #include <react/renderer/components/view/BaseTouch.h>
11
11
 
12
12
  namespace facebook::react {
13
-
14
- std::string toString(double doubleValue, char suffix);
15
-
13
+ using HostPlatformTouch = BaseTouch;
16
14
  } // namespace facebook::react
@@ -0,0 +1,14 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/renderer/components/view/BaseViewEventEmitter.h>
11
+
12
+ namespace facebook::react {
13
+ using HostPlatformViewEventEmitter = BaseViewEventEmitter;
14
+ } // namespace facebook::react