react-native-tvos 0.79.3-0 → 0.80.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 (1450) hide show
  1. package/Libraries/Alert/Alert.d.ts +4 -1
  2. package/Libraries/Alert/Alert.js +3 -0
  3. package/Libraries/Alert/RCTAlertManager.js +17 -0
  4. package/Libraries/Animated/Animated.js.flow +1 -3
  5. package/Libraries/Animated/AnimatedEvent.js +4 -3
  6. package/Libraries/Animated/AnimatedExports.js +2 -2
  7. package/Libraries/Animated/AnimatedExports.js.flow +140 -0
  8. package/Libraries/Animated/AnimatedImplementation.js +2 -123
  9. package/Libraries/Animated/Easing.js +13 -15
  10. package/Libraries/Animated/animations/Animation.js +8 -4
  11. package/Libraries/Animated/components/AnimatedFlatList.js +7 -6
  12. package/Libraries/Animated/components/AnimatedScrollView.js +48 -42
  13. package/Libraries/Animated/components/AnimatedSectionList.js +11 -7
  14. package/Libraries/Animated/createAnimatedComponent.js +105 -57
  15. package/Libraries/Animated/nodes/AnimatedNode.js +4 -3
  16. package/Libraries/Animated/nodes/AnimatedProps.js +46 -26
  17. package/Libraries/Animated/nodes/AnimatedValue.js +16 -7
  18. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
  19. package/Libraries/AppDelegate/RCTAppSetupUtils.h +2 -0
  20. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +6 -0
  21. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +4 -4
  22. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +6 -5
  23. package/Libraries/AppDelegate/RCTDependencyProvider.h +2 -0
  24. package/Libraries/AppDelegate/RCTReactNativeFactory.h +4 -0
  25. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +54 -40
  26. package/Libraries/AppDelegate/RCTRootViewFactory.h +9 -0
  27. package/Libraries/AppDelegate/RCTRootViewFactory.mm +14 -6
  28. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +2 -11
  29. package/Libraries/AppState/AppState.js +7 -2
  30. package/Libraries/BatchedBridge/MessageQueue.js +2 -2
  31. package/Libraries/BatchedBridge/NativeModules.js +2 -0
  32. package/Libraries/Blob/BlobManager.js +1 -0
  33. package/Libraries/Blob/FileReader.js +219 -8
  34. package/Libraries/Blob/RCTBlobCollector.mm +1 -1
  35. package/Libraries/Blob/RCTBlobManager.h +0 -4
  36. package/Libraries/Blob/RCTBlobManager.mm +4 -21
  37. package/Libraries/Blob/RCTFileReaderModule.mm +2 -2
  38. package/Libraries/Blob/React-RCTBlob.podspec +4 -14
  39. package/Libraries/Blob/URL.js +24 -11
  40. package/Libraries/Blob/URLSearchParams.js +106 -31
  41. package/Libraries/Blob/URLSearchParams.js.flow +12 -7
  42. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
  43. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js +17 -0
  44. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +1 -0
  45. package/Libraries/Components/Button.js +1 -1
  46. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -3
  47. package/Libraries/{NewAppScreen/components/Colors.js → Components/DrawerAndroid/DrawerLayoutAndroid.ios.js} +6 -10
  48. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +6 -66
  49. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +18 -0
  50. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +71 -0
  51. package/Libraries/Components/Keyboard/Keyboard.js +5 -3
  52. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +6 -3
  53. package/Libraries/Components/Pressable/Pressable.js +23 -7
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +25 -3
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +29 -20
  56. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  57. package/Libraries/Components/ScrollView/ScrollView.d.ts +3 -3
  58. package/Libraries/Components/ScrollView/ScrollView.js +132 -122
  59. package/Libraries/Components/StaticRenderer.js +1 -1
  60. package/Libraries/Components/Switch/Switch.d.ts +3 -0
  61. package/Libraries/Components/Switch/Switch.js +8 -4
  62. package/Libraries/Components/TV/TVEventControl.js +3 -1
  63. package/Libraries/Components/TV/TVEventHandler.js +21 -13
  64. package/Libraries/Components/TV/TVFocusEventHandler.js +1 -1
  65. package/Libraries/Components/TV/TVFocusGuideView.js +3 -8
  66. package/Libraries/Components/TV/tagForComponentOrHandle.js +2 -2
  67. package/Libraries/Components/TV/useTVEventHandler.js +1 -1
  68. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +2 -13
  69. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -4
  70. package/Libraries/Components/TextInput/TextInput.d.ts +76 -33
  71. package/Libraries/Components/TextInput/TextInput.flow.js +106 -55
  72. package/Libraries/Components/TextInput/TextInput.js +94 -1029
  73. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  74. package/Libraries/{Modal/ModalInjection.js → Components/ToastAndroid/ToastAndroid.ios.js} +3 -5
  75. package/Libraries/Components/ToastAndroid/ToastAndroid.js +4 -32
  76. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +109 -0
  77. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +45 -0
  78. package/Libraries/Components/Touchable/Touchable.js +5 -5
  79. package/Libraries/Components/Touchable/TouchableBounce.js +14 -7
  80. package/Libraries/Components/Touchable/TouchableHighlight.js +14 -10
  81. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -6
  82. package/Libraries/Components/Touchable/TouchableOpacity.js +14 -7
  83. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
  84. package/Libraries/Components/View/View.js +21 -23
  85. package/Libraries/Components/View/ViewAccessibility.d.ts +15 -0
  86. package/Libraries/Components/View/ViewAccessibility.js +25 -1
  87. package/Libraries/Components/View/ViewNativeComponent.js +2 -2
  88. package/Libraries/Components/View/ViewPropTypes.d.ts +16 -0
  89. package/Libraries/Components/View/ViewPropTypes.js +49 -3
  90. package/Libraries/Core/ReactNativeVersion.js +2 -2
  91. package/Libraries/Core/setUpReactDevTools.js +5 -5
  92. package/Libraries/Debugging/DebuggingOverlayRegistry.js +3 -3
  93. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -4
  94. package/Libraries/Image/AssetSourceResolver.js +17 -4
  95. package/Libraries/Image/Image.d.ts +26 -10
  96. package/Libraries/Image/Image.js +17 -0
  97. package/Libraries/Image/Image.js.flow +5 -5
  98. package/Libraries/Image/ImageBackground.js +2 -0
  99. package/Libraries/Image/ImageInjection.js +1 -1
  100. package/Libraries/Image/ImageProps.js +22 -17
  101. package/Libraries/Image/ImageSource.js +3 -1
  102. package/Libraries/Image/ImageSourceUtils.js +4 -2
  103. package/Libraries/Image/ImageTypes.flow.js +1 -1
  104. package/Libraries/Image/RCTImageLoader.mm +63 -19
  105. package/Libraries/Image/RCTImageStoreManager.mm +10 -32
  106. package/Libraries/Image/RCTImageURLLoader.h +19 -1
  107. package/Libraries/Image/RCTUIImageViewAnimated.mm +6 -23
  108. package/Libraries/Image/React-RCTImage.podspec +2 -7
  109. package/Libraries/Interaction/InteractionManager.d.ts +13 -0
  110. package/Libraries/Interaction/InteractionManager.js +1 -1
  111. package/Libraries/Interaction/PanResponder.js +3 -3
  112. package/Libraries/Interaction/TaskQueue.js +1 -0
  113. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  114. package/Libraries/Linking/Linking.js +1 -1
  115. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -6
  116. package/Libraries/Lists/FlatList.d.ts +2 -2
  117. package/Libraries/Lists/FlatList.js +8 -11
  118. package/Libraries/Lists/SectionList.js +39 -42
  119. package/Libraries/Lists/SectionListModern.js +25 -34
  120. package/Libraries/Lists/VirtualizedList.js +1 -0
  121. package/Libraries/Lists/VirtualizedSectionList.js +1 -0
  122. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  123. package/Libraries/LogBox/LogBoxNotificationContainer.js +1 -1
  124. package/Libraries/Modal/Modal.js +33 -7
  125. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +118 -124
  126. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +4 -7
  127. package/Libraries/NativeComponent/BaseViewConfig.android.js +8 -6
  128. package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -0
  129. package/Libraries/NativeComponent/BaseViewConfig.js +17 -0
  130. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +2 -2
  131. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  132. package/Libraries/Network/RCTDataRequestHandler.mm +10 -6
  133. package/Libraries/Network/RCTFileRequestHandler.mm +11 -7
  134. package/Libraries/Network/RCTHTTPRequestHandler.mm +1 -2
  135. package/Libraries/Network/RCTInspectorNetworkReporter.h +32 -0
  136. package/Libraries/Network/RCTInspectorNetworkReporter.mm +88 -0
  137. package/Libraries/Network/RCTNetworking.android.js +1 -1
  138. package/Libraries/Network/RCTNetworking.h +0 -4
  139. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  140. package/Libraries/Network/RCTNetworking.js +17 -0
  141. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  142. package/Libraries/Network/RCTNetworking.mm +32 -33
  143. package/Libraries/Network/React-RCTNetwork.podspec +6 -7
  144. package/Libraries/Network/XMLHttpRequest.js +781 -10
  145. package/Libraries/Performance/Systrace.js +7 -7
  146. package/Libraries/Pressability/Pressability.js +1 -1
  147. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -6
  148. package/Libraries/ReactNative/AppContainer-dev.js +10 -9
  149. package/Libraries/ReactNative/AppRegistry.flow.js +49 -0
  150. package/Libraries/ReactNative/AppRegistry.js +2 -322
  151. package/Libraries/ReactNative/AppRegistry.js.flow +23 -0
  152. package/Libraries/ReactNative/AppRegistryImpl.js +316 -0
  153. package/Libraries/ReactNative/FabricUIManager.js +10 -0
  154. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -4
  155. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -4
  156. package/Libraries/ReactNative/RendererImplementation.js +10 -5
  157. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -0
  158. package/Libraries/ReactNative/renderApplication.js +9 -0
  159. package/Libraries/ReactNativeDependencies/Package.swift +2 -2
  160. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +3 -3
  161. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +51 -0
  162. package/Libraries/Renderer/implementations/ReactFabric-dev.js +4840 -4748
  163. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4947 -4829
  164. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3998 -3888
  165. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5005 -4948
  166. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2744 -2652
  167. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5020 -4933
  168. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -3
  169. package/Libraries/Settings/React-RCTSettings.podspec +3 -7
  170. package/Libraries/Settings/Settings.ios.js +1 -0
  171. package/Libraries/Settings/Settings.js +13 -19
  172. package/Libraries/Settings/SettingsFallback.js +33 -0
  173. package/Libraries/StyleSheet/PlatformColorValueTypes.js +15 -0
  174. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +6 -0
  175. package/Libraries/StyleSheet/Rect.js +1 -0
  176. package/Libraries/StyleSheet/StyleSheet.js +31 -200
  177. package/Libraries/StyleSheet/StyleSheet.js.flow +188 -0
  178. package/Libraries/StyleSheet/StyleSheetExports.js +210 -0
  179. package/Libraries/StyleSheet/StyleSheetExports.js.flow +112 -0
  180. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  181. package/Libraries/StyleSheet/StyleSheetTypes.js +130 -52
  182. package/Libraries/StyleSheet/flattenStyle.js +14 -4
  183. package/Libraries/StyleSheet/private/_TransformStyle.js +49 -21
  184. package/Libraries/StyleSheet/processBackgroundImage.js +670 -214
  185. package/Libraries/Text/Text/RCTDynamicTypeRamp.mm +1 -1
  186. package/Libraries/Text/Text.d.ts +2 -5
  187. package/Libraries/Text/Text.js +3 -3
  188. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +11 -0
  189. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +96 -0
  190. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -0
  191. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +4 -4
  192. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +11 -0
  193. package/Libraries/Text/TextNativeComponent.js +0 -4
  194. package/Libraries/Text/TextProps.js +5 -33
  195. package/Libraries/Types/CodegenTypesNamespace.d.ts +45 -0
  196. package/Libraries/{Blob/__mocks__/BlobModule.js → Types/CodegenTypesNamespace.js} +4 -6
  197. package/Libraries/Types/CoreEventTypes.d.ts +10 -1
  198. package/Libraries/Types/CoreEventTypes.js +4 -6
  199. package/Libraries/Utilities/Appearance.js +2 -0
  200. package/Libraries/Utilities/BackHandler.ios.js +9 -4
  201. package/Libraries/Utilities/BackHandler.js +17 -0
  202. package/Libraries/Utilities/DeviceInfo.js +2 -0
  203. package/Libraries/Utilities/Dimensions.js +1 -1
  204. package/Libraries/Utilities/Platform.js +17 -0
  205. package/Libraries/Utilities/PlatformTypes.js +11 -3
  206. package/Libraries/Utilities/ReactNativeTestTools.js +2 -2
  207. package/Libraries/Utilities/codegenNativeCommands.d.ts +18 -0
  208. package/Libraries/Utilities/codegenNativeComponent.d.ts +26 -0
  209. package/Libraries/Utilities/setAndForwardRef.js +6 -6
  210. package/Libraries/Vibration/React-RCTVibration.podspec +3 -7
  211. package/Libraries/WebSocket/WebSocket.js +313 -8
  212. package/Libraries/vendor/core/ErrorUtils.js +28 -2
  213. package/Libraries/vendor/emitter/EventEmitter.js +6 -2
  214. package/README-core.md +0 -3
  215. package/React/Base/RCTBridge.h +5 -3
  216. package/React/Base/RCTBridge.mm +95 -13
  217. package/React/Base/RCTBridgeProxy.mm +1 -1
  218. package/React/Base/RCTUtils.h +8 -5
  219. package/React/Base/{RCTUtils.m → RCTUtils.mm} +55 -28
  220. package/React/Base/RCTVersion.m +2 -2
  221. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +3 -8
  222. package/React/CoreModules/RCTAccessibilityManager.mm +9 -11
  223. package/React/CoreModules/RCTAppState.mm +11 -9
  224. package/React/CoreModules/RCTAppearance.mm +2 -14
  225. package/React/CoreModules/RCTDevSettings.mm +0 -1
  226. package/React/CoreModules/RCTDeviceInfo.mm +50 -19
  227. package/React/CoreModules/RCTLogBox.mm +1 -1
  228. package/React/CoreModules/RCTPerfMonitor.mm +1 -1
  229. package/React/CoreModules/RCTPlatform.mm +25 -20
  230. package/React/CoreModules/RCTStatusBarManager.mm +18 -13
  231. package/React/CoreModules/RCTTVNavigationEventEmitter.mm +0 -2
  232. package/React/CoreModules/React-CoreModules.podspec +4 -18
  233. package/React/CxxBridge/RCTCxxBridge.mm +6 -18
  234. package/React/CxxModule/RCTNativeModule.mm +1 -1
  235. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +173 -133
  236. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +600 -425
  237. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +5 -0
  238. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +3 -4
  239. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +1 -1
  240. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +2 -2
  241. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +2 -4
  242. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +2 -2
  243. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +31 -0
  244. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +12 -0
  245. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +1 -1
  246. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +2 -2
  247. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +13 -8
  248. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +62 -15
  249. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +47 -4
  250. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  251. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.h +28 -0
  252. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.mm +83 -0
  253. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +11 -0
  254. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +127 -29
  255. package/React/Fabric/Mounting/RCTComponentViewFactory.h +0 -6
  256. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +36 -31
  257. package/React/Fabric/RCTScheduler.mm +6 -0
  258. package/React/Fabric/Utils/RCTBoxShadow.h +2 -4
  259. package/React/Fabric/Utils/RCTBoxShadow.mm +92 -224
  260. package/React/Fabric/Utils/RCTGradientUtils.h +21 -0
  261. package/React/Fabric/Utils/RCTGradientUtils.mm +204 -0
  262. package/React/Fabric/Utils/RCTLinearGradient.mm +3 -192
  263. package/React/Fabric/Utils/{RCTViewFinder.h → RCTRadialGradient.h} +3 -2
  264. package/React/Fabric/Utils/RCTRadialGradient.mm +229 -0
  265. package/React/Profiler/RCTProfile.m +1 -1
  266. package/React/React-RCTFBReactNativeSpec.podspec +3 -13
  267. package/React/React-RCTFabric.podspec +6 -14
  268. package/React/Runtime/React-RCTRuntime.podspec +4 -18
  269. package/React/Views/RCTBorderDrawing.h +5 -2
  270. package/React/Views/RCTBorderDrawing.m +29 -12
  271. package/React/Views/RCTFont.mm +0 -4
  272. package/React/Views/RCTView.m +4 -4
  273. package/React/Views/ScrollView/RCTScrollView.m +1 -1
  274. package/React-Core.podspec +4 -20
  275. package/ReactAndroid/api/ReactAndroid.api +617 -1147
  276. package/ReactAndroid/build.gradle.kts +4 -2
  277. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +9 -15
  278. package/ReactAndroid/external-artifacts/build.gradle.kts +6 -4
  279. package/ReactAndroid/gradle.properties +4 -2
  280. package/ReactAndroid/hermes-engine/build.gradle.kts +7 -4
  281. package/ReactAndroid/proguard-rules.pro +0 -6
  282. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.kt +2 -2
  283. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -2
  284. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +11 -2
  285. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +56 -0
  286. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +5 -5
  287. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.kt +4 -0
  288. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +14 -3
  289. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.kt +54 -0
  290. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +15 -4
  291. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +20 -8
  292. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +4 -12
  293. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +88 -0
  294. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +20 -56
  295. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +2 -2
  296. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +3 -3
  297. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +41 -42
  298. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +9 -2
  299. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +9 -0
  300. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.kt +2 -2
  301. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +0 -1
  302. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +3 -0
  303. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +3 -3
  304. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +12 -12
  305. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.kt +10 -10
  306. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeValueListener.kt +2 -2
  307. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +1 -1
  308. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +0 -6
  309. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +1072 -0
  310. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +774 -0
  311. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.kt +1 -1
  312. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.kt +26 -0
  313. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +9 -7
  314. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.kt +29 -0
  315. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +3 -1
  316. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +14 -3
  317. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeSoLoader.kt +36 -0
  318. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +35 -0
  319. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +2 -2
  320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +17 -13
  321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +214 -0
  322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.kt +1 -0
  323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +10 -1
  324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +56 -0
  325. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.kt +3 -3
  326. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.kt +61 -0
  327. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.kt +80 -0
  328. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.kt +80 -0
  329. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicNative.kt +6 -0
  330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.kt +42 -0
  331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.kt +26 -0
  332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.kt +78 -0
  333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.kt +99 -0
  334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.kt +3 -0
  335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.kt +118 -0
  336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java +13 -5
  337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +142 -0
  338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.kt +26 -0
  339. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.kt +30 -0
  340. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java +2 -0
  341. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.kt +129 -0
  342. package/ReactAndroid/src/main/java/com/facebook/react/bridge/LifecycleEventListener.kt +2 -0
  343. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +8 -5
  344. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +2 -0
  345. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +10 -0
  346. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArray.kt +1 -1
  347. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.kt +1 -1
  348. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +2 -0
  349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +18 -7
  350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +3 -0
  351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +9 -8
  352. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.java +2 -0
  353. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +5 -7
  354. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +48 -0
  355. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactIgnorableMountingException.kt +6 -6
  356. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.java +7 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +3 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMethod.kt +1 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +2 -2
  360. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +31 -0
  361. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +10 -0
  362. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +1 -0
  363. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArrayBuilder.kt +61 -0
  364. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapBuilder.kt +61 -0
  365. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.kt +2 -2
  366. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.kt +6 -5
  367. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +3 -0
  368. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.kt +69 -0
  369. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +13 -7
  370. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.kt +4 -3
  371. package/ReactAndroid/src/main/java/com/facebook/react/common/ClassFinder.kt +3 -4
  372. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +2 -2
  373. package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegate.kt +2 -0
  374. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/LegacyArchitectureShadowNodeWithCxxImpl.kt +23 -0
  375. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/InteropLegacyArchitecture.kt +16 -0
  376. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitecture.kt +1 -1
  377. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogger.kt +66 -0
  378. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +1 -1
  379. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  380. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +7 -7
  381. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +10 -12
  382. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +98 -0
  383. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +81 -0
  384. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +323 -0
  385. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +118 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +159 -0
  387. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.kt +87 -0
  388. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +1 -1
  389. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +413 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +903 -0
  391. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +57 -0
  392. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.kt +1 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -1
  394. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +4 -4
  395. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +167 -0
  396. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.kt +44 -0
  397. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +10 -16
  398. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.kt +251 -0
  399. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +1 -1
  400. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +11 -13
  401. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +3 -3
  402. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.kt +2 -2
  403. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +176 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricSoLoader.kt +4 -5
  405. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +177 -86
  406. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +6 -2
  407. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +6 -11
  408. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.kt +103 -0
  409. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +13 -11
  410. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +8 -12
  411. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +5 -9
  412. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +7 -15
  413. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt +2 -2
  414. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt +2 -2
  415. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.kt +6 -6
  416. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +16 -39
  417. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +24 -25
  418. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +12 -5
  419. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.kt +2 -2
  420. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchCommandMountItem.kt +3 -3
  421. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +335 -0
  422. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.kt +3 -3
  423. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +7 -7
  424. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +2 -1
  425. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/TaskInterface.kt +1 -1
  426. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +16 -16
  427. package/ReactAndroid/src/main/java/com/facebook/react/internal/SystraceSection.kt +3 -3
  428. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +75 -60
  429. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +120 -100
  430. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +25 -21
  431. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +27 -23
  432. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +135 -113
  433. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +1 -3
  434. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
  435. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +25 -21
  436. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +84 -0
  437. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -2
  438. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEvent.kt +14 -4
  439. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +12 -2
  440. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.kt +293 -0
  441. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +405 -0
  442. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +63 -0
  443. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.kt +2 -2
  444. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutor.kt +5 -0
  445. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutorFactory.kt +7 -0
  446. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +1 -5
  447. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskEventListener.kt +3 -2
  448. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +13 -12
  449. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +2 -2
  450. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +336 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +113 -0
  452. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.kt +99 -0
  453. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.kt +4 -4
  454. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.kt +4 -0
  455. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.kt +1 -1
  456. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JSTimers.kt +4 -4
  457. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionAwareActivity.kt +2 -0
  458. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionListener.kt +1 -1
  459. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +1 -1
  460. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +5 -1
  461. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +4 -0
  462. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +1 -0
  463. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +14 -8
  464. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +4 -0
  465. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +12 -17
  466. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.kt +209 -0
  467. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.kt +205 -0
  468. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  469. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +18 -18
  470. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +6 -5
  471. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +11 -22
  472. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +35 -29
  473. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +1 -1
  474. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +846 -0
  475. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpCompat.java +4 -1
  476. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.kt +57 -0
  477. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +2 -2
  478. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +6 -6
  479. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +4 -4
  480. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +13 -12
  481. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +14 -3
  482. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.kt +6 -5
  483. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +20 -0
  484. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +7 -11
  485. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.kt +161 -0
  486. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +130 -0
  487. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +10 -2
  488. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +156 -0
  489. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.kt +1 -1
  490. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +112 -0
  491. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +10 -4
  492. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +159 -0
  493. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactStateTracker.kt +1 -1
  494. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +113 -0
  495. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +1 -1
  496. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +97 -75
  497. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +11 -10
  498. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +1 -1
  499. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +599 -0
  500. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.kt +91 -0
  501. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.kt +217 -0
  502. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +12 -11
  503. package/ReactAndroid/src/main/java/com/facebook/react/runtime/cxxreactpackage/CxxReactPackage.kt +4 -1
  504. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Continuation.kt +2 -2
  505. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.kt +418 -0
  506. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +1 -1
  507. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +31 -25
  508. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  509. package/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.kt +9 -9
  510. package/ReactAndroid/src/main/java/com/facebook/react/touch/OnInterceptTouchEventListener.kt +4 -4
  511. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.kt +2 -2
  512. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +5 -5
  513. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.kt +2 -11
  514. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.kt +3 -12
  515. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +7 -2
  516. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +64 -0
  517. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +7 -5
  518. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +1 -1
  519. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.kt +1 -1
  520. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +59 -7
  521. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +7 -0
  522. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +8 -0
  523. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +1 -10
  524. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +3 -1
  525. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +13 -5
  526. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +11 -2
  527. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +12 -1
  528. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.kt +93 -0
  529. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +1 -1
  530. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -1
  531. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +146 -0
  532. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.kt +11 -9
  533. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.kt +63 -0
  534. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactCompoundView.kt +3 -3
  535. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +3 -3
  536. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +2 -2
  537. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +2 -2
  538. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +3 -0
  539. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +10 -1
  540. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.kt +68 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +6 -0
  542. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReferenceStateWrapper.kt +13 -0
  543. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +103 -0
  544. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +2 -2
  545. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +8 -11
  546. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +435 -0
  547. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +223 -0
  548. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +3 -3
  549. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +19 -13
  550. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +14 -3
  551. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +31 -15
  552. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.kt +92 -0
  553. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +17 -13
  554. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +3 -0
  555. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +27 -22
  556. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.kt +46 -0
  557. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +109 -0
  558. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +87 -0
  559. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +22 -3
  560. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +7 -5
  561. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +9 -4
  562. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +2 -0
  563. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +6 -0
  564. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.kt +97 -0
  565. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.kt +86 -0
  566. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.kt +15 -0
  567. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +5 -1
  568. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +3 -3
  569. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +3 -0
  570. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +3 -1
  571. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +9 -1
  572. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +8 -6
  573. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +10 -10
  574. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +3 -17
  575. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlurEvent.kt +16 -5
  576. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.kt +206 -0
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +7 -7
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +1 -13
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +16 -43
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +2 -2
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{ReactEventEmitter.kt → EventEmitterImpl.kt} +39 -47
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +33 -43
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FocusEvent.kt +16 -5
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +27 -31
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +2 -0
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +0 -3
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +11 -4
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +12 -8
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/internal/LegacyArchitectureShadowNodeLogger.kt +52 -0
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +128 -0
  591. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +3 -0
  592. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +85 -0
  593. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +225 -0
  594. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +3 -0
  595. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +10 -0
  596. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +12 -0
  597. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +12 -0
  598. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +12 -0
  599. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +10 -1
  600. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +69 -0
  601. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +87 -0
  602. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +10 -2
  603. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +30 -12
  604. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +36 -22
  605. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +206 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +8 -0
  607. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +2 -38
  608. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +72 -246
  609. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +375 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +30 -0
  611. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +6 -6
  612. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.kt +3 -1
  613. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +1 -1
  614. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +7 -7
  615. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +7 -7
  616. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +8 -8
  617. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +7 -10
  618. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.kt +1 -1
  619. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +6 -5
  620. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +1 -1
  621. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +7 -10
  622. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +20 -17
  623. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +20 -28
  624. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +43 -41
  625. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.kt +1 -1
  626. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.kt +1 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +4 -0
  628. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +14 -12
  629. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +1 -1
  630. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewShadowNode.kt +2 -1
  631. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +172 -0
  632. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +27 -7
  633. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +366 -0
  634. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +36 -7
  635. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +74 -1
  636. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +390 -0
  637. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +4 -2
  638. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +1 -0
  639. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +1 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +1 -1
  641. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +1 -1
  642. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +4 -0
  643. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -2
  644. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +18 -0
  645. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +418 -0
  646. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +212 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +25 -12
  648. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +6 -6
  649. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +31 -0
  650. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +207 -0
  651. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +6 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +1 -4
  653. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +40 -54
  654. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +4 -10
  655. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +9 -14
  656. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +3 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +2 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +30 -8
  659. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +2 -0
  660. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +237 -121
  661. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.kt +8 -4
  662. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +140 -0
  663. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +174 -0
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +2 -1
  665. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.kt +4 -3
  666. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.kt +3 -3
  667. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +8 -8
  668. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactAbsoluteSizeSpan.kt +1 -1
  669. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactBackgroundColorSpan.kt +1 -1
  670. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +6 -5
  671. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactForegroundColorSpan.kt +1 -1
  672. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactOpacitySpan.kt +1 -1
  673. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactSpan.kt +1 -1
  674. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +1 -1
  675. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTagSpan.kt +2 -2
  676. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTextPaintHolderSpan.kt +1 -1
  677. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +1 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +5 -5
  679. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +3 -3
  680. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +11 -11
  681. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.kt +4 -7
  682. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.kt +50 -0
  683. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +1331 -0
  684. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.kt +151 -0
  685. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +44 -0
  686. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +51 -0
  687. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.kt +43 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.kt +35 -0
  689. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.kt +33 -0
  690. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +1139 -0
  691. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.kt +46 -0
  692. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +210 -0
  693. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.kt +40 -0
  694. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +66 -0
  695. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +49 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +45 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +12 -9
  698. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +6 -4
  699. package/ReactAndroid/src/main/java/com/facebook/react/views/view/MeasureUtil.kt +2 -2
  700. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +37 -8
  701. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +51 -4
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +4 -4
  703. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +19 -23
  704. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +10 -11
  705. package/ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.kt +3 -3
  706. package/ReactAndroid/src/main/jni/CMakeLists.txt +22 -9
  707. package/ReactAndroid/src/main/jni/first-party/fbgloginit/CMakeLists.txt +3 -0
  708. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/CMakeLists.txt +3 -1
  709. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/jni_lib_merge.h +1 -2
  710. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +4 -7
  711. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +3 -2
  712. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +2 -9
  713. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.cpp +3 -8
  714. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.h +1 -9
  715. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +12 -0
  716. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +4 -0
  717. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +130 -13
  718. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +9 -0
  719. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +186 -0
  720. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.h +38 -0
  721. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +10 -0
  722. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  723. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +5 -2
  724. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +2 -1
  725. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +2 -10
  726. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +166 -138
  727. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +34 -28
  728. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/CMakeLists.txt +2 -5
  729. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +3 -7
  730. package/ReactAndroid/src/main/jni/react/hermes/tooling/CMakeLists.txt +2 -0
  731. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +54 -6
  732. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +14 -18
  733. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +10 -17
  734. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +1 -0
  735. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +9 -14
  736. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +33 -0
  737. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -15
  738. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.cpp +30 -0
  739. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.h +12 -1
  740. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +3 -3
  741. package/ReactAndroid/src/main/jni/react/jscexecutor/CMakeLists.txt +2 -0
  742. package/ReactAndroid/src/main/jni/react/jsctooling/CMakeLists.txt +2 -0
  743. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +3 -2
  744. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +3 -6
  745. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +10 -0
  746. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +4 -0
  747. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +4 -1
  748. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +3 -1
  749. package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/CMakeLists.txt +4 -7
  750. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +4 -8
  751. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +5 -7
  752. package/ReactAndroid/src/main/jni/react/runtime/jni/JBindingsInstaller.h +2 -4
  753. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +0 -4
  754. package/ReactAndroid/src/main/jni/react/runtime/jsc/jni/CMakeLists.txt +3 -1
  755. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +4 -7
  756. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.cpp +1 -7
  757. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.h +4 -3
  758. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.cpp +1 -8
  759. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.h +4 -3
  760. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +3 -2
  761. package/ReactAndroid/src/main/jni/third-party/boost/CMakeLists.txt +1 -0
  762. package/ReactAndroid/src/main/jni/third-party/double-conversion/CMakeLists.txt +4 -1
  763. package/ReactAndroid/src/main/jni/third-party/fast_float/CMakeLists.txt +2 -1
  764. package/ReactAndroid/src/main/jni/third-party/fmt/CMakeLists.txt +2 -1
  765. package/ReactAndroid/src/main/jni/third-party/glog/CMakeLists.txt +14 -9
  766. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +5 -0
  767. package/ReactAndroid/src/main/res/devsupport/values-am/strings.xml +6 -0
  768. package/ReactAndroid/src/main/res/shell/values/styles.xml +4 -4
  769. package/ReactAndroid/src/main/res/systeminfo/values/strings.xml +4 -0
  770. package/ReactAndroid/src/main/res/systeminfo/values-af/strings.xml +6 -0
  771. package/ReactAndroid/src/main/res/systeminfo/values-ar/strings.xml +6 -0
  772. package/ReactAndroid/src/main/res/systeminfo/values-az/strings.xml +6 -0
  773. package/ReactAndroid/src/main/res/systeminfo/values-be/strings.xml +6 -0
  774. package/ReactAndroid/src/main/res/systeminfo/values-bg/strings.xml +6 -0
  775. package/ReactAndroid/src/main/res/systeminfo/values-bn/strings.xml +6 -0
  776. package/ReactAndroid/src/main/res/systeminfo/values-ca/strings.xml +6 -0
  777. package/ReactAndroid/src/main/res/systeminfo/values-cs/strings.xml +6 -0
  778. package/ReactAndroid/src/main/res/systeminfo/values-da/strings.xml +6 -0
  779. package/ReactAndroid/src/main/res/systeminfo/values-de/strings.xml +6 -0
  780. package/ReactAndroid/src/main/res/systeminfo/values-el/strings.xml +6 -0
  781. package/ReactAndroid/src/main/res/systeminfo/values-en-rGB/strings.xml +6 -0
  782. package/ReactAndroid/src/main/res/systeminfo/values-es/strings.xml +6 -0
  783. package/ReactAndroid/src/main/res/systeminfo/values-es-rES/strings.xml +6 -0
  784. package/ReactAndroid/src/main/res/systeminfo/values-et/strings.xml +6 -0
  785. package/ReactAndroid/src/main/res/systeminfo/values-fa/strings.xml +6 -0
  786. package/ReactAndroid/src/main/res/systeminfo/values-fi/strings.xml +6 -0
  787. package/ReactAndroid/src/main/res/systeminfo/values-fr/strings.xml +6 -0
  788. package/ReactAndroid/src/main/res/systeminfo/values-fr-rCA/strings.xml +6 -0
  789. package/ReactAndroid/src/main/res/systeminfo/values-gu/strings.xml +6 -0
  790. package/ReactAndroid/src/main/res/systeminfo/values-hi/strings.xml +6 -0
  791. package/ReactAndroid/src/main/res/systeminfo/values-hr/strings.xml +6 -0
  792. package/ReactAndroid/src/main/res/systeminfo/values-hu/strings.xml +6 -0
  793. package/ReactAndroid/src/main/res/systeminfo/values-hy/strings.xml +6 -0
  794. package/ReactAndroid/src/main/res/systeminfo/values-is/strings.xml +6 -0
  795. package/ReactAndroid/src/main/res/systeminfo/values-it/strings.xml +6 -0
  796. package/ReactAndroid/src/main/res/systeminfo/values-iw/strings.xml +6 -0
  797. package/ReactAndroid/src/main/res/systeminfo/values-ja/strings.xml +6 -0
  798. package/ReactAndroid/src/main/res/systeminfo/values-ka/strings.xml +6 -0
  799. package/ReactAndroid/src/main/res/systeminfo/values-kk/strings.xml +6 -0
  800. package/ReactAndroid/src/main/res/systeminfo/values-km/strings.xml +6 -0
  801. package/ReactAndroid/src/main/res/systeminfo/values-kn/strings.xml +6 -0
  802. package/ReactAndroid/src/main/res/systeminfo/values-ko/strings.xml +6 -0
  803. package/ReactAndroid/src/main/res/systeminfo/values-ky/strings.xml +6 -0
  804. package/ReactAndroid/src/main/res/systeminfo/values-lo/strings.xml +6 -0
  805. package/ReactAndroid/src/main/res/systeminfo/values-lt/strings.xml +6 -0
  806. package/ReactAndroid/src/main/res/systeminfo/values-lv/strings.xml +6 -0
  807. package/ReactAndroid/src/main/res/systeminfo/values-mk/strings.xml +6 -0
  808. package/ReactAndroid/src/main/res/systeminfo/values-ml/strings.xml +6 -0
  809. package/ReactAndroid/src/main/res/systeminfo/values-mn/strings.xml +6 -0
  810. package/ReactAndroid/src/main/res/systeminfo/values-mr/strings.xml +6 -0
  811. package/ReactAndroid/src/main/res/systeminfo/values-ms/strings.xml +6 -0
  812. package/ReactAndroid/src/main/res/systeminfo/values-my/strings.xml +6 -0
  813. package/ReactAndroid/src/main/res/systeminfo/values-ne/strings.xml +6 -0
  814. package/ReactAndroid/src/main/res/systeminfo/values-nl/strings.xml +6 -0
  815. package/ReactAndroid/src/main/res/systeminfo/values-pa/strings.xml +6 -0
  816. package/ReactAndroid/src/main/res/systeminfo/values-pl/strings.xml +6 -0
  817. package/ReactAndroid/src/main/res/systeminfo/values-pt/strings.xml +6 -0
  818. package/ReactAndroid/src/main/res/systeminfo/values-pt-rPT/strings.xml +6 -0
  819. package/ReactAndroid/src/main/res/systeminfo/values-ro/strings.xml +6 -0
  820. package/ReactAndroid/src/main/res/systeminfo/values-ru/strings.xml +6 -0
  821. package/ReactAndroid/src/main/res/systeminfo/values-si/strings.xml +6 -0
  822. package/ReactAndroid/src/main/res/systeminfo/values-sk/strings.xml +6 -0
  823. package/ReactAndroid/src/main/res/systeminfo/values-sl/strings.xml +6 -0
  824. package/ReactAndroid/src/main/res/systeminfo/values-sq/strings.xml +6 -0
  825. package/ReactAndroid/src/main/res/systeminfo/values-sr/strings.xml +6 -0
  826. package/ReactAndroid/src/main/res/systeminfo/values-sv/strings.xml +6 -0
  827. package/ReactAndroid/src/main/res/systeminfo/values-sw/strings.xml +6 -0
  828. package/ReactAndroid/src/main/res/systeminfo/values-ta/strings.xml +6 -0
  829. package/ReactAndroid/src/main/res/systeminfo/values-te/strings.xml +6 -0
  830. package/ReactAndroid/src/main/res/systeminfo/values-th/strings.xml +6 -0
  831. package/ReactAndroid/src/main/res/systeminfo/values-tr/strings.xml +6 -0
  832. package/ReactAndroid/src/main/res/systeminfo/values-uk/strings.xml +6 -0
  833. package/ReactAndroid/src/main/res/systeminfo/values-ur/strings.xml +6 -0
  834. package/ReactAndroid/src/main/res/systeminfo/values-vi/strings.xml +6 -0
  835. package/ReactAndroid/src/main/res/systeminfo/values-zh-rCN/strings.xml +6 -0
  836. package/ReactAndroid/src/main/res/systeminfo/values-zh-rHK/strings.xml +6 -0
  837. package/ReactAndroid/src/main/res/systeminfo/values-zh-rTW/strings.xml +6 -0
  838. package/ReactAndroid/src/main/res/systeminfo/values-zu/strings.xml +6 -0
  839. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +15 -0
  840. package/ReactAndroid/src/main/res/views/uimanager/values-am/strings.xml +6 -0
  841. package/ReactCommon/React-Fabric.podspec +4 -59
  842. package/ReactCommon/React-FabricComponents.podspec +4 -40
  843. package/ReactCommon/React-FabricImage.podspec +2 -19
  844. package/ReactCommon/React-Mapbuffer.podspec +2 -2
  845. package/ReactCommon/ReactCommon.podspec +4 -13
  846. package/ReactCommon/callinvoker/CMakeLists.txt +3 -6
  847. package/ReactCommon/cmake-utils/react-native-flags.cmake +39 -0
  848. package/ReactCommon/cxxreact/CMakeLists.txt +4 -6
  849. package/ReactCommon/cxxreact/CxxNativeModule.cpp +23 -33
  850. package/ReactCommon/cxxreact/JSExecutor.cpp +5 -2
  851. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +12 -10
  852. package/ReactCommon/cxxreact/JSModulesUnbundle.h +2 -4
  853. package/ReactCommon/cxxreact/JsArgumentHelpers-inl.h +28 -21
  854. package/ReactCommon/cxxreact/JsArgumentHelpers.h +1 -2
  855. package/ReactCommon/cxxreact/MethodCall.cpp +17 -17
  856. package/ReactCommon/cxxreact/ModuleRegistry.cpp +15 -12
  857. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -8
  858. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +2 -1
  859. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -13
  860. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  861. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  862. package/ReactCommon/cxxreact/tests/jsarg_helpers.cpp +2 -2
  863. package/ReactCommon/devtoolsruntimesettings/CMakeLists.txt +4 -9
  864. package/ReactCommon/hermes/React-hermes.podspec +4 -13
  865. package/ReactCommon/hermes/executor/CMakeLists.txt +2 -1
  866. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +3 -6
  867. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +2 -8
  868. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +2 -8
  869. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +100 -106
  870. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +1 -1
  871. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +2 -8
  872. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +2 -8
  873. package/ReactCommon/jsc/CMakeLists.txt +4 -7
  874. package/ReactCommon/jserrorhandler/CMakeLists.txt +2 -1
  875. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +12 -5
  876. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +2 -11
  877. package/ReactCommon/jsi/CMakeLists.txt +5 -6
  878. package/ReactCommon/jsi/React-jsi.podspec +2 -15
  879. package/ReactCommon/jsiexecutor/CMakeLists.txt +4 -5
  880. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -14
  881. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +7 -8
  882. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +1 -2
  883. package/ReactCommon/jsinspector-modern/CMakeLists.txt +7 -6
  884. package/ReactCommon/jsinspector-modern/HostAgent.cpp +304 -208
  885. package/ReactCommon/jsinspector-modern/HostAgent.h +8 -48
  886. package/ReactCommon/jsinspector-modern/HostTarget.cpp +1 -1
  887. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +1 -0
  888. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +4 -3
  889. package/ReactCommon/jsinspector-modern/InstanceAgent.h +1 -1
  890. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +22 -0
  891. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +2 -4
  892. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +4 -14
  893. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
  894. package/ReactCommon/jsinspector-modern/RuntimeAgentDelegate.h +1 -1
  895. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +27 -12
  896. package/ReactCommon/jsinspector-modern/TracingAgent.h +2 -1
  897. package/ReactCommon/jsinspector-modern/cdp/CMakeLists.txt +26 -0
  898. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +50 -0
  899. package/ReactCommon/jsinspector-modern/network/CMakeLists.txt +27 -0
  900. package/ReactCommon/jsinspector-modern/network/CdpNetwork.cpp +143 -0
  901. package/ReactCommon/jsinspector-modern/network/CdpNetwork.h +110 -0
  902. package/ReactCommon/jsinspector-modern/network/HttpUtils.cpp +157 -0
  903. package/ReactCommon/jsinspector-modern/network/HttpUtils.h +27 -0
  904. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +195 -0
  905. package/ReactCommon/jsinspector-modern/network/NetworkReporter.h +139 -0
  906. package/ReactCommon/jsinspector-modern/network/NetworkTypes.h +42 -0
  907. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +52 -0
  908. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +1 -2
  909. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +12 -0
  910. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +3 -6
  911. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.cpp → EventLoopReporter.cpp} +22 -9
  912. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.h → EventLoopReporter.h} +13 -7
  913. package/ReactCommon/jsinspector-modern/tracing/InstanceTracingProfile.h +2 -5
  914. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +55 -42
  915. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +22 -13
  916. package/ReactCommon/jsinspector-modern/tracing/ProfileTreeNode.h +39 -30
  917. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +3 -8
  918. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +16 -0
  919. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +186 -162
  920. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +138 -5
  921. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +40 -92
  922. package/ReactCommon/jsinspector-modern/tracing/tests/ProfileTreeNodeTest.cpp +27 -35
  923. package/ReactCommon/jsinspector-modern/tracing/tests/RuntimeSamplingProfileTraceEventSerializerTest.cpp +290 -0
  924. package/ReactCommon/jsitooling/CMakeLists.txt +4 -8
  925. package/ReactCommon/jsitooling/React-jsitooling.podspec +3 -21
  926. package/ReactCommon/logger/CMakeLists.txt +2 -1
  927. package/ReactCommon/logger/React-logger.podspec +1 -9
  928. package/ReactCommon/logger/react_native_log.cpp +2 -2
  929. package/ReactCommon/oscompat/CMakeLists.txt +2 -1
  930. package/ReactCommon/react/bridging/CMakeLists.txt +3 -7
  931. package/ReactCommon/react/debug/CMakeLists.txt +3 -8
  932. package/ReactCommon/react/featureflags/CMakeLists.txt +4 -9
  933. package/ReactCommon/react/featureflags/React-featureflags.podspec +2 -7
  934. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +49 -41
  935. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +63 -53
  936. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +223 -187
  937. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +30 -26
  938. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +46 -38
  939. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +100 -82
  940. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +51 -0
  941. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +33 -0
  942. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +33 -0
  943. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -13
  944. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +3 -8
  945. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +4 -6
  946. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -0
  947. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +23 -0
  948. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.h +29 -0
  949. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +12 -18
  950. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +6 -1
  951. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +3 -9
  952. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -0
  953. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +29 -2
  954. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +7 -39
  955. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +30 -2
  956. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +3 -7
  957. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +3 -10
  958. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/CMakeLists.txt +3 -7
  959. package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +3 -7
  960. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +2 -8
  961. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.cpp +84 -0
  962. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.h +30 -0
  963. package/ReactCommon/react/nativemodule/featureflags/CMakeLists.txt +3 -7
  964. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +58 -48
  965. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +25 -21
  966. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +3 -10
  967. package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +3 -8
  968. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +4 -11
  969. package/ReactCommon/react/nativemodule/microtasks/CMakeLists.txt +3 -7
  970. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +3 -10
  971. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -17
  972. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +4 -8
  973. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  974. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +21 -1
  975. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.kt +32 -5
  976. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.mm +5 -10
  977. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +18 -15
  978. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +53 -9
  979. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +29 -6
  980. package/ReactCommon/react/performance/timeline/CMakeLists.txt +5 -9
  981. package/ReactCommon/react/performance/timeline/CircularBuffer.h +0 -1
  982. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +53 -15
  983. package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.cpp +12 -3
  984. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +5 -2
  985. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.h +0 -1
  986. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +29 -33
  987. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  988. package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +8 -3
  989. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +3 -11
  990. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +80 -165
  991. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +38 -71
  992. package/ReactCommon/react/renderer/animations/CMakeLists.txt +3 -7
  993. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +5 -9
  994. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +2 -9
  995. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +3 -3
  996. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +3 -7
  997. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -1
  998. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +8 -1
  999. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +4 -6
  1000. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -2
  1001. package/ReactCommon/react/renderer/attributedstring/conversions.h +38 -6
  1002. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +3 -7
  1003. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +25 -5
  1004. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +3 -7
  1005. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +3 -7
  1006. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +3 -7
  1007. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +1 -2
  1008. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1009. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +0 -1
  1010. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +3 -7
  1011. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +3 -7
  1012. package/ReactCommon/react/renderer/components/rncore/EventEmitters.cpp +48 -48
  1013. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +3 -7
  1014. package/ReactCommon/react/renderer/components/safeareaview/CMakeLists.txt +4 -10
  1015. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +3 -7
  1016. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +15 -0
  1017. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +3 -0
  1018. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +1 -0
  1019. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +4 -10
  1020. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +13 -9
  1021. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +6 -0
  1022. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +111 -25
  1023. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +22 -2
  1024. package/ReactCommon/react/renderer/components/text/{ParagraphState.cpp → platform/android/react/renderer/components/text/ParagraphState.cpp} +0 -2
  1025. package/ReactCommon/react/renderer/components/text/{ParagraphState.h → platform/android/react/renderer/components/text/ParagraphState.h} +9 -14
  1026. package/ReactCommon/react/renderer/components/text/platform/cxx/react/renderer/components/text/ParagraphState.h +42 -0
  1027. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +8 -1
  1028. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +2 -0
  1029. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +25 -11
  1030. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +3 -7
  1031. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +30 -19
  1032. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +12 -11
  1033. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +5 -5
  1034. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +3 -7
  1035. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +1 -1
  1036. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +21 -1
  1037. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +8 -6
  1038. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +3 -7
  1039. package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +16 -6
  1040. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +2 -1
  1041. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +2 -11
  1042. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +0 -2
  1043. package/ReactCommon/react/renderer/components/view/conversions.h +135 -79
  1044. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +18 -0
  1045. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
  1046. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +6 -1
  1047. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +4 -0
  1048. package/ReactCommon/react/renderer/consistency/CMakeLists.txt +3 -7
  1049. package/ReactCommon/react/renderer/core/CMakeLists.txt +3 -7
  1050. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +2 -3
  1051. package/ReactCommon/react/renderer/core/ConcreteState.h +23 -2
  1052. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +44 -0
  1053. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +30 -0
  1054. package/ReactCommon/react/renderer/core/EventEmitter.cpp +7 -9
  1055. package/ReactCommon/react/renderer/core/EventEmitter.h +2 -3
  1056. package/ReactCommon/react/renderer/core/EventPayload.h +13 -0
  1057. package/ReactCommon/react/renderer/core/EventQueue.cpp +26 -26
  1058. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -0
  1059. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1060. package/ReactCommon/react/renderer/core/RawEvent.h +10 -2
  1061. package/ReactCommon/react/renderer/core/RawProps.cpp +1 -99
  1062. package/ReactCommon/react/renderer/core/RawProps.h +0 -11
  1063. package/ReactCommon/react/renderer/core/ReactEventPriority.h +5 -0
  1064. package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -4
  1065. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +3 -0
  1066. package/ReactCommon/react/renderer/core/State.h +2 -0
  1067. package/ReactCommon/react/renderer/core/graphicsConversions.h +25 -17
  1068. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +0 -36
  1069. package/ReactCommon/react/renderer/core/tests/TestComponent.h +0 -4
  1070. package/ReactCommon/react/renderer/css/CMakeLists.txt +7 -7
  1071. package/ReactCommon/react/renderer/css/CSSTokenizer.h +12 -49
  1072. package/ReactCommon/react/renderer/css/tests/CSSTokenizerTest.cpp +10 -0
  1073. package/ReactCommon/react/renderer/debug/CMakeLists.txt +3 -7
  1074. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +27 -16
  1075. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +14 -5
  1076. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +2 -16
  1077. package/ReactCommon/react/renderer/dom/CMakeLists.txt +3 -7
  1078. package/ReactCommon/react/renderer/element/CMakeLists.txt +3 -7
  1079. package/ReactCommon/react/renderer/graphics/BackgroundImage.h +2 -1
  1080. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +3 -7
  1081. package/ReactCommon/react/renderer/graphics/ColorStop.h +28 -0
  1082. package/ReactCommon/react/renderer/graphics/LinearGradient.h +1 -12
  1083. package/ReactCommon/react/renderer/graphics/RadialGradient.h +92 -0
  1084. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -19
  1085. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +2 -2
  1086. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +2 -2
  1087. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +3 -7
  1088. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +1 -7
  1089. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -13
  1090. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +3 -7
  1091. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +3 -8
  1092. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +3 -7
  1093. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +73 -55
  1094. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +5 -0
  1095. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -7
  1096. package/ReactCommon/react/renderer/mounting/ShadowTree.h +47 -36
  1097. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +3 -1
  1098. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +44 -12
  1099. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +39 -6
  1100. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +41 -12
  1101. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -1
  1102. package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +3 -7
  1103. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +0 -25
  1104. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +5 -2
  1105. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +3 -1
  1106. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +3 -7
  1107. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +2 -11
  1108. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -20
  1109. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +22 -10
  1110. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +3 -7
  1111. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +43 -20
  1112. package/ReactCommon/react/renderer/scheduler/Scheduler.h +15 -1
  1113. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +4 -0
  1114. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +84 -1
  1115. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +8 -0
  1116. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +3 -7
  1117. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +3 -7
  1118. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutContext.h +7 -11
  1119. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +124 -0
  1120. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +7 -0
  1121. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/JPreparedLayout.h +20 -0
  1122. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +126 -19
  1123. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +100 -0
  1124. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/{TextLayoutManager.cpp → react/renderer/textlayoutmanager/TextLayoutManager.cpp} +1 -18
  1125. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.h +57 -0
  1126. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +3 -0
  1127. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +47 -24
  1128. package/ReactCommon/react/renderer/textlayoutmanager/{TextLayoutManager.h → platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h} +2 -29
  1129. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -0
  1130. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +4 -8
  1131. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +54 -23
  1132. package/ReactCommon/react/renderer/uimanager/UIManager.h +27 -7
  1133. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +11 -1
  1134. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +19 -1
  1135. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +30 -0
  1136. package/ReactCommon/react/renderer/uimanager/UIManagerNativeAnimatedDelegate.h +24 -0
  1137. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +223 -0
  1138. package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +3 -7
  1139. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +2 -1
  1140. package/ReactCommon/react/runtime/CMakeLists.txt +4 -7
  1141. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +4 -13
  1142. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +4 -11
  1143. package/ReactCommon/react/runtime/ReactInstance.cpp +10 -5
  1144. package/ReactCommon/react/runtime/ReactInstance.h +2 -1
  1145. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +2 -1
  1146. package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +1 -0
  1147. package/ReactCommon/react/runtime/nativeviewconfig/CMakeLists.txt +2 -1
  1148. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +2 -11
  1149. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +2 -0
  1150. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +17 -5
  1151. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +2 -0
  1152. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +64 -3
  1153. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  1154. package/ReactCommon/react/timing/CMakeLists.txt +3 -6
  1155. package/ReactCommon/react/utils/CMakeLists.txt +9 -9
  1156. package/ReactCommon/react/utils/React-utils.podspec +13 -17
  1157. package/ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.cpp +95 -0
  1158. package/{ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.kt → ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.h} +6 -6
  1159. package/ReactCommon/react/utils/platform/cxx/react/utils/LowPriorityExecutor.h +18 -0
  1160. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.h +16 -0
  1161. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.mm +22 -0
  1162. package/ReactCommon/reactperflogger/CMakeLists.txt +3 -7
  1163. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -12
  1164. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +7 -3
  1165. package/ReactCommon/runtimeexecutor/CMakeLists.txt +3 -6
  1166. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +0 -6
  1167. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +0 -12
  1168. package/ReactCommon/yoga/cmake/project-defaults.cmake +4 -4
  1169. package/ReactCommon/yoga/yoga/debug/AssertFatal.cpp +1 -0
  1170. package/ReactCommon/yoga/yoga/event/event.h +6 -6
  1171. package/flow/global.js +1 -0
  1172. package/gradle/libs.versions.toml +17 -6
  1173. package/index.js +54 -334
  1174. package/interface.js +0 -4
  1175. package/jest/resolver.js +31 -0
  1176. package/jest-preset.js +1 -0
  1177. package/package.json +105 -34
  1178. package/scripts/cocoapods/fabric.rb +0 -1
  1179. package/scripts/cocoapods/helpers.rb +12 -1
  1180. package/scripts/cocoapods/new_architecture.rb +46 -17
  1181. package/scripts/cocoapods/rndependencies.rb +211 -0
  1182. package/scripts/cocoapods/utils.rb +2 -0
  1183. package/scripts/codegen/generate-artifacts-executor/constants.js +80 -0
  1184. package/scripts/codegen/generate-artifacts-executor/generateAppDependencyProvider.js +66 -0
  1185. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +116 -0
  1186. package/scripts/codegen/generate-artifacts-executor/generateFBReactNativeSpecIOS.js +39 -0
  1187. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +114 -0
  1188. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +120 -0
  1189. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +223 -0
  1190. package/scripts/codegen/generate-artifacts-executor/generateRNCoreComponentsIOS.js +38 -0
  1191. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +93 -0
  1192. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +113 -0
  1193. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +92 -0
  1194. package/scripts/codegen/generate-artifacts-executor/index.js +232 -0
  1195. package/scripts/codegen/generate-artifacts-executor/utils.js +399 -0
  1196. package/scripts/codegen/templates/RCTAppDependencyProviderMM.template +5 -0
  1197. package/{React/Base/UIKitProxies/RCTInitializeUIKitProxies.h → scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderH.template} +5 -1
  1198. package/scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderMM.template +19 -0
  1199. package/scripts/codegen/templates/ReactCodegen.podspec.template +2 -8
  1200. package/scripts/generate-codegen-artifacts.js +1 -1
  1201. package/scripts/react_native_pods.rb +18 -7
  1202. package/sdks/.hermesversion +1 -1
  1203. package/sdks/hermes-engine/hermes-utils.rb +7 -0
  1204. package/sdks/hermes-engine/utils/build-apple-framework.sh +4 -1
  1205. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +4 -3
  1206. package/sdks/hermesc/osx-bin/hermes +0 -0
  1207. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1208. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1209. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1210. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1211. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  1212. package/src/private/animated/NativeAnimatedHelper.js +21 -8
  1213. package/src/private/animated/createAnimatedPropsHook.js +11 -16
  1214. package/src/private/animated/createAnimatedPropsMemoHook.js +1 -2
  1215. package/src/private/components/{SafeAreaView_INTERNAL_DO_NOT_USE.js → safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js} +6 -6
  1216. package/src/private/components/{HScrollViewNativeComponents.js → scrollview/HScrollViewNativeComponents.js} +8 -8
  1217. package/src/private/components/scrollview/VScrollViewNativeComponents.js +25 -0
  1218. package/src/private/{devmenu → devsupport/devmenu}/DevMenu.js +1 -1
  1219. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BorderBox.js +3 -3
  1220. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BoxInspector.js +6 -5
  1221. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementBox.js +8 -6
  1222. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementProperties.js +11 -10
  1223. package/src/private/{inspector → devsupport/devmenu/elementinspector}/Inspector.js +14 -12
  1224. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorOverlay.js +5 -4
  1225. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorPanel.js +9 -8
  1226. package/src/private/{inspector → devsupport/devmenu/elementinspector}/NetworkOverlay.js +10 -9
  1227. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ReactDevToolsOverlay.js +7 -7
  1228. package/src/private/{inspector → devsupport/devmenu/elementinspector}/StyleInspector.js +7 -6
  1229. package/src/private/{inspector → devsupport/devmenu/elementinspector}/XHRInterceptor.js +2 -2
  1230. package/src/private/{inspector → devsupport/devmenu/elementinspector}/getInspectorDataForViewAtPoint.js +4 -4
  1231. package/src/private/{inspector → devsupport/devmenu/elementinspector}/resolveBoxStyle.js +1 -1
  1232. package/src/private/{inspector → devsupport/devmenu/perfmonitor}/PerformanceOverlay.js +6 -5
  1233. package/src/private/{specs_DEPRECATED/modules → devsupport/devmenu/specs}/NativeDevMenu.js +2 -2
  1234. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.android.js +1 -1
  1235. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.ios.js +1 -1
  1236. package/src/private/{debugging → devsupport/rndevtools}/setUpFuseboxReactDevToolsDispatcher.js +1 -1
  1237. package/src/private/{fusebox → devsupport/rndevtools}/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  1238. package/src/private/{specs_DEPRECATED/modules → devsupport/rndevtools/specs}/NativeReactDevToolsSettingsManager.js +2 -2
  1239. package/src/private/featureflags/ReactNativeFeatureFlags.js +72 -80
  1240. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +9 -1
  1241. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -13
  1242. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  1243. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +1 -1
  1244. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +1 -1
  1245. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +3 -0
  1246. package/src/private/styles/composeStyles.js +12 -5
  1247. package/src/private/types/HostComponent.js +1 -1
  1248. package/src/private/types/HostInstance.js +67 -1
  1249. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -5
  1250. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +5 -18
  1251. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +6 -0
  1252. package/src/private/webapis/performance/Performance.js +1 -3
  1253. package/src/private/webapis/performance/PerformanceEntry.js +6 -1
  1254. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -0
  1255. package/src/private/webapis/performance/specs/NativePerformance.js +10 -1
  1256. package/src/types/bom.js.flow +96 -0
  1257. package/src/types/cssom.js.flow +576 -0
  1258. package/src/types/dom.js.flow +19 -0
  1259. package/src/types/globals.d.ts +42 -0
  1260. package/src/types/streams.js.flow +141 -0
  1261. package/third-party-podspecs/RCT-Folly.podspec +7 -6
  1262. package/third-party-podspecs/ReactNativeDependencies.podspec +86 -0
  1263. package/third-party-podspecs/fast_float.podspec +2 -2
  1264. package/third-party-podspecs/replace_dependencies_version.js +107 -0
  1265. package/types/index.d.ts +5 -2
  1266. package/types/public/ReactNativeTVTypes.d.ts +42 -42
  1267. package/types/public/ReactNativeTypes.d.ts +2 -2
  1268. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  1269. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  1270. package/Libraries/Blob/FileReader_new.js +0 -231
  1271. package/Libraries/Blob/FileReader_old.js +0 -186
  1272. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  1273. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -32
  1274. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  1275. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -19
  1276. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -49
  1277. package/Libraries/Events/CustomEvent.js +0 -32
  1278. package/Libraries/Events/EventPolyfill.js +0 -239
  1279. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -118
  1280. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  1281. package/Libraries/Network/XMLHttpRequest_new.js +0 -794
  1282. package/Libraries/Network/XMLHttpRequest_old.js +0 -701
  1283. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -48
  1284. package/Libraries/NewAppScreen/components/Header.js +0 -77
  1285. package/Libraries/NewAppScreen/components/HermesBadge.js +0 -72
  1286. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -148
  1287. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -39
  1288. package/Libraries/NewAppScreen/components/logo.png +0 -0
  1289. package/Libraries/NewAppScreen/index.js +0 -25
  1290. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -58
  1291. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -45
  1292. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  1293. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  1294. package/Libraries/WebSocket/WebSocketEvent.js +0 -30
  1295. package/Libraries/WebSocket/WebSocket_new.js +0 -325
  1296. package/Libraries/WebSocket/WebSocket_old.js +0 -297
  1297. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  1298. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -30
  1299. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -81
  1300. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.h +0 -30
  1301. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.mm +0 -185
  1302. package/React/Base/UIKitProxies/RCTInitializeUIKitProxies.mm +0 -23
  1303. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.h +0 -25
  1304. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.mm +0 -129
  1305. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.h +0 -26
  1306. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.mm +0 -80
  1307. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.h +0 -26
  1308. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.mm +0 -70
  1309. package/React/Fabric/Utils/RCTViewFinder.mm +0 -34
  1310. package/ReactAndroid/src/main/java/com/facebook/annotationprocessors/common/ProcessorBase.kt +0 -23
  1311. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/KeepGettersAndSetters.kt +0 -24
  1312. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +0 -21
  1313. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +0 -84
  1314. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.java +0 -59
  1315. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +0 -1240
  1316. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +0 -900
  1317. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.java +0 -29
  1318. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +0 -29
  1319. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.java +0 -37
  1320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +0 -234
  1321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +0 -57
  1322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java +0 -103
  1323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java +0 -110
  1324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java +0 -89
  1325. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.java +0 -42
  1326. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.java +0 -36
  1327. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.java +0 -110
  1328. package/ReactAndroid/src/main/java/com/facebook/react/bridge/InvalidIteratorException.kt +0 -18
  1329. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.java +0 -97
  1330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.java +0 -110
  1331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +0 -148
  1332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.java +0 -33
  1333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.java +0 -31
  1334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.java +0 -155
  1335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactBridge.kt +0 -48
  1336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +0 -39
  1337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +0 -75
  1338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/bridge.pro +0 -12
  1339. package/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt +0 -23
  1340. package/ReactAndroid/src/main/java/com/facebook/react/common/StandardCharsets.kt +0 -31
  1341. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +0 -128
  1342. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.java +0 -124
  1343. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java +0 -313
  1344. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +0 -174
  1345. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +0 -117
  1346. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +0 -495
  1347. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +0 -1121
  1348. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +0 -56
  1349. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.kt +0 -24
  1350. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java +0 -244
  1351. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.java +0 -166
  1352. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.java +0 -47
  1353. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +0 -300
  1354. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSplitBundleCallback.kt +0 -17
  1355. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +0 -239
  1356. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +0 -103
  1357. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +0 -329
  1358. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.kt +0 -40
  1359. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/fabric/SurfaceHandler.kt +0 -40
  1360. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/NativeModuleSoLoader.kt +0 -25
  1361. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.java +0 -288
  1362. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.java +0 -474
  1363. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.java +0 -76
  1364. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +0 -253
  1365. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +0 -383
  1366. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +0 -126
  1367. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.java +0 -103
  1368. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ChoreographerCompat.kt +0 -16
  1369. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +0 -204
  1370. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +0 -240
  1371. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +0 -785
  1372. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java +0 -68
  1373. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +0 -22
  1374. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java +0 -191
  1375. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java +0 -143
  1376. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +0 -193
  1377. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactLegacyArchitectureProcessor.kt +0 -48
  1378. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +0 -765
  1379. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.java +0 -131
  1380. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.java +0 -209
  1381. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.java +0 -138
  1382. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +0 -634
  1383. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.java +0 -90
  1384. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.java +0 -255
  1385. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.java +0 -555
  1386. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.kt +0 -27
  1387. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedTaskException.kt +0 -11
  1388. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +0 -80
  1389. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +0 -65
  1390. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactInvalidPropertyException.kt +0 -16
  1391. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.java +0 -99
  1392. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.java +0 -87
  1393. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +0 -448
  1394. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +0 -231
  1395. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +0 -119
  1396. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.java +0 -46
  1397. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.java +0 -127
  1398. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +0 -116
  1399. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +0 -109
  1400. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +0 -97
  1401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.java +0 -19
  1402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +0 -220
  1403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java +0 -116
  1404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.java +0 -86
  1405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java +0 -224
  1406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.java +0 -72
  1407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.java +0 -69
  1408. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostHelper.kt +0 -63
  1409. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.kt +0 -31
  1410. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +0 -213
  1411. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +0 -361
  1412. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +0 -409
  1413. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java +0 -47
  1414. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -233
  1415. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +0 -163
  1416. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java +0 -185
  1417. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +0 -54
  1418. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +0 -1493
  1419. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +0 -160
  1420. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +0 -52
  1421. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +0 -47
  1422. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +0 -54
  1423. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +0 -47
  1424. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +0 -51
  1425. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.java +0 -44
  1426. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +0 -1390
  1427. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +0 -53
  1428. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +0 -236
  1429. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +0 -52
  1430. package/ReactAndroid/src/main/jni/prebuilt/lib/DUMMY +0 -1
  1431. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.cpp +0 -18
  1432. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.h +0 -31
  1433. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -26
  1434. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.cpp +0 -29
  1435. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.h +0 -35
  1436. package/android/README.md +0 -21
  1437. package/flow/jest.js +0 -1287
  1438. package/jest/__tests__/setup-test.js +0 -18
  1439. package/scripts/codegen/generate-artifacts-executor.js +0 -1153
  1440. package/src/private/components/VScrollViewNativeComponents.js +0 -25
  1441. package/src/private/featureflags/README.md +0 -5
  1442. package/src/private/specs_DEPRECATED/README.md +0 -7
  1443. package/src/private/utilities/ensureInstance.js +0 -21
  1444. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +0 -267
  1445. package/types/modules/LaunchScreen.d.ts +0 -18
  1446. /package/ReactCommon/jsinspector-modern/{CdpJson.cpp → cdp/CdpJson.cpp} +0 -0
  1447. /package/ReactCommon/jsinspector-modern/{CdpJson.h → cdp/CdpJson.h} +0 -0
  1448. /package/src/private/{devmenu → devsupport/devmenu}/DevMenu.d.ts +0 -0
  1449. /package/src/private/{debugging → devsupport/rndevtools}/FuseboxSessionObserver.js +0 -0
  1450. /package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.js.flow +0 -0
