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

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 (675) 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.d.ts +1 -1
  33. package/Libraries/Components/ScrollView/ScrollView.js +4 -4
  34. package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
  35. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +2 -2
  36. package/Libraries/Components/Switch/Switch.js +1 -1
  37. package/Libraries/Components/TV/TVViewPropTypes.js +9 -0
  38. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +25 -1
  39. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +1 -1
  40. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -2
  41. package/Libraries/Components/TextInput/TextInput.d.ts +24 -0
  42. package/Libraries/Components/TextInput/TextInput.flow.js +24 -0
  43. package/Libraries/Components/TextInput/TextInput.js +5 -5
  44. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +5 -5
  45. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
  46. package/Libraries/Components/Touchable/PooledClass.js +4 -4
  47. package/Libraries/Components/Touchable/Touchable.js +1 -1
  48. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -10
  49. package/Libraries/Components/View/ReactNativeStyleAttributes.js +10 -2
  50. package/Libraries/Components/View/View.js +100 -91
  51. package/Libraries/Components/View/ViewPropTypes.js +3 -1
  52. package/Libraries/Core/Devtools/loadBundleFromServer.js +8 -0
  53. package/Libraries/Core/ExceptionsManager.js +2 -8
  54. package/Libraries/Core/InitializeCore.js +0 -13
  55. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  56. package/Libraries/Core/ReactNativeVersion.js +2 -2
  57. package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
  58. package/Libraries/Core/Timers/JSTimers.js +2 -2
  59. package/Libraries/Core/Timers/immediateShim.js +1 -1
  60. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  61. package/Libraries/Core/setUpSegmentFetcher.js +1 -1
  62. package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
  63. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -5
  64. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -2
  65. package/Libraries/Image/Image.android.js +15 -35
  66. package/Libraries/Image/RCTImageLoader.mm +4 -2
  67. package/Libraries/Image/RelativeImageStub.js +2 -2
  68. package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -12
  69. package/Libraries/Linking/Linking.js +1 -1
  70. package/Libraries/Lists/FlatList.js +1 -1
  71. package/Libraries/LogBox/LogBox.js +2 -2
  72. package/Libraries/LogBox/LogBoxInspectorContainer.js +24 -2
  73. package/Libraries/LogBox/LogBoxNotificationContainer.js +27 -4
  74. package/Libraries/LogBox/UI/LogBoxButton.js +47 -33
  75. package/Libraries/LogBox/UI/LogBoxInspector.js +61 -1
  76. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -0
  77. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +3 -1
  78. package/Libraries/LogBox/UI/LogBoxNotification.js +2 -0
  79. package/Libraries/Modal/Modal.js +12 -7
  80. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
  81. package/Libraries/NativeComponent/BaseViewConfig.android.js +15 -0
  82. package/Libraries/NativeComponent/BaseViewConfig.ios.js +17 -0
  83. package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
  84. package/Libraries/NativeComponent/TVViewConfig.js +1 -0
  85. package/Libraries/NativeComponent/ViewConfigIgnore.js +4 -2
  86. package/Libraries/Network/RCTNetworking.android.js +1 -1
  87. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  88. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  89. package/Libraries/Network/RCTNetworking.mm +1 -2
  90. package/Libraries/Network/XMLHttpRequest.js +29 -12
  91. package/Libraries/Pressability/Pressability.js +2 -2
  92. package/Libraries/ReactNative/AppContainer-dev.js +2 -3
  93. package/Libraries/ReactNative/AppContainer-prod.js +1 -2
  94. package/Libraries/ReactNative/AppContainer.js +0 -1
  95. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  96. package/Libraries/ReactNative/AppRegistry.flow.js +1 -2
  97. package/Libraries/ReactNative/AppRegistryImpl.js +16 -16
  98. package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
  99. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  100. package/Libraries/{Utilities → ReactNative}/IPerformanceLogger.d.ts +8 -5
  101. package/Libraries/{Utilities/IPerformanceLogger.js → ReactNative/IPerformanceLogger.flow.js} +12 -9
  102. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +14 -14
  103. package/Libraries/ReactNative/RendererImplementation.js +26 -143
  104. package/Libraries/ReactNative/RendererProxy.js +4 -15
  105. package/Libraries/ReactNative/renderApplication.js +33 -59
  106. package/Libraries/ReactNative/requireNativeComponent.js +3 -3
  107. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -0
  108. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -32
  109. package/Libraries/Settings/Settings.ios.js +1 -1
  110. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  111. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +3 -3
  112. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  113. package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
  114. package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
  115. package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
  116. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +6 -8
  117. package/Libraries/StyleSheet/StyleSheetTypes.js +11 -11
  118. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  119. package/Libraries/StyleSheet/private/_TransformStyle.js +1 -1
  120. package/Libraries/StyleSheet/processBackgroundImage.js +19 -9
  121. package/Libraries/StyleSheet/processBackgroundSize.js +7 -12
  122. package/Libraries/StyleSheet/processBoxShadow.js +9 -47
  123. package/Libraries/StyleSheet/processFilter.js +16 -8
  124. package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
  125. package/Libraries/Text/Text.js +4 -4
  126. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +16 -2
  127. package/Libraries/Text/TextNativeComponent.js +4 -4
  128. package/Libraries/TurboModule/RCTExport.js +1 -1
  129. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
  130. package/Libraries/Types/CodegenTypes.js +7 -4
  131. package/Libraries/Types/ReactDevToolsTypes.js +1 -1
  132. package/Libraries/Utilities/BackHandler.android.js +11 -3
  133. package/Libraries/Utilities/BackHandler.d.ts +11 -1
  134. package/Libraries/Utilities/BackHandler.ios.js +3 -1
  135. package/Libraries/Utilities/BackHandler.js.flow +6 -1
  136. package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
  137. package/Libraries/Utilities/ReactNativeTestTools.js +4 -4
  138. package/Libraries/Utilities/binaryToBase64.js +1 -1
  139. package/Libraries/Utilities/codegenNativeCommands.js +2 -2
  140. package/Libraries/Utilities/codegenNativeComponent.js +4 -4
  141. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -2
  142. package/Libraries/Utilities/stringifySafe.js +1 -1
  143. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  144. package/Libraries/vendor/core/ErrorUtils.js +4 -4
  145. package/Libraries/vendor/emitter/EventEmitter.js +27 -13
  146. package/README.md +13 -1
  147. package/React/Base/RCTBundleURLProvider.h +19 -1
  148. package/React/Base/RCTBundleURLProvider.mm +82 -0
  149. package/React/Base/RCTDefines.h +1 -1
  150. package/React/Base/RCTMultipartDataTask.h +1 -1
  151. package/React/Base/RCTMultipartDataTask.m +0 -3
  152. package/React/Base/RCTRootView.h +4 -0
  153. package/React/Base/RCTRootViewDelegate.h +5 -2
  154. package/React/Base/RCTVersion.m +2 -2
  155. package/React/Base/Surface/RCTSurface.h +3 -0
  156. package/React/Base/Surface/RCTSurfaceDelegate.h +7 -3
  157. package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
  158. package/React/Base/Surface/RCTSurfaceView.mm +2 -1
  159. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -0
  160. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +0 -3
  161. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -1
  162. package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
  163. package/React/CoreModules/RCTRedBox2AnsiParser.mm +1 -1
  164. package/React/CoreModules/RCTWebSocketModule.mm +45 -6
  165. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -1
  166. package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -0
  167. package/React/DevSupport/RCTPackagerConnection.mm +13 -11
  168. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +108 -43
  169. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  170. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  171. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +1 -1
  172. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +35 -15
  173. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
  174. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +70 -8
  175. package/React/Fabric/RCTConversions.h +14 -0
  176. package/React/Fabric/RCTScheduler.mm +18 -0
  177. package/React/Fabric/RCTSurfacePointerHandler.mm +8 -2
  178. package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -0
  179. package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
  180. package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
  181. package/React/Modules/RCTUIManager.mm +1 -1
  182. package/React/Profiler/RCTProfile.h +5 -0
  183. package/React/Profiler/RCTProfile.m +2 -1
  184. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  185. package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
  186. package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
  187. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  188. package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
  189. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +5 -5
  190. package/React/Views/RCTLayout.m +4 -3
  191. package/React/Views/ScrollView/RCTScrollView.h +6 -2
  192. package/ReactAndroid/api/ReactAndroid.api +37 -27
  193. package/ReactAndroid/build.gradle.kts +28 -21
  194. package/ReactAndroid/gradle.properties +1 -1
  195. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -3
  197. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
  198. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +40 -110
  199. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +32 -87
  200. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -0
  201. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +9 -99
  202. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +7 -28
  203. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +2 -19
  204. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
  205. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +36 -0
  206. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
  208. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
  210. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
  211. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  212. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
  213. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
  214. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +9 -34
  215. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +9 -10
  216. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +10 -10
  218. package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +15 -13
  219. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
  220. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +139 -43
  221. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +223 -0
  222. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
  223. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +34 -1
  224. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +104 -65
  225. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +9 -1
  226. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +172 -36
  227. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
  228. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
  229. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +41 -29
  230. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +71 -51
  231. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +15 -11
  232. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +16 -12
  233. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +79 -57
  234. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -3
  235. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -4
  236. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +15 -11
  237. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -9
  238. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
  239. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
  240. package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +1 -1
  241. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +3 -0
  242. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +10 -5
  243. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
  244. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
  245. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
  246. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
  247. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
  248. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +59 -62
  249. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +8 -0
  250. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +45 -36
  251. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  252. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +5 -2
  253. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
  254. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +18 -5
  255. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +8 -1
  256. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +21 -19
  257. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +4 -0
  258. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  259. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +77 -72
  260. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +7 -16
  261. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
  262. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +3 -0
  263. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
  264. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +25 -0
  265. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +2 -2
  266. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
  267. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
  268. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +18 -0
  269. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +20 -12
  270. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +18 -24
  271. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
  272. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -0
  273. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +11 -71
  274. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -17
  275. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +29 -30
  276. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
  277. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
  278. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -0
  279. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +1 -0
  280. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +30 -0
  281. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
  282. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -9
  283. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +27 -3
  284. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +4 -0
  285. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
  286. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
  287. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +32 -24
  288. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +20 -21
  289. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +33 -24
  290. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +60 -11
  291. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
  292. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +5 -162
  293. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +1 -1
  294. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +71 -97
  295. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +1 -4
  296. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +1 -1
  297. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +7 -13
  298. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +40 -2
  299. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
  300. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +85 -20
  301. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +46 -65
  302. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +85 -13
  303. package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
  304. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +5 -1
  305. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
  306. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
  307. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +3 -1
  308. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +39 -0
  309. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +20 -12
  310. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +101 -0
  311. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
  312. package/ReactAndroid/src/main/jni/CMakeLists.txt +10 -1
  313. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
  314. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +0 -2
  315. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
  316. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
  317. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +47 -0
  318. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +20 -6
  319. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +24 -1
  320. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -0
  321. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
  322. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
  323. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
  324. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
  325. package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
  326. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +97 -69
  327. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +21 -15
  328. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
  329. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
  330. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -1
  331. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
  332. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
  333. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
  334. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  335. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +10 -0
  336. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +7 -0
  337. package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
  338. package/ReactCommon/React-Fabric.podspec +7 -0
  339. package/ReactCommon/React-FabricComponents.podspec +1 -1
  340. package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
  341. package/ReactCommon/jsc/JSCRuntime.cpp +9 -0
  342. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -0
  343. package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
  344. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
  345. package/ReactCommon/jsi/jsi/decorator.h +93 -0
  346. package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
  347. package/ReactCommon/jsi/jsi/jsi.cpp +208 -27
  348. package/ReactCommon/jsi/jsi/jsi.h +553 -224
  349. package/ReactCommon/jsi/jsi/test/testlib.cpp +453 -0
  350. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +1 -1
  351. package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
  352. package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
  353. package/ReactCommon/jsinspector-modern/HostAgent.cpp +10 -1
  354. package/ReactCommon/jsinspector-modern/HostTarget.h +25 -0
  355. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +6 -2
  356. package/ReactCommon/jsinspector-modern/InspectorFlags.h +5 -2
  357. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -2
  358. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +3 -0
  359. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +10 -0
  360. package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +0 -1
  361. package/ReactCommon/logger/react_native_log.cpp +0 -1
  362. package/ReactCommon/react/bridging/Array.h +1 -1
  363. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +29 -21
  364. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +35 -25
  365. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +168 -132
  366. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +18 -14
  367. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +28 -20
  368. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +61 -43
  369. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -3
  370. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +9 -7
  371. package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
  372. package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
  373. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -9
  374. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +0 -1
  375. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
  376. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
  377. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
  378. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +2 -2
  379. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +35 -25
  380. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +15 -11
  381. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -2
  382. package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
  383. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
  384. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
  385. package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
  386. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
  387. package/ReactCommon/react/networking/NetworkReporter.h +0 -1
  388. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
  389. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
  390. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
  391. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -12
  392. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +1 -1
  393. package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +3 -0
  394. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -3
  395. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
  396. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +4 -0
  397. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +1 -1
  398. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +0 -1
  399. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
  400. package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
  401. package/ReactCommon/react/renderer/animations/utils.h +12 -1
  402. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
  403. package/ReactCommon/react/renderer/attributedstring/conversions.h +104 -3
  404. package/ReactCommon/react/renderer/components/image/conversions.h +2 -3
  405. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  406. package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
  407. package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
  408. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +531 -21
  409. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -0
  410. package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -2
  411. package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -0
  412. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +15 -0
  413. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +1 -0
  414. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
  415. package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
  416. package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
  417. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
  418. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
  419. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +5 -0
  420. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +33 -28
  421. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
  422. package/ReactCommon/react/renderer/components/view/conversions.h +44 -28
  423. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +71 -5
  424. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
  425. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
  426. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
  427. package/ReactCommon/react/renderer/{graphics/DoubleConversions.h → components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h} +2 -4
  428. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
  429. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
  430. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
  431. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
  432. package/ReactCommon/react/renderer/components/view/propsConversions.h +8 -2
  433. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +86 -0
  434. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +34 -0
  435. package/ReactCommon/react/renderer/core/EventEmitter.cpp +67 -2
  436. package/ReactCommon/react/renderer/core/EventEmitter.h +25 -0
  437. package/ReactCommon/react/renderer/core/EventPipe.h +3 -1
  438. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +18 -10
  439. package/ReactCommon/react/renderer/core/EventTarget.cpp +8 -5
  440. package/ReactCommon/react/renderer/core/LayoutContext.h +9 -2
  441. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
  442. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
  443. package/ReactCommon/react/renderer/core/Props.cpp +20 -0
  444. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  445. package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
  446. package/ReactCommon/react/renderer/core/ShadowNode.h +2 -2
  447. package/ReactCommon/react/renderer/core/conversions.h +4 -0
  448. package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
  449. package/ReactCommon/react/renderer/core/propsConversions.h +1 -1
  450. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
  451. package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
  452. package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +1 -1
  453. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
  454. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
  455. package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
  456. package/ReactCommon/react/renderer/graphics/BlendMode.h +5 -0
  457. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
  458. package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
  459. package/ReactCommon/react/renderer/graphics/LinearGradient.h +3 -0
  460. package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -0
  461. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
  462. package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
  463. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +0 -5
  464. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +2 -2
  465. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +0 -4
  466. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +5 -1
  467. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +12 -4
  468. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
  469. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +307 -4
  470. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +27 -2
  471. package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +95 -0
  472. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +212 -0
  473. package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +154 -0
  474. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +314 -18
  475. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +38 -20
  476. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +20 -22
  477. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
  478. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +76 -3
  479. package/ReactCommon/react/renderer/scheduler/Scheduler.h +12 -0
  480. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +5 -0
  481. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -7
  482. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +2 -1
  483. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +16 -1
  484. package/ReactCommon/react/renderer/uimanager/UIManager.h +8 -0
  485. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
  486. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +347 -5
  487. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +5 -3
  488. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +5 -0
  489. package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
  490. package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
  491. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +520 -0
  492. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +161 -0
  493. package/ReactCommon/react/runtime/TimerManager.cpp +4 -2
  494. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +37 -0
  495. package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
  496. package/ReactCommon/react/timing/React-timing.podspec +2 -0
  497. package/ReactCommon/react/timing/primitives.h +33 -1
  498. package/ReactCommon/yoga/yoga/YGEnums.cpp +32 -0
  499. package/ReactCommon/yoga/yoga/YGEnums.h +20 -4
  500. package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
  501. package/ReactCommon/yoga/yoga/YGNode.h +1 -1
  502. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
  503. package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
  504. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +40 -9
  505. package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
  506. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +106 -14
  507. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
  508. package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
  509. package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
  510. package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
  511. package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
  512. package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
  513. package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
  514. package/ReactCommon/yoga/yoga/event/event.h +1 -0
  515. package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
  516. package/ReactCommon/yoga/yoga/node/Node.h +4 -4
  517. package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
  518. package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
  519. package/ReactCommon/yoga/yoga/style/Style.h +261 -71
  520. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -1
  521. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  522. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
  523. package/cli.js +1 -1
  524. package/flow/HermesInternalType.js +1 -1
  525. package/flow/bom.js.flow +95 -3
  526. package/flow/dom.js.flow +89 -89
  527. package/gradle/libs.versions.toml +3 -1
  528. package/index.js +30 -3
  529. package/index.js.flow +23 -1
  530. package/package.json +11 -11
  531. package/react-native.config.js +3 -3
  532. package/scripts/cocoapods/rncore.rb +65 -11
  533. package/scripts/cocoapods/rndependencies.rb +65 -11
  534. package/scripts/cocoapods/utils.rb +52 -0
  535. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +1 -1
  536. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +13 -4
  537. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
  538. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +1 -1
  539. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +17 -6
  540. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
  541. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +1 -1
  542. package/scripts/codegen/generate-artifacts-executor/index.js +2 -0
  543. package/scripts/codegen/generate-artifacts-executor/utils.js +1 -1
  544. package/scripts/codegen/generate-specs-cli-executor.js +1 -1
  545. package/scripts/generate-codegen-artifacts.js +20 -2
  546. package/scripts/generate-provider-cli.js +1 -1
  547. package/scripts/react_native_pods.rb +25 -2
  548. package/scripts/react_native_pods_utils/script_phases.rb +9 -3
  549. package/scripts/replace-rncore-version.js +20 -0
  550. package/scripts/xcode/with-environment.sh +7 -1
  551. package/sdks/.hermesv1version +1 -1
  552. package/sdks/.hermesversion +1 -1
  553. package/sdks/hermes-engine/hermes-utils.rb +92 -5
  554. package/sdks/hermes-engine/version.properties +2 -2
  555. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  556. package/src/private/animated/createAnimatedPropsHook.js +2 -2
  557. package/src/private/components/virtualcollection/FlingConstants.js +21 -0
  558. package/src/private/components/virtualcollection/Virtual.js +62 -0
  559. package/src/private/components/virtualcollection/VirtualCollectionView.js +238 -0
  560. package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
  561. package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
  562. package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +13 -0
  563. package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
  564. package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
  565. package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
  566. package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
  567. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
  568. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +1 -1
  569. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +1 -1
  570. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  571. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
  572. package/src/private/featureflags/ReactNativeFeatureFlags.js +41 -37
  573. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
  574. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +9 -7
  575. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  576. package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
  577. package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
  578. package/src/private/renderer/events/ReactNativeResponder.js +687 -0
  579. package/src/private/renderer/events/ResponderEvent.js +40 -0
  580. package/src/private/renderer/events/ResponderTouchHistoryStore.js +258 -0
  581. package/src/private/renderer/events/dispatchNativeEvent.js +83 -0
  582. package/src/private/setup/setUpDOM.js +20 -0
  583. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +2 -2
  584. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +2 -2
  585. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  586. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  587. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
  588. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +2 -2
  589. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +2 -2
  590. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +2 -2
  591. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +2 -2
  592. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +2 -2
  593. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +2 -2
  594. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
  595. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +2 -2
  596. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +1 -1
  597. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
  598. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +1 -1
  599. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
  600. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +1 -1
  601. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +1 -1
  602. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +1 -1
  603. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +1 -1
  604. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -1
  605. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +1 -1
  606. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
  607. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +1 -1
  608. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
  609. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  610. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +1 -1
  611. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
  612. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +2 -2
  613. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +1 -1
  614. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
  615. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
  616. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +2 -2
  617. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +1 -1
  618. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
  619. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +1 -1
  620. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +1 -1
  621. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +1 -1
  622. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +1 -1
  623. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +1 -1
  624. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -1
  625. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  626. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
  627. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +2 -2
  628. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +2 -2
  629. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +1 -1
  630. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +2 -2
  631. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +1 -1
  632. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +2 -2
  633. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +1 -1
  634. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
  635. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -1
  636. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +1 -1
  637. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +1 -1
  638. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +1 -1
  639. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +2 -2
  640. package/src/private/styles/composeStyles.js +1 -1
  641. package/src/private/types/HostComponent.js +1 -1
  642. package/src/private/utilities/toExtendedError.js +1 -1
  643. package/src/private/viewtransition/specs/NativeViewTransition.js +33 -0
  644. package/src/private/webapis/dom/events/Event.js +10 -1
  645. package/src/private/webapis/dom/events/EventTarget.js +60 -18
  646. package/src/private/webapis/dom/events/internals/EventInternals.js +18 -1
  647. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +12 -0
  648. package/src/private/webapis/dom/nodes/ReactNativeElement.js +24 -0
  649. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +4 -6
  650. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +70 -1
  651. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
  652. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +1 -1
  653. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
  654. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +5 -9
  655. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +2 -2
  656. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +2 -2
  657. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +2 -2
  658. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
  659. package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
  660. package/src/private/webapis/structuredClone/structuredClone.js +1 -1
  661. package/src/private/webapis/webidl/PlatformObjects.js +4 -4
  662. package/types/public/ReactNativeTVTypes.d.ts +9 -0
  663. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19669
  664. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11129
  665. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12930
  666. package/Libraries/Renderer/shims/ReactNative.js +0 -27
  667. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
  668. package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
  669. package/Libraries/Utilities/createPerformanceLogger.js +0 -329
  670. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -442
  671. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
  672. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
  673. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
  674. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
  675. package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
