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
@@ -9,13 +9,12 @@ package com.facebook.react.views.text.internal.span
9
9
 
10
10
  import android.graphics.Canvas
11
11
  import android.text.Layout
12
- import android.text.style.UpdateAppearance
13
12
 
14
13
  /**
15
- * May be overridden to implement character styles which are applied by [PreparedLayoutTextView]
16
- * during the drawing of text, against the underlying Android canvas
14
+ * A span which draws a static effect on top of text. [onPreDraw] and [onDraw] hooks are called
15
+ * during [PreparedLayoutTextView] drawing, providing glyph layout information for custom rendering.
17
16
  */
18
- public abstract class DrawCommandSpan : UpdateAppearance, ReactSpan {
17
+ public abstract class CanvasEffectSpan : TextEffectSpan {
19
18
  /**
20
19
  * Called before the text is drawn. This happens after the Paragraph component has drawn its
21
20
  * background, but may be called before text spans with their own background color are drawn.
@@ -33,13 +33,30 @@ internal class CustomStyleSpan(
33
33
  val fontFeatureSettings: String?,
34
34
  val fontFamily: String?,
35
35
  private val assetManager: AssetManager,
36
+ private val fontWeightAdjustment: Int = 0,
36
37
  ) : MetricAffectingSpan(), ReactSpan {
37
38
  override fun updateDrawState(ds: TextPaint) {
38
- apply(ds, privateStyle, privateWeight, fontFeatureSettings, fontFamily, assetManager)
39
+ apply(
40
+ ds,
41
+ privateStyle,
42
+ privateWeight,
43
+ fontFeatureSettings,
44
+ fontFamily,
45
+ assetManager,
46
+ fontWeightAdjustment,
47
+ )
39
48
  }
40
49
 
41
50
  override fun updateMeasureState(paint: TextPaint) {
42
- apply(paint, privateStyle, privateWeight, fontFeatureSettings, fontFamily, assetManager)
51
+ apply(
52
+ paint,
53
+ privateStyle,
54
+ privateWeight,
55
+ fontFeatureSettings,
56
+ fontFamily,
57
+ assetManager,
58
+ fontWeightAdjustment,
59
+ )
43
60
  }
44
61
 
45
62
  val style: Int
@@ -66,12 +83,15 @@ internal class CustomStyleSpan(
66
83
  fontFeatureSettingsParam: String?,
67
84
  family: String?,
68
85
  assetManager: AssetManager,
86
+ fontWeightAdjustment: Int,
69
87
  ) {
70
88
  val typeface =
71
89
  ReactTypefaceUtils.applyStyles(paint.typeface, style, weight, family, assetManager)
90
+ val adjustedTypeface =
91
+ ReactTypefaceUtils.applyFontWeightAdjustment(typeface, fontWeightAdjustment)
72
92
  paint.apply {
73
93
  fontFeatureSettings = fontFeatureSettingsParam
74
- setTypeface(typeface)
94
+ setTypeface(adjustedTypeface)
75
95
  isSubpixelText = true
76
96
  isLinearText = true
77
97
  }
@@ -7,7 +7,34 @@
7
7
 
8
8
  package com.facebook.react.views.text.internal.span
9
9
 
10
- import android.text.style.StrikethroughSpan
10
+ import android.graphics.Canvas
11
+ import android.graphics.Color
12
+ import android.text.Layout
13
+ import com.facebook.react.views.text.TextDecorationStyle
14
+ import com.facebook.react.views.text.drawSpannedDecoration
11
15
 
12
- /** Wraps [StrikethroughSpan] as a [ReactSpan]. */
13
- internal class ReactStrikethroughSpan : StrikethroughSpan(), ReactSpan
16
+ /**
17
+ * Draws a strikethrough whose color and style may differ from the text. The line is painted in
18
+ * `onDraw` after the layout renders its text. We do NOT extend
19
+ * [android.text.style.StrikethroughSpan] here: the framework's `Layout.draw` paints the
20
+ * strikethrough using `paint.color` with no field to override, so painting it ourselves is the only
21
+ * way to get a distinct color or non-solid style.
22
+ *
23
+ * `color == Color.TRANSPARENT` falls back to the text foreground color.
24
+ */
25
+ internal class ReactStrikethroughSpan(
26
+ private val color: Int = Color.TRANSPARENT,
27
+ private val style: TextDecorationStyle = TextDecorationStyle.SOLID,
28
+ ) : CanvasEffectSpan(), ReactSpan {
29
+
30
+ override fun onDraw(start: Int, end: Int, canvas: Canvas, layout: Layout) {
31
+ drawSpannedDecoration(start, end, canvas, layout, color, style) { paint, baseline, _ ->
32
+ // Strikethrough sits near the x-height midline. `fontMetrics.ascent`
33
+ // is negative and `descent` is positive, so the sum / 2 gives a
34
+ // small negative offset from the baseline; the trailing `+ 1f`
35
+ // nudges it down to match the visual position users expect.
36
+ val fm = paint.fontMetrics
37
+ baseline + (fm.ascent + fm.descent) / 2f + 1f
38
+ }
39
+ }
40
+ }
@@ -7,7 +7,29 @@
7
7
 
8
8
  package com.facebook.react.views.text.internal.span
9
9
 
10
- import android.text.style.UnderlineSpan
10
+ import android.graphics.Canvas
11
+ import android.graphics.Color
12
+ import android.text.Layout
13
+ import com.facebook.react.views.text.TextDecorationStyle
14
+ import com.facebook.react.views.text.drawSpannedDecoration
11
15
 
12
- /** Wraps [UnderlineSpan] as a [ReactSpan]. */
13
- internal class ReactUnderlineSpan : UnderlineSpan(), ReactSpan
16
+ /**
17
+ * Draws an underline whose color and style may differ from the text. The underline is painted in
18
+ * `onDraw` (after the layout renders its text) so it lands on top of any descenders. We do NOT
19
+ * extend [android.text.style.UnderlineSpan] here: the framework's `Layout.draw` reads `paint.color`
20
+ * for underline color regardless of `paint.underlineColor`, so painting it ourselves is the only
21
+ * way to get a distinct color or non-solid style.
22
+ *
23
+ * `color == Color.TRANSPARENT` falls back to the text foreground color.
24
+ */
25
+ internal class ReactUnderlineSpan(
26
+ private val color: Int = Color.TRANSPARENT,
27
+ private val style: TextDecorationStyle = TextDecorationStyle.SOLID,
28
+ ) : CanvasEffectSpan(), ReactSpan {
29
+
30
+ override fun onDraw(start: Int, end: Int, canvas: Canvas, layout: Layout) {
31
+ drawSpannedDecoration(start, end, canvas, layout, color, style) { _, baseline, thickness ->
32
+ baseline + thickness + 1f
33
+ }
34
+ }
35
+ }
@@ -16,7 +16,7 @@ import kotlin.math.max
16
16
  internal class SetSpanOperation(
17
17
  private val start: Int,
18
18
  private val end: Int,
19
- @JvmField val what: ReactSpan,
19
+ @JvmField val what: Any,
20
20
  ) {
21
21
  /**
22
22
  * @param builder Spannable string builder
@@ -0,0 +1,21 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ package com.facebook.react.views.text.internal.span
9
+
10
+ import com.facebook.react.common.annotations.UnstableReactNativeAPI
11
+
12
+ /**
13
+ * Marker interface for spans that hold per-view mutable state (e.g. animation particles, dismiss
14
+ * flags). When a [PreparedLayout] contains stateful spans, [PreparedLayoutTextView] clones the
15
+ * spannable so that each view gets independent state even when layouts are shared from a cache.
16
+ */
17
+ @UnstableReactNativeAPI
18
+ public interface StatefulSpan : TextEffectSpan {
19
+ /** Returns a fresh instance with the same configuration but independent mutable state. */
20
+ public fun clone(): StatefulSpan
21
+ }
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ package com.facebook.react.views.text.internal.span
9
+
10
+ /**
11
+ * Marker interface implemented by every span that may be returned from a
12
+ * [com.facebook.react.views.text.TextEffectSpanFactory]. Constraining the factory's return type to
13
+ * this interface means a `List` (or any other non-span value) is rejected at compile time, which
14
+ * was previously possible because the contract was typed as `Any`.
15
+ *
16
+ * Built-in span families ([CanvasEffectSpan], [StatefulSpan], including [AnimatedEffectSpan])
17
+ * implement this directly so that user spans extending them satisfy the contract automatically.
18
+ */
19
+ public interface TextEffectSpan
@@ -0,0 +1,29 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ package com.facebook.react.views.text.internal.span
9
+
10
+ import com.facebook.react.common.annotations.UnstableReactNativeAPI
11
+
12
+ /**
13
+ * Interface for spans that receive touch events from [PreparedLayoutTextView]. Unlike
14
+ * [ClickableSpan] which only provides an onClick callback with no position information,
15
+ * TouchableSpan receives layout-relative coordinates, enabling position-aware interactions such as
16
+ * dismiss animations originating from the tap point.
17
+ */
18
+ @UnstableReactNativeAPI
19
+ public interface TouchableSpan {
20
+ /**
21
+ * Called when a touch event occurs on text covered by this span.
22
+ *
23
+ * @param action the [MotionEvent] action (e.g. [MotionEvent.ACTION_DOWN], [ACTION_UP])
24
+ * @param layoutX x coordinate relative to the text layout
25
+ * @param layoutY y coordinate relative to the text layout
26
+ * @return true if the event was consumed
27
+ */
28
+ public fun onTouchEvent(action: Int, layoutX: Float, layoutY: Float): Boolean
29
+ }
@@ -22,6 +22,7 @@ import android.text.Spannable
22
22
  import android.text.SpannableStringBuilder
23
23
  import android.text.Spanned
24
24
  import android.text.TextPaint
25
+ import android.text.TextUtils
25
26
  import android.text.TextWatcher
26
27
  import android.text.method.KeyListener
27
28
  import android.text.method.QwertyKeyListener
@@ -40,6 +41,7 @@ import android.view.inputmethod.EditorInfo
40
41
  import android.view.inputmethod.InputConnection
41
42
  import android.view.inputmethod.InputMethodManager
42
43
  import androidx.appcompat.widget.AppCompatEditText
44
+ import androidx.core.graphics.withTranslation
43
45
  import androidx.core.util.Predicate
44
46
  import androidx.core.view.ViewCompat
45
47
  import com.facebook.common.logging.FLog
@@ -69,10 +71,12 @@ import com.facebook.react.uimanager.style.LogicalEdge
69
71
  import com.facebook.react.uimanager.style.Overflow
70
72
  import com.facebook.react.views.text.ReactTextUpdate
71
73
  import com.facebook.react.views.text.ReactTypefaceUtils.applyStyles
74
+ import com.facebook.react.views.text.ReactTypefaceUtils.getFontWeightAdjustment
72
75
  import com.facebook.react.views.text.ReactTypefaceUtils.parseFontStyle
73
76
  import com.facebook.react.views.text.ReactTypefaceUtils.parseFontWeight
74
77
  import com.facebook.react.views.text.TextAttributes
75
78
  import com.facebook.react.views.text.TextLayoutManager
79
+ import com.facebook.react.views.text.internal.span.CanvasEffectSpan
76
80
  import com.facebook.react.views.text.internal.span.CustomLetterSpacingSpan
77
81
  import com.facebook.react.views.text.internal.span.CustomLineHeightSpan
78
82
  import com.facebook.react.views.text.internal.span.CustomStyleSpan
@@ -137,6 +141,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
137
141
  private var selectTextOnFocus = false
138
142
  private var placeholder: String? = null
139
143
  private var overflow = Overflow.VISIBLE
144
+ private var wasMultiline = false
140
145
 
141
146
  public var stateWrapper: StateWrapper? = null
142
147
  internal var disableTextDiffing: Boolean = false
@@ -400,11 +405,20 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
400
405
  // Avoid refocusing to a new view on old versions of Android by default
401
406
  // by preventing `requestFocus()` on the rootView from moving focus to any child.
402
407
  // https://cs.android.com/android/_/android/platform/frameworks/base/+/bdc66cb5a0ef513f4306edf9156cc978b08e06e4
403
- val rootViewGroup = rootView as ViewGroup
404
- val oldDescendantFocusability = rootViewGroup.descendantFocusability
405
- rootViewGroup.descendantFocusability = ViewGroup.FOCUS_BLOCK_DESCENDANTS
406
- super.clearFocus()
407
- rootViewGroup.descendantFocusability = oldDescendantFocusability
408
+ //
409
+ // getRootView() returns the view itself when it is detached from the window, so the root
410
+ // is not necessarily a ViewGroup: an IME editor action delivered over Binder can race the
411
+ // removal of this view from the hierarchy. There is no focus to move in that case, so a
412
+ // plain clearFocus() is enough.
413
+ val rootViewGroup = rootView as? ViewGroup
414
+ if (rootViewGroup != null) {
415
+ val oldDescendantFocusability = rootViewGroup.descendantFocusability
416
+ rootViewGroup.descendantFocusability = ViewGroup.FOCUS_BLOCK_DESCENDANTS
417
+ super.clearFocus()
418
+ rootViewGroup.descendantFocusability = oldDescendantFocusability
419
+ } else {
420
+ super.clearFocus()
421
+ }
408
422
  }
409
423
  isKeyboardOpened = false
410
424
  hideSoftKeyboard()
@@ -576,14 +590,41 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
576
590
  super.setTypeface(tf)
577
591
 
578
592
  /**
579
- * If set forces multiline on input, because of a restriction on Android source that enables
580
- * multiline only for inputs of type Text and Multiline on method
593
+ * Keep the single-line state in sync with the multiline input type flag.
594
+ *
595
+ * When multiline is on we must force [isSingleLine] off, because of a restriction on Android
596
+ * source that enables multiline only for inputs of type Text and Multiline on method
581
597
  * [android.widget.TextView.isMultilineInputType]} Source:
582
598
  * [TextView.java](https://android.googlesource.com/platform/frameworks/base/+/jb-release/core/java/android/widget/TextView.java)
599
+ *
600
+ * When multiline is off we must force [isSingleLine] back on. [TextView.setInputType] only
601
+ * re-applies the single-line layout (maxLines, horizontal scrolling) when its internal
602
+ * single-line flag actually changes; because we force it off above whenever multiline is on,
603
+ * that flag can be stale and the reset is skipped, leaving the placeholder/hint wrapped across
604
+ * multiple lines after multiline is toggled back off. Setting it explicitly guarantees the
605
+ * reset. We skip secure text so we don't replace its password transformation method with the
606
+ * single-line one.
583
607
  */
584
608
  if (isMultiline) {
585
609
  isSingleLine = false
610
+ } else if (!isSecureText) {
611
+ isSingleLine = true
612
+ }
613
+
614
+ // Restoring the single-line input type above is not enough on its own when multiline is toggled
615
+ // off: under Fabric the view is not re-measured while its measured size is unchanged, so the
616
+ // placeholder/hint is rebuilt at draw time (which lays the hint out at the view's physical
617
+ // width) and stays wrapped across multiple lines. Forcing a re-measure at the current bounds
618
+ // rebuilds the hint as a single line, matching the initial mount.
619
+ if (wasMultiline && !isMultiline && isLaidOut && width > 0 && height > 0) {
620
+ forceLayout()
621
+ measure(
622
+ View.MeasureSpec.makeMeasureSpec(width, View.MeasureSpec.EXACTLY),
623
+ View.MeasureSpec.makeMeasureSpec(height, View.MeasureSpec.EXACTLY),
624
+ )
625
+ layout(left, top, right, bottom)
586
626
  }
627
+ wasMultiline = isMultiline
587
628
 
588
629
  // We override the KeyListener so that all keys on the soft input keyboard as well as hardware
589
630
  // keyboards work. Some KeyListeners like DigitsKeyListener will display the keyboard but not
@@ -683,7 +724,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
683
724
  public fun canUpdateWithEventCount(eventCounter: Int): Boolean = eventCounter >= nativeEventCount
684
725
 
685
726
  private fun maybeSetText(reactTextUpdate: ReactTextUpdate) {
686
- if (isSecureText && (text == reactTextUpdate.text)) {
727
+ if (isSecureText && TextUtils.equals(text, reactTextUpdate.text)) {
687
728
  return
688
729
  }
689
730
 
@@ -772,7 +813,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
772
813
  /**
773
814
  * Remove spans from the SpannableStringBuilder which can be represented by TextAppearance
774
815
  * attributes on the underlying EditText. This works around instability on Samsung devices with
775
- * the presence of spans https://github.com/react/react-native/issues/35936 (S318090)
816
+ * the presence of spans https://github.com/facebook/react-native/issues/35936 (S318090)
776
817
  */
777
818
  private fun stripStyleEquivalentSpans(sb: SpannableStringBuilder) {
778
819
  stripSpansOfKind(sb, ReactAbsoluteSizeSpan::class.java) { span: ReactAbsoluteSizeSpan ->
@@ -906,7 +947,14 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
906
947
  fontFeatureSettings != null
907
948
  ) {
908
949
  workingText.setSpan(
909
- CustomStyleSpan(fontStyle, fontWeight, fontFeatureSettings, fontFamily, context.assets),
950
+ CustomStyleSpan(
951
+ fontStyle,
952
+ fontWeight,
953
+ fontFeatureSettings,
954
+ fontFamily,
955
+ context.assets,
956
+ getFontWeightAdjustment(context),
957
+ ),
910
958
  0,
911
959
  workingText.length,
912
960
  spanFlags,
@@ -990,7 +1038,7 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
990
1038
  val selectionEnd = selectionEnd
991
1039
 
992
1040
  // Used to ensure that text is selectable inside of removeClippedSubviews
993
- // See https://github.com/react/react-native/issues/6805 for original
1041
+ // See https://github.com/facebook/react-native/issues/6805 for original
994
1042
  // fix that was ported to here.
995
1043
  super.setTextIsSelectable(true)
996
1044
 
@@ -1189,6 +1237,30 @@ public open class ReactEditText public constructor(context: Context) : AppCompat
1189
1237
  clipToPaddingBox(this, canvas)
1190
1238
  }
1191
1239
 
1240
+ val spanned = text as? Spanned
1241
+ if (spanned != null) {
1242
+ val layout = layout
1243
+ if (layout != null) {
1244
+ val drawSpans = spanned.getSpans(0, spanned.length, CanvasEffectSpan::class.java)
1245
+ if (drawSpans.isNotEmpty()) {
1246
+ canvas.withTranslation(compoundPaddingLeft.toFloat(), extendedPaddingTop.toFloat()) {
1247
+ for (span in drawSpans) {
1248
+ span.onPreDraw(spanned.getSpanStart(span), spanned.getSpanEnd(span), this, layout)
1249
+ }
1250
+ }
1251
+
1252
+ super.onDraw(canvas)
1253
+
1254
+ canvas.withTranslation(compoundPaddingLeft.toFloat(), extendedPaddingTop.toFloat()) {
1255
+ for (span in drawSpans) {
1256
+ span.onDraw(spanned.getSpanStart(span), spanned.getSpanEnd(span), this, layout)
1257
+ }
1258
+ }
1259
+ return
1260
+ }
1261
+ }
1262
+ }
1263
+
1192
1264
  super.onDraw(canvas)
1193
1265
  }
1194
1266
 
@@ -69,6 +69,7 @@ import com.facebook.react.views.text.DefaultStyleValuesUtil.getDefaultTextColorH
69
69
  import com.facebook.react.views.text.ReactTextUpdate
70
70
  import com.facebook.react.views.text.ReactTextUpdate.Companion.buildReactTextUpdateFromState
71
71
  import com.facebook.react.views.text.ReactTextViewManagerCallback
72
+ import com.facebook.react.views.text.ReactTypefaceUtils.getFontWeightAdjustment
72
73
  import com.facebook.react.views.text.ReactTypefaceUtils.parseFontVariant
73
74
  import com.facebook.react.views.text.TextAttributeProps
74
75
  import com.facebook.react.views.text.TextLayoutManager
@@ -381,7 +382,7 @@ public open class ReactTextInputManager public constructor() :
381
382
  return
382
383
  }
383
384
 
384
- // Based on https://github.com/react/react-native/pull/31007
385
+ // Based on https://github.com/facebook/react-native/pull/31007
385
386
  if (Build.VERSION.SDK_INT == Build.VERSION_CODES.P) {
386
387
  return
387
388
  }
@@ -557,6 +558,8 @@ public open class ReactTextInputManager public constructor() :
557
558
  when (textAlign) {
558
559
  null,
559
560
  "auto" -> view.gravityHorizontal = Gravity.NO_GRAVITY
561
+ "start" -> view.gravityHorizontal = Gravity.START
562
+ "end" -> view.gravityHorizontal = Gravity.END
560
563
  "left" -> view.gravityHorizontal = Gravity.LEFT
561
564
  "right" -> view.gravityHorizontal = Gravity.RIGHT
562
565
  "center" -> view.gravityHorizontal = Gravity.CENTER_HORIZONTAL
@@ -739,7 +742,7 @@ public open class ReactTextInputManager public constructor() :
739
742
  // crash happens when focusing on a email EditText, during which a prompt will be triggered
740
743
  // but
741
744
  // the system fail to locate it properly. Here is an example post discussing about this
742
- // issue: https://github.com/react/react-native/issues/27204
745
+ // issue: https://github.com/facebook/react-native/issues/27204
743
746
  if (shouldHideCursorForEmailTextInput()) {
744
747
  view.isCursorVisible = false
745
748
  }
@@ -1021,6 +1024,7 @@ public open class ReactTextInputManager public constructor() :
1021
1024
  val spanned =
1022
1025
  TextLayoutManager.getOrCreateSpannableForText(
1023
1026
  view.context.assets,
1027
+ getFontWeightAdjustment(view.context),
1024
1028
  attributedString,
1025
1029
  reactTextViewManagerCallback,
1026
1030
  )
@@ -30,7 +30,7 @@ internal class ReactTextSelectionWatcher(private val editText: ReactEditText) :
30
30
  // forward it on if we have new values
31
31
 
32
32
  // Apparently Android might call this with an end value that is less than the start value
33
- // Lets normalize them. See https://github.com/react/react-native/issues/18579
33
+ // Lets normalize them. See https://github.com/facebook/react-native/issues/18579
34
34
  val realStart = min(start.toDouble(), end.toDouble()).toInt()
35
35
  val realEnd = max(start.toDouble(), end.toDouble()).toInt()
36
36
 
@@ -69,7 +69,6 @@ import com.facebook.react.uimanager.ReactClippingViewGroup
69
69
  import com.facebook.react.uimanager.ReactClippingViewGroupHelper.calculateClippingRect
70
70
  import com.facebook.react.uimanager.ReactOverflowViewWithInset
71
71
  import com.facebook.react.uimanager.ReactPointerEventsView
72
- import com.facebook.react.uimanager.ReactZIndexedViewGroup
73
72
  import com.facebook.react.uimanager.UIManagerHelper
74
73
  import com.facebook.react.uimanager.events.EventDispatcher
75
74
  import com.facebook.react.uimanager.events.PressInEvent
@@ -97,7 +96,6 @@ public open class ReactViewGroup public constructor(context: Context?) :
97
96
  ReactClippingViewGroup,
98
97
  ReactPointerEventsView,
99
98
  ReactHitSlopView,
100
- ReactZIndexedViewGroup,
101
99
  ReactOverflowViewWithInset {
102
100
 
103
101
  public override val overflowInset: Rect = Rect()
@@ -155,7 +153,7 @@ public open class ReactViewGroup public constructor(context: Context?) :
155
153
  * override all possible add methods for [ViewGroup] so that we can control this process whenever
156
154
  * the option is set. We also override [ViewGroup#getChildAt] and [ViewGroup#getChildCount] so
157
155
  * those methods may return views that are not attached. This is risky but allows us to perform a
158
- * correct cleanup in `NativeViewHierarchyManager`.
156
+ * correct cleanup.
159
157
  */
160
158
  internal var _removeClippedSubviews = false
161
159
 
@@ -270,7 +268,7 @@ public open class ReactViewGroup public constructor(context: Context?) :
270
268
  @SuppressLint("MissingSuperCall")
271
269
  override fun requestLayout() {
272
270
  // No-op, terminate `requestLayout` here, UIManager handles laying out children and
273
- // `layout` is called on all RN-managed views by `NativeViewHierarchyManager`
271
+ // `layout` is called on all RN-managed views by the UIManager
274
272
  }
275
273
 
276
274
  @TargetApi(23)
@@ -825,19 +823,7 @@ public open class ReactViewGroup public constructor(context: Context?) :
825
823
  }
826
824
  }
827
825
 
828
- /**
829
- * No-op implementation for backward compatibility. Z-order is now managed at the C++ layer in
830
- * Fabric.
831
- */
832
- override fun getZIndexMappedChildIndex(index: Int): Int = index
833
-
834
- /**
835
- * No-op implementation for backward compatibility. Z-order is now managed at the C++ layer in
836
- * Fabric.
837
- */
838
- override fun updateDrawingOrder() {
839
- // No-op: Z-order is managed at the C++ layer
840
- }
826
+ override fun shouldDelayChildPressedState(): Boolean = false
841
827
 
842
828
  override fun dispatchSetPressed(pressed: Boolean) {
843
829
  // Prevents the ViewGroup from dispatching the pressed state
@@ -214,6 +214,14 @@ public open class ReactViewManager : ReactClippingViewManager<ReactViewGroup>()
214
214
  }
215
215
  }
216
216
 
217
+ @ReactProp(name = ViewProps.EXPERIMENTAL_BACKGROUND_IMAGE, customType = "BackgroundImage")
218
+ public open fun setExperimentalBackgroundImage(
219
+ view: ReactViewGroup,
220
+ backgroundImage: ReadableArray?,
221
+ ) {
222
+ setBackgroundImage(view, backgroundImage)
223
+ }
224
+
217
225
  @ReactProp(name = ViewProps.BACKGROUND_SIZE, customType = "BackgroundSize")
218
226
  public open fun setBackgroundSize(view: ReactViewGroup, backgroundSize: ReadableArray?) {
219
227
  if (backgroundSize != null && backgroundSize.size() > 0) {
@@ -125,6 +125,7 @@ internal fun Window.setStatusBarStyle(style: String?) {
125
125
 
126
126
  @Suppress("DEPRECATION")
127
127
  private fun Window.statusBarHide() {
128
+ if (!decorView.isAttachedToWindow) return
128
129
  if (isEdgeToEdgeFeatureFlagOn) {
129
130
  WindowInsetsControllerCompat(this, decorView).run {
130
131
  systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
@@ -144,6 +145,7 @@ private fun Window.statusBarHide() {
144
145
 
145
146
  @Suppress("DEPRECATION")
146
147
  private fun Window.statusBarShow() {
148
+ if (!decorView.isAttachedToWindow) return
147
149
  if (isEdgeToEdgeFeatureFlagOn) {
148
150
  WindowInsetsControllerCompat(this, decorView).run {
149
151
  systemBarsBehavior = WindowInsetsControllerCompat.BEHAVIOR_SHOW_TRANSIENT_BARS_BY_SWIPE
@@ -8,7 +8,7 @@
8
8
  package com.facebook.react.views.virtual
9
9
 
10
10
  /**
11
- * Represents the the render state of children in the most recent commit.
11
+ * Represents the render state of children in the most recent commit.
12
12
  *
13
13
  * This enables `ReactVirtualView` to know whether a previously emitted `VirtualViewModeChangeEvent`
14
14
  * has been committed, in order to only emit subsequent events that would change it.
@@ -15,7 +15,6 @@ import androidx.annotation.VisibleForTesting
15
15
  import com.facebook.common.logging.FLog
16
16
  import com.facebook.react.R
17
17
  import com.facebook.react.common.build.ReactBuildConfig
18
- import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags
19
18
  import com.facebook.react.uimanager.ReactClippingViewGroup
20
19
  import com.facebook.react.uimanager.ReactRoot
21
20
  import com.facebook.react.views.scroll.VirtualView
@@ -287,13 +286,13 @@ public class ReactVirtualView(context: Context) :
287
286
  return null
288
287
  }
289
288
 
290
- internal inline fun debugLog(subtag: String, block: () -> String = { "" }) {
291
- if (IS_DEBUG_BUILD && ReactNativeFeatureFlags.enableVirtualViewDebugFeatures()) {
292
- FLog.d("$DEBUG_TAG:[$virtualViewID]:$subtag", block())
289
+ private companion object {
290
+ private val ENABLE_DEBUG_LOGS: Boolean = ReactBuildConfig.DEBUG && false
291
+ }
292
+
293
+ private inline fun debugLog(subtag: String, block: () -> String = { "" }) {
294
+ if (ENABLE_DEBUG_LOGS) {
295
+ FLog.d("ReactVirtualView:[$virtualViewID]:$subtag", block())
293
296
  }
294
297
  }
295
298
  }
296
-
297
- private const val DEBUG_TAG: String = "ReactVirtualView"
298
- private val IS_DEBUG_BUILD =
299
- ReactBuildConfig.DEBUG || ReactBuildConfig.IS_INTERNAL_BUILD || ReactBuildConfig.ENABLE_PERFETTO
@@ -0,0 +1,45 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ // @generated by enums.py
9
+
10
+ package com.facebook.yoga
11
+
12
+ public enum class YogaAlign(public val intValue: Int) {
13
+ AUTO(0),
14
+ FLEX_START(1),
15
+ CENTER(2),
16
+ FLEX_END(3),
17
+ STRETCH(4),
18
+ BASELINE(5),
19
+ SPACE_BETWEEN(6),
20
+ SPACE_AROUND(7),
21
+ SPACE_EVENLY(8),
22
+ START(9),
23
+ END(10);
24
+
25
+ public fun intValue(): Int = intValue
26
+
27
+ public companion object {
28
+ @JvmStatic
29
+ public fun fromInt(value: Int): YogaAlign =
30
+ when (value) {
31
+ 0 -> AUTO
32
+ 1 -> FLEX_START
33
+ 2 -> CENTER
34
+ 3 -> FLEX_END
35
+ 4 -> STRETCH
36
+ 5 -> BASELINE
37
+ 6 -> SPACE_BETWEEN
38
+ 7 -> SPACE_AROUND
39
+ 8 -> SPACE_EVENLY
40
+ 9 -> START
41
+ 10 -> END
42
+ else -> throw IllegalArgumentException("Unknown enum value: $value")
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,27 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ // @generated by enums.py
9
+
10
+ package com.facebook.yoga
11
+
12
+ public enum class YogaBoxSizing(public val intValue: Int) {
13
+ BORDER_BOX(0),
14
+ CONTENT_BOX(1);
15
+
16
+ public fun intValue(): Int = intValue
17
+
18
+ public companion object {
19
+ @JvmStatic
20
+ public fun fromInt(value: Int): YogaBoxSizing =
21
+ when (value) {
22
+ 0 -> BORDER_BOX
23
+ 1 -> CONTENT_BOX
24
+ else -> throw IllegalArgumentException("Unknown enum value: $value")
25
+ }
26
+ }
27
+ }