react-native-tvos 0.79.2-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 (1463) 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/README.md +3 -1
  216. package/React/Base/RCTBridge.h +5 -3
  217. package/React/Base/RCTBridge.mm +95 -13
  218. package/React/Base/RCTBridgeProxy.mm +1 -1
  219. package/React/Base/RCTRootView.h +7 -1
  220. package/React/Base/RCTRootView.m +38 -0
  221. package/React/Base/RCTRootViewInternal.h +1 -0
  222. package/React/Base/RCTTVRemoteSelectHandler.m +2 -1
  223. package/React/Base/RCTUtils.h +8 -5
  224. package/React/Base/{RCTUtils.m → RCTUtils.mm} +55 -28
  225. package/React/Base/RCTVersion.m +2 -2
  226. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +6 -0
  227. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +37 -0
  228. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +3 -8
  229. package/React/CoreModules/RCTAccessibilityManager.mm +9 -11
  230. package/React/CoreModules/RCTAppState.mm +11 -9
  231. package/React/CoreModules/RCTAppearance.mm +2 -14
  232. package/React/CoreModules/RCTDevSettings.mm +0 -1
  233. package/React/CoreModules/RCTDeviceInfo.mm +50 -19
  234. package/React/CoreModules/RCTLogBox.mm +1 -1
  235. package/React/CoreModules/RCTPerfMonitor.mm +1 -1
  236. package/React/CoreModules/RCTPlatform.mm +25 -20
  237. package/React/CoreModules/RCTStatusBarManager.mm +18 -13
  238. package/React/CoreModules/RCTTVNavigationEventEmitter.mm +0 -2
  239. package/React/CoreModules/React-CoreModules.podspec +4 -18
  240. package/React/CxxBridge/RCTCxxBridge.mm +6 -18
  241. package/React/CxxModule/RCTNativeModule.mm +1 -1
  242. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +173 -133
  243. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +600 -425
  244. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +5 -0
  245. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +21 -8
  246. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +1 -1
  247. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +2 -2
  248. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +2 -4
  249. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +2 -2
  250. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +31 -0
  251. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +13 -1
  252. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +1 -1
  253. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +2 -2
  254. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +13 -8
  255. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +62 -15
  256. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +47 -4
  257. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  258. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.h +28 -0
  259. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.mm +83 -0
  260. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +11 -0
  261. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +130 -34
  262. package/React/Fabric/Mounting/RCTComponentViewFactory.h +0 -6
  263. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +36 -31
  264. package/React/Fabric/RCTScheduler.mm +6 -0
  265. package/React/Fabric/Utils/RCTBoxShadow.h +2 -4
  266. package/React/Fabric/Utils/RCTBoxShadow.mm +92 -224
  267. package/React/Fabric/Utils/RCTGradientUtils.h +21 -0
  268. package/React/Fabric/Utils/RCTGradientUtils.mm +204 -0
  269. package/React/Fabric/Utils/RCTLinearGradient.mm +3 -192
  270. package/React/Fabric/Utils/{RCTViewFinder.h → RCTRadialGradient.h} +3 -2
  271. package/React/Fabric/Utils/RCTRadialGradient.mm +229 -0
  272. package/React/Profiler/RCTProfile.m +1 -1
  273. package/React/React-RCTFBReactNativeSpec.podspec +3 -13
  274. package/React/React-RCTFabric.podspec +6 -14
  275. package/React/Runtime/React-RCTRuntime.podspec +4 -18
  276. package/React/Views/RCTBorderDrawing.h +5 -2
  277. package/React/Views/RCTBorderDrawing.m +29 -12
  278. package/React/Views/RCTFont.mm +0 -4
  279. package/React/Views/RCTTVView.m +4 -4
  280. package/React/Views/RCTView.m +4 -4
  281. package/React/Views/ScrollView/RCTScrollView.m +1 -1
  282. package/React-Core.podspec +4 -20
  283. package/ReactAndroid/api/ReactAndroid.api +617 -1147
  284. package/ReactAndroid/build.gradle.kts +4 -2
  285. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +9 -15
  286. package/ReactAndroid/external-artifacts/build.gradle.kts +6 -4
  287. package/ReactAndroid/gradle.properties +4 -2
  288. package/ReactAndroid/hermes-engine/build.gradle.kts +7 -4
  289. package/ReactAndroid/proguard-rules.pro +0 -6
  290. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.kt +2 -2
  291. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -2
  292. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +11 -2
  293. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +56 -0
  294. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +5 -5
  295. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.kt +4 -0
  296. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +14 -3
  297. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.kt +54 -0
  298. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +15 -4
  299. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +20 -8
  300. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +4 -12
  301. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +88 -0
  302. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +20 -56
  303. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +2 -2
  304. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +3 -3
  305. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +41 -42
  306. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +9 -2
  307. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +9 -0
  308. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.kt +2 -2
  309. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +0 -1
  310. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +3 -0
  311. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +3 -3
  312. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +12 -12
  313. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.kt +10 -10
  314. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeValueListener.kt +2 -2
  315. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +1 -1
  316. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +0 -6
  317. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +1072 -0
  318. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +774 -0
  319. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.kt +1 -1
  320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.kt +26 -0
  321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +9 -7
  322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.kt +29 -0
  323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +3 -1
  324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +14 -3
  325. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeSoLoader.kt +36 -0
  326. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +35 -0
  327. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +2 -2
  328. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +17 -13
  329. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +214 -0
  330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.kt +1 -0
  331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +10 -1
  332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +56 -0
  333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.kt +3 -3
  334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.kt +61 -0
  335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.kt +80 -0
  336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.kt +80 -0
  337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicNative.kt +6 -0
  338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.kt +42 -0
  339. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.kt +26 -0
  340. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.kt +78 -0
  341. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.kt +99 -0
  342. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.kt +3 -0
  343. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.kt +118 -0
  344. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java +13 -5
  345. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +142 -0
  346. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.kt +26 -0
  347. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.kt +30 -0
  348. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java +2 -0
  349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.kt +129 -0
  350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/LifecycleEventListener.kt +2 -0
  351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +8 -5
  352. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +2 -0
  353. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +10 -0
  354. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArray.kt +1 -1
  355. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.kt +1 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +2 -0
  357. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +18 -7
  358. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +3 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +9 -8
  360. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.java +2 -0
  361. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +5 -7
  362. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +48 -0
  363. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactIgnorableMountingException.kt +6 -6
  364. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.java +7 -1
  365. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +3 -1
  366. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMethod.kt +1 -0
  367. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +2 -2
  368. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +31 -0
  369. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +10 -0
  370. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +1 -0
  371. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArrayBuilder.kt +61 -0
  372. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapBuilder.kt +61 -0
  373. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.kt +2 -2
  374. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.kt +6 -5
  375. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +3 -0
  376. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.kt +69 -0
  377. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +13 -7
  378. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.kt +4 -3
  379. package/ReactAndroid/src/main/java/com/facebook/react/common/ClassFinder.kt +3 -4
  380. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +2 -2
  381. package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegate.kt +2 -0
  382. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/LegacyArchitectureShadowNodeWithCxxImpl.kt +23 -0
  383. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/InteropLegacyArchitecture.kt +16 -0
  384. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitecture.kt +1 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogger.kt +66 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +1 -1
  387. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  388. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +7 -7
  389. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +10 -12
  390. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +98 -0
  391. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +81 -0
  392. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +323 -0
  393. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +118 -0
  394. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +159 -0
  395. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.kt +87 -0
  396. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +1 -1
  397. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +413 -0
  398. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +903 -0
  399. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +57 -0
  400. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.kt +1 -1
  401. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -1
  402. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +4 -4
  403. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +167 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.kt +44 -0
  405. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +10 -16
  406. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.kt +251 -0
  407. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +1 -1
  408. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +11 -13
  409. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +3 -3
  410. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.kt +2 -2
  411. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +176 -0
  412. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricSoLoader.kt +4 -5
  413. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +177 -86
  414. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +6 -2
  415. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +6 -11
  416. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.kt +103 -0
  417. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +13 -11
  418. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +8 -12
  419. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +5 -9
  420. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +7 -15
  421. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt +2 -2
  422. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt +2 -2
  423. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.kt +6 -6
  424. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +16 -39
  425. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +24 -25
  426. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +12 -5
  427. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.kt +2 -2
  428. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchCommandMountItem.kt +3 -3
  429. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +335 -0
  430. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.kt +3 -3
  431. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +7 -7
  432. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +2 -1
  433. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/TaskInterface.kt +1 -1
  434. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +16 -16
  435. package/ReactAndroid/src/main/java/com/facebook/react/internal/SystraceSection.kt +3 -3
  436. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +75 -60
  437. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +120 -100
  438. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +25 -21
  439. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +27 -23
  440. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +135 -113
  441. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +1 -3
  442. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
  443. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +25 -21
  444. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +84 -0
  445. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -2
  446. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEvent.kt +14 -4
  447. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +12 -2
  448. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.kt +293 -0
  449. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +405 -0
  450. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +63 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.kt +2 -2
  452. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutor.kt +5 -0
  453. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutorFactory.kt +7 -0
  454. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +1 -5
  455. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskEventListener.kt +3 -2
  456. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +13 -12
  457. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +2 -2
  458. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +336 -0
  459. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +113 -0
  460. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.kt +99 -0
  461. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.kt +4 -4
  462. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.kt +4 -0
  463. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.kt +1 -1
  464. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JSTimers.kt +4 -4
  465. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionAwareActivity.kt +2 -0
  466. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionListener.kt +1 -1
  467. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +1 -1
  468. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +5 -1
  469. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +4 -0
  470. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +1 -0
  471. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +14 -8
  472. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +4 -0
  473. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +12 -17
  474. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.kt +209 -0
  475. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.kt +205 -0
  476. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  477. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +18 -18
  478. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +6 -5
  479. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +11 -22
  480. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +35 -29
  481. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +1 -1
  482. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +846 -0
  483. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpCompat.java +4 -1
  484. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.kt +57 -0
  485. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +2 -2
  486. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +6 -6
  487. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +4 -4
  488. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +13 -12
  489. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +14 -3
  490. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.kt +6 -5
  491. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +20 -0
  492. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +7 -11
  493. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.kt +161 -0
  494. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +130 -0
  495. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +10 -2
  496. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +156 -0
  497. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.kt +1 -1
  498. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +112 -0
  499. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +10 -4
  500. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +159 -0
  501. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactStateTracker.kt +1 -1
  502. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +113 -0
  503. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +1 -1
  504. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +97 -75
  505. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +11 -10
  506. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +1 -1
  507. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +599 -0
  508. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.kt +91 -0
  509. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.kt +217 -0
  510. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +12 -11
  511. package/ReactAndroid/src/main/java/com/facebook/react/runtime/cxxreactpackage/CxxReactPackage.kt +4 -1
  512. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Continuation.kt +2 -2
  513. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.kt +418 -0
  514. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +1 -1
  515. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +31 -25
  516. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  517. package/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.kt +9 -9
  518. package/ReactAndroid/src/main/java/com/facebook/react/touch/OnInterceptTouchEventListener.kt +4 -4
  519. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.kt +2 -2
  520. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +5 -5
  521. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.kt +2 -11
  522. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.kt +3 -12
  523. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +7 -2
  524. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +64 -0
  525. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +7 -5
  526. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +1 -1
  527. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.kt +1 -1
  528. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +59 -7
  529. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +7 -0
  530. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +8 -0
  531. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +1 -10
  532. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +3 -1
  533. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +13 -5
  534. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +11 -2
  535. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +12 -1
  536. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.kt +93 -0
  537. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +1 -1
  538. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -1
  539. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +146 -0
  540. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.kt +11 -9
  541. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.kt +63 -0
  542. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactCompoundView.kt +3 -3
  543. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +3 -3
  544. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +2 -2
  545. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +2 -2
  546. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +3 -0
  547. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +10 -1
  548. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.kt +68 -0
  549. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +6 -0
  550. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReferenceStateWrapper.kt +13 -0
  551. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +103 -0
  552. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +2 -2
  553. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +8 -11
  554. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +435 -0
  555. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +223 -0
  556. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +3 -3
  557. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +19 -13
  558. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +14 -3
  559. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +31 -15
  560. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.kt +92 -0
  561. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +17 -13
  562. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +3 -0
  563. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +27 -22
  564. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.kt +46 -0
  565. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +109 -0
  566. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +87 -0
  567. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +22 -3
  568. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +7 -5
  569. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +9 -4
  570. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +2 -0
  571. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +6 -0
  572. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.kt +97 -0
  573. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.kt +86 -0
  574. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.kt +15 -0
  575. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +5 -1
  576. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +3 -3
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +3 -0
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +3 -1
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +9 -1
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +8 -6
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +10 -10
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +3 -17
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlurEvent.kt +16 -5
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.kt +206 -0
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +7 -7
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +1 -13
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +16 -43
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +2 -2
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{ReactEventEmitter.kt → EventEmitterImpl.kt} +39 -47
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +33 -43
  591. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FocusEvent.kt +16 -5
  592. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +27 -31
  593. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +2 -0
  594. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +0 -3
  595. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +11 -4
  596. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +12 -8
  597. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/internal/LegacyArchitectureShadowNodeLogger.kt +52 -0
  598. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +128 -0
  599. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +3 -0
  600. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +85 -0
  601. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +225 -0
  602. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +3 -0
  603. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +10 -0
  604. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +12 -0
  605. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +12 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +12 -0
  607. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +10 -1
  608. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +69 -0
  609. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +87 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +10 -2
  611. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +30 -12
  612. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +36 -22
  613. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +206 -0
  614. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +8 -0
  615. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +2 -38
  616. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +72 -246
  617. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +375 -0
  618. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +30 -0
  619. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +6 -6
  620. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.kt +3 -1
  621. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +1 -1
  622. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +7 -7
  623. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +7 -7
  624. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +8 -8
  625. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +7 -10
  626. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.kt +1 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +6 -5
  628. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +1 -1
  629. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +7 -10
  630. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +20 -17
  631. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +20 -28
  632. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +43 -41
  633. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.kt +1 -1
  634. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.kt +1 -1
  635. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +4 -0
  636. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +14 -12
  637. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +1 -1
  638. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewShadowNode.kt +2 -1
  639. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +172 -0
  640. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +27 -7
  641. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +366 -0
  642. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +36 -7
  643. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +74 -1
  644. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +390 -0
  645. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +4 -2
  646. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +1 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +1 -1
  648. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +1 -1
  649. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +1 -1
  650. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +4 -0
  651. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +18 -0
  653. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +418 -0
  654. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +212 -0
  655. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +25 -12
  656. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +6 -6
  657. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +31 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +207 -0
  659. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +6 -2
  660. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +1 -4
  661. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +40 -54
  662. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +4 -10
  663. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +9 -14
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +3 -0
  665. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +2 -0
  666. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +30 -8
  667. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +2 -0
  668. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +237 -121
  669. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.kt +8 -4
  670. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +140 -0
  671. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +174 -0
  672. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +2 -1
  673. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.kt +4 -3
  674. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.kt +3 -3
  675. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +8 -8
  676. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactAbsoluteSizeSpan.kt +1 -1
  677. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactBackgroundColorSpan.kt +1 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +6 -5
  679. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactForegroundColorSpan.kt +1 -1
  680. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactOpacitySpan.kt +1 -1
  681. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactSpan.kt +1 -1
  682. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +1 -1
  683. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTagSpan.kt +2 -2
  684. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTextPaintHolderSpan.kt +1 -1
  685. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +1 -1
  686. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +5 -5
  687. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +3 -3
  688. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +11 -11
  689. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.kt +4 -7
  690. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.kt +50 -0
  691. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +1331 -0
  692. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.kt +151 -0
  693. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +44 -0
  694. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +51 -0
  695. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.kt +43 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.kt +35 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.kt +33 -0
  698. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +1139 -0
  699. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.kt +46 -0
  700. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +210 -0
  701. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.kt +40 -0
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +66 -0
  703. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +49 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +45 -0
  705. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +12 -9
  706. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +6 -4
  707. package/ReactAndroid/src/main/java/com/facebook/react/views/view/MeasureUtil.kt +2 -2
  708. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +37 -11
  709. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +51 -4
  710. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +4 -4
  711. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +19 -23
  712. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +10 -11
  713. package/ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.kt +3 -3
  714. package/ReactAndroid/src/main/jni/CMakeLists.txt +22 -9
  715. package/ReactAndroid/src/main/jni/first-party/fbgloginit/CMakeLists.txt +3 -0
  716. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/CMakeLists.txt +3 -1
  717. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/jni_lib_merge.h +1 -2
  718. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +4 -7
  719. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +3 -2
  720. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +2 -9
  721. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.cpp +3 -8
  722. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.h +1 -9
  723. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +12 -0
  724. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +4 -0
  725. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +130 -13
  726. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +9 -0
  727. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +186 -0
  728. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.h +38 -0
  729. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +10 -0
  730. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  731. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +5 -2
  732. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +2 -1
  733. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +2 -10
  734. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +166 -138
  735. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +34 -28
  736. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/CMakeLists.txt +2 -5
  737. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +3 -7
  738. package/ReactAndroid/src/main/jni/react/hermes/tooling/CMakeLists.txt +2 -0
  739. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +54 -6
  740. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +14 -18
  741. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +10 -17
  742. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +1 -0
  743. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +9 -14
  744. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +33 -0
  745. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -15
  746. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.cpp +30 -0
  747. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.h +12 -1
  748. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +3 -3
  749. package/ReactAndroid/src/main/jni/react/jscexecutor/CMakeLists.txt +2 -0
  750. package/ReactAndroid/src/main/jni/react/jsctooling/CMakeLists.txt +2 -0
  751. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +3 -2
  752. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +3 -6
  753. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +10 -0
  754. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +4 -0
  755. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +4 -1
  756. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +3 -1
  757. package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/CMakeLists.txt +4 -7
  758. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +4 -8
  759. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +5 -7
  760. package/ReactAndroid/src/main/jni/react/runtime/jni/JBindingsInstaller.h +2 -4
  761. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +0 -4
  762. package/ReactAndroid/src/main/jni/react/runtime/jsc/jni/CMakeLists.txt +3 -1
  763. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +4 -7
  764. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.cpp +1 -7
  765. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.h +4 -3
  766. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.cpp +1 -8
  767. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.h +4 -3
  768. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +3 -2
  769. package/ReactAndroid/src/main/jni/third-party/boost/CMakeLists.txt +1 -0
  770. package/ReactAndroid/src/main/jni/third-party/double-conversion/CMakeLists.txt +4 -1
  771. package/ReactAndroid/src/main/jni/third-party/fast_float/CMakeLists.txt +2 -1
  772. package/ReactAndroid/src/main/jni/third-party/fmt/CMakeLists.txt +2 -1
  773. package/ReactAndroid/src/main/jni/third-party/glog/CMakeLists.txt +14 -9
  774. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +5 -0
  775. package/ReactAndroid/src/main/res/devsupport/values-am/strings.xml +6 -0
  776. package/ReactAndroid/src/main/res/shell/values/styles.xml +4 -4
  777. package/ReactAndroid/src/main/res/systeminfo/values/strings.xml +4 -0
  778. package/ReactAndroid/src/main/res/systeminfo/values-af/strings.xml +6 -0
  779. package/ReactAndroid/src/main/res/systeminfo/values-ar/strings.xml +6 -0
  780. package/ReactAndroid/src/main/res/systeminfo/values-az/strings.xml +6 -0
  781. package/ReactAndroid/src/main/res/systeminfo/values-be/strings.xml +6 -0
  782. package/ReactAndroid/src/main/res/systeminfo/values-bg/strings.xml +6 -0
  783. package/ReactAndroid/src/main/res/systeminfo/values-bn/strings.xml +6 -0
  784. package/ReactAndroid/src/main/res/systeminfo/values-ca/strings.xml +6 -0
  785. package/ReactAndroid/src/main/res/systeminfo/values-cs/strings.xml +6 -0
  786. package/ReactAndroid/src/main/res/systeminfo/values-da/strings.xml +6 -0
  787. package/ReactAndroid/src/main/res/systeminfo/values-de/strings.xml +6 -0
  788. package/ReactAndroid/src/main/res/systeminfo/values-el/strings.xml +6 -0
  789. package/ReactAndroid/src/main/res/systeminfo/values-en-rGB/strings.xml +6 -0
  790. package/ReactAndroid/src/main/res/systeminfo/values-es/strings.xml +6 -0
  791. package/ReactAndroid/src/main/res/systeminfo/values-es-rES/strings.xml +6 -0
  792. package/ReactAndroid/src/main/res/systeminfo/values-et/strings.xml +6 -0
  793. package/ReactAndroid/src/main/res/systeminfo/values-fa/strings.xml +6 -0
  794. package/ReactAndroid/src/main/res/systeminfo/values-fi/strings.xml +6 -0
  795. package/ReactAndroid/src/main/res/systeminfo/values-fr/strings.xml +6 -0
  796. package/ReactAndroid/src/main/res/systeminfo/values-fr-rCA/strings.xml +6 -0
  797. package/ReactAndroid/src/main/res/systeminfo/values-gu/strings.xml +6 -0
  798. package/ReactAndroid/src/main/res/systeminfo/values-hi/strings.xml +6 -0
  799. package/ReactAndroid/src/main/res/systeminfo/values-hr/strings.xml +6 -0
  800. package/ReactAndroid/src/main/res/systeminfo/values-hu/strings.xml +6 -0
  801. package/ReactAndroid/src/main/res/systeminfo/values-hy/strings.xml +6 -0
  802. package/ReactAndroid/src/main/res/systeminfo/values-is/strings.xml +6 -0
  803. package/ReactAndroid/src/main/res/systeminfo/values-it/strings.xml +6 -0
  804. package/ReactAndroid/src/main/res/systeminfo/values-iw/strings.xml +6 -0
  805. package/ReactAndroid/src/main/res/systeminfo/values-ja/strings.xml +6 -0
  806. package/ReactAndroid/src/main/res/systeminfo/values-ka/strings.xml +6 -0
  807. package/ReactAndroid/src/main/res/systeminfo/values-kk/strings.xml +6 -0
  808. package/ReactAndroid/src/main/res/systeminfo/values-km/strings.xml +6 -0
  809. package/ReactAndroid/src/main/res/systeminfo/values-kn/strings.xml +6 -0
  810. package/ReactAndroid/src/main/res/systeminfo/values-ko/strings.xml +6 -0
  811. package/ReactAndroid/src/main/res/systeminfo/values-ky/strings.xml +6 -0
  812. package/ReactAndroid/src/main/res/systeminfo/values-lo/strings.xml +6 -0
  813. package/ReactAndroid/src/main/res/systeminfo/values-lt/strings.xml +6 -0
  814. package/ReactAndroid/src/main/res/systeminfo/values-lv/strings.xml +6 -0
  815. package/ReactAndroid/src/main/res/systeminfo/values-mk/strings.xml +6 -0
  816. package/ReactAndroid/src/main/res/systeminfo/values-ml/strings.xml +6 -0
  817. package/ReactAndroid/src/main/res/systeminfo/values-mn/strings.xml +6 -0
  818. package/ReactAndroid/src/main/res/systeminfo/values-mr/strings.xml +6 -0
  819. package/ReactAndroid/src/main/res/systeminfo/values-ms/strings.xml +6 -0
  820. package/ReactAndroid/src/main/res/systeminfo/values-my/strings.xml +6 -0
  821. package/ReactAndroid/src/main/res/systeminfo/values-ne/strings.xml +6 -0
  822. package/ReactAndroid/src/main/res/systeminfo/values-nl/strings.xml +6 -0
  823. package/ReactAndroid/src/main/res/systeminfo/values-pa/strings.xml +6 -0
  824. package/ReactAndroid/src/main/res/systeminfo/values-pl/strings.xml +6 -0
  825. package/ReactAndroid/src/main/res/systeminfo/values-pt/strings.xml +6 -0
  826. package/ReactAndroid/src/main/res/systeminfo/values-pt-rPT/strings.xml +6 -0
  827. package/ReactAndroid/src/main/res/systeminfo/values-ro/strings.xml +6 -0
  828. package/ReactAndroid/src/main/res/systeminfo/values-ru/strings.xml +6 -0
  829. package/ReactAndroid/src/main/res/systeminfo/values-si/strings.xml +6 -0
  830. package/ReactAndroid/src/main/res/systeminfo/values-sk/strings.xml +6 -0
  831. package/ReactAndroid/src/main/res/systeminfo/values-sl/strings.xml +6 -0
  832. package/ReactAndroid/src/main/res/systeminfo/values-sq/strings.xml +6 -0
  833. package/ReactAndroid/src/main/res/systeminfo/values-sr/strings.xml +6 -0
  834. package/ReactAndroid/src/main/res/systeminfo/values-sv/strings.xml +6 -0
  835. package/ReactAndroid/src/main/res/systeminfo/values-sw/strings.xml +6 -0
  836. package/ReactAndroid/src/main/res/systeminfo/values-ta/strings.xml +6 -0
  837. package/ReactAndroid/src/main/res/systeminfo/values-te/strings.xml +6 -0
  838. package/ReactAndroid/src/main/res/systeminfo/values-th/strings.xml +6 -0
  839. package/ReactAndroid/src/main/res/systeminfo/values-tr/strings.xml +6 -0
  840. package/ReactAndroid/src/main/res/systeminfo/values-uk/strings.xml +6 -0
  841. package/ReactAndroid/src/main/res/systeminfo/values-ur/strings.xml +6 -0
  842. package/ReactAndroid/src/main/res/systeminfo/values-vi/strings.xml +6 -0
  843. package/ReactAndroid/src/main/res/systeminfo/values-zh-rCN/strings.xml +6 -0
  844. package/ReactAndroid/src/main/res/systeminfo/values-zh-rHK/strings.xml +6 -0
  845. package/ReactAndroid/src/main/res/systeminfo/values-zh-rTW/strings.xml +6 -0
  846. package/ReactAndroid/src/main/res/systeminfo/values-zu/strings.xml +6 -0
  847. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +15 -0
  848. package/ReactAndroid/src/main/res/views/uimanager/values-am/strings.xml +6 -0
  849. package/ReactCommon/React-Fabric.podspec +4 -59
  850. package/ReactCommon/React-FabricComponents.podspec +4 -40
  851. package/ReactCommon/React-FabricImage.podspec +2 -19
  852. package/ReactCommon/React-Mapbuffer.podspec +2 -2
  853. package/ReactCommon/ReactCommon.podspec +4 -13
  854. package/ReactCommon/callinvoker/CMakeLists.txt +3 -6
  855. package/ReactCommon/cmake-utils/react-native-flags.cmake +39 -0
  856. package/ReactCommon/cxxreact/CMakeLists.txt +4 -6
  857. package/ReactCommon/cxxreact/CxxNativeModule.cpp +23 -33
  858. package/ReactCommon/cxxreact/JSExecutor.cpp +5 -2
  859. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +12 -10
  860. package/ReactCommon/cxxreact/JSModulesUnbundle.h +2 -4
  861. package/ReactCommon/cxxreact/JsArgumentHelpers-inl.h +28 -21
  862. package/ReactCommon/cxxreact/JsArgumentHelpers.h +1 -2
  863. package/ReactCommon/cxxreact/MethodCall.cpp +17 -17
  864. package/ReactCommon/cxxreact/ModuleRegistry.cpp +15 -12
  865. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -8
  866. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +2 -1
  867. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -13
  868. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  869. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  870. package/ReactCommon/cxxreact/tests/jsarg_helpers.cpp +2 -2
  871. package/ReactCommon/devtoolsruntimesettings/CMakeLists.txt +4 -9
  872. package/ReactCommon/hermes/React-hermes.podspec +4 -13
  873. package/ReactCommon/hermes/executor/CMakeLists.txt +2 -1
  874. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +3 -6
  875. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +2 -8
  876. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +2 -8
  877. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +100 -106
  878. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +1 -1
  879. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +2 -8
  880. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +2 -8
  881. package/ReactCommon/jsc/CMakeLists.txt +4 -7
  882. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  883. package/ReactCommon/jserrorhandler/CMakeLists.txt +2 -1
  884. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +12 -5
  885. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +2 -11
  886. package/ReactCommon/jsi/CMakeLists.txt +5 -6
  887. package/ReactCommon/jsi/React-jsi.podspec +2 -15
  888. package/ReactCommon/jsiexecutor/CMakeLists.txt +4 -5
  889. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -14
  890. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +7 -8
  891. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +1 -2
  892. package/ReactCommon/jsinspector-modern/CMakeLists.txt +7 -6
  893. package/ReactCommon/jsinspector-modern/HostAgent.cpp +304 -208
  894. package/ReactCommon/jsinspector-modern/HostAgent.h +8 -48
  895. package/ReactCommon/jsinspector-modern/HostTarget.cpp +1 -1
  896. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +1 -0
  897. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +4 -3
  898. package/ReactCommon/jsinspector-modern/InstanceAgent.h +1 -1
  899. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +22 -0
  900. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +2 -4
  901. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +4 -14
  902. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
  903. package/ReactCommon/jsinspector-modern/RuntimeAgentDelegate.h +1 -1
  904. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +27 -12
  905. package/ReactCommon/jsinspector-modern/TracingAgent.h +2 -1
  906. package/ReactCommon/jsinspector-modern/cdp/CMakeLists.txt +26 -0
  907. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +50 -0
  908. package/ReactCommon/jsinspector-modern/network/CMakeLists.txt +27 -0
  909. package/ReactCommon/jsinspector-modern/network/CdpNetwork.cpp +143 -0
  910. package/ReactCommon/jsinspector-modern/network/CdpNetwork.h +110 -0
  911. package/ReactCommon/jsinspector-modern/network/HttpUtils.cpp +157 -0
  912. package/ReactCommon/jsinspector-modern/network/HttpUtils.h +27 -0
  913. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +195 -0
  914. package/ReactCommon/jsinspector-modern/network/NetworkReporter.h +139 -0
  915. package/ReactCommon/jsinspector-modern/network/NetworkTypes.h +42 -0
  916. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +52 -0
  917. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +1 -2
  918. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +12 -0
  919. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +3 -6
  920. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.cpp → EventLoopReporter.cpp} +22 -9
  921. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.h → EventLoopReporter.h} +13 -7
  922. package/ReactCommon/jsinspector-modern/tracing/InstanceTracingProfile.h +2 -5
  923. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +55 -42
  924. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +22 -13
  925. package/ReactCommon/jsinspector-modern/tracing/ProfileTreeNode.h +39 -30
  926. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +3 -8
  927. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +16 -0
  928. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +186 -162
  929. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +138 -5
  930. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +40 -92
  931. package/ReactCommon/jsinspector-modern/tracing/tests/ProfileTreeNodeTest.cpp +27 -35
  932. package/ReactCommon/jsinspector-modern/tracing/tests/RuntimeSamplingProfileTraceEventSerializerTest.cpp +290 -0
  933. package/ReactCommon/jsitooling/CMakeLists.txt +4 -8
  934. package/ReactCommon/jsitooling/React-jsitooling.podspec +3 -21
  935. package/ReactCommon/logger/CMakeLists.txt +2 -1
  936. package/ReactCommon/logger/React-logger.podspec +1 -9
  937. package/ReactCommon/logger/react_native_log.cpp +2 -2
  938. package/ReactCommon/oscompat/CMakeLists.txt +2 -1
  939. package/ReactCommon/react/bridging/CMakeLists.txt +3 -7
  940. package/ReactCommon/react/debug/CMakeLists.txt +3 -8
  941. package/ReactCommon/react/featureflags/CMakeLists.txt +4 -9
  942. package/ReactCommon/react/featureflags/React-featureflags.podspec +2 -7
  943. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +49 -41
  944. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +63 -53
  945. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +223 -187
  946. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +30 -26
  947. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +46 -38
  948. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +100 -82
  949. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +51 -0
  950. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +33 -0
  951. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +33 -0
  952. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -13
  953. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +3 -8
  954. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +4 -6
  955. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -0
  956. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +23 -0
  957. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.h +29 -0
  958. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +12 -18
  959. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +6 -1
  960. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +3 -9
  961. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -0
  962. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +29 -2
  963. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +7 -39
  964. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +30 -2
  965. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +3 -7
  966. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +3 -10
  967. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/CMakeLists.txt +3 -7
  968. package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +3 -7
  969. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +2 -8
  970. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.cpp +84 -0
  971. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.h +30 -0
  972. package/ReactCommon/react/nativemodule/featureflags/CMakeLists.txt +3 -7
  973. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +58 -48
  974. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +25 -21
  975. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +3 -10
  976. package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +3 -8
  977. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +4 -11
  978. package/ReactCommon/react/nativemodule/microtasks/CMakeLists.txt +3 -7
  979. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +3 -10
  980. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -17
  981. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +4 -8
  982. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  983. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +21 -1
  984. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.kt +32 -5
  985. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.mm +5 -10
  986. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +18 -15
  987. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +53 -9
  988. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +29 -6
  989. package/ReactCommon/react/performance/timeline/CMakeLists.txt +5 -9
  990. package/ReactCommon/react/performance/timeline/CircularBuffer.h +0 -1
  991. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +53 -15
  992. package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.cpp +12 -3
  993. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +5 -2
  994. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.h +0 -1
  995. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +29 -33
  996. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  997. package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +8 -3
  998. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +3 -11
  999. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +80 -165
  1000. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +38 -71
  1001. package/ReactCommon/react/renderer/animations/CMakeLists.txt +3 -7
  1002. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +5 -9
  1003. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +2 -9
  1004. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +3 -3
  1005. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +3 -7
  1006. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -1
  1007. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +8 -1
  1008. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +4 -6
  1009. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -2
  1010. package/ReactCommon/react/renderer/attributedstring/conversions.h +38 -6
  1011. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +3 -7
  1012. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +25 -5
  1013. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +3 -7
  1014. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +3 -7
  1015. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +3 -7
  1016. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +1 -2
  1017. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1018. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +0 -1
  1019. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +3 -7
  1020. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +3 -7
  1021. package/ReactCommon/react/renderer/components/rncore/EventEmitters.cpp +48 -48
  1022. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +3 -7
  1023. package/ReactCommon/react/renderer/components/safeareaview/CMakeLists.txt +4 -10
  1024. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +3 -7
  1025. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +15 -0
  1026. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +3 -0
  1027. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +1 -0
  1028. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +4 -10
  1029. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +13 -9
  1030. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +6 -0
  1031. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +111 -25
  1032. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +22 -2
  1033. package/ReactCommon/react/renderer/components/text/{ParagraphState.cpp → platform/android/react/renderer/components/text/ParagraphState.cpp} +0 -2
  1034. package/ReactCommon/react/renderer/components/text/{ParagraphState.h → platform/android/react/renderer/components/text/ParagraphState.h} +9 -14
  1035. package/ReactCommon/react/renderer/components/text/platform/cxx/react/renderer/components/text/ParagraphState.h +42 -0
  1036. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +8 -1
  1037. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +2 -0
  1038. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +25 -11
  1039. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +3 -7
  1040. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +30 -19
  1041. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +12 -11
  1042. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +5 -5
  1043. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +3 -7
  1044. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +1 -1
  1045. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +21 -1
  1046. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +8 -6
  1047. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +3 -7
  1048. package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +16 -6
  1049. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +2 -1
  1050. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +2 -11
  1051. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +0 -2
  1052. package/ReactCommon/react/renderer/components/view/conversions.h +135 -79
  1053. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +18 -0
  1054. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
  1055. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +6 -1
  1056. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +4 -0
  1057. package/ReactCommon/react/renderer/consistency/CMakeLists.txt +3 -7
  1058. package/ReactCommon/react/renderer/core/CMakeLists.txt +3 -7
  1059. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +2 -3
  1060. package/ReactCommon/react/renderer/core/ConcreteState.h +23 -2
  1061. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +44 -0
  1062. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +30 -0
  1063. package/ReactCommon/react/renderer/core/EventEmitter.cpp +7 -9
  1064. package/ReactCommon/react/renderer/core/EventEmitter.h +2 -3
  1065. package/ReactCommon/react/renderer/core/EventPayload.h +13 -0
  1066. package/ReactCommon/react/renderer/core/EventQueue.cpp +26 -26
  1067. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -0
  1068. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1069. package/ReactCommon/react/renderer/core/RawEvent.h +10 -2
  1070. package/ReactCommon/react/renderer/core/RawProps.cpp +1 -99
  1071. package/ReactCommon/react/renderer/core/RawProps.h +0 -11
  1072. package/ReactCommon/react/renderer/core/ReactEventPriority.h +5 -0
  1073. package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -4
  1074. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +3 -0
  1075. package/ReactCommon/react/renderer/core/State.h +2 -0
  1076. package/ReactCommon/react/renderer/core/graphicsConversions.h +25 -17
  1077. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +0 -36
  1078. package/ReactCommon/react/renderer/core/tests/TestComponent.h +0 -4
  1079. package/ReactCommon/react/renderer/css/CMakeLists.txt +7 -7
  1080. package/ReactCommon/react/renderer/css/CSSTokenizer.h +12 -49
  1081. package/ReactCommon/react/renderer/css/tests/CSSTokenizerTest.cpp +10 -0
  1082. package/ReactCommon/react/renderer/debug/CMakeLists.txt +3 -7
  1083. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +27 -16
  1084. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +14 -5
  1085. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +2 -16
  1086. package/ReactCommon/react/renderer/dom/CMakeLists.txt +3 -7
  1087. package/ReactCommon/react/renderer/element/CMakeLists.txt +3 -7
  1088. package/ReactCommon/react/renderer/graphics/BackgroundImage.h +2 -1
  1089. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +3 -7
  1090. package/ReactCommon/react/renderer/graphics/ColorStop.h +28 -0
  1091. package/ReactCommon/react/renderer/graphics/LinearGradient.h +1 -12
  1092. package/ReactCommon/react/renderer/graphics/RadialGradient.h +92 -0
  1093. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -19
  1094. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +2 -2
  1095. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +2 -2
  1096. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +3 -7
  1097. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +1 -7
  1098. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -13
  1099. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +3 -7
  1100. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +3 -8
  1101. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +3 -7
  1102. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +73 -55
  1103. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +5 -0
  1104. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -7
  1105. package/ReactCommon/react/renderer/mounting/ShadowTree.h +47 -36
  1106. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +3 -1
  1107. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +44 -12
  1108. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +39 -6
  1109. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +41 -12
  1110. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -1
  1111. package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +3 -7
  1112. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +0 -25
  1113. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +5 -2
  1114. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +3 -1
  1115. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +3 -7
  1116. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +2 -11
  1117. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -20
  1118. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +22 -10
  1119. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +3 -7
  1120. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +43 -20
  1121. package/ReactCommon/react/renderer/scheduler/Scheduler.h +15 -1
  1122. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +4 -0
  1123. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +84 -1
  1124. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +8 -0
  1125. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +3 -7
  1126. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +3 -7
  1127. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutContext.h +7 -11
  1128. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +124 -0
  1129. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +7 -0
  1130. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/JPreparedLayout.h +20 -0
  1131. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +126 -19
  1132. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +100 -0
  1133. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/{TextLayoutManager.cpp → react/renderer/textlayoutmanager/TextLayoutManager.cpp} +1 -18
  1134. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.h +57 -0
  1135. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +3 -0
  1136. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +47 -24
  1137. package/ReactCommon/react/renderer/textlayoutmanager/{TextLayoutManager.h → platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h} +2 -29
  1138. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -0
  1139. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +4 -8
  1140. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +54 -23
  1141. package/ReactCommon/react/renderer/uimanager/UIManager.h +27 -7
  1142. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +11 -1
  1143. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +19 -1
  1144. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +30 -0
  1145. package/ReactCommon/react/renderer/uimanager/UIManagerNativeAnimatedDelegate.h +24 -0
  1146. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +223 -0
  1147. package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +3 -7
  1148. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +2 -1
  1149. package/ReactCommon/react/runtime/CMakeLists.txt +4 -7
  1150. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +4 -13
  1151. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +4 -11
  1152. package/ReactCommon/react/runtime/ReactInstance.cpp +10 -5
  1153. package/ReactCommon/react/runtime/ReactInstance.h +2 -1
  1154. package/ReactCommon/react/runtime/TimerManager.cpp +6 -4
  1155. package/ReactCommon/react/runtime/TimerManager.h +3 -1
  1156. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +2 -1
  1157. package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +1 -0
  1158. package/ReactCommon/react/runtime/nativeviewconfig/CMakeLists.txt +2 -1
  1159. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +2 -11
  1160. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +2 -0
  1161. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +17 -5
  1162. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +2 -0
  1163. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +64 -4
  1164. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +9 -5
  1165. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  1166. package/ReactCommon/react/timing/CMakeLists.txt +3 -6
  1167. package/ReactCommon/react/utils/CMakeLists.txt +9 -9
  1168. package/ReactCommon/react/utils/React-utils.podspec +13 -17
  1169. package/ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.cpp +95 -0
  1170. package/{ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.kt → ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.h} +6 -6
  1171. package/ReactCommon/react/utils/platform/cxx/react/utils/LowPriorityExecutor.h +18 -0
  1172. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.h +16 -0
  1173. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.mm +22 -0
  1174. package/ReactCommon/reactperflogger/CMakeLists.txt +3 -7
  1175. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -12
  1176. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +7 -3
  1177. package/ReactCommon/runtimeexecutor/CMakeLists.txt +3 -6
  1178. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +0 -6
  1179. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +0 -12
  1180. package/ReactCommon/yoga/cmake/project-defaults.cmake +4 -4
  1181. package/ReactCommon/yoga/yoga/debug/AssertFatal.cpp +1 -0
  1182. package/ReactCommon/yoga/yoga/event/event.h +6 -6
  1183. package/flow/global.js +1 -0
  1184. package/gradle/libs.versions.toml +17 -6
  1185. package/index.js +54 -334
  1186. package/interface.js +0 -4
  1187. package/jest/resolver.js +31 -0
  1188. package/jest-preset.js +1 -0
  1189. package/package.json +105 -34
  1190. package/scripts/cocoapods/fabric.rb +0 -1
  1191. package/scripts/cocoapods/helpers.rb +12 -1
  1192. package/scripts/cocoapods/new_architecture.rb +46 -17
  1193. package/scripts/cocoapods/rndependencies.rb +211 -0
  1194. package/scripts/cocoapods/utils.rb +2 -0
  1195. package/scripts/codegen/generate-artifacts-executor/constants.js +80 -0
  1196. package/scripts/codegen/generate-artifacts-executor/generateAppDependencyProvider.js +66 -0
  1197. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +116 -0
  1198. package/scripts/codegen/generate-artifacts-executor/generateFBReactNativeSpecIOS.js +39 -0
  1199. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +114 -0
  1200. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +120 -0
  1201. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +223 -0
  1202. package/scripts/codegen/generate-artifacts-executor/generateRNCoreComponentsIOS.js +38 -0
  1203. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +93 -0
  1204. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +113 -0
  1205. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +92 -0
  1206. package/scripts/codegen/generate-artifacts-executor/index.js +232 -0
  1207. package/scripts/codegen/generate-artifacts-executor/utils.js +399 -0
  1208. package/scripts/codegen/templates/RCTAppDependencyProviderMM.template +5 -0
  1209. package/{React/Base/UIKitProxies/RCTInitializeUIKitProxies.h → scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderH.template} +5 -1
  1210. package/scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderMM.template +19 -0
  1211. package/scripts/codegen/templates/ReactCodegen.podspec.template +2 -8
  1212. package/scripts/generate-codegen-artifacts.js +1 -1
  1213. package/scripts/react_native_pods.rb +18 -7
  1214. package/sdks/.hermesversion +1 -1
  1215. package/sdks/hermes-engine/hermes-utils.rb +7 -0
  1216. package/sdks/hermes-engine/utils/build-apple-framework.sh +4 -1
  1217. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +4 -3
  1218. package/sdks/hermesc/osx-bin/hermes +0 -0
  1219. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1220. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1221. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1222. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1223. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  1224. package/src/private/animated/NativeAnimatedHelper.js +21 -8
  1225. package/src/private/animated/createAnimatedPropsHook.js +11 -16
  1226. package/src/private/animated/createAnimatedPropsMemoHook.js +1 -2
  1227. package/src/private/components/{SafeAreaView_INTERNAL_DO_NOT_USE.js → safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js} +6 -6
  1228. package/src/private/components/{HScrollViewNativeComponents.js → scrollview/HScrollViewNativeComponents.js} +8 -8
  1229. package/src/private/components/scrollview/VScrollViewNativeComponents.js +25 -0
  1230. package/src/private/{devmenu → devsupport/devmenu}/DevMenu.js +1 -1
  1231. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BorderBox.js +3 -3
  1232. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BoxInspector.js +6 -5
  1233. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementBox.js +8 -6
  1234. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementProperties.js +11 -10
  1235. package/src/private/{inspector → devsupport/devmenu/elementinspector}/Inspector.js +14 -12
  1236. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorOverlay.js +5 -4
  1237. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorPanel.js +9 -8
  1238. package/src/private/{inspector → devsupport/devmenu/elementinspector}/NetworkOverlay.js +10 -9
  1239. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ReactDevToolsOverlay.js +7 -7
  1240. package/src/private/{inspector → devsupport/devmenu/elementinspector}/StyleInspector.js +7 -6
  1241. package/src/private/{inspector → devsupport/devmenu/elementinspector}/XHRInterceptor.js +2 -2
  1242. package/src/private/{inspector → devsupport/devmenu/elementinspector}/getInspectorDataForViewAtPoint.js +4 -4
  1243. package/src/private/{inspector → devsupport/devmenu/elementinspector}/resolveBoxStyle.js +1 -1
  1244. package/src/private/{inspector → devsupport/devmenu/perfmonitor}/PerformanceOverlay.js +6 -5
  1245. package/src/private/{specs_DEPRECATED/modules → devsupport/devmenu/specs}/NativeDevMenu.js +2 -2
  1246. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.android.js +1 -1
  1247. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.ios.js +1 -1
  1248. package/src/private/{debugging → devsupport/rndevtools}/setUpFuseboxReactDevToolsDispatcher.js +1 -1
  1249. package/src/private/{fusebox → devsupport/rndevtools}/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  1250. package/src/private/{specs_DEPRECATED/modules → devsupport/rndevtools/specs}/NativeReactDevToolsSettingsManager.js +2 -2
  1251. package/src/private/featureflags/ReactNativeFeatureFlags.js +72 -80
  1252. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +9 -1
  1253. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -13
  1254. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  1255. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +1 -1
  1256. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +1 -1
  1257. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +3 -0
  1258. package/src/private/styles/composeStyles.js +12 -5
  1259. package/src/private/types/HostComponent.js +1 -1
  1260. package/src/private/types/HostInstance.js +67 -1
  1261. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -5
  1262. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +5 -18
  1263. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +6 -0
  1264. package/src/private/webapis/performance/Performance.js +1 -3
  1265. package/src/private/webapis/performance/PerformanceEntry.js +6 -1
  1266. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -0
  1267. package/src/private/webapis/performance/specs/NativePerformance.js +10 -1
  1268. package/src/types/bom.js.flow +96 -0
  1269. package/src/types/cssom.js.flow +576 -0
  1270. package/src/types/dom.js.flow +19 -0
  1271. package/src/types/globals.d.ts +42 -0
  1272. package/src/types/streams.js.flow +141 -0
  1273. package/third-party-podspecs/RCT-Folly.podspec +7 -6
  1274. package/third-party-podspecs/ReactNativeDependencies.podspec +86 -0
  1275. package/third-party-podspecs/fast_float.podspec +2 -2
  1276. package/third-party-podspecs/replace_dependencies_version.js +107 -0
  1277. package/types/index.d.ts +6 -3
  1278. package/types/public/ReactNativeTVTypes.d.ts +42 -42
  1279. package/types/public/ReactNativeTypes.d.ts +2 -2
  1280. package/types/tsconfig.test.json +16 -0
  1281. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  1282. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  1283. package/Libraries/Blob/FileReader_new.js +0 -231
  1284. package/Libraries/Blob/FileReader_old.js +0 -186
  1285. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  1286. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -32
  1287. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  1288. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -19
  1289. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -49
  1290. package/Libraries/Events/CustomEvent.js +0 -32
  1291. package/Libraries/Events/EventPolyfill.js +0 -239
  1292. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -118
  1293. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  1294. package/Libraries/Network/XMLHttpRequest_new.js +0 -794
  1295. package/Libraries/Network/XMLHttpRequest_old.js +0 -701
  1296. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -48
  1297. package/Libraries/NewAppScreen/components/Header.js +0 -77
  1298. package/Libraries/NewAppScreen/components/HermesBadge.js +0 -72
  1299. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -148
  1300. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -39
  1301. package/Libraries/NewAppScreen/components/logo.png +0 -0
  1302. package/Libraries/NewAppScreen/index.js +0 -25
  1303. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -58
  1304. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -45
  1305. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  1306. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  1307. package/Libraries/WebSocket/WebSocketEvent.js +0 -30
  1308. package/Libraries/WebSocket/WebSocket_new.js +0 -325
  1309. package/Libraries/WebSocket/WebSocket_old.js +0 -297
  1310. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  1311. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -30
  1312. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -81
  1313. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.h +0 -30
  1314. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.mm +0 -185
  1315. package/React/Base/UIKitProxies/RCTInitializeUIKitProxies.mm +0 -23
  1316. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.h +0 -25
  1317. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.mm +0 -129
  1318. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.h +0 -26
  1319. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.mm +0 -80
  1320. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.h +0 -26
  1321. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.mm +0 -70
  1322. package/React/Fabric/Utils/RCTViewFinder.mm +0 -34
  1323. package/ReactAndroid/src/main/java/com/facebook/annotationprocessors/common/ProcessorBase.kt +0 -23
  1324. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/KeepGettersAndSetters.kt +0 -24
  1325. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +0 -21
  1326. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +0 -84
  1327. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.java +0 -59
  1328. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +0 -1240
  1329. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +0 -900
  1330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.java +0 -29
  1331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +0 -29
  1332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.java +0 -37
  1333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +0 -234
  1334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +0 -57
  1335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java +0 -103
  1336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java +0 -110
  1337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java +0 -89
  1338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.java +0 -42
  1339. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.java +0 -36
  1340. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.java +0 -110
  1341. package/ReactAndroid/src/main/java/com/facebook/react/bridge/InvalidIteratorException.kt +0 -18
  1342. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.java +0 -97
  1343. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.java +0 -110
  1344. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +0 -148
  1345. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.java +0 -33
  1346. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.java +0 -31
  1347. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.java +0 -155
  1348. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactBridge.kt +0 -48
  1349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +0 -39
  1350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +0 -75
  1351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/bridge.pro +0 -12
  1352. package/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt +0 -23
  1353. package/ReactAndroid/src/main/java/com/facebook/react/common/StandardCharsets.kt +0 -31
  1354. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +0 -128
  1355. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.java +0 -124
  1356. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java +0 -313
  1357. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +0 -174
  1358. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +0 -117
  1359. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +0 -495
  1360. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +0 -1121
  1361. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +0 -56
  1362. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.kt +0 -24
  1363. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java +0 -244
  1364. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.java +0 -166
  1365. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.java +0 -47
  1366. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +0 -300
  1367. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSplitBundleCallback.kt +0 -17
  1368. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +0 -239
  1369. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +0 -103
  1370. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +0 -329
  1371. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.kt +0 -40
  1372. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/fabric/SurfaceHandler.kt +0 -40
  1373. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/NativeModuleSoLoader.kt +0 -25
  1374. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.java +0 -288
  1375. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.java +0 -474
  1376. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.java +0 -76
  1377. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +0 -253
  1378. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +0 -383
  1379. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +0 -126
  1380. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.java +0 -103
  1381. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ChoreographerCompat.kt +0 -16
  1382. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +0 -204
  1383. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +0 -240
  1384. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +0 -785
  1385. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java +0 -68
  1386. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +0 -22
  1387. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java +0 -191
  1388. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java +0 -143
  1389. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +0 -193
  1390. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactLegacyArchitectureProcessor.kt +0 -48
  1391. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +0 -765
  1392. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.java +0 -131
  1393. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.java +0 -209
  1394. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.java +0 -138
  1395. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +0 -634
  1396. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.java +0 -90
  1397. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.java +0 -255
  1398. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.java +0 -555
  1399. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.kt +0 -27
  1400. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedTaskException.kt +0 -11
  1401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +0 -80
  1402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +0 -65
  1403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactInvalidPropertyException.kt +0 -16
  1404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.java +0 -99
  1405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.java +0 -87
  1406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +0 -448
  1407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +0 -231
  1408. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +0 -119
  1409. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.java +0 -46
  1410. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.java +0 -127
  1411. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +0 -116
  1412. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +0 -109
  1413. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +0 -97
  1414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.java +0 -19
  1415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +0 -220
  1416. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java +0 -116
  1417. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.java +0 -86
  1418. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java +0 -224
  1419. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.java +0 -72
  1420. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.java +0 -69
  1421. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostHelper.kt +0 -63
  1422. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.kt +0 -31
  1423. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +0 -213
  1424. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +0 -361
  1425. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +0 -409
  1426. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java +0 -47
  1427. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -233
  1428. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +0 -163
  1429. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java +0 -185
  1430. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +0 -54
  1431. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +0 -1493
  1432. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +0 -160
  1433. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +0 -52
  1434. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +0 -47
  1435. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +0 -54
  1436. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +0 -47
  1437. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +0 -51
  1438. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.java +0 -44
  1439. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +0 -1390
  1440. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +0 -53
  1441. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +0 -236
  1442. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +0 -52
  1443. package/ReactAndroid/src/main/jni/prebuilt/lib/DUMMY +0 -1
  1444. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.cpp +0 -18
  1445. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.h +0 -31
  1446. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -26
  1447. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.cpp +0 -29
  1448. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.h +0 -35
  1449. package/android/README.md +0 -21
  1450. package/flow/jest.js +0 -1287
  1451. package/jest/__tests__/setup-test.js +0 -18
  1452. package/scripts/codegen/generate-artifacts-executor.js +0 -1118
  1453. package/src/private/components/VScrollViewNativeComponents.js +0 -25
  1454. package/src/private/featureflags/README.md +0 -5
  1455. package/src/private/specs_DEPRECATED/README.md +0 -7
  1456. package/src/private/utilities/ensureInstance.js +0 -21
  1457. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +0 -267
  1458. package/types/modules/LaunchScreen.d.ts +0 -18
  1459. /package/ReactCommon/jsinspector-modern/{CdpJson.cpp → cdp/CdpJson.cpp} +0 -0
  1460. /package/ReactCommon/jsinspector-modern/{CdpJson.h → cdp/CdpJson.h} +0 -0
  1461. /package/src/private/{devmenu → devsupport/devmenu}/DevMenu.d.ts +0 -0
  1462. /package/src/private/{debugging → devsupport/rndevtools}/FuseboxSessionObserver.js +0 -0
  1463. /package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.js.flow +0 -0