@@ -288,12 +288,16 @@ class Modal extends React.Component<ModalProps, ModalState> {
288
288
  return null;
289
289
  }
290
290
 
291
- const containerStyles = {
292
- backgroundColor:
293
- this.props.transparent === true
294
- ? 'transparent'
295
- : (this.props.backdropColor ?? 'white'),
296
- };
291
+ // Only override backgroundColor when transparent or backdropColor are
292
+ // explicitly set, so that these Modal-specific props take precedence
293
+ // over the generic style prop. The default backgroundColor ('white')
294
+ // is defined in styles.container below.
295
+ const containerStyles: {backgroundColor?: ColorValue} = {};
296
+ if (this.props.transparent === true) {
297
+ containerStyles.backgroundColor = 'transparent';
298
+ } else if (this.props.backdropColor != null) {
299
+ containerStyles.backgroundColor = this.props.backdropColor;
300
+ }
297
301
 
298
302
  let animationType = this.props.animationType || 'none';
299
303
 
@@ -349,7 +353,7 @@ class Modal extends React.Component<ModalProps, ModalState> {
349
353
  <ScrollView.Context.Provider value={null}>
350
354
  <View
351
355
  // $FlowFixMe[incompatible-type]
352
- style={[styles.container, containerStyles]}
356
+ style={[styles.container, this.props.style, containerStyles]}
353
357
  collapsable={false}>
354
358
  {innerChildren}
355
359
  </View>
@@ -380,6 +384,7 @@ const styles = StyleSheet.create({
380
384
  [side]: 0,
381
385
  top: 0,
382
386
  flex: 1,
387
+ backgroundColor: 'white',
383
388
  },
384
389
  });
