react-native-tvos 0.83.1-1 → 0.84.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 (576) hide show
  1. package/Libraries/Animated/AnimatedEvent.js +2 -2
  2. package/Libraries/Animated/animations/Animation.js +1 -3
  3. package/Libraries/Animated/createAnimatedComponent.js +8 -5
  4. package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
  5. package/Libraries/Animated/nodes/AnimatedInterpolation.js +40 -4
  6. package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
  7. package/Libraries/Animated/nodes/AnimatedObject.js +16 -11
  8. package/Libraries/Animated/nodes/AnimatedProps.js +43 -12
  9. package/Libraries/Animated/nodes/AnimatedStyle.js +12 -12
  10. package/Libraries/Animated/nodes/AnimatedValue.js +6 -3
  11. package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
  12. package/Libraries/AppDelegate/RCTReactNativeFactory.h +3 -0
  13. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +33 -31
  14. package/Libraries/AppDelegate/RCTRootViewFactory.h +10 -4
  15. package/Libraries/AppDelegate/RCTRootViewFactory.mm +21 -5
  16. package/Libraries/BatchedBridge/MessageQueue.js +24 -22
  17. package/Libraries/Blob/RCTBlobPlugins.mm +14 -14
  18. package/Libraries/Blob/URL.js +34 -3
  19. package/Libraries/Blob/URLSearchParams.js +1 -0
  20. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +9 -1
  21. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +6 -1
  22. package/Libraries/Components/Button.js +2 -5
  23. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -1
  24. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +4 -4
  25. package/Libraries/Components/Keyboard/Keyboard.js +2 -2
  26. package/Libraries/Components/Pressable/Pressable.js +8 -8
  27. package/Libraries/Components/TextInput/TextInput.flow.js +13 -13
  28. package/Libraries/Components/TextInput/TextInput.js +33 -34
  29. package/Libraries/Components/Touchable/PooledClass.js +2 -2
  30. package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
  31. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  32. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +9 -9
  33. package/Libraries/Components/View/ViewPropTypes.js +16 -6
  34. package/Libraries/Core/Devtools/loadBundleFromServer.js +6 -3
  35. package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
  36. package/Libraries/Core/ExceptionsManager.js +3 -3
  37. package/Libraries/Core/RawEventEmitter.js +1 -1
  38. package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
  39. package/Libraries/Core/ReactNativeVersion.js +3 -3
  40. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  41. package/Libraries/Core/setUpErrorHandling.js +1 -1
  42. package/Libraries/EventEmitter/NativeEventEmitter.js +2 -2
  43. package/Libraries/Image/Image.android.js +2 -2
  44. package/Libraries/Image/Image.ios.js +2 -2
  45. package/Libraries/Image/ImageProps.js +1 -1
  46. package/Libraries/Image/ImageTypes.flow.js +2 -2
  47. package/Libraries/Image/RCTImagePlugins.h +1 -0
  48. package/Libraries/Image/RCTImagePlugins.mm +30 -17
  49. package/Libraries/Interaction/InteractionManager.js +3 -3
  50. package/Libraries/Interaction/PanResponder.js +1 -1
  51. package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
  52. package/Libraries/Linking/Linking.js +1 -1
  53. package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +10 -13
  54. package/Libraries/Lists/FlatList.js +2 -2
  55. package/Libraries/LogBox/Data/LogBoxData.js +31 -4
  56. package/Libraries/LogBox/Data/LogBoxLog.js +2 -2
  57. package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
  58. package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -5
  59. package/Libraries/LogBox/LogBox.js +7 -7
  60. package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +14 -14
  61. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
  62. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -0
  63. package/Libraries/NativeComponent/BaseViewConfig.android.js +12 -0
  64. package/Libraries/NativeComponent/StaticViewConfigValidator.js +4 -4
  65. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
  66. package/Libraries/Network/RCTInspectorNetworkReporter.mm +26 -3
  67. package/Libraries/Network/RCTNetworkPlugins.mm +22 -16
  68. package/Libraries/Network/RCTNetworking.android.js +3 -3
  69. package/Libraries/Network/RCTNetworking.ios.js +2 -2
  70. package/Libraries/Network/RCTNetworking.js.flow +2 -2
  71. package/Libraries/Pressability/Pressability.js +9 -9
  72. package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +10 -13
  73. package/Libraries/ReactNative/AppRegistry.flow.js +1 -1
  74. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  75. package/Libraries/ReactNative/FabricUIManager.js +1 -1
  76. package/Libraries/ReactNative/PaperUIManager.js +1 -1
  77. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  78. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +2 -2
  79. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +1 -1
  80. package/Libraries/ReactNative/RendererImplementation.js +1 -1
  81. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  82. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
  83. package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -3
  84. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
  85. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
  86. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +11 -4
  87. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +11 -4
  88. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +11 -4
  89. package/Libraries/Renderer/shims/ReactFabric.js +3 -1
  90. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
  91. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  92. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
  93. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  94. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
  95. package/Libraries/Settings/RCTSettingsManager.mm +1 -1
  96. package/Libraries/Settings/RCTSettingsPlugins.mm +10 -13
  97. package/Libraries/Settings/Settings.ios.js +1 -1
  98. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  99. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  100. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +4 -2
  101. package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
  102. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +99 -4
  103. package/Libraries/StyleSheet/StyleSheetTypes.js +6 -8
  104. package/Libraries/StyleSheet/processFilter.js +1 -1
  105. package/Libraries/Text/Text.js +46 -6
  106. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +3 -2
  107. package/Libraries/Text/TextNativeComponent.js +1 -1
  108. package/Libraries/Text/TextProps.js +7 -7
  109. package/Libraries/TypeSafety/RCTTypedModuleConstants.h +36 -1
  110. package/Libraries/Types/CodegenTypes.js +1 -1
  111. package/Libraries/Types/CoreEventTypes.js +31 -0
  112. package/Libraries/Types/ReactDevToolsTypes.js +2 -2
  113. package/Libraries/Utilities/Appearance.js +2 -2
  114. package/Libraries/Utilities/DevLoadingView.js +8 -1
  115. package/Libraries/Utilities/DevSettings.js +3 -3
  116. package/Libraries/Utilities/HMRClient.js +4 -3
  117. package/Libraries/Utilities/RCTLog.js +3 -3
  118. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  119. package/Libraries/Utilities/SceneTracker.js +1 -1
  120. package/Libraries/Utilities/codegenNativeCommands.js +1 -1
  121. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +3 -3
  122. package/Libraries/Utilities/logError.js +1 -1
  123. package/Libraries/Utilities/stringifySafe.js +7 -7
  124. package/Libraries/Utilities/useRefEffect.js +1 -1
  125. package/Libraries/Vibration/RCTVibrationPlugins.mm +10 -13
  126. package/Libraries/WebSocket/WebSocketInterceptor.js +3 -3
  127. package/Libraries/promiseRejectionTrackingOptions.js +8 -8
  128. package/Libraries/vendor/core/ErrorUtils.js +10 -10
  129. package/Libraries/vendor/emitter/EventEmitter.js +6 -6
  130. package/README.md +56 -18
  131. package/React/Base/RCTAssert.m +2 -2
  132. package/React/Base/RCTBridge.h +0 -4
  133. package/React/Base/RCTBridge.mm +1 -12
  134. package/React/Base/RCTBundleManager.h +59 -7
  135. package/React/Base/RCTBundleManager.m +112 -1
  136. package/React/Base/RCTBundleURLProvider.h +24 -0
  137. package/React/Base/RCTBundleURLProvider.mm +49 -4
  138. package/React/Base/RCTConvert.mm +2 -0
  139. package/React/Base/RCTModuleData.mm +2 -2
  140. package/React/Base/RCTUtils.h +4 -0
  141. package/React/Base/RCTUtils.mm +60 -3
  142. package/React/Base/RCTVersion.m +3 -3
  143. package/React/CoreModules/CoreModulesPlugins.mm +97 -35
  144. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +1 -1
  145. package/React/CoreModules/RCTAccessibilityManager.mm +18 -1
  146. package/React/CoreModules/RCTAppState.mm +1 -1
  147. package/React/CoreModules/RCTDevLoadingView.mm +116 -36
  148. package/React/CoreModules/RCTDevSettings.h +36 -1
  149. package/React/CoreModules/RCTDevSettings.mm +44 -8
  150. package/React/CoreModules/RCTExceptionsManager.mm +5 -2
  151. package/React/CoreModules/RCTPlatform.mm +3 -2
  152. package/React/CoreModules/RCTStatusBarManager.mm +1 -1
  153. package/React/CxxBridge/RCTCxxBridge.mm +1 -2
  154. package/React/CxxModule/RCTCxxMethod.mm +1 -1
  155. package/React/CxxModule/RCTCxxUtils.mm +2 -12
  156. package/React/DevSupport/RCTDevLoadingViewProtocol.h +4 -1
  157. package/React/DevSupport/RCTPackagerConnection.h +4 -2
  158. package/React/DevSupport/RCTPackagerConnection.mm +30 -33
  159. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +9 -2
  160. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +62 -17
  161. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +529 -494
  162. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +1 -0
  163. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +14 -0
  164. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +11 -0
  165. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +6 -0
  166. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +2 -0
  167. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +39 -2
  168. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +5 -7
  169. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +5 -7
  170. package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -1
  171. package/React/Fabric/Surface/RCTFabricSurface.mm +1 -1
  172. package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +6 -2
  173. package/React/Modules/RCTEventEmitter.m +1 -0
  174. package/React/Views/RCTModalHostView.h +2 -0
  175. package/React/Views/RCTTVView.m +2 -0
  176. package/ReactAndroid/api/ReactAndroid.api +14 -73
  177. package/ReactAndroid/build.gradle.kts +2 -0
  178. package/ReactAndroid/gradle.properties +1 -1
  179. package/ReactAndroid/hermes-engine/build.gradle.kts +97 -29
  180. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +1 -4
  181. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +3 -0
  182. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +10 -13
  183. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +1 -119
  184. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +0 -10
  185. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +1 -1
  186. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +4 -29
  187. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +43 -2
  188. package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.kt +53 -4
  189. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +0 -18
  190. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +6 -96
  191. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +17 -2
  192. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +2 -2
  193. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +1 -33
  194. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +6 -6
  195. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +6 -6
  196. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -12
  197. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +4 -5
  198. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +11 -10
  199. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
  200. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +58 -13
  201. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +10 -60
  202. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +7 -7
  203. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +1 -4
  204. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +17 -0
  205. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +144 -0
  206. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
  207. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingState.kt +17 -0
  208. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingStateListener.kt +15 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{interfaces → inspector}/TracingStateProvider.kt +1 -1
  210. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +6 -1
  211. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +2 -2
  212. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +2 -2
  213. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +1 -1
  214. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +31 -6
  215. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +7 -6
  216. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +1 -1
  217. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +1 -1
  218. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -1
  219. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +63 -45
  220. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +106 -76
  221. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +22 -16
  222. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +23 -17
  223. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +117 -84
  224. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -1
  225. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
  226. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +22 -16
  227. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +5 -43
  228. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +0 -3
  229. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +36 -1
  230. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +3 -27
  231. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +7 -2
  232. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +23 -0
  233. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +1 -1
  234. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +3 -3
  235. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +15 -8
  236. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +0 -9
  237. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +46 -12
  238. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +3 -3
  239. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +11 -17
  240. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +52 -0
  241. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +92 -3
  242. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +62 -8
  243. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSKeyDispatcher.kt +65 -0
  244. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +19 -2
  245. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +1 -2
  246. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +5 -36
  247. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +9 -91
  248. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +1 -1
  249. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +47 -0
  250. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -2
  251. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +4 -23
  252. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +1 -7
  253. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -11
  254. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -47
  255. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -16
  256. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +1 -1
  257. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +3 -36
  258. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyDownEvent.kt +23 -0
  259. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyEvent.kt +156 -0
  260. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyUpEvent.kt +24 -0
  261. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +29 -4
  262. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +12 -9
  263. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +1 -1
  264. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +36 -3
  265. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +21 -11
  266. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +7 -0
  267. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +31 -15
  268. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +127 -32
  269. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +11 -1
  270. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +3 -11
  271. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +3 -12
  272. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
  273. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +98 -3
  274. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +62 -26
  275. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +145 -103
  276. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +31 -22
  277. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +0 -4
  278. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -3
  279. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +5 -23
  280. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -7
  281. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +0 -24
  282. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  283. package/ReactAndroid/src/main/jni/react/jni/JSLoader.h +2 -1
  284. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -1
  285. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +1 -29
  286. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +1 -2
  287. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -4
  288. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +0 -4
  289. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -4
  290. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +145 -17
  291. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +193 -19
  292. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -1
  293. package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.cpp +1 -1
  294. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +62 -63
  295. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +5 -7
  296. package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +1 -0
  297. package/ReactAndroid/src/main/res/devsupport/drawable/ic_perf_issue.xml +10 -0
  298. package/ReactAndroid/src/main/res/devsupport/layout/dev_loading_view.xml +41 -15
  299. package/ReactAndroid/src/main/res/devsupport/layout/fps_view.xml +1 -1
  300. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +1 -0
  301. package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +16 -0
  302. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.h +2 -0
  303. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +38 -5
  304. package/ReactCommon/cmake-utils/react-native-flags.cmake +3 -0
  305. package/ReactCommon/cxxreact/JSBigString.h +14 -5
  306. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +4 -5
  307. package/ReactCommon/cxxreact/ReactMarker.cpp +0 -1
  308. package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
  309. package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +1 -1
  310. package/ReactCommon/hermes/React-hermes.podspec +1 -0
  311. package/ReactCommon/hermes/executor/CMakeLists.txt +0 -4
  312. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -0
  313. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +0 -4
  314. package/ReactCommon/jsi/jsi/jsi.cpp +6 -1
  315. package/ReactCommon/jsi/jsi/jsi.h +73 -0
  316. package/ReactCommon/jsi/jsi/test/testlib.cpp +2 -2
  317. package/ReactCommon/jsiexecutor/CMakeLists.txt +3 -1
  318. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -0
  319. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +2 -43
  320. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +3 -8
  321. package/ReactCommon/jsinspector-modern/ConsoleTask.cpp +27 -0
  322. package/ReactCommon/jsinspector-modern/ConsoleTask.h +38 -0
  323. package/ReactCommon/jsinspector-modern/ConsoleTaskContext.cpp +46 -0
  324. package/ReactCommon/jsinspector-modern/ConsoleTaskContext.h +102 -0
  325. package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.cpp +55 -0
  326. package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.h +48 -0
  327. package/ReactCommon/jsinspector-modern/HostAgent.cpp +9 -10
  328. package/ReactCommon/jsinspector-modern/HostAgent.h +2 -2
  329. package/ReactCommon/jsinspector-modern/HostTarget.cpp +7 -6
  330. package/ReactCommon/jsinspector-modern/HostTarget.h +73 -16
  331. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +40 -8
  332. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +42 -5
  333. package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +54 -21
  334. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +2 -11
  335. package/ReactCommon/jsinspector-modern/InstanceTarget.h +2 -2
  336. package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +9 -1
  337. package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +4 -1
  338. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +3 -2
  339. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
  340. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +12 -0
  341. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -13
  342. package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +106 -1
  343. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +30 -18
  344. package/ReactCommon/jsinspector-modern/TracingAgent.h +5 -4
  345. package/ReactCommon/jsinspector-modern/tests/ConsoleCreateTaskTest.cpp +131 -0
  346. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +53 -0
  347. package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +20 -0
  348. package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +25 -55
  349. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -0
  350. package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +116 -0
  351. package/ReactCommon/jsinspector-modern/tests/TracingTest.h +95 -0
  352. package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +60 -0
  353. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +43 -0
  354. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +144 -0
  355. package/ReactCommon/jsinspector-modern/tracing/{TraceRecordingStateSerializer.h → HostTracingProfileSerializer.h} +16 -8
  356. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +67 -16
  357. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +21 -2
  358. package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +5 -0
  359. package/ReactCommon/jsinspector-modern/tracing/TimeWindowedBuffer.h +158 -0
  360. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +2 -1
  361. package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +104 -0
  362. package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +59 -0
  363. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +2 -1
  364. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +18 -7
  365. package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +139 -0
  366. package/ReactCommon/jsinspector-modern/tracing/tests/TimeWindowedBufferTest.cpp +352 -0
  367. package/ReactCommon/jsitooling/React-jsitooling.podspec +4 -0
  368. package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.cpp +54 -0
  369. package/{ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h → ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.h} +4 -6
  370. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +43 -31
  371. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +55 -40
  372. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +234 -180
  373. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +24 -18
  374. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +43 -31
  375. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +91 -64
  376. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +5 -1
  377. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -4
  378. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +12 -9
  379. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +7 -2
  380. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +30 -10
  381. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +17 -6
  382. package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +0 -1
  383. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -4
  384. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +0 -4
  385. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +43 -60
  386. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +11 -36
  387. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +53 -38
  388. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +22 -16
  389. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -0
  390. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +24 -3
  391. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +76 -13
  392. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +74 -64
  393. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +17 -13
  394. package/ReactCommon/react/networking/NetworkReporter.cpp +26 -22
  395. package/ReactCommon/react/networking/React-networking.podspec +0 -1
  396. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.cpp +4 -2
  397. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  398. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +10 -2
  399. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  400. package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +104 -78
  401. package/ReactCommon/react/renderer/animated/AnimatedModule.h +10 -2
  402. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +174 -75
  403. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +19 -1
  404. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +68 -46
  405. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +1 -0
  406. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +1 -1
  407. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
  408. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +103 -4
  409. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +9 -0
  410. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +5 -1
  411. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +9 -0
  412. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
  413. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
  414. package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
  415. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +59 -0
  416. package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +2 -1
  417. package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +715 -0
  418. package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +388 -1
  419. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +191 -2
  420. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +100 -0
  421. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +298 -0
  422. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsSerializer.h +17 -0
  423. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +90 -94
  424. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +23 -5
  425. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +75 -0
  426. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +32 -0
  427. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +2 -2
  428. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +3 -0
  429. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +2 -2
  430. package/ReactCommon/react/renderer/components/image/ImageProps.h +2 -2
  431. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -2
  432. package/ReactCommon/react/renderer/components/image/conversions.h +5 -0
  433. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +2 -1
  434. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +5 -1
  435. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +21 -1
  436. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +14 -0
  437. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +10 -0
  438. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +6 -1
  439. package/ReactCommon/react/renderer/core/DynamicPointerEvent.cpp +30 -0
  440. package/ReactCommon/react/renderer/core/DynamicPointerEvent.h +29 -0
  441. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -1
  442. package/ReactCommon/react/renderer/core/EventEmitter.cpp +11 -14
  443. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +3 -3
  444. package/ReactCommon/react/renderer/core/Props.cpp +23 -8
  445. package/ReactCommon/react/renderer/core/Props.h +6 -4
  446. package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -10
  447. package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +32 -0
  448. package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +7 -0
  449. package/ReactCommon/react/renderer/debug/CMakeLists.txt +7 -0
  450. package/ReactCommon/react/renderer/debug/flags.h +3 -2
  451. package/ReactCommon/react/renderer/graphics/BlendMode.h +2 -0
  452. package/ReactCommon/react/renderer/graphics/Filter.h +2 -0
  453. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +3 -0
  454. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +23 -12
  455. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +8 -3
  456. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +16 -4
  457. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +9 -4
  458. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +8 -4
  459. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
  460. package/ReactCommon/react/renderer/imagemanager/primitives.h +15 -6
  461. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +0 -11
  462. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
  463. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +0 -20
  464. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +3 -3
  465. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -3
  466. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +6 -0
  467. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
  468. package/ReactCommon/react/runtime/CMakeLists.txt +0 -4
  469. package/ReactCommon/react/runtime/PlatformTimerRegistry.h +2 -0
  470. package/ReactCommon/react/runtime/ReactInstance.cpp +21 -14
  471. package/ReactCommon/react/runtime/ReactInstance.h +5 -1
  472. package/ReactCommon/react/runtime/TimerManager.cpp +11 -53
  473. package/ReactCommon/react/runtime/TimerManager.h +7 -12
  474. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +0 -4
  475. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +3 -2
  476. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +10 -6
  477. package/ReactCommon/yoga/yoga/algorithm/FlexDirection.h +6 -6
  478. package/ReactCommon/yoga/yoga/algorithm/SizingMode.h +4 -4
  479. package/ReactCommon/yoga/yoga/style/Style.h +8 -8
  480. package/ReactCommon/yoga/yoga/style/StyleLength.h +7 -0
  481. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -0
  482. package/flow/HermesInternalType.js +6 -6
  483. package/flow/bom.js.flow +35 -28
  484. package/flow/cssom.js.flow +3 -3
  485. package/flow/dom.js.flow +34 -33
  486. package/index.js +3 -0
  487. package/index.js.flow +8 -0
  488. package/jest/mock.js +2 -2
  489. package/jest/mockComponent.js +1 -1
  490. package/jest/setup.js +1 -1
  491. package/package.json +11 -11
  492. package/react-native.config.js +0 -17
  493. package/scripts/cocoapods/new_architecture.rb +7 -1
  494. package/scripts/cocoapods/spm.rb +28 -10
  495. package/scripts/cocoapods/utils.rb +4 -4
  496. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +5 -5
  497. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +7 -6
  498. package/scripts/ios-configure-glog.sh +24 -1
  499. package/scripts/react_native_pods.rb +13 -0
  500. package/sdks/.hermesv1version +1 -1
  501. package/sdks/.hermesversion +1 -1
  502. package/sdks/hermes-engine/hermes-engine.podspec +53 -36
  503. package/sdks/hermes-engine/hermes-utils.rb +8 -15
  504. package/sdks/hermes-engine/version.properties +2 -2
  505. package/src/private/animated/NativeAnimatedHelper.js +130 -125
  506. package/src/private/animated/NativeAnimatedValidation.js +7 -4
  507. package/src/private/animated/createAnimatedPropsHook.js +13 -5
  508. package/src/private/animated/createAnimatedPropsMemoHook.js +10 -10
  509. package/src/private/components/virtualview/VirtualView.js +16 -9
  510. package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
  511. package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
  512. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  513. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +6 -25
  514. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -27
  515. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +3 -2
  516. package/src/private/featureflags/ReactNativeFeatureFlags.js +63 -42
  517. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
  518. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +12 -9
  519. package/src/private/renderer/errorhandling/ErrorHandlers.js +7 -4
  520. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
  521. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
  522. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -0
  523. package/src/private/webapis/dom/events/CustomEvent.js +3 -3
  524. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  525. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  526. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +29 -29
  527. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +1 -1
  528. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +2 -0
  529. package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
  530. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +4 -1
  531. package/src/private/webapis/geometry/DOMRectReadOnly.js +1 -1
  532. package/src/private/webapis/html/events/MessageEvent.js +3 -3
  533. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +3 -3
  534. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +53 -5
  535. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +2 -2
  536. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +4 -4
  537. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
  538. package/src/private/webapis/mutationobserver/MutationObserver.js +1 -1
  539. package/src/private/webapis/mutationobserver/MutationRecord.js +1 -1
  540. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +4 -4
  541. package/src/private/webapis/performance/Performance.js +1 -1
  542. package/src/private/webapis/performance/UserTiming.js +1 -1
  543. package/src/private/webapis/performance/specs/NativePerformance.js +3 -3
  544. package/src/private/webapis/structuredClone/structuredClone.js +3 -3
  545. package/src/types/globals.d.ts +30 -1
  546. package/third-party-podspecs/RCT-Folly.podspec +1 -0
  547. package/third-party-podspecs/glog.podspec +1 -0
  548. package/React/CxxModule/RCTCxxModule.h +0 -29
  549. package/React/CxxModule/RCTCxxModule.mm +0 -87
  550. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.kt +0 -146
  551. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +0 -45
  552. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +0 -25
  553. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +0 -61
  554. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +0 -36
  555. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +0 -21
  556. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +0 -54
  557. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +0 -78
  558. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +0 -105
  559. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingState.kt +0 -19
  560. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +0 -157
  561. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +0 -32
  562. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +0 -30
  563. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +0 -87
  564. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +0 -23
  565. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +0 -37
  566. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +0 -20
  567. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +0 -175
  568. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +0 -75
  569. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.cpp +0 -68
  570. package/ReactCommon/jsinspector-modern/tracing/TracingState.h +0 -24
  571. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +0 -212
  572. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +0 -40
  573. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +0 -628
  574. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +0 -66
  575. package/tvosCommands.js +0 -51
  576. /package/ReactCommon/jsi/jsi/{hermes.h → hermes-interfaces.h} +0 -0
