react-native-tvos 0.86.2-0 → 0.87.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 (1148) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +19 -24
  2. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  3. package/Libraries/Alert/Alert.js +38 -1
  4. package/Libraries/Animated/AnimatedExports.js +22 -0
  5. package/Libraries/Animated/AnimatedExports.js.flow +1 -1
  6. package/Libraries/Animated/AnimatedImplementation.js +120 -3
  7. package/Libraries/Animated/Easing.js +4 -3
  8. package/Libraries/Animated/NativeAnimatedAllowlist.js +37 -0
  9. package/Libraries/Animated/animations/Animation.js +14 -5
  10. package/Libraries/Animated/animations/DecayAnimation.js +1 -0
  11. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  12. package/Libraries/Animated/animations/TimingAnimation.js +9 -0
  13. package/Libraries/Animated/components/AnimatedScrollView.js +1 -1
  14. package/Libraries/Animated/createAnimatedComponent.js +3 -3
  15. package/Libraries/Animated/nodes/AnimatedColor.js +8 -8
  16. package/Libraries/Animated/nodes/AnimatedInterpolation.js +106 -0
  17. package/Libraries/Animated/nodes/AnimatedProps.js +27 -3
  18. package/Libraries/Animated/nodes/AnimatedValue.js +8 -0
  19. package/Libraries/Animated/nodes/AnimatedValueXY.js +2 -2
  20. package/Libraries/AppDelegate/RCTAppDelegate.h +5 -9
  21. package/Libraries/AppDelegate/RCTAppDelegate.mm +0 -20
  22. package/Libraries/AppDelegate/RCTAppSetupUtils.h +0 -18
  23. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +0 -78
  24. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +18 -17
  25. package/Libraries/AppDelegate/RCTReactNativeFactory.h +5 -41
  26. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +0 -82
  27. package/Libraries/AppDelegate/RCTRootViewFactory.h +4 -1
  28. package/Libraries/AppDelegate/RCTRootViewFactory.mm +3 -98
  29. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +2 -1
  30. package/Libraries/AppState/AppState.d.ts +4 -1
  31. package/Libraries/AppState/AppState.js +32 -17
  32. package/Libraries/BatchedBridge/MessageQueue.js +42 -51
  33. package/Libraries/BatchedBridge/NativeModules.js +7 -0
  34. package/Libraries/Blob/Blob.js +7 -1
  35. package/Libraries/Blob/FileReader.js +6 -0
  36. package/Libraries/Blob/React-RCTBlob.podspec +1 -1
  37. package/Libraries/Blob/URLSearchParams.js.flow +1 -1
  38. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +20 -9
  39. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -43
  40. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +59 -49
  41. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  42. package/Libraries/Components/Button.js +96 -182
  43. package/Libraries/Components/Clipboard/Clipboard.js +5 -0
  44. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  45. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +8 -69
  46. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +10 -1
  47. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +2 -0
  48. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +26 -31
  49. package/Libraries/Components/Keyboard/Keyboard.js +23 -60
  50. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +15 -7
  51. package/Libraries/Components/Pressable/Pressable.js +39 -17
  52. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +5 -6
  53. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +4 -4
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +17 -0
  56. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  57. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  58. package/Libraries/Components/RefreshControl/RefreshControl.js +40 -50
  59. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  60. package/Libraries/Components/SafeAreaView/SafeAreaView.js +8 -8
  61. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  62. package/Libraries/Components/ScrollView/ScrollView.d.ts +55 -43
  63. package/Libraries/Components/ScrollView/ScrollView.js +202 -115
  64. package/Libraries/Components/ScrollView/ScrollViewCommands.js +4 -4
  65. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  66. package/Libraries/Components/StatusBar/StatusBar.d.ts +7 -54
  67. package/Libraries/Components/StatusBar/StatusBar.js +85 -161
  68. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  69. package/Libraries/Components/Switch/Switch.js +76 -75
  70. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  71. package/Libraries/Components/TV/TVEventHandler.js +16 -1
  72. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +1 -1
  73. package/Libraries/Components/TextInput/InputAccessoryView.js +13 -61
  74. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  75. package/Libraries/Components/TextInput/TextInput.d.ts +9 -2
  76. package/Libraries/Components/TextInput/TextInput.flow.js +20 -3
  77. package/Libraries/Components/TextInput/TextInput.js +116 -111
  78. package/Libraries/Components/TextInput/TextInputNativeCommands.js +3 -3
  79. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +25 -19
  80. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  81. package/Libraries/Components/Touchable/Touchable.js +94 -95
  82. package/Libraries/Components/Touchable/TouchableHighlight.js +46 -114
  83. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +13 -25
  84. package/Libraries/Components/Touchable/TouchableOpacity.js +14 -84
  85. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +4 -3
  86. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  87. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -0
  88. package/Libraries/Components/View/View.js +85 -64
  89. package/Libraries/Components/View/ViewAccessibility.d.ts +12 -2
  90. package/Libraries/Components/View/ViewAccessibility.js +17 -6
  91. package/Libraries/Components/View/ViewNativeComponent.js +6 -8
  92. package/Libraries/Components/View/ViewPropTypes.js +55 -9
  93. package/Libraries/Core/InitializeCore.js +9 -1
  94. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  95. package/Libraries/Core/ReactNativeVersion.js +2 -2
  96. package/Libraries/Core/Timers/JSTimers.js +53 -52
  97. package/Libraries/Core/setUpGlobals.js +9 -4
  98. package/Libraries/Core/setUpNavigator.js +7 -2
  99. package/Libraries/Core/setUpReactDevTools.js +0 -118
  100. package/Libraries/Core/setUpXHR.js +6 -2
  101. package/Libraries/Debugging/DebuggingOverlay.js +2 -2
  102. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  103. package/Libraries/EventEmitter/NativeEventEmitter.js +29 -0
  104. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -7
  105. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +1 -1
  106. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +3 -0
  107. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  108. package/Libraries/Image/AssetSourceResolver.js +18 -27
  109. package/Libraries/Image/Image.android.js +13 -2
  110. package/Libraries/Image/Image.ios.js +3 -1
  111. package/Libraries/Image/ImageBackground.js +30 -18
  112. package/Libraries/Image/ImageProps.js +116 -117
  113. package/Libraries/Image/ImageSource.d.ts +1 -1
  114. package/Libraries/Image/ImageSource.js +9 -9
  115. package/Libraries/Image/ImageSourceUtils.js +10 -7
  116. package/Libraries/Image/ImageTypes.flow.js +2 -0
  117. package/Libraries/Image/ImageViewNativeComponent.js +1 -1
  118. package/Libraries/Image/RCTImageLoader.mm +61 -64
  119. package/Libraries/Image/RCTImageStoreManager.h +0 -2
  120. package/Libraries/Image/React-RCTImage.podspec +1 -1
  121. package/Libraries/Image/RelativeImageStub.js +1 -1
  122. package/Libraries/Image/resolveAssetSource.js +1 -1
  123. package/Libraries/Interaction/PanResponder.js +102 -97
  124. package/Libraries/LayoutAnimation/LayoutAnimation.js +22 -6
  125. package/Libraries/Linking/Linking.js +24 -23
  126. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
  127. package/Libraries/Lists/FlatList.d.ts +6 -17
  128. package/Libraries/Lists/FlatList.js +7 -8
  129. package/Libraries/Lists/SectionList.js +7 -0
  130. package/Libraries/Lists/VirtualizedList.js +3 -0
  131. package/Libraries/Lists/VirtualizedSectionList.js +4 -0
  132. package/Libraries/LogBox/LogBox.js +3 -3
  133. package/Libraries/LogBox/UI/AnsiHighlight.js +2 -1
  134. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +2 -2
  135. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +4 -1
  136. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +3 -1
  137. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
  138. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +9 -2
  139. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +17 -4
  140. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +3 -1
  141. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -1
  142. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -0
  143. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +4 -2
  144. package/Libraries/LogBox/UI/LogBoxMessage.js +18 -5
  145. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +4 -1
  146. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +1 -0
  147. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -4
  148. package/Libraries/Modal/Modal.d.ts +5 -4
  149. package/Libraries/Modal/Modal.js +71 -37
  150. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  151. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
  152. package/Libraries/NativeComponent/BaseViewConfig.android.js +17 -0
  153. package/Libraries/NativeComponent/ViewConfig.js +3 -3
  154. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
  155. package/Libraries/Network/RCTHTTPRequestHandler.h +1 -1
  156. package/Libraries/Network/React-RCTNetwork.podspec +1 -1
  157. package/Libraries/Performance/Systrace.js +36 -0
  158. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +4 -2
  159. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +29 -17
  160. package/Libraries/Pressability/Pressability.js +1 -1
  161. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +4 -0
  162. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
  163. package/Libraries/ReactNative/AppContainer-dev.js +3 -1
  164. package/Libraries/ReactNative/AppRegistry.flow.js +1 -0
  165. package/Libraries/ReactNative/AppRegistry.js +15 -11
  166. package/Libraries/ReactNative/AppRegistryImpl.js +57 -11
  167. package/Libraries/ReactNative/DisplayMode.js +1 -1
  168. package/Libraries/ReactNative/FabricUIManager.js +29 -26
  169. package/Libraries/ReactNative/I18nManager.js +20 -0
  170. package/Libraries/ReactNative/UIManager.js +53 -0
  171. package/Libraries/ReactNative/renderApplication.js +1 -1
  172. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -126
  173. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +5 -41
  174. package/Libraries/Renderer/README.md +2 -2
  175. package/Libraries/Renderer/shims/ReactNativeTypes.js +36 -36
  176. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +4 -4
  177. package/Libraries/Required/RCTRequired.podspec +1 -1
  178. package/Libraries/Settings/React-RCTSettings.podspec +1 -1
  179. package/Libraries/Settings/Settings.ios.js +22 -0
  180. package/Libraries/Share/Share.js +25 -28
  181. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +6 -0
  182. package/Libraries/StyleSheet/StyleSheet.js +42 -2
  183. package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
  184. package/Libraries/StyleSheet/StyleSheetExports.js +7 -5
  185. package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
  186. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +24 -3
  187. package/Libraries/StyleSheet/StyleSheetTypes.js +34 -6
  188. package/Libraries/StyleSheet/flattenStyle.js +28 -13
  189. package/Libraries/StyleSheet/private/_TransformStyle.js +16 -14
  190. package/Libraries/Text/React-RCTText.podspec +1 -1
  191. package/Libraries/Text/Text.js +12 -9
  192. package/Libraries/Text/TextEffectNativeComponent.js +31 -0
  193. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +0 -1
  194. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +0 -1
  195. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +0 -1
  196. package/Libraries/Text/TextProps.js +59 -93
  197. package/Libraries/Text/requireNativeTextEffect.js +28 -0
  198. package/Libraries/TurboModule/RCTExport.js +1 -1
  199. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  200. package/Libraries/Types/CoreEventTypes.d.ts +8 -0
  201. package/Libraries/Types/CoreEventTypes.js +32 -29
  202. package/Libraries/Types/UIManagerJSInterface.js +2 -2
  203. package/Libraries/Utilities/Appearance.d.ts +32 -17
  204. package/Libraries/Utilities/Appearance.js +35 -18
  205. package/Libraries/Utilities/BackHandler.android.js +13 -33
  206. package/Libraries/Utilities/BackHandler.js.flow +18 -2
  207. package/Libraries/Utilities/DevSettings.js +8 -1
  208. package/Libraries/Utilities/Dimensions.js +18 -12
  209. package/Libraries/Utilities/PixelRatio.js +5 -2
  210. package/Libraries/Utilities/Platform.js.flow +4 -0
  211. package/Libraries/Utilities/PlatformTypes.js +77 -0
  212. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  213. package/Libraries/Utilities/differ/deepDiffer.js +5 -2
  214. package/Libraries/Utilities/useColorScheme.js +11 -1
  215. package/Libraries/Utilities/useWindowDimensions.js +6 -0
  216. package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
  217. package/Libraries/Vibration/Vibration.js +14 -11
  218. package/Libraries/vendor/emitter/EventEmitter.js +3 -3
  219. package/README-core.md +6 -6
  220. package/React/Base/RCTBridge+Private.h +0 -22
  221. package/React/Base/RCTBridge.h +10 -8
  222. package/React/Base/RCTBridge.mm +5 -447
  223. package/React/Base/RCTBridgeDelegate.h +1 -56
  224. package/React/Base/RCTBridgeModule.h +0 -9
  225. package/React/Base/RCTBridgeProxy.h +8 -0
  226. package/React/Base/RCTBridgeProxy.mm +3 -20
  227. package/React/Base/RCTBundleManager.h +0 -3
  228. package/React/Base/RCTBundleManager.m +0 -31
  229. package/React/Base/RCTBundleURLProvider.mm +4 -4
  230. package/React/Base/RCTCallableJSModules.m +0 -18
  231. package/React/Base/RCTConstants.h +1 -0
  232. package/React/Base/RCTConstants.m +1 -0
  233. package/React/Base/RCTConvert.mm +3 -0
  234. package/React/Base/RCTDisplayLink.h +3 -1
  235. package/React/Base/RCTJavaScriptExecutor.h +0 -69
  236. package/React/Base/RCTModuleData.mm +2 -483
  237. package/React/Base/RCTModuleRegistry.m +0 -25
  238. package/React/Base/RCTRootView.h +0 -11
  239. package/React/Base/RCTRootView.m +3 -461
  240. package/React/Base/RCTUtils.h +0 -3
  241. package/React/Base/RCTUtils.mm +17 -27
  242. package/React/Base/RCTVersion.m +2 -2
  243. package/React/Base/RCTViewRegistry.m +1 -29
  244. package/React/Base/Surface/RCTSurface.mm +1 -582
  245. package/React/Base/Surface/RCTSurfaceRootShadowView.m +0 -89
  246. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +0 -1
  247. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +0 -2
  248. package/React/CoreModules/RCTAlertController.mm +1 -0
  249. package/React/CoreModules/RCTAlertManager.mm +0 -5
  250. package/React/CoreModules/RCTLogBox.mm +0 -11
  251. package/React/CoreModules/RCTLogBoxView.h +0 -3
  252. package/React/CoreModules/RCTLogBoxView.mm +0 -31
  253. package/React/CoreModules/RCTPerfMonitor.mm +0 -2
  254. package/React/CoreModules/RCTStatusBarManager.mm +0 -11
  255. package/React/CoreModules/React-CoreModules.podspec +1 -1
  256. package/React/CxxModule/RCTCxxUtils.h +0 -8
  257. package/React/CxxModule/RCTCxxUtils.mm +0 -17
  258. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +179 -7
  259. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +100 -2
  260. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +373 -119
  261. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.cpp +1 -1
  262. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.h +1 -1
  263. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.cpp +71 -71
  264. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +96 -96
  265. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +357 -363
  266. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +211 -212
  267. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/RCTComponentViewHelpers.h +107 -107
  268. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.cpp +1 -1
  269. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.h +11 -11
  270. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/States.h +2 -2
  271. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.h +4 -0
  272. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +4 -0
  273. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +4 -0
  274. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +5 -0
  275. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +0 -1
  276. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +14 -0
  277. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +13 -4
  278. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerState.mm +12 -26
  279. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +39 -4
  280. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +1 -1
  281. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +5 -5
  282. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +0 -18
  283. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +9 -5
  284. package/React/Fabric/RCTSurfacePresenter.mm +86 -5
  285. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +2 -0
  286. package/React/I18n/RCTLocalizedString.mm +38 -2
  287. package/React/Modules/RCTEventEmitter.m +30 -10
  288. package/React/Modules/RCTI18nUtil.m +3 -1
  289. package/React/Modules/RCTUIManager.mm +0 -1501
  290. package/React/React-RCTFBReactNativeSpec.podspec +2 -2
  291. package/React/React-RCTFabric.podspec +1 -1
  292. package/React/Runtime/React-RCTRuntime.podspec +1 -1
  293. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +27 -0
  294. package/React/Views/RCTModalHostViewController.h +0 -18
  295. package/React/Views/RCTModalHostViewManager.h +0 -24
  296. package/React/Views/RCTShadowView.h +0 -2
  297. package/React/Views/RCTShadowView.m +0 -723
  298. package/React/Views/RCTView.h +0 -19
  299. package/React/Views/RCTViewManager.m +0 -53
  300. package/React/Views/ScrollView/RCTScrollView.h +0 -92
  301. package/React/Views/ScrollView/RCTScrollableProtocol.h +0 -4
  302. package/React-Core-prebuilt.podspec +45 -17
  303. package/React-Core.podspec +10 -3
  304. package/React.podspec +1 -1
  305. package/ReactAndroid/api/ReactAndroid.api +128 -142
  306. package/ReactAndroid/build.gradle.kts +27 -22
  307. package/ReactAndroid/external-artifacts/build.gradle.kts +49 -0
  308. package/ReactAndroid/gradle.properties +1 -1
  309. package/ReactAndroid/hermes-engine/build.gradle.kts +19 -20
  310. package/ReactAndroid/publish.gradle +5 -5
  311. package/ReactAndroid/src/debug/AndroidManifest.xml +6 -0
  312. package/ReactAndroid/src/debugOptimized/AndroidManifest.xml +22 -0
  313. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -7
  314. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +4 -2
  315. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +4 -6
  316. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +0 -3
  317. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.kt +212 -0
  318. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +0 -16
  319. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +6 -1
  320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.kt +1 -0
  321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.kt +287 -0
  322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +16 -0
  323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +15 -2
  324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +1 -3
  325. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +4 -0
  326. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +50 -2
  327. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +63 -22
  328. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +33 -0
  329. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +4 -12
  330. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +14 -10
  331. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +6 -6
  332. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +50 -47
  333. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +1 -1
  334. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +0 -4
  335. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +10 -10
  336. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LocalNetworkPermissionUtil.kt +49 -0
  337. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +101 -26
  338. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +40 -38
  339. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -10
  340. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +0 -3
  341. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +15 -11
  342. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +4 -4
  343. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +7 -13
  344. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +160 -187
  345. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SynchronousMountItem.kt +12 -8
  346. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +30 -66
  347. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +51 -111
  348. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +11 -23
  349. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +12 -24
  350. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +57 -123
  351. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +7 -5
  352. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -5
  353. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +11 -23
  354. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +0 -24
  355. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -4
  356. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +1 -0
  357. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +2 -2
  358. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.kt +3 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +50 -0
  360. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +1 -1
  361. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +53 -3
  362. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +2 -2
  363. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +2 -77
  364. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  365. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +2 -2
  366. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +1 -1
  367. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +9 -4
  368. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +4 -19
  369. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +2 -6
  370. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +4 -4
  371. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +47 -10
  372. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +1 -49
  373. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/HasChildPressedStateDelay.kt +29 -0
  374. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.kt +796 -0
  375. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +2 -4
  376. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.kt +27 -27
  377. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.kt +184 -0
  378. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.kt +486 -0
  379. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +8 -8
  380. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +2 -2
  381. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SkewMatrixHelper.kt +200 -0
  382. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +3 -0
  383. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +6 -1
  384. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +2 -2
  385. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.kt +7 -1
  386. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.kt +645 -0
  387. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +2 -3
  388. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.kt +142 -0
  389. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +0 -10
  390. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +3 -3
  391. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.kt +527 -0
  392. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +3 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +6 -6
  394. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +6 -0
  395. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +7 -0
  396. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.kt +8 -1
  397. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +0 -3
  398. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +2 -0
  399. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +4 -4
  400. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +2 -0
  401. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.kt +1729 -0
  402. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +15 -15
  403. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.kt +1297 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollViewManager.kt +14 -14
  405. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.kt +1392 -0
  406. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +15 -15
  407. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +19 -33
  408. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateClassic.kt +8 -6
  409. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +4 -4
  410. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js +13 -20
  411. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +7 -1
  412. package/ReactAndroid/src/main/java/com/facebook/react/views/text/MutableSpannableLayout.kt +107 -0
  413. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +122 -10
  414. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +92 -2
  415. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +3 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +41 -0
  417. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.kt +48 -2
  418. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextDecorationStyle.kt +200 -0
  419. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectRegistry.kt +45 -0
  420. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectSpanFactory.kt +17 -0
  421. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +361 -15
  422. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/AnimatedEffectSpan.kt +37 -0
  423. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/{DrawCommandSpan.kt → CanvasEffectSpan.kt} +3 -4
  424. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +23 -3
  425. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +30 -3
  426. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +25 -3
  427. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +1 -1
  428. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/StatefulSpan.kt +21 -0
  429. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextEffectSpan.kt +19 -0
  430. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TouchableSpan.kt +29 -0
  431. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +83 -11
  432. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +6 -2
  433. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
  434. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +3 -17
  435. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +8 -0
  436. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +2 -0
  437. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/VirtualViewRenderState.kt +1 -1
  438. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +7 -8
  439. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.kt +45 -0
  440. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.kt +27 -0
  441. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.kt +15 -0
  442. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.kt +6 -0
  443. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.kt +27 -0
  444. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.kt +31 -0
  445. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.kt +41 -0
  446. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.kt +37 -0
  447. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.kt +27 -0
  448. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.kt +31 -0
  449. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.kt +33 -0
  450. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.kt +29 -0
  451. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.kt +43 -0
  452. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.kt +39 -0
  453. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.kt +29 -0
  454. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.kt +16 -0
  455. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.kt +12 -2
  456. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.kt +762 -0
  457. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +4 -4
  458. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.kt +27 -0
  459. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.kt +29 -0
  460. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.kt +29 -0
  461. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.kt +24 -2
  462. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.kt +37 -0
  463. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.kt +29 -0
  464. package/ReactAndroid/src/main/jni/CMakeLists.txt +1 -2
  465. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +94 -0
  466. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionDelegateImpl.cpp +3 -0
  467. package/ReactAndroid/src/main/jni/react/fabric/AndroidAnimationChoreographer.h +10 -10
  468. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  469. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +12 -15
  470. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -3
  471. package/ReactAndroid/src/main/jni/react/fabric/test/FabricMountingManagerTest.cpp +159 -0
  472. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +69 -153
  473. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +15 -33
  474. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +10 -24
  475. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +0 -2
  476. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.cpp +13 -0
  477. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +4 -1
  478. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +8 -0
  479. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +4 -0
  480. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +5 -0
  481. package/ReactAndroid/src/main/res/views/uimanager/values-zu/strings.xml +3 -0
  482. package/ReactApple/Libraries/RCTFoundation/RCTDeprecation/RCTDeprecation.podspec +1 -1
  483. package/ReactApple/RCTAnimatedModuleProvider/React-RCTAnimatedModuleProvider.podspec +63 -0
  484. package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +1 -1
  485. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -1
  486. package/ReactCommon/React-Fabric.podspec +3 -1
  487. package/ReactCommon/React-FabricComponents.podspec +1 -1
  488. package/ReactCommon/React-FabricImage.podspec +1 -1
  489. package/ReactCommon/React-Mapbuffer.podspec +1 -1
  490. package/ReactCommon/ReactCommon.podspec +3 -13
  491. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  492. package/ReactCommon/cmake-utils/react-native-flags.cmake +1 -3
  493. package/ReactCommon/cxxreact/CMakeLists.txt +1 -0
  494. package/ReactCommon/cxxreact/ErrorUtils.h +2 -32
  495. package/ReactCommon/cxxreact/Instance.cpp +1 -26
  496. package/ReactCommon/cxxreact/Instance.h +0 -2
  497. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -2
  498. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +0 -12
  499. package/ReactCommon/cxxreact/RAMBundleRegistry.h +0 -5
  500. package/ReactCommon/cxxreact/React-cxxreact.podspec +3 -2
  501. package/ReactCommon/cxxreact/ReactMarker.cpp +4 -30
  502. package/ReactCommon/cxxreact/ReactMarker.h +38 -21
  503. package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
  504. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  505. package/ReactCommon/cxxreact/tests/methodcall.cpp +4 -0
  506. package/ReactCommon/hermes/React-hermes.podspec +1 -1
  507. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +6 -79
  508. package/ReactCommon/hermes/executor/React-jsitracing.podspec +1 -1
  509. package/ReactCommon/jserrorhandler/ErrorUtils.cpp +42 -0
  510. package/{React/CxxLogUtils/RCTDefaultCxxLogFunction.h → ReactCommon/jserrorhandler/ErrorUtils.h} +2 -2
  511. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -1
  512. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +3 -4
  513. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  514. package/ReactCommon/jsi/jsi/hermes-interfaces.h +53 -0
  515. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -2
  516. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +3 -14
  517. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +4 -13
  518. package/ReactCommon/jsinspector-modern/HostAgent.cpp +54 -0
  519. package/ReactCommon/jsinspector-modern/HostTarget.h +0 -7
  520. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +10 -7
  521. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +4 -1
  522. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +1 -1
  523. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +7 -0
  524. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +20 -0
  525. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -0
  526. package/ReactCommon/jsinspector-modern/SessionState.h +31 -0
  527. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +1 -1
  528. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +1 -1
  529. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +53 -0
  530. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +14 -1
  531. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +1 -1
  532. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +11 -0
  533. package/ReactCommon/jsitooling/React-jsitooling.podspec +1 -1
  534. package/ReactCommon/logger/React-logger.podspec +1 -1
  535. package/ReactCommon/oscompat/React-oscompat.podspec +1 -1
  536. package/ReactCommon/react/bridging/ArrayBuffer.h +180 -0
  537. package/ReactCommon/react/bridging/Bridging.h +1 -0
  538. package/ReactCommon/react/bridging/Convert.h +12 -0
  539. package/ReactCommon/react/bridging/React-bridging.podspec +44 -0
  540. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +185 -11
  541. package/ReactCommon/react/bridging/tests/ClassTest.cpp +22 -0
  542. package/ReactCommon/react/cxxstableapi/CMakeLists.txt +18 -0
  543. package/ReactCommon/react/cxxstableapi/FrameworksGuard.h +35 -0
  544. package/ReactCommon/react/cxxstableapi/PrivateGuard.h +34 -0
  545. package/ReactCommon/react/cxxstableapi/React-cxxstableapi.podspec +34 -0
  546. package/ReactCommon/react/cxxstableapi/UmbrellaGuard.h +53 -0
  547. package/ReactCommon/react/debug/React-debug.podspec +1 -1
  548. package/ReactCommon/react/debug/redbox/JscSafeUrl.h +1 -1
  549. package/ReactCommon/react/featureflags/React-featureflags.podspec +1 -1
  550. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +21 -45
  551. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +26 -56
  552. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +134 -242
  553. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +14 -26
  554. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +20 -44
  555. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +43 -97
  556. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +10 -6
  557. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -7
  558. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -8
  559. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +7 -13
  560. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +1 -0
  561. package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +49 -0
  562. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.cpp +4 -0
  563. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +4 -0
  564. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +2 -2
  565. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +2 -2
  566. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +4 -0
  567. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +5 -1
  568. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +61 -4
  569. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +0 -9
  570. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +37 -139
  571. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleWithJSIBindings.h +0 -3
  572. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +6 -0
  573. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -1
  574. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +10 -4
  575. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +2 -1
  576. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +25 -55
  577. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +11 -23
  578. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +1 -1
  579. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +2 -1
  580. package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +2 -1
  581. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +1 -1
  582. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +4 -0
  583. package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +2 -1
  584. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -1
  585. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h +1 -1
  586. package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +1 -1
  587. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +2 -1
  588. package/ReactCommon/react/networking/React-networking.podspec +1 -1
  589. package/ReactCommon/react/performance/cdpmetrics/React-performancecdpmetrics.podspec +1 -1
  590. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -1
  591. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +95 -63
  592. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +20 -1
  593. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +7 -10
  594. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +20 -1
  595. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.h +1 -0
  596. package/ReactCommon/react/renderer/animated/internal/primitives.h +1 -1
  597. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +67 -6
  598. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +12 -0
  599. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +25 -13
  600. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +7 -0
  601. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +48 -0
  602. package/ReactCommon/react/renderer/animated/tests/DecayAnimationDriverTest.cpp +245 -0
  603. package/ReactCommon/react/renderer/animated/tests/ManagedPropsMountingOverrideTests.cpp +204 -0
  604. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -1
  605. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
  606. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +17 -0
  607. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +0 -2
  608. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +6 -2
  609. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +25 -1
  610. package/ReactCommon/react/renderer/attributedstring/conversions.h +29 -1
  611. package/ReactCommon/react/renderer/attributedstring/primitives.h +4 -2
  612. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +73 -0
  613. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -0
  614. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +79 -126
  615. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.cpp +4 -0
  616. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +4 -0
  617. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.h +4 -0
  618. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +5 -0
  619. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +4 -0
  620. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.cpp +5 -0
  621. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.h +4 -0
  622. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.cpp +4 -0
  623. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +4 -0
  624. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +4 -0
  625. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +4 -0
  626. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +5 -0
  627. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +4 -0
  628. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +5 -0
  629. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.cpp +253 -379
  630. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +36 -55
  631. package/ReactCommon/react/renderer/components/text/BaseParagraphProps.cpp +17 -27
  632. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +8 -10
  633. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +19 -0
  634. package/ReactCommon/react/renderer/components/text/TextEffectComponentDescriptor.h +17 -0
  635. package/ReactCommon/react/renderer/components/text/TextEffectProps.cpp +59 -0
  636. package/ReactCommon/react/renderer/components/text/TextEffectProps.h +30 -0
  637. package/{Libraries/Text/VirtualText/RCTVirtualTextView.mm → ReactCommon/react/renderer/components/text/TextEffectShadowNode.cpp} +4 -6
  638. package/ReactCommon/react/renderer/components/text/TextEffectShadowNode.h +26 -0
  639. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +18 -28
  640. package/ReactCommon/react/renderer/components/text/tests/BaseTextShadowNodeTest.cpp +15 -0
  641. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +42 -50
  642. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +168 -754
  643. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +0 -9
  644. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +262 -326
  645. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -6
  646. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +2 -12
  647. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +73 -27
  648. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +7 -9
  649. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -11
  650. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +94 -180
  651. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +2 -2
  652. package/ReactCommon/react/renderer/components/view/primitives.h +5 -0
  653. package/ReactCommon/react/renderer/components/view/propsConversions.h +74 -42
  654. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +5 -5
  655. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +353 -6
  656. package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +1 -1
  657. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +41 -16
  658. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +19 -0
  659. package/ReactCommon/react/renderer/core/EventEmitter.cpp +20 -4
  660. package/ReactCommon/react/renderer/core/LayoutMetrics.h +3 -0
  661. package/ReactCommon/react/renderer/core/Props.cpp +8 -39
  662. package/ReactCommon/react/renderer/core/Props.h +63 -13
  663. package/ReactCommon/react/renderer/core/RawProps.cpp +20 -3
  664. package/ReactCommon/react/renderer/core/RawProps.h +44 -0
  665. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +11 -27
  666. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +3 -3
  667. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +4 -6
  668. package/ReactCommon/react/renderer/core/RawPropsParser.h +3 -3
  669. package/ReactCommon/react/renderer/core/StateData.h +4 -4
  670. package/ReactCommon/react/renderer/core/propsConversions.h +3 -7
  671. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +8 -0
  672. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +7 -7
  673. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +19 -19
  674. package/ReactCommon/react/renderer/core/tests/PropsConceptsTest.cpp +135 -0
  675. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +43 -53
  676. package/ReactCommon/react/renderer/css/React-renderercss.podspec +1 -1
  677. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +1 -1
  678. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +3 -3
  679. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  680. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +17 -0
  681. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -1
  682. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
  683. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +123 -33
  684. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +26 -14
  685. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +96 -53
  686. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +4 -0
  687. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +96 -1
  688. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +29 -318
  689. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +105 -33
  690. package/ReactCommon/react/renderer/mounting/ShadowTree.h +2 -0
  691. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +1 -1
  692. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +11 -3
  693. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +1 -1
  694. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +15 -250
  695. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeReactBranchingTest.cpp +141 -0
  696. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +1 -1
  697. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +1 -0
  698. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +2 -1
  699. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +22 -2
  700. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +13 -2
  701. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +13 -0
  702. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +9 -0
  703. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +43 -5
  704. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +17 -1
  705. package/ReactCommon/react/renderer/runtimescheduler/Task.h +4 -0
  706. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +113 -8
  707. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +14 -6
  708. package/ReactCommon/react/renderer/scheduler/Scheduler.h +3 -2
  709. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +1 -85
  710. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +0 -6
  711. package/ReactCommon/react/renderer/scheduler/tests/SchedulerDelegateInvalidationTest.cpp +671 -0
  712. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +22 -5
  713. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +4 -2
  714. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +11 -0
  715. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +65 -26
  716. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +193 -1
  717. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +14 -2
  718. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -1
  719. package/ReactCommon/react/renderer/textlayoutmanager/tests/TextLayoutManagerTest.cpp +86 -5
  720. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +31 -41
  721. package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -2
  722. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +1 -1
  723. package/ReactCommon/react/renderer/uimanager/tests/FindShadowNodeByTagTest.cpp +1 -52
  724. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +4 -4
  725. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +88 -39
  726. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +12 -2
  727. package/ReactCommon/react/runtime/PlatformTimerRegistry.h +10 -0
  728. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +1 -1
  729. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -1
  730. package/ReactCommon/react/runtime/ReactInstance.cpp +79 -64
  731. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +0 -89
  732. package/ReactCommon/react/runtime/iostests/MainQueueCoordinatorTests.mm +99 -0
  733. package/ReactCommon/react/runtime/iostests/RCTInstanceTests.mm +244 -0
  734. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +1 -1
  735. package/ReactCommon/react/runtime/platform/ios/ReactCommon/ObjCTimerRegistry.h +1 -1
  736. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +47 -30
  737. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.mm +3 -2
  738. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTPerformanceLoggerUtils.mm +3 -2
  739. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +27 -3
  740. package/ReactCommon/react/runtime/tests/cxx/RuntimeExecutorShutdownTest.cpp +155 -0
  741. package/ReactCommon/react/timing/React-timing.podspec +1 -1
  742. package/ReactCommon/react/utils/React-utils.podspec +1 -1
  743. package/ReactCommon/react/utils/Telemetry.h +0 -13
  744. package/ReactCommon/react/utils/tests/Base64Tests.cpp +36 -0
  745. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  746. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +0 -1
  747. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  748. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.mm +21 -38
  749. package/ReactCommon/yoga/Yoga.podspec +2 -2
  750. package/ReactCommon/yoga/yoga/YGEnums.cpp +2 -0
  751. package/ReactCommon/yoga/yoga/YGEnums.h +1 -0
  752. package/ReactCommon/yoga/yoga/YGNode.cpp +27 -0
  753. package/ReactCommon/yoga/yoga/YGNode.h +69 -0
  754. package/ReactCommon/yoga/yoga/YGNodeLayout.h +0 -2
  755. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +283 -10
  756. package/ReactCommon/yoga/yoga/config/Config.h +1 -1
  757. package/ReactCommon/yoga/yoga/enums/Errata.h +1 -0
  758. package/ReactCommon/yoga/yoga/node/LayoutResults.h +8 -0
  759. package/ReactCommon/yoga/yoga/node/Node.cpp +32 -0
  760. package/ReactCommon/yoga/yoga/node/Node.h +33 -0
  761. package/cli.js +3 -182
  762. package/flow/bom.js.flow +42 -42
  763. package/flow/cssom.js.flow +21 -21
  764. package/flow/dom.js.flow +128 -128
  765. package/flow/global.js +6 -0
  766. package/gradle/libs.versions.toml +7 -5
  767. package/index.js +53 -86
  768. package/index.js.flow +53 -23
  769. package/package.json +39 -50
  770. package/react-native.config.js +82 -1
  771. package/scripts/cocoapods/fabric.rb +1 -1
  772. package/scripts/cocoapods/jsengine.rb +1 -1
  773. package/scripts/cocoapods/new_architecture.rb +1 -1
  774. package/scripts/cocoapods/rncore.rb +36 -78
  775. package/scripts/cocoapods/rncore_facades.rb +232 -0
  776. package/scripts/cocoapods/rndependencies.rb +64 -3
  777. package/scripts/cocoapods/rndeps_facades.rb +193 -0
  778. package/scripts/cocoapods/spm.rb +79 -12
  779. package/scripts/cocoapods/utils.rb +7 -9
  780. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +0 -1
  781. package/scripts/codegen/templates/Package.swift.spm-template +97 -0
  782. package/scripts/codegen/templates/ReactAppDependencyProvider.podspec.template +1 -1
  783. package/scripts/codegen/templates/ReactCodegen.podspec.template +2 -2
  784. package/scripts/hermes/hermes-utils.js +27 -58
  785. package/scripts/ios-configure-glog.sh +1 -1
  786. package/scripts/react-native-xcode.sh +20 -0
  787. package/scripts/react_native_pods.rb +71 -21
  788. package/scripts/react_native_pods_utils/script_phases.sh +4 -3
  789. package/scripts/replace-rncore-version.js +57 -86
  790. package/scripts/setup-apple-spm.js +1267 -0
  791. package/scripts/spm/__doc__/rfc-spm-xcframework.md +707 -0
  792. package/scripts/spm/__doc__/spm-autolinking-plugins.md +244 -0
  793. package/scripts/spm/__doc__/spm-header-paths-contract.md +97 -0
  794. package/scripts/spm/__doc__/spm-plugins-assessment.md +128 -0
  795. package/scripts/spm/__doc__/spm-scripts.md +486 -0
  796. package/scripts/spm/autolinking-plugins.js +331 -0
  797. package/scripts/spm/download-spm-artifacts.js +1409 -0
  798. package/scripts/spm/expand-spm-dependencies.js +216 -0
  799. package/scripts/spm/flavored-frameworks.js +1008 -0
  800. package/scripts/spm/generate-spm-autolinking-config.js +221 -0
  801. package/scripts/spm/generate-spm-autolinking.js +1888 -0
  802. package/scripts/spm/generate-spm-package.js +302 -0
  803. package/scripts/spm/generate-spm-xcodeproj.js +2266 -0
  804. package/scripts/spm/read-podspec.js +695 -0
  805. package/scripts/spm/scaffold-package-swift.js +1206 -0
  806. package/scripts/spm/spm-pbxproj.js +654 -0
  807. package/scripts/spm/spm-types.js +520 -0
  808. package/scripts/spm/spm-utils.js +645 -0
  809. package/scripts/spm/sync-spm-autolinking.js +160 -0
  810. package/sdks/.hermesv1version +1 -1
  811. package/sdks/hermes-engine/hermes-engine.podspec +9 -39
  812. package/sdks/hermes-engine/hermes-utils.rb +20 -74
  813. package/sdks/hermes-engine/utils/replace_hermes_version.js +18 -4
  814. package/sdks/hermes-engine/version.properties +1 -2
  815. package/settings.gradle.kts +0 -43
  816. package/src/asset-registry.js +29 -0
  817. package/src/private/animated/NativeAnimatedHelper.js +45 -21
  818. package/src/private/assets/AssetRegistry.js +52 -0
  819. package/src/private/{specs_DEPRECATED/components → components/activityindicator/specs}/ActivityIndicatorViewNativeComponent.js +5 -5
  820. package/src/private/{specs_DEPRECATED/components → components/debuggingoverlay/specs}/DebuggingOverlayNativeComponent.js +8 -8
  821. package/src/private/{specs_DEPRECATED/components → components/drawerlayoutandroid/specs}/AndroidDrawerLayoutNativeComponent.js +8 -8
  822. package/src/private/{specs_DEPRECATED/components → components/inputaccessoryview/specs}/RCTInputAccessoryViewNativeComponent.js +4 -4
  823. package/src/private/{specs_DEPRECATED/components → components/modal/specs}/RCTModalHostViewNativeComponent.js +4 -9
  824. package/src/private/{specs_DEPRECATED/components → components/progressbarandroid/specs}/ProgressBarAndroidNativeComponent.js +5 -5
  825. package/src/private/{specs_DEPRECATED/components → components/refreshcontrol/specs}/AndroidSwipeRefreshLayoutNativeComponent.js +7 -7
  826. package/src/private/{specs_DEPRECATED/components → components/refreshcontrol/specs}/PullToRefreshViewNativeComponent.js +7 -7
  827. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  828. package/src/private/{specs_DEPRECATED/components → components/safeareaview/specs}/RCTSafeAreaViewNativeComponent.js +3 -3
  829. package/src/private/components/scrollview/HScrollViewNativeComponents.js +1 -1
  830. package/src/private/{specs_DEPRECATED/components → components/scrollview/specs}/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
  831. package/src/private/{specs_DEPRECATED/components → components/switch/specs}/AndroidSwitchNativeComponent.js +7 -7
  832. package/src/private/{specs_DEPRECATED/components → components/switch/specs}/SwitchNativeComponent.js +10 -7
  833. package/src/private/{specs_DEPRECATED/components → components/unimplementedview/specs}/UnimplementedNativeViewNativeComponent.js +4 -4
  834. package/src/private/components/virtualcollection/Virtual.js +5 -5
  835. package/src/private/components/virtualcollection/VirtualCollectionView.js +2 -6
  836. package/src/private/components/virtualcollection/column/VirtualColumn.js +1 -1
  837. package/src/private/components/virtualcollection/row/VirtualRow.js +1 -1
  838. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +3 -1
  839. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +4 -4
  840. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +4 -2
  841. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
  842. package/src/private/featureflags/ReactNativeFeatureFlags.js +46 -70
  843. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +88 -94
  844. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  845. package/src/private/renderer/events/ReactNativeResponder.js +49 -4
  846. package/src/private/renderer/events/ResponderTouchHistoryStore.js +11 -2
  847. package/src/private/renderer/events/dispatchNativeEvent.js +71 -36
  848. package/src/private/setup/setUpDOM.js +19 -9
  849. package/src/private/setup/setUpIntersectionObserver.js +7 -0
  850. package/src/private/setup/setUpMutationObserver.js +3 -1
  851. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +9 -9
  852. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +24 -24
  853. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +28 -28
  854. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
  855. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +45 -25
  856. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +44 -24
  857. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +4 -4
  858. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +8 -6
  859. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +7 -7
  860. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +3 -3
  861. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +2 -2
  862. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +11 -11
  863. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
  864. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +4 -4
  865. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +7 -7
  866. package/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.js +4 -4
  867. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
  868. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +4 -4
  869. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +2 -2
  870. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
  871. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +13 -13
  872. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +9 -6
  873. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +6 -6
  874. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
  875. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +8 -5
  876. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +5 -5
  877. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
  878. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +2 -2
  879. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +6 -6
  880. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +2 -2
  881. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +2 -2
  882. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +5 -5
  883. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +6 -6
  884. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +6 -4
  885. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
  886. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +1 -1
  887. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +35 -31
  888. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +2 -2
  889. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +24 -24
  890. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +2 -2
  891. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +3 -3
  892. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +2 -2
  893. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
  894. package/src/private/specs_DEPRECATED/modules/NativeSourceCode.js +1 -1
  895. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid.js +5 -17
  896. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS.js +10 -15
  897. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +3 -3
  898. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +4 -4
  899. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +35 -22
  900. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +4 -4
  901. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +7 -7
  902. package/src/private/types/HostInstance.js +38 -80
  903. package/src/private/viewtransition/specs/NativeViewTransition.js +6 -4
  904. package/src/private/webapis/dom/abort-api/AbortController.js +92 -0
  905. package/src/private/webapis/dom/abort-api/AbortSignal.js +243 -0
  906. package/src/private/webapis/dom/events/CustomEvent.js +1 -1
  907. package/src/private/webapis/dom/events/Event.js +12 -12
  908. package/src/private/webapis/dom/events/EventTarget.js +146 -37
  909. package/src/private/webapis/dom/events/internals/EventInternals.js +36 -0
  910. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +38 -3
  911. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +11 -0
  912. package/src/private/webapis/dom/nodes/ReactNativeElement.js +105 -4
  913. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +11 -0
  914. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +9 -0
  915. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +34 -7
  916. package/src/private/webapis/dom/nodes/ReadOnlyText.js +33 -0
  917. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +46 -42
  918. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +12 -0
  919. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +4 -2
  920. package/src/private/webapis/dom/oldstylecollections/NodeList.js +10 -0
  921. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +4 -3
  922. package/src/private/webapis/errors/DOMException.js +50 -50
  923. package/src/private/webapis/geometry/DOMRectList.js +12 -0
  924. package/src/private/webapis/geometry/DOMRectList.js.flow +3 -1
  925. package/src/private/webapis/html/events/MessageEvent.js +3 -3
  926. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
  927. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +13 -0
  928. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +3 -7
  929. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +5 -5
  930. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
  931. package/src/private/webapis/mutationobserver/MutationObserver.js +7 -7
  932. package/src/private/webapis/mutationobserver/MutationRecord.js +12 -0
  933. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +5 -7
  934. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +5 -5
  935. package/src/private/webapis/performance/EventTiming.js +3 -3
  936. package/src/private/webapis/performance/PerformanceEntry.js +3 -3
  937. package/src/private/webapis/performance/PerformanceObserver.js +4 -4
  938. package/src/private/webapis/performance/ResourceTiming.js +13 -13
  939. package/src/private/webapis/performance/UserTiming.js +3 -3
  940. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  941. package/src/private/webapis/performance/specs/NativePerformance.js +26 -20
  942. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  943. package/src/private/webapis/websockets/events/CloseEvent.js +3 -3
  944. package/src/private/webapis/xhr/events/ProgressEvent.js +3 -3
  945. package/src/react-private-interface.js +145 -0
  946. package/src/react-private-interface.js.flow +48 -0
  947. package/src/setup-env.js +22 -0
  948. package/src/types/globals.d.ts +35 -3
  949. package/src/unstable-internals-do-not-use.d.ts +214 -0
  950. package/src/unstable-internals-do-not-use.js +76 -0
  951. package/third-party-podspecs/RCT-Folly.podspec +1 -1
  952. package/third-party-podspecs/ReactNativeDependencies.podspec +3 -3
  953. package/third-party-podspecs/glog.podspec +1 -1
  954. package/types/index.d.ts +0 -1
  955. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -4
  956. package/types/public/ReactNativeTypes.d.ts +6 -4
  957. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +0 -38
  958. package/Libraries/Image/AssetRegistry.js +0 -14
  959. package/Libraries/Image/RCTImageShadowView.h +0 -17
  960. package/Libraries/Image/RCTImageShadowView.mm +0 -28
  961. package/Libraries/Image/RCTImageView.h +0 -32
  962. package/Libraries/Image/RCTImageView.mm +0 -507
  963. package/Libraries/Image/RCTImageViewManager.h +0 -17
  964. package/Libraries/Image/RCTImageViewManager.mm +0 -115
  965. package/Libraries/Interaction/InteractionManager.d.ts +0 -87
  966. package/Libraries/Interaction/InteractionManager.js +0 -189
  967. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +0 -35
  968. package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +0 -162
  969. package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +0 -21
  970. package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +0 -64
  971. package/Libraries/Text/RCTTextAttributes.h +0 -107
  972. package/Libraries/Text/RCTTextAttributes.mm +0 -358
  973. package/Libraries/Text/RawText/RCTRawTextShadowView.h +0 -23
  974. package/Libraries/Text/RawText/RCTRawTextShadowView.mm +0 -38
  975. package/Libraries/Text/RawText/RCTRawTextViewManager.h +0 -21
  976. package/Libraries/Text/RawText/RCTRawTextViewManager.mm +0 -32
  977. package/Libraries/Text/Text/RCTTextShadowView.h +0 -33
  978. package/Libraries/Text/Text/RCTTextShadowView.mm +0 -469
  979. package/Libraries/Text/Text/RCTTextView.h +0 -34
  980. package/Libraries/Text/Text/RCTTextView.mm +0 -308
  981. package/Libraries/Text/Text/RCTTextViewManager.h +0 -19
  982. package/Libraries/Text/Text/RCTTextViewManager.mm +0 -97
  983. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +0 -21
  984. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +0 -67
  985. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +0 -21
  986. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +0 -30
  987. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +0 -30
  988. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +0 -367
  989. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +0 -68
  990. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +0 -858
  991. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +0 -17
  992. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +0 -181
  993. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +0 -17
  994. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +0 -24
  995. package/Libraries/Text/TextInput/RCTInputAccessoryView.h +0 -22
  996. package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +0 -82
  997. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +0 -17
  998. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +0 -78
  999. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +0 -17
  1000. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +0 -33
  1001. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +0 -21
  1002. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +0 -43
  1003. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +0 -21
  1004. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +0 -35
  1005. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +0 -17
  1006. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +0 -42
  1007. package/Libraries/Text/VirtualText/RCTVirtualTextView.h +0 -28
  1008. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +0 -17
  1009. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +0 -30
  1010. package/Libraries/Utilities/SceneTracker.js +0 -42
  1011. package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +0 -21
  1012. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +0 -57
  1013. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +0 -21
  1014. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +0 -27
  1015. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +0 -25
  1016. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +0 -50
  1017. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +0 -23
  1018. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +0 -35
  1019. package/Libraries/Wrapper/RCTWrapper.h +0 -73
  1020. package/Libraries/Wrapper/RCTWrapperShadowView.h +0 -27
  1021. package/Libraries/Wrapper/RCTWrapperShadowView.m +0 -138
  1022. package/Libraries/Wrapper/RCTWrapperView.h +0 -42
  1023. package/Libraries/Wrapper/RCTWrapperView.m +0 -99
  1024. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +0 -30
  1025. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +0 -137
  1026. package/Libraries/Wrapper/RCTWrapperViewManager.h +0 -25
  1027. package/Libraries/Wrapper/RCTWrapperViewManager.m +0 -31
  1028. package/React/Base/RCTRootContentView.h +0 -43
  1029. package/React/Base/RCTRootContentView.m +0 -111
  1030. package/React/Base/RCTRootViewInternal.h +0 -40
  1031. package/React/CxxBridge/RCTCxxBridge.mm +0 -1572
  1032. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +0 -25
  1033. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +0 -34
  1034. package/React/CxxBridge/RCTObjcExecutor.h +0 -34
  1035. package/React/CxxBridge/RCTObjcExecutor.mm +0 -150
  1036. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -34
  1037. package/React/CxxModule/DispatchMessageQueueThread.h +0 -50
  1038. package/React/CxxModule/RCTCxxMethod.h +0 -17
  1039. package/React/CxxModule/RCTCxxMethod.mm +0 -147
  1040. package/React/CxxModule/RCTNativeModule.h +0 -34
  1041. package/React/CxxModule/RCTNativeModule.mm +0 -241
  1042. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +0 -205
  1043. package/React/Tests/Text/RCTTextAttributesTest.mm +0 -49
  1044. package/React/Views/RCTActivityIndicatorView.h +0 -16
  1045. package/React/Views/RCTActivityIndicatorView.m +0 -26
  1046. package/React/Views/RCTActivityIndicatorViewManager.h +0 -23
  1047. package/React/Views/RCTActivityIndicatorViewManager.m +0 -65
  1048. package/React/Views/RCTDebuggingOverlayManager.h +0 -17
  1049. package/React/Views/RCTDebuggingOverlayManager.m +0 -68
  1050. package/React/Views/RCTModalHostView.h +0 -72
  1051. package/React/Views/RCTModalHostView.m +0 -302
  1052. package/React/Views/RCTModalHostViewController.m +0 -107
  1053. package/React/Views/RCTModalHostViewManager.m +0 -131
  1054. package/React/Views/RCTModalManager.h +0 -22
  1055. package/React/Views/RCTModalManager.m +0 -46
  1056. package/React/Views/RCTRootShadowView.h +0 -35
  1057. package/React/Views/RCTRootShadowView.m +0 -53
  1058. package/React/Views/RCTShadowView+Internal.h +0 -18
  1059. package/React/Views/RCTShadowView+Internal.m +0 -23
  1060. package/React/Views/RCTSwitch.h +0 -24
  1061. package/React/Views/RCTSwitch.m +0 -26
  1062. package/React/Views/RCTSwitchManager.h +0 -19
  1063. package/React/Views/RCTSwitchManager.m +0 -72
  1064. package/React/Views/RCTTVView.h +0 -105
  1065. package/React/Views/RCTTVView.m +0 -602
  1066. package/React/Views/RefreshControl/RCTRefreshControl.h +0 -26
  1067. package/React/Views/RefreshControl/RCTRefreshControl.m +0 -232
  1068. package/React/Views/RefreshControl/RCTRefreshControlManager.h +0 -19
  1069. package/React/Views/RefreshControl/RCTRefreshControlManager.m +0 -49
  1070. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.h +0 -21
  1071. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +0 -57
  1072. package/React/Views/SafeAreaView/RCTSafeAreaView.h +0 -27
  1073. package/React/Views/SafeAreaView/RCTSafeAreaView.m +0 -79
  1074. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.h +0 -25
  1075. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.m +0 -25
  1076. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.h +0 -21
  1077. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +0 -32
  1078. package/React/Views/ScrollView/RCTScrollContentShadowView.h +0 -19
  1079. package/React/Views/ScrollView/RCTScrollContentShadowView.m +0 -35
  1080. package/React/Views/ScrollView/RCTScrollContentView.h +0 -19
  1081. package/React/Views/ScrollView/RCTScrollContentView.m +0 -36
  1082. package/React/Views/ScrollView/RCTScrollContentViewManager.h +0 -17
  1083. package/React/Views/ScrollView/RCTScrollContentViewManager.m +0 -31
  1084. package/React/Views/ScrollView/RCTScrollView.m +0 -1508
  1085. package/React/Views/ScrollView/RCTScrollViewManager.h +0 -25
  1086. package/React/Views/ScrollView/RCTScrollViewManager.m +0 -208
  1087. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +0 -251
  1088. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +0 -315
  1089. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +0 -51
  1090. package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +0 -89
  1091. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +0 -736
  1092. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +0 -221
  1093. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -399
  1094. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactZIndexedViewGroup.kt +0 -35
  1095. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -346
  1096. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -666
  1097. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -147
  1098. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +0 -113
  1099. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +0 -614
  1100. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +0 -1949
  1101. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +0 -1646
  1102. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +0 -1744
  1103. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +0 -51
  1104. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.java +0 -33
  1105. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +0 -33
  1106. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +0 -37
  1107. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +0 -47
  1108. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.java +0 -41
  1109. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +0 -33
  1110. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +0 -37
  1111. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +0 -39
  1112. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +0 -35
  1113. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +0 -49
  1114. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +0 -45
  1115. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +0 -35
  1116. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +0 -928
  1117. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +0 -33
  1118. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +0 -35
  1119. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +0 -35
  1120. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +0 -43
  1121. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +0 -35
  1122. package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.cpp +0 -23
  1123. package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.h +0 -37
  1124. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +0 -135
  1125. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +0 -72
  1126. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +0 -143
  1127. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +0 -55
  1128. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +0 -78
  1129. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +0 -39
  1130. package/ReactCommon/hermes/inspector-modern/chrome/tests/ConnectionDemuxTests.cpp +0 -148
  1131. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +0 -168
  1132. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +0 -416
  1133. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +0 -31
  1134. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +0 -134
  1135. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +0 -290
  1136. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +0 -62
  1137. package/ReactCommon/react/renderer/core/RawPropsKey.h +0 -39
  1138. package/ReactCommon/react/renderer/mounting/internal/DiffMap.h +0 -170
  1139. package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +0 -95
  1140. package/ReactCommon/react/renderer/mounting/internal/TinyMap.h +0 -147
  1141. package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +0 -154
  1142. package/interface.js +0 -21
  1143. package/jest-preset.js +0 -26
  1144. package/rn-get-polyfills.js +0 -13
  1145. package/sdks/.hermesversion +0 -1
  1146. package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +0 -13
  1147. package/types/tsconfig.json +0 -15
  1148. /package/ReactCommon/{cxxreact → react/utils}/MoveWrapper.h +0 -0