@@ -5,18 +5,25 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- #include "TextLayoutManager.h"
8
+ #include <span>
9
+ #include <utility>
9
10
 
10
11
  #include <react/common/mapbuffer/JReadableMapBuffer.h>
12
+ #include <react/debug/react_native_assert.h>
11
13
  #include <react/jni/ReadableNativeMap.h>
12
14
  #include <react/renderer/attributedstring/conversions.h>
13
15
  #include <react/renderer/core/conversions.h>
14
16
  #include <react/renderer/mapbuffer/MapBuffer.h>
15
17
  #include <react/renderer/mapbuffer/MapBufferBuilder.h>
16
18
  #include <react/renderer/telemetry/TransactionTelemetry.h>
19
+ #include <react/renderer/textlayoutmanager/TextLayoutManager.h>
20
+ #include <react/renderer/textlayoutmanager/TextLayoutManagerExtended.h>
17
21
 
18
22
  namespace facebook::react {
19
23
 
24
+ static_assert(TextLayoutManagerExtended::supportsLineMeasurement());
25
+ static_assert(TextLayoutManagerExtended::supportsPreparedLayout());
26
+
20
27
  namespace {
21
28
 
22
29
  int countAttachments(const AttributedString& attributedString) {
@@ -88,6 +95,7 @@ TextMeasurement doMeasure(
88
95
  const ContextContainer::Shared& contextContainer,
89
96
  const AttributedString& attributedString,
90
97
  const ParagraphAttributes& paragraphAttributes,
98
+ const TextLayoutContext& layoutContext,
91
99
  const LayoutConstraints& layoutConstraints) {
92
100
  const int attachmentCount = countAttachments(attributedString);
93
101
  auto env = jni::Environment::current();
@@ -107,7 +115,7 @@ TextMeasurement doMeasure(
107
115
 
108
116
  auto size = measureAndroidComponent(
109
117
  contextContainer,
110
- -1, // TODO: we should pass rootTag in
118
+ layoutContext.surfaceId,
111
119
  "RCTText",
112
120
  std::move(attributedStringMap),
113
121
  std::move(paragraphAttributesMap),
@@ -117,33 +125,39 @@ TextMeasurement doMeasure(
117
125
  maximumSize.height,
118
126
  attachmentPositions);
119
127
 
120
- jfloat* attachmentData =
121
- env->GetFloatArrayElements(attachmentPositions, nullptr);
128
+ jfloat* attachmentDataElements =
129
+ env->GetFloatArrayElements(attachmentPositions, nullptr /*isCopy*/);
130
+ std::span<float> attachmentData{
131
+ attachmentDataElements, static_cast<size_t>(attachmentCount * 2)};
122
132
 
123
133
  auto attachments = TextMeasurement::Attachments{};
124
134
  if (attachmentCount > 0) {
125
- int attachmentIndex = 0;
126
135
  for (const auto& fragment : attributedString.getFragments()) {
127
136
  if (fragment.isAttachment()) {
128
- float top = attachmentData[attachmentIndex * 2];
129
- float left = attachmentData[attachmentIndex * 2 + 1];
130
- float width = fragment.parentShadowView.layoutMetrics.frame.size.width;
131
- float height =
132
- fragment.parentShadowView.layoutMetrics.frame.size.height;
133
-
134
- auto rect = facebook::react::Rect{
135
- .origin = {.x = left, .y = top},
136
- .size = facebook::react::Size{.width = width, .height = height}};
137
- attachments.push_back(
138
- TextMeasurement::Attachment{.frame = rect, .isClipped = false});
139
- attachmentIndex++;
137
+ float top = attachmentData[attachments.size() * 2];
138
+ float left = attachmentData[attachments.size() * 2 + 1];
139
+ if (std::isnan(top) || std::isnan(left)) {
140
+ attachments.push_back(
141
+ TextMeasurement::Attachment{.frame = Rect{}, .isClipped = true});
142
+ } else {
143
+ float width =
144
+ fragment.parentShadowView.layoutMetrics.frame.size.width;
145
+ float height =
146
+ fragment.parentShadowView.layoutMetrics.frame.size.height;
147
+
148
+ auto rect = facebook::react::Rect{
149
+ .origin = {.x = left, .y = top},
150
+ .size = facebook::react::Size{.width = width, .height = height}};
151
+ attachments.push_back(
152
+ TextMeasurement::Attachment{.frame = rect, .isClipped = false});
153
+ }
140
154
  }
141
155
  }
142
156
  }
143
157
 
144
158
  // Clean up allocated ref
145
159
  env->ReleaseFloatArrayElements(
146
- attachmentPositions, attachmentData, JNI_ABORT);
160
+ attachmentPositions, attachmentDataElements, JNI_ABORT);
147
161
  env->DeleteLocalRef(attachmentPositions);
148
162
 
149
163
  return TextMeasurement{.size = size, .attachments = attachments};
@@ -176,6 +190,7 @@ TextMeasurement TextLayoutManager::measure(
176
190
  contextContainer_,
177
191
  attributedString,
178
192
  paragraphAttributes,
193
+ layoutContext,
179
194
  layoutConstraints);
180
195
 
181
196
  if (telemetry != nullptr) {
@@ -192,6 +207,7 @@ TextMeasurement TextLayoutManager::measure(
192
207
  TextMeasurement TextLayoutManager::measureCachedSpannableById(
193
208
  int64_t cacheId,
194
209
  const ParagraphAttributes& paragraphAttributes,
210
+ const TextLayoutContext& layoutContext,
195
211
  const LayoutConstraints& layoutConstraints) const {
196
212
  auto env = jni::Environment::current();
197
213
  auto attachmentPositions = env->NewFloatArray(0);
@@ -205,7 +221,7 @@ TextMeasurement TextLayoutManager::measureCachedSpannableById(
205
221
 
206
222
  auto size = measureAndroidComponent(
207
223
  contextContainer_,
208
- -1, // TODO: we should pass rootTag in
224
+ layoutContext.surfaceId,
209
225
  "RCTText",
210
226
  localDataBuilder.build(),
211
227
  toMapBuffer(paragraphAttributes),
@@ -277,4 +293,95 @@ LinesMeasurements TextLayoutManager::measureLines(
277
293
  return lineMeasurements;
278
294
  }
279
295
 
296
+ TextLayoutManager::PreparedLayout TextLayoutManager::prepareLayout(
297
+ const AttributedString& attributedString,
298
+ const ParagraphAttributes& paragraphAttributes,
299
+ const TextLayoutContext& layoutContext,
300
+ const LayoutConstraints& layoutConstraints) const {
301
+ const auto& fabricUIManager =
302
+ contextContainer_->at<jni::global_ref<jobject>>("FabricUIManager");
303
+
304
+ static auto prepareLayout =
305
+ jni::findClassStatic("com/facebook/react/fabric/FabricUIManager")
306
+ ->getMethod<JPreparedLayout::javaobject(
307
+ jint,
308
+ JReadableMapBuffer::javaobject,
309
+ JReadableMapBuffer::javaobject,
310
+ jfloat,
311
+ jfloat)>("prepareLayout");
312
+
313
+ auto attributedStringMB =
314
+ JReadableMapBuffer::createWithContents(toMapBuffer(attributedString));
315
+ auto paragraphAttributesMB =
316
+ JReadableMapBuffer::createWithContents(toMapBuffer(paragraphAttributes));
317
+
318
+ // T222682416: We don't have any global cache here. We should investigate
319
+ // whether that is desirable
320
+ return {jni::make_global(prepareLayout(
321
+ fabricUIManager,
322
+ layoutContext.surfaceId,
323
+ attributedStringMB.get(),
324
+ paragraphAttributesMB.get(),
325
+ layoutConstraints.maximumSize.width,
326
+ layoutConstraints.maximumSize.height))};
327
+ }
328
+
329
+ TextMeasurement TextLayoutManager::measurePreparedLayout(
330
+ const PreparedLayout& preparedLayout,
331
+ const TextLayoutContext& /*layoutContext*/,
332
+ const LayoutConstraints& layoutConstraints) const {
333
+ const auto& fabricUIManager =
334
+ contextContainer_->at<jni::global_ref<jobject>>("FabricUIManager");
335
+
336
+ static auto measurePreparedLayout =
337
+ jni::findClassStatic("com/facebook/react/fabric/FabricUIManager")
338
+ ->getMethod<jni::JArrayFloat(
339
+ JPreparedLayout::javaobject, jfloat, jfloat, jfloat, jfloat)>(
340
+ "measurePreparedLayout");
341
+
342
+ auto minimumSize = layoutConstraints.minimumSize;
343
+ auto maximumSize = layoutConstraints.maximumSize;
344
+
345
+ auto measurementsArr = measurePreparedLayout(
346
+ fabricUIManager,
347
+ preparedLayout.get(),
348
+ minimumSize.width,
349
+ maximumSize.width,
350
+ minimumSize.height,
351
+ maximumSize.height);
352
+ auto measurements = measurementsArr->getRegion(
353
+ 0, static_cast<jsize>(measurementsArr->size()));
354
+
355
+ react_native_assert(measurementsArr->size() >= 2);
356
+ react_native_assert((measurementsArr->size() - 2) % 4 == 0);
357
+
358
+ TextMeasurement textMeasurement;
359
+
360
+ textMeasurement.size.width = measurements[0];
361
+ textMeasurement.size.height = measurements[1];
362
+
363
+ if (measurementsArr->size() > 2) {
364
+ textMeasurement.attachments.reserve((measurementsArr->size() - 2) / 4);
365
+ for (size_t i = 2; i < measurementsArr->size(); i += 4) {
366
+ auto top = measurements[i];
367
+ auto left = measurements[i + 1];
368
+ auto width = measurements[i + 2];
369
+ auto height = measurements[i + 3];
370
+
371
+ if (std::isnan(top) || std::isnan(left)) {
372
+ textMeasurement.attachments.push_back(
373
+ TextMeasurement::Attachment{.frame = Rect{}, .isClipped = true});
374
+ } else {
375
+ textMeasurement.attachments.push_back(TextMeasurement::Attachment{
376
+ .frame =
377
+ {.origin = {.x = left, .y = top},
378
+ .size = {.width = width, .height = height}},
379
+ .isClipped = false});
380
+ }
381
+ }
382
+ }
383
+
384
+ return textMeasurement;
385
+ }
386
+
280
387
  } // namespace facebook::react
@@ -0,0 +1,100 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/jni/SafeReleaseJniRef.h>
11
+ #include <react/renderer/attributedstring/AttributedStringBox.h>
12
+ #include <react/renderer/attributedstring/ParagraphAttributes.h>
13
+ #include <react/renderer/core/LayoutConstraints.h>
14
+ #include <react/renderer/textlayoutmanager/JPreparedLayout.h>
15
+ #include <react/renderer/textlayoutmanager/TextLayoutContext.h>
16
+ #include <react/renderer/textlayoutmanager/TextMeasureCache.h>
17
+ #include <react/utils/ContextContainer.h>
18
+
19
+ #include <fbjni/fbjni.h>
20
+ #include <memory>
21
+
22
+ namespace facebook::react {
23
+
24
+ class TextLayoutManager;
25
+
26
+ /*
27
+ * Cross platform facade for text measurement (e.g. Android-specific
28
+ * TextLayoutManager)
29
+ */
30
+ class TextLayoutManager {
31
+ public:
32
+ using PreparedLayout = SafeReleaseJniRef<jni::global_ref<JPreparedLayout>>;
33
+
34
+ TextLayoutManager(const ContextContainer::Shared& contextContainer);
35
+
36
+ /*
37
+ * Not copyable.
38
+ */
39
+ TextLayoutManager(const TextLayoutManager&) = delete;
40
+ TextLayoutManager& operator=(const TextLayoutManager&) = delete;
41
+
42
+ /*
43
+ * Not movable.
44
+ */
45
+ TextLayoutManager(TextLayoutManager&&) = delete;
46
+ TextLayoutManager& operator=(TextLayoutManager&&) = delete;
47
+
48
+ /*
49
+ * Measures `attributedString` using native text rendering infrastructure.
50
+ */
51
+ TextMeasurement measure(
52
+ const AttributedStringBox& attributedStringBox,
53
+ const ParagraphAttributes& paragraphAttributes,
54
+ const TextLayoutContext& layoutContext,
55
+ const LayoutConstraints& layoutConstraints) const;
56
+
57
+ /**
58
+ * Measures an AttributedString on the platform, as identified by some
59
+ * opaque cache ID.
60
+ */
61
+ TextMeasurement measureCachedSpannableById(
62
+ int64_t cacheId,
63
+ const ParagraphAttributes& paragraphAttributes,
64
+ const TextLayoutContext& layoutContext,
65
+ const LayoutConstraints& layoutConstraints) const;
66
+
67
+ /*
68
+ * Measures lines of `attributedString` using native text rendering
69
+ * infrastructure.
70
+ */
71
+ LinesMeasurements measureLines(
72
+ const AttributedStringBox& attributedStringBox,
73
+ const ParagraphAttributes& paragraphAttributes,
74
+ const Size& size) const;
75
+
76
+ /**
77
+ * Create a platform representation of fully laid out text, to later be
78
+ * reused.
79
+ */
80
+ PreparedLayout prepareLayout(
81
+ const AttributedString& attributedString,
82
+ const ParagraphAttributes& paragraphAttributes,
83
+ const TextLayoutContext& layoutContext,
84
+ const LayoutConstraints& layoutConstraints) const;
85
+
86
+ /**
87
+ * Derive text and attachment measurements from a PreparedLayout.
88
+ */
89
+ TextMeasurement measurePreparedLayout(
90
+ const PreparedLayout& layout,
91
+ const TextLayoutContext& layoutContext,
92
+ const LayoutConstraints& layoutConstraints) const;
93
+
94
+ private:
95
+ std::shared_ptr<const ContextContainer> contextContainer_;
96
+ TextMeasureCache textMeasureCache_;
97
+ LineMeasureCache lineMeasureCache_;
98
+ };
99
+
100
+ } // namespace facebook::react
@@ -11,8 +11,7 @@ namespace facebook::react {
11
11
 
12
12
  TextLayoutManager::TextLayoutManager(
13
13
  const ContextContainer::Shared& /*contextContainer*/)
14
- : textMeasureCache_(kSimpleThreadSafeCacheSizeCap),
15
- lineMeasureCache_(kSimpleThreadSafeCacheSizeCap) {}
14
+ : textMeasureCache_(kSimpleThreadSafeCacheSizeCap) {}
16
15
 
17
16
  TextMeasurement TextLayoutManager::measure(
18
17
  const AttributedStringBox& attributedStringBox,
@@ -29,20 +28,4 @@ TextMeasurement TextLayoutManager::measure(
29
28
  return TextMeasurement{{0, 0}, attachments};
30
29
  }
31
30
 
32
- #ifdef ANDROID
33
- TextMeasurement TextLayoutManager::measureCachedSpannableById(
34
- int64_t /*cacheId*/,
35
- const ParagraphAttributes& /*paragraphAttributes*/,
36
- const LayoutConstraints& /*layoutConstraints*/) const {
37
- return {};
38
- }
39
- #endif
40
-
41
- LinesMeasurements TextLayoutManager::measureLines(
42
- const AttributedStringBox& /*attributedStringBox*/,
43
- const ParagraphAttributes& /*paragraphAttributes*/,
44
- const Size& /*size*/) const {
45
- return {};
46
- };
47
-
48
31
  } // namespace facebook::react
@@ -0,0 +1,57 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/renderer/attributedstring/AttributedStringBox.h>
11
+ #include <react/renderer/attributedstring/ParagraphAttributes.h>
12
+ #include <react/renderer/core/LayoutConstraints.h>
13
+ #include <react/renderer/textlayoutmanager/TextLayoutContext.h>
14
+ #include <react/renderer/textlayoutmanager/TextMeasureCache.h>
15
+ #include <react/utils/ContextContainer.h>
16
+ #include <memory>
17
+
18
+ namespace facebook::react {
19
+
20
+ class TextLayoutManager;
21
+
22
+ /*
23
+ * Cross platform facade for text measurement (e.g. Android-specific
24
+ * TextLayoutManager)
25
+ */
26
+ class TextLayoutManager {
27
+ public:
28
+ TextLayoutManager(const ContextContainer::Shared& contextContainer);
29
+ virtual ~TextLayoutManager() = default;
30
+
31
+ /*
32
+ * Not copyable.
33
+ */
34
+ TextLayoutManager(const TextLayoutManager&) = delete;
35
+ TextLayoutManager& operator=(const TextLayoutManager&) = delete;
36
+
37
+ /*
38
+ * Not movable.
39
+ */
40
+ TextLayoutManager(TextLayoutManager&&) = delete;
41
+ TextLayoutManager& operator=(TextLayoutManager&&) = delete;
42
+
43
+ /*
44
+ * Measures `attributedString` using native text rendering infrastructure.
45
+ */
46
+ virtual TextMeasurement measure(
47
+ const AttributedStringBox& attributedStringBox,
48
+ const ParagraphAttributes& paragraphAttributes,
49
+ const TextLayoutContext& layoutContext,
50
+ const LayoutConstraints& layoutConstraints) const;
51
+
52
+ protected:
53
+ std::shared_ptr<const ContextContainer> contextContainer_;
54
+ TextMeasureCache textMeasureCache_;
55
+ };
56
+
57
+ } // namespace facebook::react
@@ -10,6 +10,7 @@
10
10
  #import <react/renderer/attributedstring/AttributedString.h>
11
11
  #import <react/renderer/attributedstring/ParagraphAttributes.h>
12
12
  #import <react/renderer/core/LayoutConstraints.h>
13
+ #import <react/renderer/textlayoutmanager/TextLayoutContext.h>
13
14
  #import <react/renderer/textlayoutmanager/TextMeasureCache.h>
14
15
 
15
16
  NS_ASSUME_NONNULL_BEGIN
@@ -28,10 +29,12 @@ using RCTTextLayoutFragmentEnumerationBlock =
28
29
 
29
30
  - (facebook::react::TextMeasurement)measureAttributedString:(facebook::react::AttributedString)attributedString
30
31
  paragraphAttributes:(facebook::react::ParagraphAttributes)paragraphAttributes
32
+ layoutContext:(facebook::react::TextLayoutContext)layoutContext
31
33
  layoutConstraints:(facebook::react::LayoutConstraints)layoutConstraints;
32
34
 
33
35
  - (facebook::react::TextMeasurement)measureNSAttributedString:(NSAttributedString *)attributedString
34
36
  paragraphAttributes:(facebook::react::ParagraphAttributes)paragraphAttributes
37
+ layoutContext:(facebook::react::TextLayoutContext)layoutContext
35
38
  layoutConstraints:(facebook::react::LayoutConstraints)layoutConstraints;
36
39
 
37
40
  - (void)drawAttributedString:(facebook::react::AttributedString)attributedString
@@ -37,6 +37,7 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
37
37
 
38
38
  - (TextMeasurement)measureNSAttributedString:(NSAttributedString *)attributedString
39
39
  paragraphAttributes:(ParagraphAttributes)paragraphAttributes
40
+ layoutContext:(TextLayoutContext)layoutContext
40
41
  layoutConstraints:(LayoutConstraints)layoutConstraints
41
42
  {
42
43
  if (attributedString.length == 0) {
@@ -47,32 +48,21 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
47
48
  }
48
49
 
49
50
  CGSize maximumSize = CGSize{layoutConstraints.maximumSize.width, CGFLOAT_MAX};
50
-
51
- // A workaround for the issue with empty line measurement:
52
- // When maximumNumberOfLines is set to N and N+1 line is empty, the returned
53
- // measurement is for N+1 lines. Adding any character to that line results
54
- // in the correct measurement.
55
- if (paragraphAttributes.maximumNumberOfLines > 0 && attributedString.length > 0 &&
56
- [[attributedString string] characterAtIndex:attributedString.length - 1] == '\n') {
57
- NSMutableAttributedString *mutableString =
58
- [[NSMutableAttributedString alloc] initWithAttributedString:attributedString];
59
- [mutableString replaceCharactersInRange:NSMakeRange(attributedString.length - 1, 1) withString:@"\n "];
60
- attributedString = mutableString;
61
- }
62
-
63
51
  NSTextStorage *textStorage = [self _textStorageAndLayoutManagerWithAttributesString:attributedString
64
52
  paragraphAttributes:paragraphAttributes
65
53
  size:maximumSize];
66
54
 
67
- return [self _measureTextStorage:textStorage];
55
+ return [self _measureTextStorage:textStorage paragraphAttributes:paragraphAttributes layoutContext:layoutContext];
68
56
  }
69
57
 
70
58
  - (TextMeasurement)measureAttributedString:(AttributedString)attributedString
71
59
  paragraphAttributes:(ParagraphAttributes)paragraphAttributes
60
+ layoutContext:(TextLayoutContext)layoutContext
72
61
  layoutConstraints:(LayoutConstraints)layoutConstraints
73
62
  {
74
63
  return [self measureNSAttributedString:[self _nsAttributedStringFromAttributedString:attributedString]
75
64
  paragraphAttributes:paragraphAttributes
65
+ layoutContext:layoutContext
76
66
  layoutConstraints:layoutConstraints];
77
67
  }
78
68
 
@@ -341,6 +331,8 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
341
331
  }
342
332
 
343
333
  - (TextMeasurement)_measureTextStorage:(NSTextStorage *)textStorage
334
+ paragraphAttributes:(ParagraphAttributes)paragraphAttributes
335
+ layoutContext:(TextLayoutContext)layoutContext
344
336
  {
345
337
  NSLayoutManager *layoutManager = textStorage.layoutManagers.firstObject;
346
338
  NSTextContainer *textContainer = layoutManager.textContainers.firstObject;
@@ -348,6 +340,8 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
348
340
 
349
341
  NSRange glyphRange = [layoutManager glyphRangeForTextContainer:textContainer];
350
342
  __block BOOL textDidWrap = NO;
343
+ __block NSUInteger linesEnumerated = 0;
344
+ __block CGFloat enumeratedLinesHeight = 0;
351
345
  [layoutManager
352
346
  enumerateLineFragmentsForGlyphRange:glyphRange
353
347
  usingBlock:^(
@@ -363,6 +357,13 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
363
357
  [textStorage.string characterAtIndex:lastCharacterIndex] == '\n';
364
358
  if (!endsWithNewLine && textStorage.string.length > lastCharacterIndex + 1) {
365
359
  textDidWrap = YES;
360
+ }
361
+ if (linesEnumerated++ < paragraphAttributes.maximumNumberOfLines) {
362
+ enumeratedLinesHeight = usedRect.origin.y + usedRect.size.height;
363
+ }
364
+ if (textDidWrap &&
365
+ (paragraphAttributes.maximumNumberOfLines == 0 ||
366
+ linesEnumerated >= paragraphAttributes.maximumNumberOfLines)) {
366
367
  *stop = YES;
367
368
  }
368
369
  }];
@@ -373,7 +374,21 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
373
374
  size.width = textContainer.size.width;
374
375
  }
375
376
 
376
- size = (CGSize){RCTCeilPixelValue(size.width), RCTCeilPixelValue(size.height)};
377
+ if (paragraphAttributes.maximumNumberOfLines != 0) {
378
+ // If maximumNumberOfLines is set, we cannot rely on setting it on the NSTextContainer
379
+ // due to an edge case where it returns wrong height:
380
+ // When maximumNumberOfLines is set to N and the N+1 line is empty, the measured height
381
+ // is N+1 lines (incorrect). Adding any characted to the N+1 line, making it non-empty
382
+ // casuses the measured height to be N lines (correct).
383
+ if (linesEnumerated < paragraphAttributes.maximumNumberOfLines) {
384
+ enumeratedLinesHeight += layoutManager.extraLineFragmentUsedRect.size.height;
385
+ }
386
+ size.height = enumeratedLinesHeight;
387
+ }
388
+
389
+ size = (CGSize){
390
+ ceil(size.width * layoutContext.pointScaleFactor) / layoutContext.pointScaleFactor,
391
+ ceil(size.height * layoutContext.pointScaleFactor) / layoutContext.pointScaleFactor};
377
392
 
378
393
  __block auto attachments = TextMeasurement::Attachments{};
379
394
 
@@ -386,19 +401,27 @@ static NSLineBreakMode RCTNSLineBreakModeFromEllipsizeMode(EllipsizeMode ellipsi
386
401
  return;
387
402
  }
388
403
 
389
- CGSize attachmentSize = attachment.bounds.size;
390
- CGRect glyphRect = [layoutManager boundingRectForGlyphRange:range inTextContainer:textContainer];
404
+ NSRange attachmentGlyphRange = [layoutManager glyphRangeForCharacterRange:range
405
+ actualCharacterRange:NULL];
406
+ NSRange truncatedRange =
407
+ [layoutManager truncatedGlyphRangeInLineFragmentForGlyphAtIndex:attachmentGlyphRange.location];
408
+ if (truncatedRange.location != NSNotFound && attachmentGlyphRange.location >= truncatedRange.location) {
409
+ attachments.push_back(TextMeasurement::Attachment{.isClipped = true});
410
+ } else {
411
+ CGSize attachmentSize = attachment.bounds.size;
412
+ CGRect glyphRect = [layoutManager boundingRectForGlyphRange:range inTextContainer:textContainer];
391
413
 
392
- CGRect frame;
393
- CGFloat baseline = [layoutManager locationForGlyphAtIndex:range.location].y;
414
+ CGRect frame;
415
+ CGFloat baseline = [layoutManager locationForGlyphAtIndex:range.location].y;
394
416
 
395
- frame = {{glyphRect.origin.x, glyphRect.origin.y + baseline - attachmentSize.height}, attachmentSize};
417
+ frame = {{glyphRect.origin.x, glyphRect.origin.y + baseline - attachmentSize.height}, attachmentSize};
396
418
 
397
- auto rect = facebook::react::Rect{
398
- facebook::react::Point{frame.origin.x, frame.origin.y},
399
- facebook::react::Size{frame.size.width, frame.size.height}};
419
+ auto rect = facebook::react::Rect{
420
+ facebook::react::Point{frame.origin.x, frame.origin.y},
421
+ facebook::react::Size{frame.size.width, frame.size.height}};
400
422
 
401
- attachments.push_back(TextMeasurement::Attachment{rect, false});
423
+ attachments.push_back(TextMeasurement::Attachment{.frame = rect, .isClipped = false});
424
+ }
402
425
  }];
403
426
 
404
427
  return TextMeasurement{{size.width, size.height}, attachments};
@@ -17,8 +17,6 @@
17
17
 
18
18
  namespace facebook::react {
19
19
 
20
- class TextLayoutManager;
21
-
22
20
  /*
23
21
  * Cross platform facade for text measurement (e.g. Android-specific
24
22
  * TextLayoutManager)
@@ -26,7 +24,6 @@ class TextLayoutManager;
26
24
  class TextLayoutManager {
27
25
  public:
28
26
  TextLayoutManager(const ContextContainer::Shared& contextContainer);
29
- virtual ~TextLayoutManager() = default;
30
27
 
31
28
  /*
32
29
  * Not copyable.
@@ -43,54 +40,30 @@ class TextLayoutManager {
43
40
  /*
44
41
  * Measures `attributedString` using native text rendering infrastructure.
45
42
  */
46
- virtual TextMeasurement measure(
43
+ TextMeasurement measure(
47
44
  const AttributedStringBox& attributedStringBox,
48
45
  const ParagraphAttributes& paragraphAttributes,
49
46
  const TextLayoutContext& layoutContext,
50
47
  const LayoutConstraints& layoutConstraints) const;
51
48
 
52
- #ifdef ANDROID
53
- /**
54
- * Measures an AttributedString on the platform, as identified by some
55
- * opaque cache ID.
56
- */
57
- TextMeasurement measureCachedSpannableById(
58
- int64_t cacheId,
59
- const ParagraphAttributes& paragraphAttributes,
60
- const LayoutConstraints& layoutConstraints) const;
61
- #endif
62
-
63
49
  /*
64
50
  * Measures lines of `attributedString` using native text rendering
65
51
  * infrastructure.
66
52
  */
67
- virtual LinesMeasurements measureLines(
68
- const AttributedStringBox& attributedStringBox,
69
- const ParagraphAttributes& paragraphAttributes,
70
- const Size& size) const;
71
-
72
- /*
73
- * Calculates baseline of `attributedString` using native text rendering
74
- * infrastructure.
75
- */
76
- Float baseline(
53
+ LinesMeasurements measureLines(
77
54
  const AttributedStringBox& attributedStringBox,
78
55
  const ParagraphAttributes& paragraphAttributes,
79
56
  const Size& size) const;
80
57
 
81
- #ifdef __APPLE__
82
58
  /*
83
59
  * Returns an opaque pointer to platform-specific TextLayoutManager.
84
60
  * Is used on a native views layer to delegate text rendering to the manager.
85
61
  */
86
62
  std::shared_ptr<void> getNativeTextLayoutManager() const;
87
- #endif
88
63
 
89
64
  protected:
90
65
  std::shared_ptr<const ContextContainer> contextContainer_;
91
- #ifdef __APPLE__
92
66
  std::shared_ptr<void> nativeTextLayoutManager_;
93
- #endif
94
67
  TextMeasureCache textMeasureCache_;
95
68
  LineMeasureCache lineMeasureCache_;
96
69
  };
@@ -47,6 +47,7 @@ TextMeasurement TextLayoutManager::measure(
47
47
 
48
48
  auto measurement = [textLayoutManager measureAttributedString:attributedString
49
49
  paragraphAttributes:paragraphAttributes
50
+ layoutContext:layoutContext
50
51
  layoutConstraints:layoutConstraints];
51
52
 
52
53
  if (telemetry) {
@@ -69,6 +70,7 @@ TextMeasurement TextLayoutManager::measure(
69
70
 
70
71
  measurement = [textLayoutManager measureNSAttributedString:nsAttributedString
71
72
  paragraphAttributes:paragraphAttributes
73
+ layoutContext:layoutContext
72
74
  layoutConstraints:layoutConstraints];
73
75
 
74
76
  if (telemetry) {
@@ -6,14 +6,7 @@
6
6
  cmake_minimum_required(VERSION 3.13)
7
7
  set(CMAKE_VERBOSE_MAKEFILE on)
8
8
 
9
- add_compile_options(
10
- -fexceptions
11
- -frtti
12
- -std=c++20
13
- -Wall
14
- -Wpedantic
15
- -Wno-unused-local-typedef
16
- -DLOG_TAG=\"Fabric\")
9
+ include(${REACT_COMMON_DIR}/cmake-utils/react-native-flags.cmake)
17
10
 
18
11
  file(GLOB react_renderer_uimanager_SRC CONFIGURE_DEPENDS *.cpp)
19
12
  add_library(react_renderer_uimanager OBJECT ${react_renderer_uimanager_SRC})
@@ -41,3 +34,6 @@ target_link_libraries(react_renderer_uimanager
41
34
  rrc_view
42
35
  runtimeexecutor
43
36
  )
37
+ target_compile_reactnative_options(react_renderer_uimanager PRIVATE "Fabric")
38
+ target_compile_options(react_renderer_uimanager PRIVATE -Wno-unused-local-typedef)
39
+ target_compile_options(react_renderer_uimanager PRIVATE -Wpedantic)