385
390
 
@@ -80,8 +80,6 @@ NSString *RCTInterpolateString(
80
80
  RCTInterpolationOutputType _outputType;
81
81
  id _Nullable _outputvalue;
82
82
  NSString *_Nullable _outputPattern;
83
-
84
- NSArray<NSTextCheckingResult *> *_matches;
85
83
  }
86
84
 
87
85
  - (instancetype)initWithTag:(NSNumber *)tag config:(NSDictionary<NSString *, id> *)config
@@ -222,6 +222,7 @@ const validAttributesForNonEventProps = {
222
222
  renderToHardwareTextureAndroid: true,
223
223
  testID: true,
224
224
  nativeID: true,
225
+ id: true,
225
226
  accessibilityLabelledBy: true,
226
227
  accessibilityLabel: true,
227
228
  accessibilityHint: true,
@@ -234,6 +235,19 @@ const validAttributesForNonEventProps = {
234
235
  experimental_accessibilityOrder: true,
235
236
  importantForAccessibility: true,
236
237
  screenReaderFocusable: true,
238
+ 'aria-busy': true,
239
+ 'aria-checked': true,
240
+ 'aria-disabled': true,
241
+ 'aria-expanded': true,
242
+ 'aria-hidden': true,
243
+ 'aria-label': true,
244
+ 'aria-labelledby': true,
245
+ 'aria-live': true,
246
+ 'aria-selected': true,
247
+ 'aria-valuemax': true,
248
+ 'aria-valuemin': true,
249
+ 'aria-valuenow': true,
250
+ 'aria-valuetext': true,
237
251
  role: true,
238
252
  rotation: true,
239
253
  scaleX: true,
@@ -376,6 +390,7 @@ const validAttributesForNonEventProps = {
376
390
  borderBlockEndColor: colorAttribute,
377
391
  borderBlockStartColor: colorAttribute,
378
392
  focusable: true,
393
+ tabIndex: true,
379
394
  backfaceVisibility: true,
380
395
  } as const;
381
396
 
@@ -225,7 +225,22 @@ const validAttributesForNonEventProps = {
225
225
  transformOrigin: true,
226
226
  accessibilityRole: true,
227
227
  accessibilityState: true,
228
+ 'aria-busy': true,
229
+ 'aria-checked': true,
230
+ 'aria-disabled': true,
231
+ 'aria-expanded': true,
232
+ 'aria-hidden': true,
233
+ 'aria-label': true,
234
+ 'aria-labelledby': true,
235
+ 'aria-live': true,
236
+ 'aria-selected': true,
237
+ 'aria-valuemax': true,
238
+ 'aria-valuemin': true,
239
+ 'aria-valuenow': true,
240
+ 'aria-valuetext': true,
241
+ tabIndex: true,
228
242
  nativeID: true,
243
+ id: true,
229
244
  pointerEvents: true,
230
245
  removeClippedSubviews: true,
231
246
  role: true,
@@ -364,6 +379,8 @@ const validAttributesForNonEventProps = {
364
379
 
365
380
  direction: true,
366
381
 
382
+ focusable: true,
383
+
367
384
  style: ReactNativeStyleAttributes,
368
385
  } as const;
369
386
 
@@ -48,7 +48,7 @@ export function setRuntimeConfigProvider(
48
48
  * The supplied `viewConfigProvider` may or may not be invoked and utilized,
49
49
  * depending on how `setRuntimeConfigProvider` is configured.
50
50
  */
51
- export function get<Config: {...}>(
51
+ export function get<Config extends {...}>(
52
52
  name: string,
53
53
  viewConfigProvider: () => PartialViewConfig,
54
54
  ): HostComponent<Config> {
@@ -121,7 +121,7 @@ export function get<Config: {...}>(
121
121
  * that the return value of this is not `HostComponent` because the returned
122
122
  * component instance is not guaranteed to have native methods.
123
123
  */
124
- export function getWithFallback_DEPRECATED<Config: {...}>(
124
+ export function getWithFallback_DEPRECATED<Config extends {...}>(
125
125
  name: string,
126
126
  viewConfigProvider: () => PartialViewConfig,
127
127
  ): React.ComponentType<Config> {
@@ -26,5 +26,6 @@ export const validAttributesForTVProps = {
26
26
  trapFocusDown: true,
27
27
  trapFocusUp: true,
28
28
  scrollSnapAlign: true,
29
+ scrollSnapOffset: true,
29
30
  };
30
31
 
@@ -16,7 +16,9 @@ const ignoredViewConfigProps = new WeakSet<{...}>();
16
16
  * Decorates ViewConfig values that are dynamically injected by the library,
17
17
  * react-native-gesture-handler. (T45765076)
18
18
  */
19
- export function DynamicallyInjectedByGestureHandler<T: {...}>(object: T): T {
19
+ export function DynamicallyInjectedByGestureHandler<T extends {...}>(
20
+ object: T,
21
+ ): T {
20
22
  ignoredViewConfigProps.add(object);
21
23
  return object;
22
24
  }
@@ -35,7 +37,7 @@ export function DynamicallyInjectedByGestureHandler<T: {...}>(object: T): T {
35
37
  * TODO(T110872225): Remove this logic, after achieving platform-consistency
36
38
  */
37
39
  export function ConditionallyIgnoredEventHandlers<
38
- const T: {+[name: string]: true},
40
+ const T extends {+[name: string]: true},
39
41
  >(value: T): T | void {
40
42
  if (Platform.OS === 'ios') {
41
43
  return value;
@@ -48,7 +48,7 @@ const emitter = new NativeEventEmitter<$FlowFixMe>(
48
48
  * requestId to each network request that can be used to abort that request later on.
49
49
  */
50
50
  const RCTNetworking = {
51
- addListener<K: keyof RCTNetworkingEventDefinitions>(
51
+ addListener<K extends keyof RCTNetworkingEventDefinitions>(
52
52
  eventType: K,
53
53
  listener: (...RCTNetworkingEventDefinitions[K]) => unknown,
54
54
  context?: unknown,
@@ -18,7 +18,7 @@ import {type RCTNetworkingEventDefinitions} from './RCTNetworkingEventDefinition
18
18
  import {type NativeResponseType} from './XMLHttpRequest';
19
19
 
20
20
  const RCTNetworking = {
21
- addListener<K: keyof RCTNetworkingEventDefinitions>(
21
+ addListener<K extends keyof RCTNetworkingEventDefinitions>(
22
22
  eventType: K,
23
23
  listener: (...RCTNetworkingEventDefinitions[K]) => unknown,
24
24
  context?: unknown,
@@ -16,7 +16,7 @@ import type {RCTNetworkingEventDefinitions} from './RCTNetworkingEventDefinition
16
16
  import type {NativeResponseType} from './XMLHttpRequest';
17
17
 
18
18
  declare const RCTNetworking: interface {
19
- addListener<K: keyof RCTNetworkingEventDefinitions>(
19
+ addListener<K extends keyof RCTNetworkingEventDefinitions>(
20
20
  eventType: K,
21
21
  // $FlowFixMe[invalid-computed-prop]
22
22
  listener: (...RCTNetworkingEventDefinitions[K]) => unknown,
@@ -162,7 +162,6 @@ static NSString *RCTGenerateFormBoundary()
162
162
  NSMutableArray<id<RCTNetworkingRequestHandler>> *_requestHandlers;
163
163
  NSMutableArray<id<RCTNetworkingResponseHandler>> *_responseHandlers;
164
164
  NSMutableArray<id<RCTNetworkingTextResponseHandler>> *_textResponseHandlers;
165
- dispatch_queue_t _requestQueue;
166
165
  }
167
166
 
168
167
  @synthesize methodQueue = _methodQueue;
@@ -319,7 +318,7 @@ RCT_EXPORT_MODULE()
319
318
  request.HTTPMethod = [RCTConvert NSString:RCTNilIfNull(query[@"method"])].uppercaseString ?: @"GET";
320
319
  request.HTTPShouldHandleCookies = [RCTConvert BOOL:query[@"withCredentials"]];
321
320
 
322
- if (request.HTTPShouldHandleCookies == YES) {
321
+ if (request.HTTPShouldHandleCookies) {
323
322
  // Load and set the cookie header.
324
323
  NSArray<NSHTTPCookie *> *cookies = [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookiesForURL:URL];
325
324
  request.allHTTPHeaderFields = [NSHTTPCookie requestHeaderFieldsWithCookies:cookies];
@@ -14,7 +14,6 @@ import type {
14
14
  EventCallback,
15
15
  EventListener,
16
16
  } from '../../src/private/webapis/dom/events/EventTarget';
17
- import type {IPerformanceLogger} from '../Utilities/createPerformanceLogger';
18
17
 
19
18
  import Event from '../../src/private/webapis/dom/events/Event';
20
19
  import {
@@ -27,8 +26,6 @@ import ProgressEvent from '../../src/private/webapis/xhr/events/ProgressEvent';
27
26
  import {type EventSubscription} from '../vendor/emitter/EventEmitter';
28
27
 
29
28
  const BlobManager = require('../Blob/BlobManager').default;
30
- const GlobalPerformanceLogger =
31
- require('../Utilities/GlobalPerformanceLogger').default;
32
29
  const RCTNetworking = require('./RCTNetworking').default;
33
30
  const base64 = require('base64-js');
34
31
  const invariant = require('invariant');
@@ -58,6 +55,17 @@ type XHRInterceptor = interface {
58
55
  loadingFailed(id: number, error: string): void,
59
56
  };
60
57
 
58
+ /**
59
+ * Minimal contract for the optional performance logger that callers may attach
60
+ * via `setPerformanceLogger(...)`. Defined locally so this module stays
61
+ * self-contained and does not depend on any specific logger implementation.
62
+ * Any object satisfying these two methods structurally is accepted.
63
+ */
64
+ type XHRPerformanceLogger = interface {
65
+ startTimespan(key: string): void,
66
+ stopTimespan(key: string): void,
67
+ };
68
+
61
69
  // The native blob module is optional so inject it here if available.
62
70
  if (BlobManager.isAvailable) {
63
71
  BlobManager.addNetworkingHandler();
@@ -167,8 +175,7 @@ class XMLHttpRequest extends EventTarget {
167
175
  _timedOut: boolean = false;
168
176
  _trackingName: ?string;
169
177
  _incrementalEvents: boolean = false;
170
- _startTime: ?number = null;
171
- _performanceLogger: IPerformanceLogger = GlobalPerformanceLogger;
178
+ _performanceLogger: ?XHRPerformanceLogger = null;
172
179
 
173
180
  static __setInterceptor_DO_NOT_USE(interceptor: ?XHRInterceptor) {
174
181
  XMLHttpRequest._interceptor = interceptor;
@@ -334,8 +341,10 @@ class XMLHttpRequest extends EventTarget {
334
341
  responseURL: ?string,
335
342
  ): void {
336
343
  if (requestId === this._requestId) {
337
- this._perfKey != null &&
338
- this._performanceLogger.stopTimespan(this._perfKey);
344
+ const performanceLogger = this._performanceLogger;
345
+ if (this._perfKey != null && performanceLogger != null) {
346
+ performanceLogger.stopTimespan(this._perfKey);
347
+ }
339
348
  this.status = status;
340
349
  this.setResponseHeaders(responseHeaders);
341
350
  this.setReadyState(this.HEADERS_RECEIVED);
@@ -521,9 +530,15 @@ class XMLHttpRequest extends EventTarget {
521
530
  }
522
531
 
523
532
  /**
524
- * Custom extension for setting a custom performance logger
533
+ * Custom extension that lets callers attach a performance logger receiving
534
+ * a `network_XMLHttpRequest_<friendlyName>` start/stop timespan around each
535
+ * dispatched request. The logger only needs to implement
536
+ * `startTimespan(key)` / `stopTimespan(key)` (see the `XHRPerformanceLogger`
537
+ * interface above). When no logger is set the timespan is not emitted.
525
538
  */
526
- setPerformanceLogger(performanceLogger: IPerformanceLogger): XMLHttpRequest {
539
+ setPerformanceLogger(
540
+ performanceLogger: XHRPerformanceLogger,
541
+ ): XMLHttpRequest {
527
542
  this._performanceLogger = performanceLogger;
528
543
  return this;
529
544
  }
@@ -598,9 +613,11 @@ class XMLHttpRequest extends EventTarget {
598
613
 
599
614
  const doSend = () => {
600
615
  const friendlyName = this._trackingName ?? this._url;
601
- this._perfKey = 'network_XMLHttpRequest_' + String(friendlyName);
602
- this._performanceLogger.startTimespan(this._perfKey);
603
- this._startTime = performance.now();
616
+ const performanceLogger = this._performanceLogger;
617
+ if (performanceLogger != null) {
618
+ this._perfKey = 'network_XMLHttpRequest_' + String(friendlyName);
619
+ performanceLogger.startTimespan(this._perfKey);
620
+ }
604
621
  invariant(
605
622
  this._method,
606
623
  'XMLHttpRequest method needs to be defined (%s).',
@@ -627,8 +627,8 @@ export default class Pressability {
627
627
  ReactNativeFeatureFlags.shouldPressibilityUseW3CPointerEventsForHover()
628
628
  ) {
629
629
  const hoverPointerEvents = {
630
- onPointerEnter: (undefined: void | (PointerEvent => void)),
631
- onPointerLeave: (undefined: void | (PointerEvent => void)),
630
+ onPointerEnter: undefined as void | (PointerEvent => void),
631
+ onPointerLeave: undefined as void | (PointerEvent => void),
632
632
  };
633
633
  const {onHoverIn, onHoverOut} = this._config;
634
634
  if (onHoverIn != null) {
@@ -32,7 +32,7 @@ import {useRef} from 'react';
32
32
 
33
33
  const {useEffect, useState, useCallback} = React;
34
34
 
35
- const reactDevToolsHook: ReactDevToolsGlobalHook = (window: $FlowFixMe)
35
+ const reactDevToolsHook: ReactDevToolsGlobalHook = (window as $FlowFixMe)
36
36
  .__REACT_DEVTOOLS_GLOBAL_HOOK__;
37
37
 
38
38
  // Required for React DevTools to view / edit React Native styles in Flipper.
@@ -103,7 +103,6 @@ const ReactDevToolsOverlayDeferred = ({
103
103
 
104
104
  const AppContainer = ({
105
105
  children,
106
- fabric,
107
106
  initialProps,
108
107
  internal_excludeInspector = false,
109
108
  internal_excludeLogBox = false,
@@ -170,7 +169,7 @@ const AppContainer = ({
170
169
 
171
170
  if (WrapperComponent != null) {
172
171
  innerView = (
173
- <WrapperComponent initialProps={initialProps} fabric={fabric === true}>
172
+ <WrapperComponent initialProps={initialProps}>
174
173
  {innerView}
175
174
  </WrapperComponent>
176
175
  );
@@ -17,7 +17,6 @@ import * as React from 'react';
17
17
 
18
18
  const AppContainer = ({
19
19
  children,
20
- fabric,
21
20
  initialProps,
22
21
  rootTag,
23
22
  WrapperComponent,
@@ -27,7 +26,7 @@ const AppContainer = ({
27
26
 
28
27
  if (WrapperComponent != null) {
29
28
  innerView = (
30
- <WrapperComponent initialProps={initialProps} fabric={fabric === true}>
29
+ <WrapperComponent initialProps={initialProps}>
31
30
  {innerView}
32
31
  </WrapperComponent>
33
32
  );
@@ -15,7 +15,6 @@ import * as React from 'react';
15
15
 
16
16
  export type Props = Readonly<{
17
17
  children?: React.Node,
18
- fabric?: boolean,
19
18
  rootTag: number | RootTag,
20
19
  initialProps?: {...},
21
20
  WrapperComponent?: ?React.ComponentType<any>,
@@ -8,8 +8,8 @@
8
8
  */
9
9
 
10
10
  import type * as React from 'react';
11
- import type {IPerformanceLogger} from '../Utilities/IPerformanceLogger';
12
11
  import type {ViewStyle} from '../StyleSheet/StyleSheetTypes';
12
+ import type {IPerformanceLogger} from './IPerformanceLogger';
13
13
 
14
14
  type Task = (taskData: any) => Promise<void>;
15
15
  type TaskProvider = () => Task;
@@ -10,8 +10,8 @@
10
10
 
11
11
  import type {ViewStyleProp} from '../StyleSheet/StyleSheet';
12
12
  import type {RootTag} from '../Types/RootTagTypes';
13
- import type {IPerformanceLogger} from '../Utilities/createPerformanceLogger';
14
13
  import type {DisplayModeType} from './DisplayMode';
14
+ import type {IPerformanceLogger} from './IPerformanceLogger.flow';
15
15
 
16
16
  type HeadlessTask = (taskData: any) => Promise<void>;
17
17
  export type TaskProvider = () => HeadlessTask;
@@ -31,7 +31,6 @@ export type AppConfig = {
31
31
  export type AppParameters = {
32
32
  initialProps: Readonly<{[string]: unknown, ...}>,
33
33
  rootTag: RootTag,
34
- fabric?: boolean,
35
34
  };
36
35
  export type Runnable = (
37
36
  appParameters: AppParameters,
@@ -22,11 +22,10 @@ import type {
22
22
  WrapperComponentProvider,
23
23
  } from './AppRegistry.flow';
24
24
 
25
- import createPerformanceLogger from '../Utilities/createPerformanceLogger';
26
25
  import SceneTracker from '../Utilities/SceneTracker';
26
+ import DeprecatedPerformanceLoggerStub from './DeprecatedPerformanceLoggerStub';
27
27
  import {coerceDisplayMode} from './DisplayMode';
28
28
  import HeadlessJsTaskError from './HeadlessJsTaskError';
29
- import {unmountComponentAtNodeAndRemoveContainer} from './RendererProxy';
30
29
  import invariant from 'invariant';
31
30
 
32
31
  type TaskCanceller = () => void;
@@ -82,24 +81,23 @@ export function registerComponent(
82
81
  componentProvider: ComponentProvider,
83
82
  section?: boolean,
84
83
  ): string {
85
- const scopedPerformanceLogger = createPerformanceLogger();
86
84
  runnables[appKey] = (appParameters, displayMode) => {
87
85
  const renderApplication = require('./renderApplication').default;
88
- renderApplication(
89
- componentProviderInstrumentationHook(
86
+ renderApplication({
87
+ RootComponent: componentProviderInstrumentationHook(
90
88
  componentProvider,
91
- scopedPerformanceLogger,
89
+ DeprecatedPerformanceLoggerStub,
92
90
  ),
93
- appParameters.initialProps,
94
- appParameters.rootTag,
95
- wrapperComponentProvider && wrapperComponentProvider(appParameters),
96
- rootViewStyleProvider && rootViewStyleProvider(appParameters),
97
- appParameters.fabric,
98
- scopedPerformanceLogger,
99
- appKey === 'LogBox', // is logbox
100
- appKey,
91
+ initialProps: appParameters.initialProps,
92
+ rootTag: appParameters.rootTag,
93
+ WrapperComponent:
94
+ wrapperComponentProvider && wrapperComponentProvider(appParameters),
95
+ rootViewStyle:
96
+ rootViewStyleProvider && rootViewStyleProvider(appParameters),
97
+ isLogBox: appKey === 'LogBox',
98
+ debugName: appKey,
101
99
  displayMode,
102
- );
100
+ });
103
101
  };
104
102
  if (section) {
105
103
  sections[appKey] = runnables[appKey];
@@ -210,7 +208,9 @@ export function setSurfaceProps(
210
208
  * See https://reactnative.dev/docs/appregistry#unmountapplicationcomponentatroottag
211
209
  */
212
210
  export function unmountApplicationComponentAtRootTag(rootTag: RootTag): void {
213
- unmountComponentAtNodeAndRemoveContainer(rootTag);
211
+ console.error(
212
+ 'Unexpected call to unmountApplicationComponentAtRootTag in Fabric.',
213
+ );
214
214
  }
215
215
 
216
216
  /**
@@ -0,0 +1,83 @@
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
+ * @flow strict-local
8
+ * @format
9
+ */
10
+
11
+ import type {IPerformanceLogger} from './IPerformanceLogger.flow';
12
+
13
+ let didWarn: boolean = false;
14
+ function warnDeprecated(): void {
15
+ if (didWarn) {
16
+ return;
17
+ }
18
+ didWarn = true;
19
+ console.warn(
20
+ 'The default `IPerformanceLogger` provided by `react-native` (the ' +
21
+ "`'GlobalPerformanceLogger'` callable native module and the " +
22
+ '`scopedPerformanceLogger` argument passed to the hook registered with ' +
23
+ '`AppRegistry.setComponentProviderInstrumentationHook`) is deprecated and ' +
24
+ 'will be removed in a future release. The instance supplied today is a ' +
25
+ 'no-op stub. Embedders that need a per-app performance logger should ' +
26
+ 'attach their own implementation.',
27
+ );
28
+ }
29
+
30
+ /**
31
+ * @deprecated The `react-native` package no longer ships a real
32
+ * `IPerformanceLogger`. This stub is exposed to keep existing extension points
33
+ * (the `'GlobalPerformanceLogger'` callable native module and the second
34
+ * argument of `AppRegistry.setComponentProviderInstrumentationHook`'s hook)
35
+ * source-compatible for embedders. Every method is a no-op that emits a
36
+ * one-time deprecation warning on first use.
37
+ */
38
+ const DeprecatedPerformanceLoggerStub: IPerformanceLogger = {
39
+ addTimespan: () => warnDeprecated(),
40
+ append: () => warnDeprecated(),
41
+ clear: () => warnDeprecated(),
42
+ clearCompleted: () => warnDeprecated(),
43
+ close: () => warnDeprecated(),
44
+ currentTimestamp: () => {
45
+ warnDeprecated();
46
+ return 0;
47
+ },
48
+ getExtras: () => {
49
+ warnDeprecated();
50
+ return {};
51
+ },
52
+ getPoints: () => {
53
+ warnDeprecated();
54
+ return {};
55
+ },
56
+ getPointExtras: () => {
57
+ warnDeprecated();
58
+ return {};
59
+ },
60
+ getTimespans: () => {
61
+ warnDeprecated();
62
+ return {};
63
+ },
64
+ hasTimespan: () => {
65
+ warnDeprecated();
66
+ return false;
67
+ },
68
+ isClosed: () => {
69
+ warnDeprecated();
70
+ return false;
71
+ },
72
+ logEverything: () => warnDeprecated(),
73
+ markPoint: () => warnDeprecated(),
74
+ removeExtra: () => {
75
+ warnDeprecated();
76
+ return undefined;
77
+ },
78
+ setExtra: () => warnDeprecated(),
79
+ startTimespan: () => warnDeprecated(),
80
+ stopTimespan: () => warnDeprecated(),
81
+ };
82
+
83
+ export default DeprecatedPerformanceLoggerStub;
@@ -92,6 +92,11 @@ export interface Spec {
92
92
  /* width: */ number,
93
93
  /* height: */ number,
94
94
  ];
95
+ +setIsJSResponder: (
96
+ node: Node | NativeElementReference,
97
+ isJSResponder: boolean,
98
+ blockNativeResponder: boolean,
99
+ ) => void;
95
100
  +unstable_DefaultEventPriority: number;
96
101
  +unstable_DiscreteEventPriority: number;
97
102
  +unstable_ContinuousEventPriority: number;
@@ -124,6 +129,7 @@ const CACHED_PROPERTIES = [
124
129
  'dispatchCommand',
125
130
  'compareDocumentPosition',
126
131
  'getBoundingClientRect',
132
+ 'setIsJSResponder',
127
133
  'unstable_DefaultEventPriority',
128
134
  'unstable_DiscreteEventPriority',
129
135
  'unstable_ContinuousEventPriority',
@@ -7,6 +7,8 @@
7
7
  * @format
8
8
  */
9
9
 
10
+ export type ExtraValue = number | string | boolean;
11
+ export type Extras = {[key: string]: ExtraValue};
10
12
  export type Timespan = {
11
13
  startTime: number;
12
14
  endTime?: number | undefined;
@@ -15,11 +17,12 @@ export type Timespan = {
15
17
  endExtras?: Extras | undefined;
16
18
  };
17
19
 
18
- // Extra values should be serializable primitives
19
- export type ExtraValue = number | string | boolean;
20
-
21
- export type Extras = {[key: string]: ExtraValue};
22
-
20
+ /**
21
+ * @deprecated The scoped performance logger argument passed to the
22
+ * `componentProviderInstrumentationHook` is no longer used by `react-native`
23
+ * itself and will be removed in a future release. The instance supplied today
24
+ * is a no-op stub.
25
+ */
23
26
  export interface IPerformanceLogger {
24
27
  addTimespan(
25
28
  key: string,
@@ -8,6 +8,8 @@
8
8
  * @format
9
9
  */
10
10
 
11
+ export type ExtraValue = number | string | boolean;
12
+ export type Extras = {[key: string]: ExtraValue};
11
13
  export type Timespan = {
12
14
  startTime: number,
13
15
  endTime?: number,
@@ -16,11 +18,12 @@ export type Timespan = {
16
18
  endExtras?: Extras,
17
19
  };
18
20
 
19
- // Extra values should be serializable primitives
20
- export type ExtraValue = number | string | boolean;
21
-
22
- export type Extras = {[key: string]: ExtraValue};
23
-
21
+ /**
22
+ * @deprecated The scoped performance logger argument passed to the
23
+ * `componentProviderInstrumentationHook` is no longer used by `react-native`
24
+ * itself and will be removed in a future release. The instance supplied today
25
+ * is a no-op stub.
26
+ */
24
27
  export interface IPerformanceLogger {
25
28
  addTimespan(
26
29
  key: string,
@@ -34,10 +37,10 @@ export interface IPerformanceLogger {
34
37
  clearCompleted(): void;
35
38
  close(): void;
36
39
  currentTimestamp(): number;
37
- getExtras(): Readonly<{[key: string]: ?ExtraValue, ...}>;
38
- getPoints(): Readonly<{[key: string]: ?number, ...}>;
39
- getPointExtras(): Readonly<{[key: string]: ?Extras, ...}>;
40
- getTimespans(): Readonly<{[key: string]: ?Timespan, ...}>;
40
+ getExtras(): Readonly<{[key: string]: ?ExtraValue}>;
41
+ getPoints(): Readonly<{[key: string]: ?number}>;
42
+ getPointExtras(): Readonly<{[key: string]: ?Extras}>;
43
+ getTimespans(): Readonly<{[key: string]: ?Timespan}>;
41
44
  hasTimespan(key: string): boolean;
42
45
  isClosed(): boolean;
43
46
  logEverything(): void;