@@ -1,1240 +0,0 @@
1
- /*
2
- * Copyright (c) Meta Platforms, Inc. and affiliates.
3
- *
4
- * This source code is licensed under the MIT license found in the
5
- * LICENSE file in the root directory of this source tree.
6
- */
7
-
8
- package com.facebook.react.animated;
9
-
10
- import androidx.annotation.AnyThread;
11
- import androidx.annotation.NonNull;
12
- import androidx.annotation.Nullable;
13
- import androidx.annotation.UiThread;
14
- import com.facebook.common.logging.FLog;
15
- import com.facebook.fbreact.specs.NativeAnimatedModuleSpec;
16
- import com.facebook.infer.annotation.Assertions;
17
- import com.facebook.infer.annotation.Nullsafe;
18
- import com.facebook.react.bridge.Arguments;
19
- import com.facebook.react.bridge.Callback;
20
- import com.facebook.react.bridge.LifecycleEventListener;
21
- import com.facebook.react.bridge.ReactApplicationContext;
22
- import com.facebook.react.bridge.ReactSoftExceptionLogger;
23
- import com.facebook.react.bridge.ReadableArray;
24
- import com.facebook.react.bridge.ReadableMap;
25
- import com.facebook.react.bridge.UIManager;
26
- import com.facebook.react.bridge.UIManagerListener;
27
- import com.facebook.react.bridge.WritableArray;
28
- import com.facebook.react.bridge.WritableMap;
29
- import com.facebook.react.common.annotations.VisibleForTesting;
30
- import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
31
- import com.facebook.react.module.annotations.ReactModule;
32
- import com.facebook.react.modules.core.ReactChoreographer;
33
- import com.facebook.react.uimanager.GuardedFrameCallback;
34
- import com.facebook.react.uimanager.NativeViewHierarchyManager;
35
- import com.facebook.react.uimanager.UIBlock;
36
- import com.facebook.react.uimanager.UIManagerHelper;
37
- import com.facebook.react.uimanager.UIManagerModule;
38
- import com.facebook.react.uimanager.common.UIManagerType;
39
- import com.facebook.react.uimanager.common.ViewUtil;
40
- import java.util.ArrayList;
41
- import java.util.List;
42
- import java.util.Queue;
43
- import java.util.Set;
44
- import java.util.concurrent.ConcurrentLinkedQueue;
45
- import java.util.concurrent.atomic.AtomicReference;
46
-
47
- /**
48
- * Module that exposes interface for creating and managing animated nodes on the "native" side.
49
- *
50
- * <p>Animated.js library is based on a concept of a graph where nodes are values or transform
51
- * operations (such as interpolation, addition, etc) and connection are used to describe how change
52
- * of the value in one node can affect other nodes.
53
- *
54
- * <p>Few examples of the nodes that can be created on the JS side:
55
- *
56
- * <ul>
57
- * <li>Animated.Value is a simplest type of node with a numeric value which can be driven by an
58
- * animation engine (spring, decay, etc) or by calling setValue on it directly from JS
59
- * <li>Animated.add is a type of node that may have two or more input nodes. It outputs the sum of
60
- * all the input node values
61
- * <li>interpolate - is actually a method you can call on any node and it creates a new node that
62
- * takes the parent node as an input and outputs its interpolated value (e.g. if you have
63
- * value that can animate from 0 to 1 you can create interpolated node and set output range to
64
- * be 0 to 100 and when the input node changes the output of interpolated node will multiply
65
- * the values by 100)
66
- * </ul>
67
- *
68
- * <p>You can mix and chain nodes however you like and this way create nodes graph with connections
69
- * between them.
70
- *
71
- * <p>To map animated node values to view properties there is a special type of a node:
72
- * AnimatedProps. It is created by AnimatedImplementation whenever you render Animated.View and
73
- * stores a mapping from the view properties to the corresponding animated values (so it's actually
74
- * also a node with connections to the value nodes).
75
- *
76
- * <p>Last "special" elements of the graph are "animation drivers". Those are objects (represented
77
- * as a graph nodes too) that based on some criteria updates attached values every frame (we have
78
- * few types of those, e.g., spring, timing, decay). Animation objects can be "started" and
79
- * "stopped". Those are like "pulse generators" for the rest of the nodes graph. Those pulses then
80
- * propagate along the graph to the children nodes up to the special node type: AnimatedProps which
81
- * then can be used to calculate property update map for a view.
82
- *
83
- * <p>This class acts as a proxy between the "native" API that can be called from JS and the main
84
- * class that coordinates all the action: {@link NativeAnimatedNodesManager}. Since all the methods
85
- * from {@link NativeAnimatedNodesManager} need to be called from the UI thread, we we create a
86
- * queue of animated graph operations that is then enqueued to be executed in the UI Thread at the
87
- * end of the batch of JS->native calls (similarly to how it's handled in {@link UIManagerModule}).
88
- * This isolates us from the problems that may be caused by concurrent updates of animated graph
89
- * while UI thread is "executing" the animation loop.
90
- */
91
- @Nullsafe(Nullsafe.Mode.LOCAL)
92
- @ReactModule(name = NativeAnimatedModuleSpec.NAME)
93
- public class NativeAnimatedModule extends NativeAnimatedModuleSpec
94
- implements LifecycleEventListener, UIManagerListener {
95
-
96
- public static final boolean ANIMATED_MODULE_DEBUG = false;
97
-
98
- // For `queueAndExecuteBatchedOperations`
99
- private enum BatchExecutionOpCodes {
100
- OP_CODE_CREATE_ANIMATED_NODE(1),
101
- OP_CODE_UPDATE_ANIMATED_NODE_CONFIG(2),
102
- OP_CODE_GET_VALUE(3),
103
- OP_START_LISTENING_TO_ANIMATED_NODE_VALUE(4),
104
- OP_STOP_LISTENING_TO_ANIMATED_NODE_VALUE(5),
105
- OP_CODE_CONNECT_ANIMATED_NODES(6),
106
- OP_CODE_DISCONNECT_ANIMATED_NODES(7),
107
- OP_CODE_START_ANIMATING_NODE(8),
108
- OP_CODE_STOP_ANIMATION(9),
109
- OP_CODE_SET_ANIMATED_NODE_VALUE(10),
110
- OP_CODE_SET_ANIMATED_NODE_OFFSET(11),
111
- OP_CODE_FLATTEN_ANIMATED_NODE_OFFSET(12),
112
- OP_CODE_EXTRACT_ANIMATED_NODE_OFFSET(13),
113
- OP_CODE_CONNECT_ANIMATED_NODE_TO_VIEW(14),
114
- OP_CODE_DISCONNECT_ANIMATED_NODE_FROM_VIEW(15),
115
- OP_CODE_RESTORE_DEFAULT_VALUES(16),
116
- OP_CODE_DROP_ANIMATED_NODE(17),
117
- OP_CODE_ADD_ANIMATED_EVENT_TO_VIEW(18),
118
- OP_CODE_REMOVE_ANIMATED_EVENT_FROM_VIEW(19),
119
- OP_CODE_ADD_LISTENER(20), // ios only
120
- OP_CODE_REMOVE_LISTENERS(21); // ios only
121
-
122
- // NULLSAFE_FIXME[Field Not Nullable]
123
- private static BatchExecutionOpCodes[] valueMap = null;
124
- private final int value;
125
-
126
- private BatchExecutionOpCodes(int value) {
127
- this.value = value;
128
- }
129
-
130
- public int getValue() {
131
- return value;
132
- }
133
-
134
- public static BatchExecutionOpCodes fromId(int id) {
135
- if (BatchExecutionOpCodes.valueMap == null) {
136
- BatchExecutionOpCodes.valueMap = BatchExecutionOpCodes.values();
137
- }
138
- // Enum values are 1-indexed, but the value array is 0-indexed
139
- return BatchExecutionOpCodes.valueMap[id - 1];
140
- }
141
- }
142
-
143
- private abstract class UIThreadOperation {
144
- abstract void execute(NativeAnimatedNodesManager animatedNodesManager);
145
-
146
- long mBatchNumber = -1;
147
-
148
- public void setBatchNumber(long batchNumber) {
149
- mBatchNumber = batchNumber;
150
- }
151
-
152
- public long getBatchNumber() {
153
- return mBatchNumber;
154
- }
155
- }
156
-
157
- private class ConcurrentOperationQueue {
158
- private final Queue<UIThreadOperation> mQueue = new ConcurrentLinkedQueue<>();
159
- @Nullable private UIThreadOperation mPeekedOperation = null;
160
-
161
- @AnyThread
162
- boolean isEmpty() {
163
- return mQueue.isEmpty() && mPeekedOperation == null;
164
- }
165
-
166
- @AnyThread
167
- void add(UIThreadOperation operation) {
168
- mQueue.add(operation);
169
- }
170
-
171
- @UiThread
172
- void executeBatch(long maxBatchNumber, NativeAnimatedNodesManager nodesManager) {
173
- List<UIThreadOperation> operations;
174
- operations = drainQueueIntoList(maxBatchNumber);
175
- if (operations != null) {
176
- for (UIThreadOperation operation : operations) {
177
- operation.execute(nodesManager);
178
- }
179
- }
180
- }
181
-
182
- @UiThread
183
- private @Nullable List<UIThreadOperation> drainQueueIntoList(long maxBatchNumber) {
184
- if (isEmpty()) {
185
- return null;
186
- }
187
-
188
- List<UIThreadOperation> operations = new ArrayList<>();
189
- while (true) {
190
- // Due to a race condition, we manually "carry-over" a polled item from previous batch
191
- // instead of peeking the queue itself for consistency.
192
- // TODO(T112522554): Clean up the queue access
193
- if (mPeekedOperation != null) {
194
- if (mPeekedOperation.getBatchNumber() > maxBatchNumber) {
195
- break;
196
- }
197
- operations.add(mPeekedOperation);
198
- mPeekedOperation = null;
199
- }
200
-
201
- UIThreadOperation polledOperation = mQueue.poll();
202
- if (polledOperation == null) {
203
- // This is the same as mQueue.isEmpty()
204
- break;
205
- }
206
-
207
- if (polledOperation.getBatchNumber() > maxBatchNumber) {
208
- // Because the operation is already retrieved from the queue, there's no way of placing it
209
- // back as the head element, so we remember it manually here
210
- mPeekedOperation = polledOperation;
211
- break;
212
- }
213
- operations.add(polledOperation);
214
- }
215
-
216
- return operations;
217
- }
218
- }
219
-
220
- @NonNull private final GuardedFrameCallback mAnimatedFrameCallback;
221
- private final ReactChoreographer mReactChoreographer;
222
-
223
- @NonNull private final ConcurrentOperationQueue mOperations = new ConcurrentOperationQueue();
224
- @NonNull private final ConcurrentOperationQueue mPreOperations = new ConcurrentOperationQueue();
225
-
226
- private final AtomicReference<NativeAnimatedNodesManager> mNodesManager = new AtomicReference<>();
227
-
228
- private boolean mBatchingControlledByJS = false; // TODO T71377544: delete
229
- private volatile long mCurrentFrameNumber; // TODO T71377544: delete
230
- private volatile long mCurrentBatchNumber;
231
-
232
- private boolean mInitializedForFabric = false;
233
- private boolean mInitializedForNonFabric = false;
234
- private boolean mEnqueuedAnimationOnFrame = false;
235
- private @UIManagerType int mUIManagerType = UIManagerType.DEFAULT;
236
- private int mNumFabricAnimations = 0;
237
- private int mNumNonFabricAnimations = 0;
238
-
239
- public NativeAnimatedModule(ReactApplicationContext reactContext) {
240
- super(reactContext);
241
-
242
- mReactChoreographer = ReactChoreographer.getInstance();
243
- mAnimatedFrameCallback =
244
- new GuardedFrameCallback(reactContext) {
245
- @Override
246
- protected void doFrameGuarded(final long frameTimeNanos) {
247
- try {
248
- mEnqueuedAnimationOnFrame = false;
249
- NativeAnimatedNodesManager nodesManager = getNodesManager();
250
- if (nodesManager != null && nodesManager.hasActiveAnimations()) {
251
- nodesManager.runUpdates(frameTimeNanos);
252
- }
253
- // This is very unlikely to ever be hit.
254
- if (nodesManager == null || mReactChoreographer == null) {
255
- return;
256
- }
257
-
258
- if (!ReactNativeFeatureFlags.lazyAnimationCallbacks()
259
- || nodesManager.hasActiveAnimations()) {
260
- enqueueFrameCallback();
261
- }
262
- } catch (Exception ex) {
263
- throw new RuntimeException(ex);
264
- }
265
- }
266
- };
267
- }
268
-
269
- /**
270
- * This method is used to notify the JS side that the user has stopped scrolling. With natively
271
- * driven animation, we might have to force a resync between the Shadow Tree and the Native Tree.
272
- * This is because with natively driven animation, the Shadow Tree is bypassed and it can have
273
- * stale information on the layout of the native views. This method takes care of verifying if
274
- * there are some views listening to the native driven animation and it triggers the resynch.
275
- *
276
- * @param viewTag The tag of the scroll view that has stopped scrolling
277
- */
278
- public void userDrivenScrollEnded(int viewTag) {
279
- // ask to the Node Manager for all the native nodes listening to OnScroll event
280
- NativeAnimatedNodesManager nodeManager = mNodesManager.get();
281
- if (nodeManager == null) {
282
- return;
283
- }
284
-
285
- Set<Integer> tags = nodeManager.getTagsOfConnectedNodes(viewTag, "topScrollEnded");
286
-
287
- if (tags.isEmpty()) {
288
- return;
289
- }
290
-
291
- WritableArray tagsArray = Arguments.createArray();
292
- for (Integer tag : tags) {
293
- tagsArray.pushInt(tag);
294
- }
295
-
296
- // emit the event to JS to resync the trees
297
- WritableMap onAnimationEndedData = Arguments.createMap();
298
- onAnimationEndedData.putArray("tags", tagsArray);
299
-
300
- ReactApplicationContext reactApplicationContext = getReactApplicationContextIfActiveOrWarn();
301
- if (reactApplicationContext != null) {
302
- reactApplicationContext.emitDeviceEvent("onUserDrivenAnimationEnded", onAnimationEndedData);
303
- }
304
- }
305
-
306
- @Override
307
- public void initialize() {
308
- super.initialize();
309
-
310
- getReactApplicationContext().addLifecycleEventListener(this);
311
- }
312
-
313
- @Override
314
- public void onHostResume() {
315
- enqueueFrameCallback();
316
- }
317
-
318
- private void addOperation(UIThreadOperation operation) {
319
- operation.setBatchNumber(mCurrentBatchNumber);
320
- mOperations.add(operation);
321
- }
322
-
323
- private void addUnbatchedOperation(UIThreadOperation operation) {
324
- operation.setBatchNumber(-1);
325
- mOperations.add(operation);
326
- }
327
-
328
- private void addPreOperation(UIThreadOperation operation) {
329
- operation.setBatchNumber(mCurrentBatchNumber);
330
- mPreOperations.add(operation);
331
- }
332
-
333
- // For FabricUIManager only
334
- @Override
335
- public void didScheduleMountItems(UIManager uiManager) {
336
- mCurrentFrameNumber++;
337
- }
338
-
339
- @Override
340
- public void willMountItems(UIManager uiManager) {
341
- // noop
342
- }
343
-
344
- @Override
345
- public void didMountItems(UIManager uiManager) {
346
- // noop
347
- }
348
-
349
- // For FabricUIManager only
350
- @Override
351
- @UiThread
352
- public void didDispatchMountItems(UIManager uiManager) {
353
- if (mUIManagerType != UIManagerType.FABRIC) {
354
- return;
355
- }
356
-
357
- long batchNumber = mCurrentBatchNumber - 1;
358
-
359
- // TODO T71377544: delete this when the JS method is confirmed safe
360
- if (!mBatchingControlledByJS) {
361
- // The problem we're trying to solve here: we could be in the middle of queueing
362
- // a batch of related animation operations when Fabric flushes a batch of MountItems.
363
- // It's visually bad if we execute half of the animation ops and then wait another frame
364
- // (or more) to execute the rest.
365
- // See mFrameNumber. If the dispatchedFrameNumber drifts too far - that
366
- // is, if no MountItems are scheduled for a while, which can happen if a tree
367
- // is committed but there are no changes - bring these counts back in sync and
368
- // execute any queued operations. This number is arbitrary, but we want it low
369
- // enough that the user shouldn't be able to see this delay in most cases.
370
- mCurrentFrameNumber++;
371
- if ((mCurrentFrameNumber - mCurrentBatchNumber) > 2) {
372
- mCurrentBatchNumber = mCurrentFrameNumber;
373
- batchNumber = mCurrentBatchNumber;
374
- }
375
- }
376
-
377
- // NULLSAFE_FIXME[Parameter Not Nullable]
378
- mPreOperations.executeBatch(batchNumber, getNodesManager());
379
- // NULLSAFE_FIXME[Parameter Not Nullable]
380
- mOperations.executeBatch(batchNumber, getNodesManager());
381
- }
382
-
383
- // For non-FabricUIManager only
384
- @Override
385
- @UiThread
386
- public void willDispatchViewUpdates(final UIManager uiManager) {
387
- if (mOperations.isEmpty() && mPreOperations.isEmpty()) {
388
- return;
389
- }
390
- if (mUIManagerType == UIManagerType.FABRIC) {
391
- return;
392
- }
393
-
394
- final long frameNo = mCurrentBatchNumber++;
395
-
396
- UIBlock preOperationsUIBlock =
397
- new UIBlock() {
398
- @Override
399
- // NULLSAFE_FIXME[Inconsistent Subclass Parameter Annotation]
400
- public void execute(NativeViewHierarchyManager nativeViewHierarchyManager) {
401
- // NULLSAFE_FIXME[Parameter Not Nullable]
402
- mPreOperations.executeBatch(frameNo, getNodesManager());
403
- }
404
- };
405
-
406
- UIBlock operationsUIBlock =
407
- new UIBlock() {
408
- @Override
409
- // NULLSAFE_FIXME[Inconsistent Subclass Parameter Annotation]
410
- public void execute(NativeViewHierarchyManager nativeViewHierarchyManager) {
411
- // NULLSAFE_FIXME[Parameter Not Nullable]
412
- mOperations.executeBatch(frameNo, getNodesManager());
413
- }
414
- };
415
-
416
- assert (uiManager instanceof UIManagerModule);
417
- UIManagerModule uiManagerModule = (UIManagerModule) uiManager;
418
- uiManagerModule.prependUIBlock(preOperationsUIBlock);
419
- uiManagerModule.addUIBlock(operationsUIBlock);
420
- }
421
-
422
- @Override
423
- public void onHostPause() {
424
- clearFrameCallback();
425
- }
426
-
427
- @Override
428
- public void onHostDestroy() {
429
- // Is it possible for onHostDestroy to be called without a corresponding onHostPause?
430
- clearFrameCallback();
431
- }
432
-
433
- /**
434
- * Returns a {@link NativeAnimatedNodesManager}, either the existing instance or a new one. Will
435
- * return null if and only if the {@link ReactApplicationContext} is also null.
436
- *
437
- * @return {@link NativeAnimatedNodesManager}
438
- */
439
- @Nullable
440
- public NativeAnimatedNodesManager getNodesManager() {
441
- if (mNodesManager.get() == null) {
442
- ReactApplicationContext reactApplicationContext = getReactApplicationContextIfActiveOrWarn();
443
-
444
- if (reactApplicationContext != null) {
445
- mNodesManager.compareAndSet(null, new NativeAnimatedNodesManager(reactApplicationContext));
446
- }
447
- }
448
-
449
- return mNodesManager.get();
450
- }
451
-
452
- private void clearFrameCallback() {
453
- Assertions.assertNotNull(mReactChoreographer)
454
- .removeFrameCallback(
455
- ReactChoreographer.CallbackType.NATIVE_ANIMATED_MODULE, mAnimatedFrameCallback);
456
- mEnqueuedAnimationOnFrame = false;
457
- }
458
-
459
- private void enqueueFrameCallback() {
460
- if (!mEnqueuedAnimationOnFrame) {
461
- Assertions.assertNotNull(mReactChoreographer)
462
- .postFrameCallback(
463
- ReactChoreographer.CallbackType.NATIVE_ANIMATED_MODULE, mAnimatedFrameCallback);
464
- mEnqueuedAnimationOnFrame = true;
465
- }
466
- }
467
-
468
- @VisibleForTesting
469
- public void setNodesManager(NativeAnimatedNodesManager nodesManager) {
470
- mNodesManager.set(nodesManager);
471
- }
472
-
473
- /**
474
- * Given a viewTag, detect if we're running in Fabric or non-Fabric and attach an event listener
475
- * to the correct UIManager, if necessary. This is expected to only be called from the native
476
- * module thread, and not concurrently.
477
- *
478
- * @param viewTag
479
- */
480
- private void initializeLifecycleEventListenersForViewTag(final int viewTag) {
481
- mUIManagerType = ViewUtil.getUIManagerType(viewTag);
482
- if (mUIManagerType == UIManagerType.FABRIC) {
483
- mNumFabricAnimations++;
484
- } else {
485
- mNumNonFabricAnimations++;
486
- }
487
-
488
- NativeAnimatedNodesManager nodesManager = getNodesManager();
489
- if (nodesManager != null) {
490
- nodesManager.initializeEventListenerForUIManagerType(mUIManagerType);
491
- } else {
492
- ReactSoftExceptionLogger.logSoftException(
493
- NAME,
494
- new RuntimeException(
495
- "initializeLifecycleEventListenersForViewTag could not get"
496
- + " NativeAnimatedNodesManager"));
497
- }
498
-
499
- // Subscribe to UIManager (Fabric or non-Fabric) lifecycle events if we haven't yet
500
- if (mUIManagerType == UIManagerType.FABRIC ? mInitializedForFabric : mInitializedForNonFabric) {
501
- return;
502
- }
503
-
504
- ReactApplicationContext reactApplicationContext = getReactApplicationContext();
505
- if (reactApplicationContext != null) {
506
- @Nullable
507
- UIManager uiManager = UIManagerHelper.getUIManager(reactApplicationContext, mUIManagerType);
508
- if (uiManager != null) {
509
- uiManager.addUIManagerEventListener(this);
510
- if (mUIManagerType == UIManagerType.FABRIC) {
511
- mInitializedForFabric = true;
512
- } else {
513
- mInitializedForNonFabric = true;
514
- }
515
- }
516
- }
517
- }
518
-
519
- /**
520
- * Given a viewTag and the knowledge that a "disconnect" or "stop"-type imperative command is
521
- * being executed, decrement the number of inflight animations and possibly switch UIManager
522
- * modes.
523
- *
524
- * @param viewTag
525
- */
526
- private void decrementInFlightAnimationsForViewTag(final int viewTag) {
527
- @UIManagerType int animationManagerType = ViewUtil.getUIManagerType(viewTag);
528
- if (animationManagerType == UIManagerType.FABRIC) {
529
- mNumFabricAnimations--;
530
- } else {
531
- mNumNonFabricAnimations--;
532
- }
533
-
534
- // Should we switch to a different animation mode?
535
- // This can be useful when navigating between Fabric and non-Fabric screens:
536
- // If there are ongoing Fabric animations from a previous screen,
537
- // and we tear down the current non-Fabric screen, we should expect
538
- // the animation mode to switch back - and vice-versa.
539
- if (mNumNonFabricAnimations == 0
540
- && mNumFabricAnimations > 0
541
- && mUIManagerType != UIManagerType.FABRIC) {
542
- mUIManagerType = UIManagerType.FABRIC;
543
- } else if (mNumFabricAnimations == 0
544
- && mNumNonFabricAnimations > 0
545
- && mUIManagerType != UIManagerType.DEFAULT) {
546
- mUIManagerType = UIManagerType.DEFAULT;
547
- }
548
- }
549
-
550
- @Override
551
- public void startOperationBatch() {
552
- mBatchingControlledByJS = true;
553
- mCurrentBatchNumber++;
554
- }
555
-
556
- @Override
557
- public void finishOperationBatch() {
558
- mBatchingControlledByJS = false;
559
- mCurrentBatchNumber++;
560
- }
561
-
562
- @Override
563
- public void createAnimatedNode(final double tagDouble, final ReadableMap config) {
564
- final int tag = (int) tagDouble;
565
- if (ANIMATED_MODULE_DEBUG) {
566
- FLog.d(
567
- NAME, "queue createAnimatedNode: " + tag + " config: " + config.toHashMap().toString());
568
- }
569
-
570
- addOperation(
571
- new UIThreadOperation() {
572
- @Override
573
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
574
- if (ANIMATED_MODULE_DEBUG) {
575
- FLog.d(
576
- NAME,
577
- "execute createAnimatedNode: "
578
- + tag
579
- + " config: "
580
- + config.toHashMap().toString());
581
- }
582
- animatedNodesManager.createAnimatedNode(tag, config);
583
- }
584
- });
585
- }
586
-
587
- @Override
588
- public void updateAnimatedNodeConfig(final double tagDouble, final ReadableMap config) {
589
- final int tag = (int) tagDouble;
590
- if (ANIMATED_MODULE_DEBUG) {
591
- FLog.d(
592
- NAME,
593
- "queue updateAnimatedNodeConfig: " + tag + " config: " + config.toHashMap().toString());
594
- }
595
-
596
- addOperation(
597
- new UIThreadOperation() {
598
- @Override
599
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
600
- if (ANIMATED_MODULE_DEBUG) {
601
- FLog.d(
602
- NAME,
603
- "execute updateAnimatedNodeConfig: "
604
- + tag
605
- + " config: "
606
- + config.toHashMap().toString());
607
- }
608
- animatedNodesManager.updateAnimatedNodeConfig(tag, config);
609
- }
610
- });
611
- }
612
-
613
- @Override
614
- public void startListeningToAnimatedNodeValue(final double tagDouble) {
615
- final int tag = (int) tagDouble;
616
- if (ANIMATED_MODULE_DEBUG) {
617
- FLog.d(NAME, "queue startListeningToAnimatedNodeValue: " + tag);
618
- }
619
-
620
- final AnimatedNodeValueListener listener =
621
- new AnimatedNodeValueListener() {
622
- public void onValueUpdate(double value) {
623
- WritableMap onAnimatedValueData = Arguments.createMap();
624
- onAnimatedValueData.putInt("tag", tag);
625
- onAnimatedValueData.putDouble("value", value);
626
-
627
- ReactApplicationContext reactApplicationContext =
628
- getReactApplicationContextIfActiveOrWarn();
629
- if (reactApplicationContext != null) {
630
- reactApplicationContext.emitDeviceEvent("onAnimatedValueUpdate", onAnimatedValueData);
631
- }
632
- }
633
- };
634
-
635
- addOperation(
636
- new UIThreadOperation() {
637
- @Override
638
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
639
- if (ANIMATED_MODULE_DEBUG) {
640
- FLog.d(NAME, "execute startListeningToAnimatedNodeValue: " + tag);
641
- }
642
- animatedNodesManager.startListeningToAnimatedNodeValue(tag, listener);
643
- }
644
- });
645
- }
646
-
647
- @Override
648
- public void stopListeningToAnimatedNodeValue(final double tagDouble) {
649
- final int tag = (int) tagDouble;
650
- if (ANIMATED_MODULE_DEBUG) {
651
- FLog.d(NAME, "queue stopListeningToAnimatedNodeValue: " + tag);
652
- }
653
-
654
- addOperation(
655
- new UIThreadOperation() {
656
- @Override
657
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
658
- if (ANIMATED_MODULE_DEBUG) {
659
- FLog.d(NAME, "execute stopListeningToAnimatedNodeValue: " + tag);
660
- }
661
- animatedNodesManager.stopListeningToAnimatedNodeValue(tag);
662
- }
663
- });
664
- }
665
-
666
- @Override
667
- public void dropAnimatedNode(final double tagDouble) {
668
- final int tag = (int) tagDouble;
669
- if (ANIMATED_MODULE_DEBUG) {
670
- FLog.d(NAME, "queue dropAnimatedNode: " + tag);
671
- }
672
-
673
- addOperation(
674
- new UIThreadOperation() {
675
- @Override
676
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
677
- if (ANIMATED_MODULE_DEBUG) {
678
- FLog.d(NAME, "execute dropAnimatedNode: " + tag);
679
- }
680
- animatedNodesManager.dropAnimatedNode(tag);
681
- }
682
- });
683
- }
684
-
685
- @Override
686
- public void setAnimatedNodeValue(final double tagDouble, final double value) {
687
- final int tag = (int) tagDouble;
688
- if (ANIMATED_MODULE_DEBUG) {
689
- FLog.d(NAME, "queue setAnimatedNodeValue: " + tag + " value: " + value);
690
- }
691
-
692
- addOperation(
693
- new UIThreadOperation() {
694
- @Override
695
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
696
- if (ANIMATED_MODULE_DEBUG) {
697
- FLog.d(NAME, "execute setAnimatedNodeValue: " + tag + " value: " + value);
698
- }
699
- animatedNodesManager.setAnimatedNodeValue(tag, value);
700
- }
701
- });
702
- }
703
-
704
- @Override
705
- public void setAnimatedNodeOffset(final double tagDouble, final double value) {
706
- final int tag = (int) tagDouble;
707
- if (ANIMATED_MODULE_DEBUG) {
708
- FLog.d(NAME, "queue setAnimatedNodeOffset: " + tag + " offset: " + value);
709
- }
710
-
711
- addOperation(
712
- new UIThreadOperation() {
713
- @Override
714
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
715
- if (ANIMATED_MODULE_DEBUG) {
716
- FLog.d(NAME, "execute setAnimatedNodeOffset: " + tag + " offset: " + value);
717
- }
718
- animatedNodesManager.setAnimatedNodeOffset(tag, value);
719
- }
720
- });
721
- }
722
-
723
- @Override
724
- public void flattenAnimatedNodeOffset(final double tagDouble) {
725
- final int tag = (int) tagDouble;
726
- if (ANIMATED_MODULE_DEBUG) {
727
- FLog.d(NAME, "queue flattenAnimatedNodeOffset: " + tag);
728
- }
729
-
730
- addOperation(
731
- new UIThreadOperation() {
732
- @Override
733
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
734
- if (ANIMATED_MODULE_DEBUG) {
735
- FLog.d(NAME, "execute flattenAnimatedNodeOffset: " + tag);
736
- }
737
- animatedNodesManager.flattenAnimatedNodeOffset(tag);
738
- }
739
- });
740
- }
741
-
742
- @Override
743
- public void extractAnimatedNodeOffset(final double tagDouble) {
744
- final int tag = (int) tagDouble;
745
- if (ANIMATED_MODULE_DEBUG) {
746
- FLog.d(NAME, "queue extractAnimatedNodeOffset: " + tag);
747
- }
748
-
749
- addOperation(
750
- new UIThreadOperation() {
751
- @Override
752
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
753
- if (ANIMATED_MODULE_DEBUG) {
754
- FLog.d(NAME, "execute extractAnimatedNodeOffset: " + tag);
755
- }
756
- animatedNodesManager.extractAnimatedNodeOffset(tag);
757
- }
758
- });
759
- }
760
-
761
- @Override
762
- public void startAnimatingNode(
763
- final double animationIdDouble,
764
- final double animatedNodeTagDouble,
765
- final ReadableMap animationConfig,
766
- final Callback endCallback) {
767
- final int animationId = (int) animationIdDouble;
768
- final int animatedNodeTag = (int) animatedNodeTagDouble;
769
- if (ANIMATED_MODULE_DEBUG) {
770
- FLog.d(NAME, "queue startAnimatingNode: ID: " + animationId + " tag: " + animatedNodeTag);
771
- }
772
-
773
- addUnbatchedOperation(
774
- new UIThreadOperation() {
775
- @Override
776
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
777
- if (ANIMATED_MODULE_DEBUG) {
778
- FLog.d(
779
- NAME,
780
- "execute startAnimatingNode: ID: " + animationId + " tag: " + animatedNodeTag);
781
- }
782
- animatedNodesManager.startAnimatingNode(
783
- animationId, animatedNodeTag, animationConfig, endCallback);
784
- }
785
- });
786
- }
787
-
788
- @Override
789
- public void stopAnimation(final double animationIdDouble) {
790
- final int animationId = (int) animationIdDouble;
791
- if (ANIMATED_MODULE_DEBUG) {
792
- FLog.d(NAME, "queue stopAnimation: ID: " + animationId);
793
- }
794
-
795
- addOperation(
796
- new UIThreadOperation() {
797
- @Override
798
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
799
- if (ANIMATED_MODULE_DEBUG) {
800
- FLog.d(NAME, "execute stopAnimation: ID: " + animationId);
801
- }
802
- animatedNodesManager.stopAnimation(animationId);
803
- }
804
- });
805
- }
806
-
807
- @Override
808
- public void connectAnimatedNodes(
809
- final double parentNodeTagDouble, final double childNodeTagDouble) {
810
- final int parentNodeTag = (int) parentNodeTagDouble;
811
- final int childNodeTag = (int) childNodeTagDouble;
812
- if (ANIMATED_MODULE_DEBUG) {
813
- FLog.d(
814
- NAME, "queue connectAnimatedNodes: parent: " + parentNodeTag + " child: " + childNodeTag);
815
- }
816
-
817
- addOperation(
818
- new UIThreadOperation() {
819
- @Override
820
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
821
- if (ANIMATED_MODULE_DEBUG) {
822
- FLog.d(
823
- NAME,
824
- "execute connectAnimatedNodes: parent: "
825
- + parentNodeTag
826
- + " child: "
827
- + childNodeTag);
828
- }
829
- animatedNodesManager.connectAnimatedNodes(parentNodeTag, childNodeTag);
830
- }
831
- });
832
- }
833
-
834
- @Override
835
- public void disconnectAnimatedNodes(
836
- final double parentNodeTagDouble, final double childNodeTagDouble) {
837
- final int parentNodeTag = (int) parentNodeTagDouble;
838
- final int childNodeTag = (int) childNodeTagDouble;
839
- if (ANIMATED_MODULE_DEBUG) {
840
- FLog.d(
841
- NAME,
842
- "queue disconnectAnimatedNodes: parent: " + parentNodeTag + " child: " + childNodeTag);
843
- }
844
-
845
- addOperation(
846
- new UIThreadOperation() {
847
- @Override
848
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
849
- if (ANIMATED_MODULE_DEBUG) {
850
- FLog.d(
851
- NAME,
852
- "execute disconnectAnimatedNodes: parent: "
853
- + parentNodeTag
854
- + " child: "
855
- + childNodeTag);
856
- }
857
- animatedNodesManager.disconnectAnimatedNodes(parentNodeTag, childNodeTag);
858
- }
859
- });
860
- }
861
-
862
- @Override
863
- public void connectAnimatedNodeToView(
864
- final double animatedNodeTagDouble, final double viewTagDouble) {
865
- final int animatedNodeTag = (int) animatedNodeTagDouble;
866
- final int viewTag = (int) viewTagDouble;
867
- if (ANIMATED_MODULE_DEBUG) {
868
- FLog.d(
869
- NAME,
870
- "queue connectAnimatedNodeToView: animatedNodeTag: "
871
- + animatedNodeTag
872
- + " viewTag: "
873
- + viewTag);
874
- }
875
-
876
- initializeLifecycleEventListenersForViewTag(viewTag);
877
-
878
- addOperation(
879
- new UIThreadOperation() {
880
- @Override
881
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
882
- if (ANIMATED_MODULE_DEBUG) {
883
- FLog.d(
884
- NAME,
885
- "execute connectAnimatedNodeToView: animatedNodeTag: "
886
- + animatedNodeTag
887
- + " viewTag: "
888
- + viewTag);
889
- }
890
- animatedNodesManager.connectAnimatedNodeToView(animatedNodeTag, viewTag);
891
- }
892
- });
893
- }
894
-
895
- @Override
896
- public void disconnectAnimatedNodeFromView(
897
- final double animatedNodeTagDouble, final double viewTagDouble) {
898
- final int animatedNodeTag = (int) animatedNodeTagDouble;
899
- final int viewTag = (int) viewTagDouble;
900
- if (ANIMATED_MODULE_DEBUG) {
901
- FLog.d(
902
- NAME,
903
- "queue disconnectAnimatedNodeFromView: " + animatedNodeTag + " viewTag: " + viewTag);
904
- }
905
-
906
- decrementInFlightAnimationsForViewTag(viewTag);
907
-
908
- addOperation(
909
- new UIThreadOperation() {
910
- @Override
911
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
912
- if (ANIMATED_MODULE_DEBUG) {
913
- FLog.d(
914
- NAME,
915
- "execute disconnectAnimatedNodeFromView: "
916
- + animatedNodeTag
917
- + " viewTag: "
918
- + viewTag);
919
- }
920
- animatedNodesManager.disconnectAnimatedNodeFromView(animatedNodeTag, viewTag);
921
- }
922
- });
923
- }
924
-
925
- @Override
926
- public void restoreDefaultValues(final double animatedNodeTagDouble) {
927
- final int animatedNodeTag = (int) animatedNodeTagDouble;
928
- if (ANIMATED_MODULE_DEBUG) {
929
- FLog.d(NAME, "queue restoreDefaultValues: " + animatedNodeTag);
930
- }
931
-
932
- addPreOperation(
933
- new UIThreadOperation() {
934
- @Override
935
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
936
- if (ANIMATED_MODULE_DEBUG) {
937
- FLog.d(NAME, "execute restoreDefaultValues: " + animatedNodeTag);
938
- }
939
- animatedNodesManager.restoreDefaultValues(animatedNodeTag);
940
- }
941
- });
942
- }
943
-
944
- @Override
945
- public void addAnimatedEventToView(
946
- final double viewTagDouble, final String eventName, final ReadableMap eventMapping) {
947
- final int viewTag = (int) viewTagDouble;
948
- if (ANIMATED_MODULE_DEBUG) {
949
- FLog.d(
950
- NAME,
951
- "queue addAnimatedEventToView: "
952
- + viewTag
953
- + " eventName: "
954
- + eventName
955
- + " eventMapping: "
956
- + eventMapping.toHashMap().toString());
957
- }
958
-
959
- initializeLifecycleEventListenersForViewTag(viewTag);
960
-
961
- addOperation(
962
- new UIThreadOperation() {
963
- @Override
964
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
965
- if (ANIMATED_MODULE_DEBUG) {
966
- FLog.d(
967
- NAME,
968
- "execute addAnimatedEventToView: "
969
- + viewTag
970
- + " eventName: "
971
- + eventName
972
- + " eventMapping: "
973
- + eventMapping.toHashMap().toString());
974
- }
975
- animatedNodesManager.addAnimatedEventToView(viewTag, eventName, eventMapping);
976
- }
977
- });
978
- }
979
-
980
- @Override
981
- public void removeAnimatedEventFromView(
982
- final double viewTagDouble, final String eventName, final double animatedValueTagDouble) {
983
- final int viewTag = (int) viewTagDouble;
984
- final int animatedValueTag = (int) animatedValueTagDouble;
985
- if (ANIMATED_MODULE_DEBUG) {
986
- FLog.d(
987
- NAME,
988
- "queue removeAnimatedEventFromView: viewTag: "
989
- + viewTag
990
- + " eventName: "
991
- + eventName
992
- + " animatedValueTag: "
993
- + animatedValueTag);
994
- }
995
-
996
- decrementInFlightAnimationsForViewTag(viewTag);
997
-
998
- addOperation(
999
- new UIThreadOperation() {
1000
- @Override
1001
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
1002
- if (ANIMATED_MODULE_DEBUG) {
1003
- FLog.d(
1004
- NAME,
1005
- "execute removeAnimatedEventFromView: viewTag: "
1006
- + viewTag
1007
- + " eventName: "
1008
- + eventName
1009
- + " animatedValueTag: "
1010
- + animatedValueTag);
1011
- }
1012
- animatedNodesManager.removeAnimatedEventFromView(viewTag, eventName, animatedValueTag);
1013
- }
1014
- });
1015
- }
1016
-
1017
- @Override
1018
- public void addListener(String eventName) {
1019
- // iOS only
1020
- }
1021
-
1022
- @Override
1023
- public void removeListeners(double count) {
1024
- // iOS only
1025
- }
1026
-
1027
- @Override
1028
- public void getValue(final double animatedValueNodeTagDouble, final Callback callback) {
1029
- final int animatedValueNodeTag = (int) animatedValueNodeTagDouble;
1030
- addOperation(
1031
- new UIThreadOperation() {
1032
- @Override
1033
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
1034
- animatedNodesManager.getValue(animatedValueNodeTag, callback);
1035
- }
1036
- });
1037
- }
1038
-
1039
- @Override
1040
- public void invalidate() {
1041
- super.invalidate();
1042
-
1043
- getReactApplicationContext().removeLifecycleEventListener(this);
1044
- }
1045
-
1046
- /**
1047
- * This is a currently-experimental method that allows JS to queue and immediately execute many
1048
- * instructions at once. Since we make 1 JNI/JSI call instead of N, this should significantly
1049
- * improve performance.
1050
- *
1051
- * <p>The arguments operate as a byte buffer. All integer command IDs and any args are packed into
1052
- * opsAndArgs.
1053
- *
1054
- * <p>For the getValue callback: since this is batched, we accumulate a list of all requested
1055
- * values, in order, and call the callback once at the end (if present) with the list of requested
1056
- * values.
1057
- */
1058
- @Override
1059
- public void queueAndExecuteBatchedOperations(final ReadableArray opsAndArgs) {
1060
- final int opBufferSize = opsAndArgs.size();
1061
-
1062
- if (ANIMATED_MODULE_DEBUG) {
1063
- FLog.e(NAME, "queueAndExecuteBatchedOperations: opBufferSize: " + opBufferSize);
1064
- }
1065
-
1066
- // This block of code is unfortunate and should be refactored - we just want to
1067
- // extract the ViewTags in the ReadableArray to mark animations on views as being enabled.
1068
- // We only do this for initializing animations on views - disabling animations on views
1069
- // happens later, when the disconnect/stop operations are actually executed.
1070
- for (int i = 0; i < opBufferSize; ) {
1071
- BatchExecutionOpCodes command = BatchExecutionOpCodes.fromId(opsAndArgs.getInt(i++));
1072
- switch (command) {
1073
- case OP_CODE_GET_VALUE:
1074
- case OP_START_LISTENING_TO_ANIMATED_NODE_VALUE:
1075
- case OP_STOP_LISTENING_TO_ANIMATED_NODE_VALUE:
1076
- case OP_CODE_STOP_ANIMATION:
1077
- case OP_CODE_FLATTEN_ANIMATED_NODE_OFFSET:
1078
- case OP_CODE_EXTRACT_ANIMATED_NODE_OFFSET:
1079
- case OP_CODE_RESTORE_DEFAULT_VALUES:
1080
- case OP_CODE_DROP_ANIMATED_NODE:
1081
- case OP_CODE_ADD_LISTENER:
1082
- case OP_CODE_REMOVE_LISTENERS:
1083
- i++;
1084
- break;
1085
- case OP_CODE_CREATE_ANIMATED_NODE:
1086
- case OP_CODE_UPDATE_ANIMATED_NODE_CONFIG:
1087
- case OP_CODE_CONNECT_ANIMATED_NODES:
1088
- case OP_CODE_DISCONNECT_ANIMATED_NODES:
1089
- case OP_CODE_SET_ANIMATED_NODE_VALUE:
1090
- case OP_CODE_SET_ANIMATED_NODE_OFFSET:
1091
- case OP_CODE_DISCONNECT_ANIMATED_NODE_FROM_VIEW:
1092
- i += 2;
1093
- break;
1094
- case OP_CODE_START_ANIMATING_NODE:
1095
- case OP_CODE_REMOVE_ANIMATED_EVENT_FROM_VIEW:
1096
- i += 3;
1097
- break;
1098
- case OP_CODE_CONNECT_ANIMATED_NODE_TO_VIEW:
1099
- i++; // tag
1100
- initializeLifecycleEventListenersForViewTag(opsAndArgs.getInt(i++)); // viewTag
1101
- break;
1102
- case OP_CODE_ADD_ANIMATED_EVENT_TO_VIEW:
1103
- initializeLifecycleEventListenersForViewTag(opsAndArgs.getInt(i++)); // viewTag
1104
- i++; // eventName
1105
- i++; // eventMapping
1106
- break;
1107
- default:
1108
- throw new IllegalArgumentException(
1109
- "Batch animation execution op: fetching viewTag: unknown op code");
1110
- }
1111
- }
1112
-
1113
- // Batching happens inside this operation - so signal to the thread loop that
1114
- // this operation should be executed as soon as possible, "unbatched" with other
1115
- // UIThreadOperations
1116
- startOperationBatch();
1117
- addUnbatchedOperation(
1118
- new UIThreadOperation() {
1119
- @Override
1120
- public void execute(NativeAnimatedNodesManager animatedNodesManager) {
1121
- ReactApplicationContext reactApplicationContext =
1122
- getReactApplicationContextIfActiveOrWarn();
1123
-
1124
- int viewTag = -1;
1125
- for (int i = 0; i < opBufferSize; ) {
1126
- BatchExecutionOpCodes command = BatchExecutionOpCodes.fromId(opsAndArgs.getInt(i++));
1127
-
1128
- switch (command) {
1129
- case OP_CODE_CREATE_ANIMATED_NODE:
1130
- animatedNodesManager.createAnimatedNode(
1131
- // NULLSAFE_FIXME[Parameter Not Nullable]
1132
- opsAndArgs.getInt(i++), opsAndArgs.getMap(i++));
1133
- break;
1134
- case OP_CODE_UPDATE_ANIMATED_NODE_CONFIG:
1135
- animatedNodesManager.updateAnimatedNodeConfig(
1136
- // NULLSAFE_FIXME[Parameter Not Nullable]
1137
- opsAndArgs.getInt(i++), opsAndArgs.getMap(i++));
1138
- break;
1139
- case OP_CODE_GET_VALUE:
1140
- // NULLSAFE_FIXME[Parameter Not Nullable]
1141
- animatedNodesManager.getValue(opsAndArgs.getInt(i++), null);
1142
- break;
1143
- case OP_START_LISTENING_TO_ANIMATED_NODE_VALUE:
1144
- final int tag = opsAndArgs.getInt(i++);
1145
- final AnimatedNodeValueListener listener =
1146
- new AnimatedNodeValueListener() {
1147
- public void onValueUpdate(double value) {
1148
- WritableMap onAnimatedValueData = Arguments.createMap();
1149
- onAnimatedValueData.putInt("tag", tag);
1150
- onAnimatedValueData.putDouble("value", value);
1151
-
1152
- ReactApplicationContext reactApplicationContext =
1153
- getReactApplicationContextIfActiveOrWarn();
1154
- if (reactApplicationContext != null) {
1155
- reactApplicationContext.emitDeviceEvent(
1156
- "onAnimatedValueUpdate", onAnimatedValueData);
1157
- }
1158
- }
1159
- };
1160
- animatedNodesManager.startListeningToAnimatedNodeValue(tag, listener);
1161
- break;
1162
- case OP_STOP_LISTENING_TO_ANIMATED_NODE_VALUE:
1163
- animatedNodesManager.stopListeningToAnimatedNodeValue(opsAndArgs.getInt(i++));
1164
- break;
1165
- case OP_CODE_CONNECT_ANIMATED_NODES:
1166
- animatedNodesManager.connectAnimatedNodes(
1167
- opsAndArgs.getInt(i++), opsAndArgs.getInt(i++));
1168
- break;
1169
- case OP_CODE_DISCONNECT_ANIMATED_NODES:
1170
- animatedNodesManager.disconnectAnimatedNodes(
1171
- opsAndArgs.getInt(i++), opsAndArgs.getInt(i++));
1172
- break;
1173
- case OP_CODE_START_ANIMATING_NODE:
1174
- if (ReactNativeFeatureFlags.lazyAnimationCallbacks()) {
1175
- enqueueFrameCallback();
1176
- }
1177
- animatedNodesManager.startAnimatingNode(
1178
- // NULLSAFE_FIXME[Parameter Not Nullable]
1179
- opsAndArgs.getInt(i++), opsAndArgs.getInt(i++), opsAndArgs.getMap(i++), null);
1180
- break;
1181
- case OP_CODE_STOP_ANIMATION:
1182
- animatedNodesManager.stopAnimation(opsAndArgs.getInt(i++));
1183
- break;
1184
- case OP_CODE_SET_ANIMATED_NODE_VALUE:
1185
- animatedNodesManager.setAnimatedNodeValue(
1186
- opsAndArgs.getInt(i++), opsAndArgs.getDouble(i++));
1187
- break;
1188
- case OP_CODE_SET_ANIMATED_NODE_OFFSET:
1189
- animatedNodesManager.setAnimatedNodeValue(
1190
- opsAndArgs.getInt(i++), opsAndArgs.getDouble(i++));
1191
- break;
1192
- case OP_CODE_FLATTEN_ANIMATED_NODE_OFFSET:
1193
- animatedNodesManager.flattenAnimatedNodeOffset(opsAndArgs.getInt(i++));
1194
- break;
1195
- case OP_CODE_EXTRACT_ANIMATED_NODE_OFFSET:
1196
- animatedNodesManager.extractAnimatedNodeOffset(opsAndArgs.getInt(i++));
1197
- break;
1198
- case OP_CODE_CONNECT_ANIMATED_NODE_TO_VIEW:
1199
- animatedNodesManager.connectAnimatedNodeToView(
1200
- opsAndArgs.getInt(i++), opsAndArgs.getInt(i++));
1201
- break;
1202
- case OP_CODE_DISCONNECT_ANIMATED_NODE_FROM_VIEW:
1203
- int animatedNodeTag = opsAndArgs.getInt(i++);
1204
- viewTag = opsAndArgs.getInt(i++);
1205
- decrementInFlightAnimationsForViewTag(viewTag);
1206
- animatedNodesManager.disconnectAnimatedNodeFromView(animatedNodeTag, viewTag);
1207
- break;
1208
- case OP_CODE_RESTORE_DEFAULT_VALUES:
1209
- animatedNodesManager.restoreDefaultValues(opsAndArgs.getInt(i++));
1210
- break;
1211
- case OP_CODE_DROP_ANIMATED_NODE:
1212
- animatedNodesManager.dropAnimatedNode(opsAndArgs.getInt(i++));
1213
- break;
1214
- case OP_CODE_ADD_ANIMATED_EVENT_TO_VIEW:
1215
- animatedNodesManager.addAnimatedEventToView(
1216
- // NULLSAFE_FIXME[Parameter Not Nullable]
1217
- opsAndArgs.getInt(i++), opsAndArgs.getString(i++), opsAndArgs.getMap(i++));
1218
- break;
1219
- case OP_CODE_REMOVE_ANIMATED_EVENT_FROM_VIEW:
1220
- viewTag = opsAndArgs.getInt(i++);
1221
- decrementInFlightAnimationsForViewTag(viewTag);
1222
- animatedNodesManager.removeAnimatedEventFromView(
1223
- // NULLSAFE_FIXME[Parameter Not Nullable]
1224
- viewTag, opsAndArgs.getString(i++), opsAndArgs.getInt(i++));
1225
- break;
1226
- case OP_CODE_ADD_LISTENER:
1227
- case OP_CODE_REMOVE_LISTENERS:
1228
- i++;
1229
- // ios only, do nothing on android besides incrementing the arg counter
1230
- break;
1231
- default:
1232
- throw new IllegalArgumentException(
1233
- "Batch animation execution op: unknown op code");
1234
- }
1235
- }
1236
- }
1237
- });
1238
- finishOperationBatch();
1239
- }
1240
- }