@@ -34,6 +34,7 @@ import {
34
34
  EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY,
35
35
  EVENT_TARGET_GET_THE_PARENT_KEY,
36
36
  INTERNAL_DISPATCH_METHOD_KEY,
37
+ getEventTargetParent,
37
38
  } from './internals/EventTargetInternals';
38
39
 
39
40
  export type EventCallback = (event: Event) => void;
@@ -54,9 +55,9 @@ export type AddEventListenerOptions = Readonly<{
54
55
  }>;
55
56
 
56
57
  type EventListenerRegistration = {
57
- +callback: EventListener,
58
- +passive: boolean,
59
- +once: boolean,
58
+ readonly callback: EventListener,
59
+ readonly passive: boolean,
60
+ readonly once: boolean,
60
61
  removed: boolean,
61
62
  };
62
63
 
@@ -206,7 +207,7 @@ export default class EventTarget {
206
207
 
207
208
  setIsTrusted(event, false);
208
209
 
209
- dispatch(this, event);
210
+ dispatch(this, event, false);
210
211
 
211
212
  return !event.defaultPrevented;
212
213
  }
@@ -217,10 +218,14 @@ export default class EventTarget {
217
218
  *
218
219
  * Called during event dispatch before explicitly registered listeners.
219
220
  * Return a callback to be invoked as an event listener, or null.
221
+ *
222
+ * `event.type` is the event type. `isCapture` distinguishes the capture pass
223
+ * from the bubble pass — it cannot be derived from `event.eventPhase`,
224
+ * which is `AT_TARGET` during both passes through the target node.
220
225
  */
221
226
  // $FlowExpectedError[unsupported-syntax]
222
227
  [EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY](
223
- eventType: string,
228
+ event: Event,
224
229
  isCapture: boolean,
225
230
  ): EventCallback | null {
226
231
  return null;
@@ -239,14 +244,27 @@ export default class EventTarget {
239
244
  }
240
245
 
241
246
  /**
242
- * This is "protected" method to dispatch trusted events.
247
+ * This is "protected" method to dispatch trusted events. Mirrors the
248
+ * `dispatchEvent` return contract: returns `false` if the event was
249
+ * canceled (i.e. `event.defaultPrevented`), otherwise `true`.
243
250
  */
244
251
  // $FlowExpectedError[unsupported-syntax]
245
- [INTERNAL_DISPATCH_METHOD_KEY](event: Event): void {
246
- dispatch(this, event);
252
+ [INTERNAL_DISPATCH_METHOD_KEY](
253
+ event: Event,
254
+ rethrowListenerErrors?: boolean,
255
+ ): boolean {
256
+ dispatch(this, event, rethrowListenerErrors === true);
257
+ return !event.defaultPrevented;
247
258
  }
248
259
  }
249
260
 
261
+ // $FlowFixMe[cannot-write]
262
+ Object.defineProperties(EventTarget.prototype, {
263
+ addEventListener: {enumerable: true},
264
+ removeEventListener: {enumerable: true},
265
+ dispatchEvent: {enumerable: true},
266
+ });
267
+
250
268
  setPlatformObject(EventTarget);
251
269
 
252
270
  function validateCallback(callback: EventListener, methodName: string): void {
@@ -272,13 +290,26 @@ function getDefaultPassiveValue(
272
290
  * Implements the "event dispatch" concept
273
291
  * (see https://dom.spec.whatwg.org/#concept-event-dispatch).
274
292
  */
275
- function dispatch(eventTarget: EventTarget, event: Event): void {
293
+ function dispatch(
294
+ eventTarget: EventTarget,
295
+ event: Event,
296
+ rethrowErrors: boolean,
297
+ ): void {
276
298
  setEventDispatchFlag(event, true);
277
299
 
278
300
  const eventPath = getEventPath(eventTarget, event);
279
301
  setComposedPath(event, eventPath);
280
302
  setTarget(event, eventTarget);
281
303
 
304
+ // When `rethrowErrors` is set (trusted dispatch of native UI events), collect
305
+ // the first listener error and rethrow it synchronously once the dispatch
306
+ // completes, matching the legacy plugin system's `rethrowCaughtError`
307
+ // behavior. Otherwise (the public `dispatchEvent` API, XHR, etc.) listener
308
+ // errors are reported to the global error handler per the DOM spec.
309
+ const errorState: ListenerErrorState | null = rethrowErrors
310
+ ? {hasError: false, error: undefined}
311
+ : null;
312
+
282
313
  for (let i = eventPath.length - 1; i >= 0; i--) {
283
314
  if (getStopPropagationFlag(event)) {
284
315
  break;
@@ -289,7 +320,7 @@ function dispatch(eventTarget: EventTarget, event: Event): void {
289
320
  event,
290
321
  target === eventTarget ? Event.AT_TARGET : Event.CAPTURING_PHASE,
291
322
  );
292
- invoke(target, event, Event.CAPTURING_PHASE);
323
+ invoke(target, event, Event.CAPTURING_PHASE, errorState);
293
324
  }
294
325
 
295
326
  for (const target of eventPath) {
@@ -307,7 +338,7 @@ function dispatch(eventTarget: EventTarget, event: Event): void {
307
338
  event,
308
339
  target === eventTarget ? Event.AT_TARGET : Event.BUBBLING_PHASE,
309
340
  );
310
- invoke(target, event, Event.BUBBLING_PHASE);
341
+ invoke(target, event, Event.BUBBLING_PHASE, errorState);
311
342
  }
312
343
 
313
344
  setEventPhase(event, Event.NONE);
@@ -317,6 +348,12 @@ function dispatch(eventTarget: EventTarget, event: Event): void {
317
348
  setEventDispatchFlag(event, false);
318
349
  setStopImmediatePropagationFlag(event, false);
319
350
  setStopPropagationFlag(event, false);
351
+
352
+ // Trusted dispatch: surface the first listener error synchronously, after the
353
+ // event has been fully cleaned up.
354
+ if (errorState != null && errorState.hasError) {
355
+ throw errorState.error;
356
+ }
320
357
  }
321
358
 
322
359
  /**
@@ -334,8 +371,7 @@ function getEventPath(
334
371
 
335
372
  while (target != null) {
336
373
  path.push(target);
337
- // $FlowExpectedError[prop-missing]
338
- target = target[EVENT_TARGET_GET_THE_PARENT_KEY]();
374
+ target = getEventTargetParent(target);
339
375
  }
340
376
 
341
377
  return path;
@@ -349,32 +385,44 @@ function invoke(
349
385
  eventTarget: EventTarget,
350
386
  event: Event,
351
387
  eventPhase: EventPhase,
388
+ errorState: ListenerErrorState | null,
352
389
  ) {
353
390
  const isCapture = eventPhase === Event.CAPTURING_PHASE;
354
391
 
355
392
  setCurrentTarget(event, eventTarget);
356
393
 
357
- // Build the list of listeners to invoke:
358
- // When the flag is enabled, prop-based listeners fire first, then
359
- // explicitly registered addEventListener listeners.
360
- // When disabled, only addEventListener listeners are used (legacy path).
361
- let listeners: Array<EventListenerRegistration>;
362
-
363
394
  if (ReactNativeFeatureFlags.enableNativeEventTargetEventDispatching()) {
395
+ // Resolve the prop-based listener. Pass the event so subclasses can read
396
+ // its `type` and any pre-resolved internal slots; pass `isCapture`
397
+ // separately because it can't be derived from `event.eventPhase` (which
398
+ // is `AT_TARGET` during both passes through the target node).
364
399
  // $FlowExpectedError[prop-missing]
365
400
  const propListener: EventCallback | null = eventTarget[
366
401
  EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY
367
- ](event.type, isCapture);
402
+ ](event, isCapture);
368
403
 
369
404
  const listenersByType = getListenersForPhase(eventTarget, isCapture);
370
405
  const maybeListeners = listenersByType?.get(event.type);
371
406
 
372
- if (propListener == null && maybeListeners == null) {
407
+ // Fast path: only a prop listener (no `addEventListener` listeners).
408
+ // This is the overwhelmingly common case for React-driven dispatch.
409
+ if (maybeListeners == null) {
410
+ if (propListener == null) {
411
+ return;
412
+ }
413
+ const currentEvent = global.event;
414
+ global.event = event;
415
+ try {
416
+ propListener.call(eventTarget, event);
417
+ } catch (error) {
418
+ handleListenerError(error, errorState);
419
+ }
420
+ global.event = currentEvent;
373
421
  return;
374
422
  }
375
423
 
376
- listeners = [];
377
-
424
+ // Slow path: combine prop listener + addEventListener listeners.
425
+ const listeners: Array<EventListenerRegistration> = [];
378
426
  if (propListener != null) {
379
427
  listeners.push({
380
428
  callback: propListener,
@@ -383,21 +431,35 @@ function invoke(
383
431
  removed: false,
384
432
  });
385
433
  }
386
-
387
- if (maybeListeners != null) {
388
- for (const registration of maybeListeners.values()) {
389
- listeners.push(registration);
390
- }
391
- }
392
- } else {
393
- const listenersByType = getListenersForPhase(eventTarget, isCapture);
394
- const maybeListeners = listenersByType?.get(event.type);
395
- if (maybeListeners == null) {
396
- return;
434
+ for (const registration of maybeListeners.values()) {
435
+ listeners.push(registration);
397
436
  }
398
- listeners = Array.from(maybeListeners.values());
437
+ invokeListeners(eventTarget, event, listeners, isCapture, errorState);
438
+ return;
399
439
  }
400
440
 
441
+ // Legacy path (flag OFF): only `addEventListener` listeners.
442
+ const listenersByType = getListenersForPhase(eventTarget, isCapture);
443
+ const maybeListeners = listenersByType?.get(event.type);
444
+ if (maybeListeners == null) {
445
+ return;
446
+ }
447
+ invokeListeners(
448
+ eventTarget,
449
+ event,
450
+ Array.from(maybeListeners.values()),
451
+ isCapture,
452
+ errorState,
453
+ );
454
+ }
455
+
456
+ function invokeListeners(
457
+ eventTarget: EventTarget,
458
+ event: Event,
459
+ listeners: Array<EventListenerRegistration>,
460
+ isCapture: boolean,
461
+ errorState: ListenerErrorState | null,
462
+ ): void {
401
463
  for (const listener of listeners) {
402
464
  if (listener.removed) {
403
465
  continue;
@@ -424,8 +486,7 @@ function invoke(
424
486
  callback.handleEvent(event);
425
487
  }
426
488
  } catch (error) {
427
- // TODO: replace with `reportError` when it's available.
428
- console.error(error);
489
+ handleListenerError(error, errorState);
429
490
  }
430
491
 
431
492
  if (listener.passive) {
@@ -479,3 +540,51 @@ function setEventDispatchFlag(event: Event, value: boolean): void {
479
540
  // $FlowExpectedError[prop-missing]
480
541
  event[EVENT_DISPATCH_FLAG] = value;
481
542
  }
543
+
544
+ type ListenerErrorState = {hasError: boolean, error: unknown};
545
+
546
+ /**
547
+ * Handle an error thrown by an event listener without aborting the rest of the
548
+ * dispatch.
549
+ *
550
+ * For trusted dispatch of native UI events (`errorState` is non-null), the
551
+ * first error is recorded so `dispatch` can rethrow it synchronously once the
552
+ * dispatch completes, matching the legacy plugin path (React's
553
+ * runEventsInBatch + `rethrowCaughtError`). This keeps listener errors
554
+ * catchable by React error boundaries and the native event call, instead of
555
+ * escaping as deferred uncaught exceptions.
556
+ *
557
+ * Otherwise (`errorState` is null: the public `dispatchEvent` API, XHR, etc.)
558
+ * the DOM spec requires reporting the exception to the global error handler
559
+ * without throwing, so it is deferred via `reportListenerError`.
560
+ */
561
+ function handleListenerError(
562
+ error: unknown,
563
+ errorState: ListenerErrorState | null,
564
+ ): void {
565
+ if (errorState != null) {
566
+ if (!errorState.hasError) {
567
+ errorState.hasError = true;
568
+ errorState.error = error;
569
+ }
570
+ return;
571
+ }
572
+
573
+ reportListenerError(error);
574
+ }
575
+
576
+ /**
577
+ * Surface a listener error to the global error handler without aborting the
578
+ * rest of the dispatch. Throws in a new task so the error becomes an uncaught
579
+ * exception. Used for dispatches that follow the DOM `dispatchEvent` contract
580
+ * (the public API, XHR, etc.), where errors are reported rather than thrown
581
+ * synchronously.
582
+ *
583
+ * `setTimeout(0)` schedules a new macrotask; the throw inside it has no
584
+ * catcher above, so it bubbles up to the host's unhandled-error reporter.
585
+ */
586
+ function reportListenerError(error: unknown): void {
587
+ setTimeout(() => {
588
+ throw error;
589
+ }, 0);
590
+ }
@@ -35,6 +35,42 @@ export const TARGET_KEY: symbol = Symbol('target');
35
35
  // platform using the original timestamps.
36
36
  export const EVENT_INIT_TIMESTAMP_KEY: symbol = Symbol('eventInitTimestamp');
37
37
 
38
+ // Internal slots used by the React Native renderer to pass pre-resolved
39
+ // React prop names ("onPointerUp" / "onPointerUpCapture") through the event
40
+ // to subclasses of `EventTarget` (i.e. `ReactNativeElement`). This avoids
41
+ // recomputing `getEventTypePropName(event.type, isCapture)` per ancestor per
42
+ // phase during dispatch, which is hot.
43
+ export const BUBBLED_PROP_NAME_KEY: symbol = Symbol('bubbledPropName');
44
+ export const CAPTURED_PROP_NAME_KEY: symbol = Symbol('capturedPropName');
45
+
46
+ export function getBubbledPropName(event: Event): string | null | void {
47
+ // $FlowExpectedError[prop-missing]
48
+ return event[BUBBLED_PROP_NAME_KEY];
49
+ }
50
+
51
+ export function setBubbledPropName(
52
+ event: Event,
53
+ propName: string | null,
54
+ ): void {
55
+ // $FlowExpectedError[prop-missing]
56
+ // $FlowExpectedError[invalid-computed-prop]
57
+ event[BUBBLED_PROP_NAME_KEY] = propName;
58
+ }
59
+
60
+ export function getCapturedPropName(event: Event): string | null | void {
61
+ // $FlowExpectedError[prop-missing]
62
+ return event[CAPTURED_PROP_NAME_KEY];
63
+ }
64
+
65
+ export function setCapturedPropName(
66
+ event: Event,
67
+ propName: string | null,
68
+ ): void {
69
+ // $FlowExpectedError[prop-missing]
70
+ // $FlowExpectedError[invalid-computed-prop]
71
+ event[CAPTURED_PROP_NAME_KEY] = propName;
72
+ }
73
+
38
74
  export function getCurrentTarget(event: Event): EventTarget | null {
39
75
  // $FlowExpectedError[prop-missing]
40
76
  return event[CURRENT_TARGET_KEY];
@@ -47,18 +47,53 @@ export const INTERNAL_DISPATCH_METHOD_KEY: symbol = Symbol(
47
47
  'EventTarget[dispatch]',
48
48
  );
49
49
 
50
+ const EVENT_DISPATCH_PARENT_CACHE_KEY: symbol = Symbol(
51
+ 'EventTarget[dispatch parent cache]',
52
+ );
53
+
54
+ export function getEventTargetParent(target: EventTarget): EventTarget | null {
55
+ // The slot is `undefined` until populated; a populated slot may hold
56
+ // `null` (no parent), so check against `undefined` rather than nullishness.
57
+ // $FlowExpectedError[prop-missing] symbol-keyed slot
58
+ const cached: EventTarget | null | void =
59
+ // $FlowExpectedError[prop-missing] symbol-keyed slot
60
+ target[EVENT_DISPATCH_PARENT_CACHE_KEY];
61
+ if (cached !== undefined) {
62
+ return cached;
63
+ }
64
+ // $FlowExpectedError[prop-missing] symbol-keyed method
65
+ const parent: EventTarget | null = target[EVENT_TARGET_GET_THE_PARENT_KEY]();
66
+ // $FlowExpectedError[prop-missing] symbol-keyed slot
67
+ target[EVENT_DISPATCH_PARENT_CACHE_KEY] = parent;
68
+ return parent;
69
+ }
70
+
50
71
  /**
51
- * Dispatches a trusted event to the given event target.
72
+ * Dispatches a trusted event to the given event target. Mirrors the
73
+ * `dispatchEvent` method on `EventTarget`: returns `false` if the event
74
+ * was canceled (i.e. `event.defaultPrevented`), otherwise `true`.
52
75
  *
53
76
  * This should only be used by the runtime to dispatch native events to
54
77
  * JavaScript.
78
+ *
79
+ * When `rethrowListenerErrors` is `true`, the first error thrown by a listener
80
+ * is rethrown synchronously once dispatch completes (matching the legacy
81
+ * plugin system's `rethrowCaughtError` behavior). This is used by the renderer
82
+ * for native UI events so listener errors stay catchable by React error
83
+ * boundaries and the native event call. When omitted/`false`, listener errors
84
+ * are reported to the global error handler per the DOM spec (used by XHR and
85
+ * other web API event targets).
55
86
  */
56
87
  export function dispatchTrustedEvent(
57
88
  eventTarget: EventTarget,
58
89
  event: Event,
59
- ): void {
90
+ rethrowListenerErrors?: boolean,
91
+ ): boolean {
60
92
  setIsTrusted(event, true);
61
93
 
62
94
  // $FlowExpectedError[prop-missing]
63
- return eventTarget[INTERNAL_DISPATCH_METHOD_KEY](event);
95
+ return eventTarget[INTERNAL_DISPATCH_METHOD_KEY](
96
+ event,
97
+ rethrowListenerErrors,
98
+ );
64
99
  }
@@ -139,3 +139,14 @@ export function createReactNativeDocument(
139
139
  const document = new ReactNativeDocument(rootTag, instanceHandle);
140
140
  return document;
141
141
  }
142
+
143
+ export const ReactNativeDocument_public: typeof ReactNativeDocument =
144
+ // $FlowExpectedError[incompatible-type]
145
+ function Document() {
146
+ throw new TypeError(
147
+ "Failed to construct 'Document': Nodes cannot be imperatively created in React Native",
148
+ );
149
+ };
150
+
151
+ // $FlowExpectedError[prop-missing]
152
+ ReactNativeDocument_public.prototype = ReactNativeDocument.prototype;
@@ -19,8 +19,8 @@ import type {
19
19
  MeasureInWindowOnSuccessCallback,
20
20
  MeasureLayoutOnSuccessCallback,
21
21
  MeasureOnSuccessCallback,
22
- NativeMethods,
23
22
  } from '../../../types/HostInstance';
23
+ import type Event from '../events/Event';
24
24
  import type {InstanceHandle} from './internals/NodeInternals';
25
25
  import type ReactNativeDocument from './ReactNativeDocument';
26
26
 
@@ -30,6 +30,10 @@ import {create as createAttributePayload} from '../../../../../Libraries/ReactNa
30
30
  import warnForStyleProps from '../../../../../Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps';
31
31
  import * as ReactNativeFeatureFlags from '../../../featureflags/ReactNativeFeatureFlags';
32
32
  import {getEventTypePropName} from '../../../renderer/events/ReactNativeEventTypeMapping';
33
+ import {
34
+ getBubbledPropName,
35
+ getCapturedPropName,
36
+ } from '../events/internals/EventInternals';
33
37
  import {EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY} from '../events/internals/EventTargetInternals';
34
38
  import {
35
39
  getCurrentProps,
@@ -62,7 +66,8 @@ const noop = () => {};
62
66
  // was slower than this method because the engine has to create an object than
63
67
  // we then discard to create a new one.
64
68
 
65
- class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
69
+ /** @build-types protected-constructor */
70
+ class ReactNativeElement extends ReadOnlyElement {
66
71
  // These need to be accessible from `ReactFabricPublicInstanceUtils`.
67
72
  __nativeTag: number;
68
73
  __internalInstanceHandle: InstanceHandle;
@@ -144,6 +149,9 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
144
149
  * React Native compatibility methods
145
150
  */
146
151
 
152
+ /**
153
+ * Removes focus from an input or view. This is the opposite of `focus()`.
154
+ */
147
155
  blur(): void {
148
156
  if (TextInputState.isTextInput(this)) {
149
157
  TextInputState.blurTextInput(this);
@@ -152,6 +160,10 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
152
160
  }
153
161
  }
154
162
 
163
+ /**
164
+ * Requests focus for the given input or view. The exact behavior triggered
165
+ * will depend on the platform and type of view.
166
+ */
155
167
  focus() {
156
168
  if (TextInputState.isTextInput(this)) {
157
169
  TextInputState.focusTextInput(this);
@@ -160,6 +172,23 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
160
172
  }
161
173
  }
162
174
 
175
+ /**
176
+ * Determines the location on screen, width, and height of the given view and
177
+ * returns the values via an async callback. If successful, the callback will
178
+ * be called with the following arguments:
179
+ *
180
+ * - x
181
+ * - y
182
+ * - width
183
+ * - height
184
+ * - pageX
185
+ * - pageY
186
+ *
187
+ * Note that these measurements are not available until after the rendering
188
+ * has been completed in native. If you need the measurements as soon as
189
+ * possible, consider using the [`onLayout`
190
+ * prop](docs/view.html#onlayout) instead.
191
+ */
163
192
  measure(callback: MeasureOnSuccessCallback) {
164
193
  const node = getNativeElementReference(this);
165
194
  if (node != null) {
@@ -167,6 +196,21 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
167
196
  }
168
197
  }
169
198
 
199
+ /**
200
+ * Determines the location of the given view in the window and returns the
201
+ * values via an async callback. If the React root view is embedded in
202
+ * another native view, this will give you the absolute coordinates. If
203
+ * successful, the callback will be called with the following
204
+ * arguments:
205
+ *
206
+ * - x
207
+ * - y
208
+ * - width
209
+ * - height
210
+ *
211
+ * Note that these measurements are not available until after the rendering
212
+ * has been completed in native.
213
+ */
170
214
  measureInWindow(callback: MeasureInWindowOnSuccessCallback) {
171
215
  const node = getNativeElementReference(this);
172
216
  if (node != null) {
@@ -174,6 +218,12 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
174
218
  }
175
219
  }
176
220
 
221
+ /**
222
+ * Like [`measure()`](#measure), but measures the view relative an ancestor,
223
+ * specified as `relativeToNativeComponentRef`. This means that the returned x, y
224
+ * are relative to the origin x, y of the ancestor view.
225
+ * _Can also be called with a relativeNativeNodeHandle but is deprecated._
226
+ */
177
227
  measureLayout(
178
228
  relativeToNativeNode: number | HostInstance,
179
229
  onSuccess: MeasureLayoutOnSuccessCallback,
@@ -202,6 +252,12 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
202
252
  }
203
253
  }
204
254
 
255
+ /**
256
+ * This function sends props straight to native. They will not participate in
257
+ * future diff process - this means that if you do not include them in the
258
+ * next render, they will remain active (see [Direct
259
+ * Manipulation](https://reactnative.dev/docs/the-new-architecture/direct-manipulation-new-architecture)).
260
+ */
205
261
  setNativeProps(nativeProps: {...}): void {
206
262
  if (__DEV__) {
207
263
  warnForStyleProps(nativeProps, this.__viewConfig.validAttributes);
@@ -223,16 +279,29 @@ class ReactNativeElement extends ReadOnlyElement implements NativeMethods {
223
279
  // This is called by EventTarget.invoke() before explicit addEventListener
224
280
  // listeners, allowing prop-based handlers to be resolved at dispatch time
225
281
  // without registering them via addEventListener during commit.
282
+ //
283
+ // Fast path: when `event` is a `LegacySyntheticEvent` (always the case for
284
+ // events created by `dispatchNativeEvent`), the React prop names have been
285
+ // pre-resolved on the event during construction. Reading them directly
286
+ // avoids the `getEventTypePropName(eventType, isCapture)` hash lookup per
287
+ // ancestor per phase.
226
288
  // $FlowExpectedError[unsupported-syntax]
227
289
  [EVENT_TARGET_GET_DECLARATIVE_LISTENER_KEY](
228
- eventType: string,
290
+ event: Event,
229
291
  isCapture: boolean,
230
292
  ): ((event: Event) => void) | null {
231
293
  const currentProps = getCurrentProps(this);
232
294
  if (currentProps == null) {
233
295
  return null;
234
296
  }
235
- const propName = getEventTypePropName(eventType, isCapture);
297
+ let propName = isCapture
298
+ ? getCapturedPropName(event)
299
+ : getBubbledPropName(event);
300
+ if (propName === undefined) {
301
+ // The event wasn't created via `dispatchNativeEvent` (e.g.,
302
+ // user-dispatched). Fall back to the mapping table.
303
+ propName = getEventTypePropName(event.type, isCapture);
304
+ }
236
305
  if (propName == null) {
237
306
  return null;
238
307
  }
@@ -274,3 +343,35 @@ function replaceConstructorWithoutSuper(
274
343
  export default replaceConstructorWithoutSuper(
275
344
  ReactNativeElement,
276
345
  ) as typeof ReactNativeElement;
346
+
347
+ export const ReactNativeElement_public: typeof ReactNativeElement =
348
+ // $FlowExpectedError[incompatible-type]
349
+ function HTMLElement() {
350
+ throw new TypeError(
351
+ "Failed to construct 'HTMLElement': Nodes cannot be imperatively created in React Native",
352
+ );
353
+ };
354
+
355
+ // $FlowExpectedError[prop-missing]
356
+ ReactNativeElement_public.prototype = ReactNativeElement.prototype;
357
+
358
+ // The public imperative EventTarget API (`addEventListener`,
359
+ // `removeEventListener`, `dispatchEvent`) is only inherited by this final class
360
+ // when `enableNativeEventTargetEventDispatching` is enabled (which makes
361
+ // `ReadOnlyNode` extend `EventTarget`). Until that public API is finalized, it
362
+ // is gated behind `enableImperativeEvents`: when that flag is off we remove
363
+ // those methods from this final class. Native/internal event dispatch does not
364
+ // rely on these public methods, so removing them is safe.
365
+ if (
366
+ ReactNativeFeatureFlags.enableNativeEventTargetEventDispatching() &&
367
+ !ReactNativeFeatureFlags.enableImperativeEvents()
368
+ ) {
369
+ const prototype: interface {
370
+ addEventListener?: unknown,
371
+ removeEventListener?: unknown,
372
+ dispatchEvent?: unknown,
373
+ } = ReactNativeElement.prototype;
374
+ prototype.addEventListener = undefined;
375
+ prototype.removeEventListener = undefined;
376
+ prototype.dispatchEvent = undefined;
377
+ }
@@ -70,3 +70,14 @@ export default class ReadOnlyCharacterData extends ReadOnlyNode {
70
70
  return data.slice(offset, offset + adjustedCount);
71
71
  }
72
72
  }
73
+
74
+ export const ReadOnlyCharacterData_public: typeof ReadOnlyCharacterData =
75
+ // $FlowExpectedError[incompatible-type]
76
+ function CharacterData() {
77
+ throw new TypeError(
78
+ "Failed to construct 'CharacterData': Illegal constructor",
79
+ );
80
+ };
81
+
82
+ // $FlowExpectedError[prop-missing]
83
+ ReadOnlyCharacterData_public.prototype = ReadOnlyCharacterData.prototype;
@@ -245,3 +245,12 @@ export function getBoundingClientRect(
245
245
  // Empty rect if any of the above failed
246
246
  return new DOMRect(0, 0, 0, 0);
247
247
  }
248
+
249
+ export const ReadOnlyElement_public: typeof ReadOnlyElement =
250
+ // $FlowExpectedError[incompatible-type]
251
+ function Element() {
252
+ throw new TypeError("Failed to construct 'Element': Illegal constructor");
253
+ };
254
+
255
+ // $FlowExpectedError[prop-missing]
256
+ ReadOnlyElement_public.prototype = ReadOnlyElement.prototype;