@@ -343,8 +343,8 @@ export type DropShadowValue = {
343
343
  export type BoxShadowValue = {
344
344
  offsetX: number | string;
345
345
  offsetY: number | string;
346
- color?: string | undefined;
347
- blurRadius?: ColorValue | number | undefined;
346
+ color?: ColorValue | undefined;
347
+ blurRadius?: string | number | undefined;
348
348
  spreadDistance?: number | string | undefined;
349
349
  inset?: boolean | undefined;
350
350
  };
@@ -367,7 +367,7 @@ export type BlendMode =
367
367
  | 'color'
368
368
  | 'luminosity';
369
369
 
370
- export type GradientValue = {
370
+ export type LinearGradientValue = {
371
371
  type: 'linear-gradient';
372
372
  // Angle or direction enums
373
373
  direction?: string | undefined;
@@ -377,6 +377,89 @@ export type GradientValue = {
377
377
  }>;
378
378
  };
379
379
 
380
+ export type GradientValue = LinearGradientValue;
381
+
382
+ type RadialExtent =
383
+ | 'closest-corner'
384
+ | 'closest-side'
385
+ | 'farthest-corner'
386
+ | 'farthest-side';
387
+ export type RadialGradientPosition =
388
+ | {
389
+ top: number | string;
390
+ left: number | string;
391
+ }
392
+ | {
393
+ top: number | string;
394
+ right: number | string;
395
+ }
396
+ | {
397
+ bottom: number | string;
398
+ left: number | string;
399
+ }
400
+ | {
401
+ bottom: number | string;
402
+ right: number | string;
403
+ };
404
+
405
+ export type RadialGradientShape = 'circle' | 'ellipse';
406
+ export type RadialGradientSize =
407
+ | RadialExtent
408
+ | {
409
+ x: string | number;
410
+ y: string | number;
411
+ };
412
+
413
+ type RadialGradientValue = {
414
+ type: 'radial-gradient';
415
+ shape: RadialGradientShape;
416
+ size: RadialGradientSize;
417
+ position: RadialGradientPosition;
418
+ colorStops: ReadonlyArray<{
419
+ color: ColorValue | null;
420
+ positions?: ReadonlyArray<string> | undefined;
421
+ }>;
422
+ };
423
+
424
+ export type BackgroundImageValue = LinearGradientValue | RadialGradientValue;
425
+
426
+ export type BackgroundSizeValue =
427
+ | {
428
+ x: string | number;
429
+ y: string | number;
430
+ }
431
+ | 'cover'
432
+ | 'contain';
433
+
434
+ export type BackgroundRepeatKeyword =
435
+ | 'repeat'
436
+ | 'space'
437
+ | 'round'
438
+ | 'no-repeat';
439
+
440
+ export type BackgroundPositionValue =
441
+ | {
442
+ top: number | string;
443
+ left: number | string;
444
+ }
445
+ | {
446
+ top: number | string;
447
+ right: number | string;
448
+ }
449
+ | {
450
+ bottom: number | string;
451
+ left: number | string;
452
+ }
453
+ | {
454
+ bottom: number | string;
455
+ right: number | string;
456
+ };
457
+
458
+ export type BackgroundRepeatValue = {
459
+ x: BackgroundRepeatKeyword;
460
+ y: BackgroundRepeatKeyword;
461
+ };
462
+
380
463
  /**
381
464
  * @see https://reactnative.dev/docs/view#style
382
465
  */
@@ -437,7 +520,19 @@ export interface ViewStyle extends FlexStyle, ShadowStyleIOS, TransformsStyle {
437
520
 
438
521
  mixBlendMode?: BlendMode | undefined;
439
522
  experimental_backgroundImage?:
440
- | ReadonlyArray<GradientValue>
523
+ | ReadonlyArray<BackgroundImageValue>
524
+ | string
525
+ | undefined;
526
+ experimental_backgroundSize?:
527
+ | ReadonlyArray<BackgroundSizeValue>
528
+ | string
529
+ | undefined;
530
+ experimental_backgroundPosition?:
531
+ | ReadonlyArray<BackgroundPositionValue>
532
+ | string
533
+ | undefined;
534
+ experimental_backgroundRepeat?:
535
+ | ReadonlyArray<BackgroundRepeatValue>
441
536
  | string
442
537
  | undefined;
443
538
  }
@@ -1105,22 +1105,20 @@ export type ____Styles_Internal = {
1105
1105
  // ____FlattenStyleProp_Helper should be considered internal.
1106
1106
  type FlattenDepthLimiter = [void, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
1107
1107
  type ____FlattenStyleProp_Helper<
1108
- +TStyleProp: StyleProp<mixed>,
1108
+ +TStyleProp: StyleProp<unknown>,
1109
1109
  Depth: $Values<FlattenDepthLimiter> = 9,
1110
1110
  > = Depth extends 0
1111
1111
  ? empty
1112
1112
  : TStyleProp extends null | void | false | ''
1113
- ? empty
1114
- : // When TStyleProp is an array, recurse with decremented Depth
1115
- TStyleProp extends $ReadOnlyArray<infer V>
1113
+ ? empty // When TStyleProp is an array, recurse with decremented Depth
1114
+ : TStyleProp extends $ReadOnlyArray<infer V>
1116
1115
  ? ____FlattenStyleProp_Helper<
1117
1116
  V,
1118
1117
  Depth extends number ? FlattenDepthLimiter[Depth] : 0,
1119
1118
  >
1120
1119
  : TStyleProp;
1121
1120
 
1122
- export type ____FlattenStyleProp_Internal<+TStyleProp: StyleProp<mixed>> =
1123
- ____FlattenStyleProp_Helper<TStyleProp> extends empty
1124
- ? // $FlowFixMe[unclear-type]
1125
- any
1121
+ export type ____FlattenStyleProp_Internal<+TStyleProp: StyleProp<unknown>> =
1122
+ ____FlattenStyleProp_Helper<TStyleProp> extends empty // $FlowFixMe[unclear-type]
1123
+ ? any
1126
1124
  : ____FlattenStyleProp_Helper<TStyleProp>;
@@ -115,7 +115,7 @@ export default function processFilter(
115
115
  return result;
116
116
  }
117
117
 
118
- function _getFilterAmount(filterName: string, filterArgs: mixed): ?number {
118
+ function _getFilterAmount(filterName: string, filterArgs: unknown): ?number {
119
119
  let filterArgAsNumber: number;
120
120
  let unit: string;
121
121
  if (typeof filterArgs === 'string') {
@@ -45,6 +45,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
45
45
  ref: forwardedRef,
46
46
  accessible,
47
47
  accessibilityLabel,
48
+ accessibilityRole,
48
49
  accessibilityState,
49
50
  allowFontScaling,
50
51
  'aria-busy': ariaBusy,
@@ -71,6 +72,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
71
72
  onResponderTerminationRequest,
72
73
  onStartShouldSetResponder,
73
74
  pressRetentionOffset,
75
+ role,
74
76
  selectable,
75
77
  selectionColor,
76
78
  suppressHighlighting,
@@ -149,6 +151,17 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
149
151
  onStartShouldSetResponder != null) &&
150
152
  _disabled !== true;
151
153
 
154
+ const shouldUseLinkRole =
155
+ ReactNativeFeatureFlags.shouldUseLinkRoleForPressableText() &&
156
+ isPressable &&
157
+ accessibilityRole == null &&
158
+ role == null;
159
+
160
+ const _accessibilityRole =
161
+ accessibilityRole ?? (shouldUseLinkRole ? 'link' : undefined);
162
+
163
+ const _role = shouldUseLinkRole ? undefined : role;
164
+
152
165
  // TODO: Move this processing to the view configuration.
153
166
  const _selectionColor =
154
167
  selectionColor != null ? processColor(selectionColor) : undefined;
@@ -206,6 +219,9 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
206
219
  if (_accessibilityLabel !== undefined) {
207
220
  processedProps.accessibilityLabel = _accessibilityLabel;
208
221
  }
222
+ if (_accessibilityRole !== undefined) {
223
+ processedProps.accessibilityRole = _accessibilityRole;
224
+ }
209
225
  if (_accessibilityState !== undefined) {
210
226
  processedProps.accessibilityState = _accessibilityState;
211
227
  }
@@ -224,6 +240,9 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
224
240
  if (_selectionColor !== undefined) {
225
241
  processedProps.selectionColor = _selectionColor;
226
242
  }
243
+ if (_role !== undefined) {
244
+ processedProps.role = _role;
245
+ }
227
246
 
228
247
  let textPressabilityProps: ?TextPressabilityProps;
229
248
  if (isPressable) {
@@ -317,6 +336,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
317
336
  accessibilityElementsHidden,
318
337
  importantForAccessibility,
319
338
  accessibilityLabel,
339
+ accessibilityRole,
320
340
  accessibilityState,
321
341
  allowFontScaling,
322
342
  'aria-busy': ariaBusy,
@@ -343,6 +363,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
343
363
  onResponderTerminationRequest,
344
364
  onStartShouldSetResponder,
345
365
  pressRetentionOffset,
366
+ role,
346
367
  selectable,
347
368
  selectionColor,
348
369
  suppressHighlighting,
@@ -398,6 +419,17 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
398
419
  onStartShouldSetResponder != null) &&
399
420
  _disabled !== true;
400
421
 
422
+ const shouldUseLinkRole =
423
+ ReactNativeFeatureFlags.shouldUseLinkRoleForPressableText() &&
424
+ isPressable &&
425
+ accessibilityRole == null &&
426
+ role == null;
427
+
428
+ const _accessibilityRole =
429
+ accessibilityRole ?? (shouldUseLinkRole ? 'link' : undefined);
430
+
431
+ const _role = shouldUseLinkRole ? undefined : role;
432
+
401
433
  // TODO: Move this processing to the view configuration.
402
434
  const _selectionColor =
403
435
  selectionColor != null ? processColor(selectionColor) : undefined;
@@ -462,6 +494,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
462
494
  ...restProps,
463
495
  accessibilityElementsHidden: _accessibilityElementsHidden,
464
496
  accessibilityLabel: _accessibilityLabel,
497
+ accessibilityRole: _accessibilityRole,
465
498
  accessibilityState: _accessibilityState,
466
499
  importantForAccessibility: _importantForAccessibility,
467
500
  nativeID: _nativeID,
@@ -470,6 +503,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
470
503
  selectionColor: _selectionColor,
471
504
  style: _style,
472
505
  disabled: disabled,
506
+ role: _role,
473
507
  children,
474
508
  }}
475
509
  textPressabilityProps={{
@@ -495,6 +529,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
495
529
  {...restProps}
496
530
  accessibilityElementsHidden={_accessibilityElementsHidden}
497
531
  accessibilityLabel={_accessibilityLabel}
532
+ accessibilityRole={_accessibilityRole}
498
533
  accessibilityState={_accessibilityState}
499
534
  importantForAccessibility={_importantForAccessibility}
500
535
  nativeID={_nativeID}
@@ -503,7 +538,8 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
503
538
  selectable={_selectable}
504
539
  selectionColor={_selectionColor}
505
540
  style={_style}
506
- disabled={disabled}>
541
+ disabled={disabled}
542
+ role={_role}>
507
543
  {children}
508
544
  </NativeVirtualText>
509
545
  );
@@ -538,6 +574,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
538
574
  ...restProps,
539
575
  accessibilityElementsHidden: _accessibilityElementsHidden,
540
576
  accessibilityLabel: _accessibilityLabel,
577
+ accessibilityRole: _accessibilityRole,
541
578
  accessibilityState: _accessibilityState,
542
579
  accessible: _accessible,
543
580
  allowFontScaling: allowFontScaling !== false,
@@ -549,6 +586,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
549
586
  selectable: _selectable,
550
587
  selectionColor: _selectionColor,
551
588
  style: _style,
589
+ role: _role,
552
590
  children,
553
591
  }}
554
592
  textPressabilityProps={{
@@ -573,6 +611,7 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
573
611
  {...restProps}
574
612
  accessibilityElementsHidden={_accessibilityElementsHidden}
575
613
  accessibilityLabel={_accessibilityLabel}
614
+ accessibilityRole={_accessibilityRole}
576
615
  accessibilityState={_accessibilityState}
577
616
  accessible={_accessible}
578
617
  allowFontScaling={allowFontScaling !== false}
@@ -584,7 +623,8 @@ if (ReactNativeFeatureFlags.reduceDefaultPropsInText()) {
584
623
  ref={forwardedRef}
585
624
  selectable={_selectable}
586
625
  selectionColor={_selectionColor}
587
- style={_style}>
626
+ style={_style}
627
+ role={_role}>
588
628
  {children}
589
629
  </NativeText>
590
630
  );
@@ -628,10 +668,10 @@ const TextImpl: component(
628
668
  TextImpl.displayName = 'Text';
629
669
 
630
670
  type TextPressabilityProps = $ReadOnly<{
631
- onLongPress?: ?(event: GestureResponderEvent) => mixed,
632
- onPress?: ?(event: GestureResponderEvent) => mixed,
633
- onPressIn?: ?(event: GestureResponderEvent) => mixed,
634
- onPressOut?: ?(event: GestureResponderEvent) => mixed,
671
+ onLongPress?: ?(event: GestureResponderEvent) => unknown,
672
+ onPress?: ?(event: GestureResponderEvent) => unknown,
673
+ onPressIn?: ?(event: GestureResponderEvent) => unknown,
674
+ onPressOut?: ?(event: GestureResponderEvent) => unknown,
635
675
  onResponderGrant?: ?(event: GestureResponderEvent) => void,
636
676
  onResponderMove?: ?(event: GestureResponderEvent) => void,
637
677
  onResponderRelease?: ?(event: GestureResponderEvent) => void,
@@ -715,8 +715,6 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithFrame : (CGRect)frame)
715
715
  - (NSString *)returnKeyTypeToString:(UIReturnKeyType)returnKeyType
716
716
  {
717
717
  switch (returnKeyType) {
718
- case UIReturnKeyDefault:
719
- return @"Default";
720
718
  case UIReturnKeyGo:
721
719
  return @"Go";
722
720
  case UIReturnKeyNext:
@@ -735,6 +733,9 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithFrame : (CGRect)frame)
735
733
  return @"Join";
736
734
  case UIReturnKeyEmergencyCall:
737
735
  return @"Emergency Call";
736
+ case UIReturnKeyDefault:
737
+ case UIReturnKeyContinue:
738
+ case UIReturnKeyDone:
738
739
  default:
739
740
  return @"Done";
740
741
  }
@@ -21,7 +21,7 @@ export type NativeTextProps = $ReadOnly<{
21
21
  ...TextProps,
22
22
  isHighlighted?: ?boolean,
23
23
  selectionColor?: ?ProcessedColorValue,
24
- onClick?: ?(event: GestureResponderEvent) => mixed,
24
+ onClick?: ?(event: GestureResponderEvent) => unknown,
25
25
  // This is only needed for platforms that optimize text hit testing, e.g.,
26
26
  // react-native-windows. It can be used to only hit test virtual text spans
27
27
  // that have pressable events attached to them.
@@ -122,7 +122,7 @@ export type TextPropsAndroid = {
122
122
  };
123
123
 
124
124
  type TextBaseProps = $ReadOnly<{
125
- onAccessibilityAction?: ?(event: AccessibilityActionEvent) => mixed,
125
+ onAccessibilityAction?: ?(event: AccessibilityActionEvent) => unknown,
126
126
 
127
127
  /**
128
128
  * Whether fonts should scale to respect Text Size accessibility settings.
@@ -204,7 +204,7 @@ type TextBaseProps = $ReadOnly<{
204
204
  *
205
205
  * See https://reactnative.dev/docs/text#onlayout
206
206
  */
207
- onLayout?: ?(event: LayoutChangeEvent) => mixed,
207
+ onLayout?: ?(event: LayoutChangeEvent) => unknown,
208
208
 
209
209
  /**
210
210
  * This function is called on long press.
@@ -212,7 +212,7 @@ type TextBaseProps = $ReadOnly<{
212
212
  *
213
213
  * See https://reactnative.dev/docs/text#onlongpress
214
214
  */
215
- onLongPress?: ?(event: GestureResponderEvent) => mixed,
215
+ onLongPress?: ?(event: GestureResponderEvent) => unknown,
216
216
 
217
217
  /**
218
218
  * This function is called on press.
@@ -220,9 +220,9 @@ type TextBaseProps = $ReadOnly<{
220
220
  *
221
221
  * See https://reactnative.dev/docs/text#onpress
222
222
  */
223
- onPress?: ?(event: GestureResponderEvent) => mixed,
224
- onPressIn?: ?(event: GestureResponderEvent) => mixed,
225
- onPressOut?: ?(event: GestureResponderEvent) => mixed,
223
+ onPress?: ?(event: GestureResponderEvent) => unknown,
224
+ onPressIn?: ?(event: GestureResponderEvent) => unknown,
225
+ onPressOut?: ?(event: GestureResponderEvent) => unknown,
226
226
  onResponderGrant?: ?(event: GestureResponderEvent) => void,
227
227
  onResponderMove?: ?(event: GestureResponderEvent) => void,
228
228
  onResponderRelease?: ?(event: GestureResponderEvent) => void,
@@ -230,7 +230,7 @@ type TextBaseProps = $ReadOnly<{
230
230
  onResponderTerminationRequest?: ?() => boolean,
231
231
  onStartShouldSetResponder?: ?() => boolean,
232
232
  onMoveShouldSetResponder?: ?() => boolean,
233
- onTextLayout?: ?(event: TextLayoutEvent) => mixed,
233
+ onTextLayout?: ?(event: TextLayoutEvent) => unknown,
234
234
 
235
235
  /**
236
236
  * Defines how far your touch may move off of the button, before
@@ -5,6 +5,7 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ #include <type_traits>
8
9
  #include <utility>
9
10
 
10
11
  #import <Foundation/Foundation.h>
@@ -32,10 +33,44 @@
32
33
 
33
34
  namespace facebook::react {
34
35
 
36
+ namespace detail {
37
+
38
+ // Helper to detect if T is a Builder type.
39
+ // Builder types have: nested Input struct and buildUnsafeRawValue() method.
40
+ template <typename T, typename = void>
41
+ struct IsBuilder : std::false_type {};
42
+
43
+ template <typename T>
44
+ struct IsBuilder<T, std::void_t<typename T::Input, decltype(std::declval<T>().buildUnsafeRawValue())>>
45
+ : std::true_type {};
46
+
47
+ // Resolve Builder to its parent Constants type.
48
+ // For backwards compatibility: if T is a Builder type (e.g., JS::X::Constants::Builder),
49
+ // we resolve to the parent Constants type (JS::X::Constants).
50
+ //
51
+ // This requires Builder to have a type alias `using ResultT = Constants;` defined by codegen.
52
+ template <typename T, bool = IsBuilder<T>::value>
53
+ struct ResolveConstantsType {
54
+ // Not a Builder, use T as-is
55
+ using type = T;
56
+ };
57
+
58
+ // Specialization for Builder types that have ResultT defined
59
+ template <typename T>
60
+ struct ResolveConstantsType<T, true> {
61
+ // Use T::ResultT which points to the parent Constants type (added by codegen)
62
+ using type = typename T::ResultT;
63
+ };
64
+
65
+ } // namespace detail
66
+
35
67
  // Objective-C doesn't allow arbitrary types in its lightweight generics, only object and block types. We can work
36
68
  // around that by having the struct type we care about be a block-argument. The block never exists at runtime.
69
+ //
70
+ // For backwards compatibility: if T is a Builder type (e.g., JS::Module::Constants::Builder),
71
+ // ModuleConstants<Builder> resolves to the same type as ModuleConstants<Constants>.
37
72
  template <typename T>
38
- using ModuleConstants = _RCTTypedModuleConstants<void (^)(T)> *;
73
+ using ModuleConstants = _RCTTypedModuleConstants<void (^)(typename detail::ResolveConstantsType<T>::type)> *;
39
74
 
40
75
  template <typename T>
41
76
  ModuleConstants<T> typedConstants(typename T::Builder::Input &&value)
@@ -31,7 +31,7 @@ export type Float = number;
31
31
  export type Int32 = number;
32
32
  /* $FlowFixMe[unclear-type] Object is forbidden in strict mode */
33
33
  export type UnsafeObject = Object;
34
- export type UnsafeMixed = mixed;
34
+ export type UnsafeMixed = unknown;
35
35
 
36
36
  type DefaultTypes = number | boolean | string | $ReadOnlyArray<string>;
37
37
  // Default handling, ignore the unused value
@@ -335,3 +335,34 @@ export type MouseEvent = NativeSyntheticEvent<
335
335
  timestamp: number,
336
336
  }>,
337
337
  >;
338
+
339
+ export type KeyEvent = $ReadOnly<{
340
+ /**
341
+ * The actual key that was pressed. For example, F would be "f" or "F" depending on the shift key.
342
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key
343
+ */
344
+ key: string,
345
+ /**
346
+ * The key code of the key that was pressed. For example, F would be "KeyF"
347
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/code
348
+ */
349
+ code: string,
350
+ altKey: boolean,
351
+ ctrlKey: boolean,
352
+ metaKey: boolean,
353
+ shiftKey: boolean,
354
+ /**
355
+ * A boolean value that is true if the given key is being held down such that it is automatically repeating.
356
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/repeat
357
+ */
358
+ repeat?: boolean,
359
+ /**
360
+ * Returns a boolean value indicating if the event is fired within a composition session
361
+ * @see https://developer.mozilla.org/en-US/docs/Web/API/CompositionEvent/isComposing
362
+ */
363
+ isComposing?: boolean,
364
+ }>;
365
+
366
+ export type KeyUpEvent = NativeSyntheticEvent<KeyEvent>;
367
+
368
+ export type KeyDownEvent = NativeSyntheticEvent<KeyEvent>;
@@ -32,7 +32,7 @@ export type ReactDevToolsAgentEvents = {
32
32
  };
33
33
 
34
34
  export type ReactDevToolsAgent = {
35
- selectNode(node: mixed): void,
35
+ selectNode(node: unknown): void,
36
36
  stopInspectingNative(value: boolean): void,
37
37
  addListener<Event: $Keys<ReactDevToolsAgentEvents>>(
38
38
  event: Event,
@@ -48,6 +48,6 @@ export type ReactDevToolsGlobalHook = {
48
48
  on: (eventName: string, (agent: ReactDevToolsAgent) => void) => void,
49
49
  off: (eventName: string, (agent: ReactDevToolsAgent) => void) => void,
50
50
  reactDevtoolsAgent?: ReactDevToolsAgent,
51
- resolveRNStyle?: mixed,
51
+ resolveRNStyle?: unknown,
52
52
  nativeStyleEditorValidAttributes?: Array<string>,
53
53
  };
@@ -35,7 +35,7 @@ let lazyState: ?{
35
35
  /**
36
36
  * Ensures that all state and listeners are lazily initialized correctly.
37
37
  */
38
- function getState(): $NonMaybeType<typeof lazyState> {
38
+ function getState(): NonNullable<typeof lazyState> {
39
39
  if (lazyState != null) {
40
40
  return lazyState;
41
41
  }
@@ -50,7 +50,7 @@ function getState(): $NonMaybeType<typeof lazyState> {
50
50
  eventEmitter,
51
51
  };
52
52
  } else {
53
- const state: $NonMaybeType<typeof lazyState> = {
53
+ const state: NonNullable<typeof lazyState> = {
54
54
  NativeAppearance,
55
55
  appearance: null,
56
56
  eventEmitter,
@@ -44,7 +44,11 @@ const COLOR_SCHEME = {
44
44
  };
45
45
 
46
46
  export default {
47
- showMessage(message: string, type: 'load' | 'refresh' | 'error') {
47
+ showMessage(
48
+ message: string,
49
+ type: 'load' | 'refresh' | 'error',
50
+ options?: {dismissButton?: boolean},
51
+ ) {
48
52
  if (NativeDevLoadingView) {
49
53
  const colorScheme =
50
54
  getColorScheme() === 'dark' ? COLOR_SCHEME.dark : COLOR_SCHEME.default;
@@ -59,10 +63,13 @@ export default {
59
63
  textColor = processColor(colorSet.textColor);
60
64
  }
61
65
 
66
+ const hasDismissButton = options?.dismissButton ?? false;
67
+
62
68
  NativeDevLoadingView.showMessage(
63
69
  message,
64
70
  typeof textColor === 'number' ? textColor : null,
65
71
  typeof backgroundColor === 'number' ? backgroundColor : null,
72
+ hasDismissButton,
66
73
  );
67
74
  }
68
75
  },
@@ -24,7 +24,7 @@ let DevSettings: {
24
24
  * @param title - The title of the menu item. Is internally used as id and should therefore be unique.
25
25
  * @param handler - The callback invoked when pressing the menu item.
26
26
  */
27
- addMenuItem(title: string, handler: () => mixed): void,
27
+ addMenuItem(title: string, handler: () => unknown): void,
28
28
  /**
29
29
  * Reload the application.
30
30
  *
@@ -33,7 +33,7 @@ let DevSettings: {
33
33
  reload(reason?: string): void,
34
34
  onFastRefresh(): void,
35
35
  } = {
36
- addMenuItem(title: string, handler: () => mixed): void {},
36
+ addMenuItem(title: string, handler: () => unknown): void {},
37
37
  reload(reason?: string): void {},
38
38
  onFastRefresh(): void {},
39
39
  };
@@ -51,7 +51,7 @@ if (__DEV__) {
51
51
  const subscriptions = new Map<string, EventSubscription>();
52
52
 
53
53
  DevSettings = {
54
- addMenuItem(title: string, handler: () => mixed): void {
54
+ addMenuItem(title: string, handler: () => unknown): void {
55
55
  // Make sure items are not added multiple times. This can
56
56
  // happen when hot reloading the module that registers the
57
57
  // menu items. The title is used as the id which means we
@@ -26,7 +26,7 @@ let hmrUnavailableReason: string | null = null;
26
26
  let hmrOrigin: string | null = null;
27
27
  let currentCompileErrorMessage: string | null = null;
28
28
  let didConnect: boolean = false;
29
- let pendingLogs: Array<[LogLevel, $ReadOnlyArray<mixed>]> = [];
29
+ let pendingLogs: Array<[LogLevel, $ReadOnlyArray<unknown>]> = [];
30
30
 
31
31
  type LogLevel =
32
32
  | 'trace'
@@ -43,7 +43,7 @@ export type HMRClientNativeInterface = {
43
43
  enable(): void,
44
44
  disable(): void,
45
45
  registerBundle(requestUrl: string): void,
46
- log(level: LogLevel, data: $ReadOnlyArray<mixed>): void,
46
+ log(level: LogLevel, data: $ReadOnlyArray<unknown>): void,
47
47
  setup(
48
48
  platform: string,
49
49
  bundleEntry: string,
@@ -113,7 +113,7 @@ const HMRClient: HMRClientNativeInterface = {
113
113
  registerBundleEntryPoints(hmrClient);
114
114
  },
115
115
 
116
- log(level: LogLevel, data: $ReadOnlyArray<mixed>) {
116
+ log(level: LogLevel, data: $ReadOnlyArray<unknown>) {
117
117
  if (!hmrClient) {
118
118
  // Catch a reasonable number of early logs
119
119
  // in case hmrClient gets initialized later.
@@ -307,6 +307,7 @@ function setHMRUnavailableReason(reason: string) {
307
307
  DevLoadingView.showMessage(
308
308
  'Fast Refresh disconnected. Reload app to reconnect.',
309
309
  'error',
310
+ {dismissButton: true},
310
311
  );
311
312
  console.warn(reason);
312
313
  // (Not using the `warning` module to prevent a Buck cycle.)
@@ -20,11 +20,11 @@ const levelsMap = {
20
20
  fatal: 'error',
21
21
  };
22
22
 
23
- let warningHandler: ?(...Array<mixed>) => void = null;
23
+ let warningHandler: ?(...Array<unknown>) => void = null;
24
24
 
25
25
  const RCTLog = {
26
26
  // level one of log, info, warn, error, mustfix
27
- logIfNoNativeHook(level: string, ...args: Array<mixed>): void {
27
+ logIfNoNativeHook(level: string, ...args: Array<unknown>): void {
28
28
  // We already printed in the native console, so only log here if using a js debugger
29
29
  if (typeof global.nativeLoggingHook === 'undefined') {
30
30
  RCTLog.logToConsole(level, ...args);
@@ -37,7 +37,7 @@ const RCTLog = {
37
37
  },
38
38
 
39
39
  // Log to console regardless of nativeLoggingHook
40
- logToConsole(level: string, ...args: Array<mixed>): void {
40
+ logToConsole(level: string, ...args: Array<unknown>): void {
41
41
  // $FlowFixMe[invalid-computed-prop]
42
42
  const logFn = levelsMap[level];
43
43
  invariant(
@@ -124,7 +124,7 @@ function expectNoConsoleError() {
124
124
  async function expectRendersMatchingSnapshot(
125
125
  name: string,
126
126
  ComponentProvider: () => React.MixedElement,
127
- unmockComponent: () => mixed,
127
+ unmockComponent: () => unknown,
128
128
  ) {
129
129
  let instance;
130
130
 
@@ -10,7 +10,7 @@
10
10
 
11
11
  'use strict';
12
12
 
13
- export type Scene = {name: string, [string]: mixed, ...};
13
+ export type Scene = {name: string, [string]: unknown, ...};
14
14
 
15
15
  let _listeners: Array<(scene: Scene) => void> = [];
16
16