react-native-tvos 0.79.3-0 → 0.80.0-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1450) hide show
  1. package/Libraries/Alert/Alert.d.ts +4 -1
  2. package/Libraries/Alert/Alert.js +3 -0
  3. package/Libraries/Alert/RCTAlertManager.js +17 -0
  4. package/Libraries/Animated/Animated.js.flow +1 -3
  5. package/Libraries/Animated/AnimatedEvent.js +4 -3
  6. package/Libraries/Animated/AnimatedExports.js +2 -2
  7. package/Libraries/Animated/AnimatedExports.js.flow +140 -0
  8. package/Libraries/Animated/AnimatedImplementation.js +2 -123
  9. package/Libraries/Animated/Easing.js +13 -15
  10. package/Libraries/Animated/animations/Animation.js +8 -4
  11. package/Libraries/Animated/components/AnimatedFlatList.js +7 -6
  12. package/Libraries/Animated/components/AnimatedScrollView.js +48 -42
  13. package/Libraries/Animated/components/AnimatedSectionList.js +11 -7
  14. package/Libraries/Animated/createAnimatedComponent.js +105 -57
  15. package/Libraries/Animated/nodes/AnimatedNode.js +4 -3
  16. package/Libraries/Animated/nodes/AnimatedProps.js +46 -26
  17. package/Libraries/Animated/nodes/AnimatedValue.js +16 -7
  18. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
  19. package/Libraries/AppDelegate/RCTAppSetupUtils.h +2 -0
  20. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +6 -0
  21. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +4 -4
  22. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +6 -5
  23. package/Libraries/AppDelegate/RCTDependencyProvider.h +2 -0
  24. package/Libraries/AppDelegate/RCTReactNativeFactory.h +4 -0
  25. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +54 -40
  26. package/Libraries/AppDelegate/RCTRootViewFactory.h +9 -0
  27. package/Libraries/AppDelegate/RCTRootViewFactory.mm +14 -6
  28. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +2 -11
  29. package/Libraries/AppState/AppState.js +7 -2
  30. package/Libraries/BatchedBridge/MessageQueue.js +2 -2
  31. package/Libraries/BatchedBridge/NativeModules.js +2 -0
  32. package/Libraries/Blob/BlobManager.js +1 -0
  33. package/Libraries/Blob/FileReader.js +219 -8
  34. package/Libraries/Blob/RCTBlobCollector.mm +1 -1
  35. package/Libraries/Blob/RCTBlobManager.h +0 -4
  36. package/Libraries/Blob/RCTBlobManager.mm +4 -21
  37. package/Libraries/Blob/RCTFileReaderModule.mm +2 -2
  38. package/Libraries/Blob/React-RCTBlob.podspec +4 -14
  39. package/Libraries/Blob/URL.js +24 -11
  40. package/Libraries/Blob/URLSearchParams.js +106 -31
  41. package/Libraries/Blob/URLSearchParams.js.flow +12 -7
  42. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +1 -1
  43. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js +17 -0
  44. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +1 -0
  45. package/Libraries/Components/Button.js +1 -1
  46. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -3
  47. package/Libraries/{NewAppScreen/components/Colors.js → Components/DrawerAndroid/DrawerLayoutAndroid.ios.js} +6 -10
  48. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +6 -66
  49. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +18 -0
  50. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +71 -0
  51. package/Libraries/Components/Keyboard/Keyboard.js +5 -3
  52. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +6 -3
  53. package/Libraries/Components/Pressable/Pressable.js +23 -7
  54. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +25 -3
  55. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +29 -20
  56. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  57. package/Libraries/Components/ScrollView/ScrollView.d.ts +3 -3
  58. package/Libraries/Components/ScrollView/ScrollView.js +132 -122
  59. package/Libraries/Components/StaticRenderer.js +1 -1
  60. package/Libraries/Components/Switch/Switch.d.ts +3 -0
  61. package/Libraries/Components/Switch/Switch.js +8 -4
  62. package/Libraries/Components/TV/TVEventControl.js +3 -1
  63. package/Libraries/Components/TV/TVEventHandler.js +21 -13
  64. package/Libraries/Components/TV/TVFocusEventHandler.js +1 -1
  65. package/Libraries/Components/TV/TVFocusGuideView.js +3 -8
  66. package/Libraries/Components/TV/tagForComponentOrHandle.js +2 -2
  67. package/Libraries/Components/TV/useTVEventHandler.js +1 -1
  68. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +2 -13
  69. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +2 -4
  70. package/Libraries/Components/TextInput/TextInput.d.ts +76 -33
  71. package/Libraries/Components/TextInput/TextInput.flow.js +106 -55
  72. package/Libraries/Components/TextInput/TextInput.js +94 -1029
  73. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  74. package/Libraries/{Modal/ModalInjection.js → Components/ToastAndroid/ToastAndroid.ios.js} +3 -5
  75. package/Libraries/Components/ToastAndroid/ToastAndroid.js +4 -32
  76. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +109 -0
  77. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +45 -0
  78. package/Libraries/Components/Touchable/Touchable.js +5 -5
  79. package/Libraries/Components/Touchable/TouchableBounce.js +14 -7
  80. package/Libraries/Components/Touchable/TouchableHighlight.js +14 -10
  81. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -6
  82. package/Libraries/Components/Touchable/TouchableOpacity.js +14 -7
  83. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +1 -1
  84. package/Libraries/Components/View/View.js +21 -23
  85. package/Libraries/Components/View/ViewAccessibility.d.ts +15 -0
  86. package/Libraries/Components/View/ViewAccessibility.js +25 -1
  87. package/Libraries/Components/View/ViewNativeComponent.js +2 -2
  88. package/Libraries/Components/View/ViewPropTypes.d.ts +16 -0
  89. package/Libraries/Components/View/ViewPropTypes.js +49 -3
  90. package/Libraries/Core/ReactNativeVersion.js +2 -2
  91. package/Libraries/Core/setUpReactDevTools.js +5 -5
  92. package/Libraries/Debugging/DebuggingOverlayRegistry.js +3 -3
  93. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -4
  94. package/Libraries/Image/AssetSourceResolver.js +17 -4
  95. package/Libraries/Image/Image.d.ts +26 -10
  96. package/Libraries/Image/Image.js +17 -0
  97. package/Libraries/Image/Image.js.flow +5 -5
  98. package/Libraries/Image/ImageBackground.js +2 -0
  99. package/Libraries/Image/ImageInjection.js +1 -1
  100. package/Libraries/Image/ImageProps.js +22 -17
  101. package/Libraries/Image/ImageSource.js +3 -1
  102. package/Libraries/Image/ImageSourceUtils.js +4 -2
  103. package/Libraries/Image/ImageTypes.flow.js +1 -1
  104. package/Libraries/Image/RCTImageLoader.mm +63 -19
  105. package/Libraries/Image/RCTImageStoreManager.mm +10 -32
  106. package/Libraries/Image/RCTImageURLLoader.h +19 -1
  107. package/Libraries/Image/RCTUIImageViewAnimated.mm +6 -23
  108. package/Libraries/Image/React-RCTImage.podspec +2 -7
  109. package/Libraries/Interaction/InteractionManager.d.ts +13 -0
  110. package/Libraries/Interaction/InteractionManager.js +1 -1
  111. package/Libraries/Interaction/PanResponder.js +3 -3
  112. package/Libraries/Interaction/TaskQueue.js +1 -0
  113. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  114. package/Libraries/Linking/Linking.js +1 -1
  115. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -6
  116. package/Libraries/Lists/FlatList.d.ts +2 -2
  117. package/Libraries/Lists/FlatList.js +8 -11
  118. package/Libraries/Lists/SectionList.js +39 -42
  119. package/Libraries/Lists/SectionListModern.js +25 -34
  120. package/Libraries/Lists/VirtualizedList.js +1 -0
  121. package/Libraries/Lists/VirtualizedSectionList.js +1 -0
  122. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  123. package/Libraries/LogBox/LogBoxNotificationContainer.js +1 -1
  124. package/Libraries/Modal/Modal.js +33 -7
  125. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +118 -124
  126. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +4 -7
  127. package/Libraries/NativeComponent/BaseViewConfig.android.js +8 -6
  128. package/Libraries/NativeComponent/BaseViewConfig.ios.js +2 -0
  129. package/Libraries/NativeComponent/BaseViewConfig.js +17 -0
  130. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +2 -2
  131. package/Libraries/NativeModules/specs/NativeDevMenu.js +2 -2
  132. package/Libraries/Network/RCTDataRequestHandler.mm +10 -6
  133. package/Libraries/Network/RCTFileRequestHandler.mm +11 -7
  134. package/Libraries/Network/RCTHTTPRequestHandler.mm +1 -2
  135. package/Libraries/Network/RCTInspectorNetworkReporter.h +32 -0
  136. package/Libraries/Network/RCTInspectorNetworkReporter.mm +88 -0
  137. package/Libraries/Network/RCTNetworking.android.js +1 -1
  138. package/Libraries/Network/RCTNetworking.h +0 -4
  139. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  140. package/Libraries/Network/RCTNetworking.js +17 -0
  141. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  142. package/Libraries/Network/RCTNetworking.mm +32 -33
  143. package/Libraries/Network/React-RCTNetwork.podspec +6 -7
  144. package/Libraries/Network/XMLHttpRequest.js +781 -10
  145. package/Libraries/Performance/Systrace.js +7 -7
  146. package/Libraries/Pressability/Pressability.js +1 -1
  147. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -6
  148. package/Libraries/ReactNative/AppContainer-dev.js +10 -9
  149. package/Libraries/ReactNative/AppRegistry.flow.js +49 -0
  150. package/Libraries/ReactNative/AppRegistry.js +2 -322
  151. package/Libraries/ReactNative/AppRegistry.js.flow +23 -0
  152. package/Libraries/ReactNative/AppRegistryImpl.js +316 -0
  153. package/Libraries/ReactNative/FabricUIManager.js +10 -0
  154. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +2 -4
  155. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -4
  156. package/Libraries/ReactNative/RendererImplementation.js +10 -5
  157. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -0
  158. package/Libraries/ReactNative/renderApplication.js +9 -0
  159. package/Libraries/ReactNativeDependencies/Package.swift +2 -2
  160. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +3 -3
  161. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +51 -0
  162. package/Libraries/Renderer/implementations/ReactFabric-dev.js +4840 -4748
  163. package/Libraries/Renderer/implementations/ReactFabric-prod.js +4947 -4829
  164. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3998 -3888
  165. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5005 -4948
  166. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +2744 -2652
  167. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +5020 -4933
  168. package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -3
  169. package/Libraries/Settings/React-RCTSettings.podspec +3 -7
  170. package/Libraries/Settings/Settings.ios.js +1 -0
  171. package/Libraries/Settings/Settings.js +13 -19
  172. package/Libraries/Settings/SettingsFallback.js +33 -0
  173. package/Libraries/StyleSheet/PlatformColorValueTypes.js +15 -0
  174. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +6 -0
  175. package/Libraries/StyleSheet/Rect.js +1 -0
  176. package/Libraries/StyleSheet/StyleSheet.js +31 -200
  177. package/Libraries/StyleSheet/StyleSheet.js.flow +188 -0
  178. package/Libraries/StyleSheet/StyleSheetExports.js +210 -0
  179. package/Libraries/StyleSheet/StyleSheetExports.js.flow +112 -0
  180. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +1 -1
  181. package/Libraries/StyleSheet/StyleSheetTypes.js +130 -52
  182. package/Libraries/StyleSheet/flattenStyle.js +14 -4
  183. package/Libraries/StyleSheet/private/_TransformStyle.js +49 -21
  184. package/Libraries/StyleSheet/processBackgroundImage.js +670 -214
  185. package/Libraries/Text/Text/RCTDynamicTypeRamp.mm +1 -1
  186. package/Libraries/Text/Text.d.ts +2 -5
  187. package/Libraries/Text/Text.js +3 -3
  188. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +11 -0
  189. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +96 -0
  190. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -0
  191. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +4 -4
  192. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +11 -0
  193. package/Libraries/Text/TextNativeComponent.js +0 -4
  194. package/Libraries/Text/TextProps.js +5 -33
  195. package/Libraries/Types/CodegenTypesNamespace.d.ts +45 -0
  196. package/Libraries/{Blob/__mocks__/BlobModule.js → Types/CodegenTypesNamespace.js} +4 -6
  197. package/Libraries/Types/CoreEventTypes.d.ts +10 -1
  198. package/Libraries/Types/CoreEventTypes.js +4 -6
  199. package/Libraries/Utilities/Appearance.js +2 -0
  200. package/Libraries/Utilities/BackHandler.ios.js +9 -4
  201. package/Libraries/Utilities/BackHandler.js +17 -0
  202. package/Libraries/Utilities/DeviceInfo.js +2 -0
  203. package/Libraries/Utilities/Dimensions.js +1 -1
  204. package/Libraries/Utilities/Platform.js +17 -0
  205. package/Libraries/Utilities/PlatformTypes.js +11 -3
  206. package/Libraries/Utilities/ReactNativeTestTools.js +2 -2
  207. package/Libraries/Utilities/codegenNativeCommands.d.ts +18 -0
  208. package/Libraries/Utilities/codegenNativeComponent.d.ts +26 -0
  209. package/Libraries/Utilities/setAndForwardRef.js +6 -6
  210. package/Libraries/Vibration/React-RCTVibration.podspec +3 -7
  211. package/Libraries/WebSocket/WebSocket.js +313 -8
  212. package/Libraries/vendor/core/ErrorUtils.js +28 -2
  213. package/Libraries/vendor/emitter/EventEmitter.js +6 -2
  214. package/README-core.md +0 -3
  215. package/React/Base/RCTBridge.h +5 -3
  216. package/React/Base/RCTBridge.mm +95 -13
  217. package/React/Base/RCTBridgeProxy.mm +1 -1
  218. package/React/Base/RCTUtils.h +8 -5
  219. package/React/Base/{RCTUtils.m → RCTUtils.mm} +55 -28
  220. package/React/Base/RCTVersion.m +2 -2
  221. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +3 -8
  222. package/React/CoreModules/RCTAccessibilityManager.mm +9 -11
  223. package/React/CoreModules/RCTAppState.mm +11 -9
  224. package/React/CoreModules/RCTAppearance.mm +2 -14
  225. package/React/CoreModules/RCTDevSettings.mm +0 -1
  226. package/React/CoreModules/RCTDeviceInfo.mm +50 -19
  227. package/React/CoreModules/RCTLogBox.mm +1 -1
  228. package/React/CoreModules/RCTPerfMonitor.mm +1 -1
  229. package/React/CoreModules/RCTPlatform.mm +25 -20
  230. package/React/CoreModules/RCTStatusBarManager.mm +18 -13
  231. package/React/CoreModules/RCTTVNavigationEventEmitter.mm +0 -2
  232. package/React/CoreModules/React-CoreModules.podspec +4 -18
  233. package/React/CxxBridge/RCTCxxBridge.mm +6 -18
  234. package/React/CxxModule/RCTNativeModule.mm +1 -1
  235. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +173 -133
  236. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +600 -425
  237. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +5 -0
  238. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +3 -4
  239. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +1 -1
  240. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +2 -2
  241. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +2 -4
  242. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +2 -2
  243. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +31 -0
  244. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +12 -0
  245. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +1 -1
  246. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +2 -2
  247. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +13 -8
  248. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +62 -15
  249. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +47 -4
  250. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  251. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.h +28 -0
  252. package/React/Fabric/Mounting/ComponentViews/View/RCTViewAccessibilityElement.mm +83 -0
  253. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +11 -0
  254. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +127 -29
  255. package/React/Fabric/Mounting/RCTComponentViewFactory.h +0 -6
  256. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +36 -31
  257. package/React/Fabric/RCTScheduler.mm +6 -0
  258. package/React/Fabric/Utils/RCTBoxShadow.h +2 -4
  259. package/React/Fabric/Utils/RCTBoxShadow.mm +92 -224
  260. package/React/Fabric/Utils/RCTGradientUtils.h +21 -0
  261. package/React/Fabric/Utils/RCTGradientUtils.mm +204 -0
  262. package/React/Fabric/Utils/RCTLinearGradient.mm +3 -192
  263. package/React/Fabric/Utils/{RCTViewFinder.h → RCTRadialGradient.h} +3 -2
  264. package/React/Fabric/Utils/RCTRadialGradient.mm +229 -0
  265. package/React/Profiler/RCTProfile.m +1 -1
  266. package/React/React-RCTFBReactNativeSpec.podspec +3 -13
  267. package/React/React-RCTFabric.podspec +6 -14
  268. package/React/Runtime/React-RCTRuntime.podspec +4 -18
  269. package/React/Views/RCTBorderDrawing.h +5 -2
  270. package/React/Views/RCTBorderDrawing.m +29 -12
  271. package/React/Views/RCTFont.mm +0 -4
  272. package/React/Views/RCTView.m +4 -4
  273. package/React/Views/ScrollView/RCTScrollView.m +1 -1
  274. package/React-Core.podspec +4 -20
  275. package/ReactAndroid/api/ReactAndroid.api +617 -1147
  276. package/ReactAndroid/build.gradle.kts +4 -2
  277. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +9 -15
  278. package/ReactAndroid/external-artifacts/build.gradle.kts +6 -4
  279. package/ReactAndroid/gradle.properties +4 -2
  280. package/ReactAndroid/hermes-engine/build.gradle.kts +7 -4
  281. package/ReactAndroid/proguard-rules.pro +0 -6
  282. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutor.kt +2 -2
  283. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -2
  284. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +11 -2
  285. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +56 -0
  286. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +5 -5
  287. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.kt +4 -0
  288. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +14 -3
  289. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.kt +54 -0
  290. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +15 -4
  291. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +20 -8
  292. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +4 -12
  293. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +88 -0
  294. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +20 -56
  295. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +2 -2
  296. package/ReactAndroid/src/main/java/com/facebook/react/ReactHost.kt +3 -3
  297. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +41 -42
  298. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +9 -2
  299. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +9 -0
  300. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.kt +2 -2
  301. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +0 -1
  302. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +3 -0
  303. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +3 -3
  304. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +12 -12
  305. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNode.kt +10 -10
  306. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeValueListener.kt +2 -2
  307. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +1 -1
  308. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +0 -6
  309. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +1072 -0
  310. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +774 -0
  311. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.kt +1 -1
  312. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.kt +26 -0
  313. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.java +9 -7
  314. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.kt +29 -0
  315. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +3 -1
  316. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +14 -3
  317. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeSoLoader.kt +36 -0
  318. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +35 -0
  319. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +2 -2
  320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +17 -13
  321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +214 -0
  322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxCallbackImpl.kt +1 -0
  323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +10 -1
  324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +56 -0
  325. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Dynamic.kt +3 -3
  326. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.kt +61 -0
  327. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.kt +80 -0
  328. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.kt +80 -0
  329. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicNative.kt +6 -0
  330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.kt +42 -0
  331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.kt +26 -0
  332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.kt +78 -0
  333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.kt +99 -0
  334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSInstance.kt +3 -0
  335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.kt +118 -0
  336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java +13 -5
  337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +142 -0
  338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.kt +26 -0
  339. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.kt +30 -0
  340. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java +2 -0
  341. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.kt +129 -0
  342. package/ReactAndroid/src/main/java/com/facebook/react/bridge/LifecycleEventListener.kt +2 -0
  343. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +8 -5
  344. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +2 -0
  345. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +10 -0
  346. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArray.kt +1 -1
  347. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeMap.kt +1 -1
  348. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +2 -0
  349. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +18 -7
  350. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +3 -0
  351. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +9 -8
  352. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.java +2 -0
  353. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +5 -7
  354. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +48 -0
  355. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactIgnorableMountingException.kt +6 -6
  356. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.java +7 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +3 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMethod.kt +1 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +2 -2
  360. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +31 -0
  361. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +10 -0
  362. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +1 -0
  363. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArrayBuilder.kt +61 -0
  364. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapBuilder.kt +61 -0
  365. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Systrace.kt +2 -2
  366. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.kt +6 -5
  367. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +3 -0
  368. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.kt +69 -0
  369. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +13 -7
  370. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/MessageQueueThreadHandler.kt +4 -3
  371. package/ReactAndroid/src/main/java/com/facebook/react/common/ClassFinder.kt +3 -4
  372. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +2 -2
  373. package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegate.kt +2 -0
  374. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/LegacyArchitectureShadowNodeWithCxxImpl.kt +23 -0
  375. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/InteropLegacyArchitecture.kt +16 -0
  376. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitecture.kt +1 -1
  377. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/LegacyArchitectureLogger.kt +66 -0
  378. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +1 -1
  379. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  380. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +7 -7
  381. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +10 -12
  382. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +98 -0
  383. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +81 -0
  384. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +323 -0
  385. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +118 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +159 -0
  387. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.kt +87 -0
  388. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +1 -1
  389. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +413 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +903 -0
  391. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +57 -0
  392. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.kt +1 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -1
  394. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.kt +4 -4
  395. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +167 -0
  396. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.kt +44 -0
  397. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReleaseDevSupportManager.kt +10 -16
  398. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.kt +251 -0
  399. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +1 -1
  400. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +11 -13
  401. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +3 -3
  402. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.kt +2 -2
  403. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +176 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricSoLoader.kt +4 -5
  405. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +177 -86
  406. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +6 -2
  407. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +6 -11
  408. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.kt +103 -0
  409. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +13 -11
  410. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +8 -12
  411. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +5 -9
  412. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +7 -15
  413. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt +2 -2
  414. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt +2 -2
  415. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/LayoutMetricsConversions.kt +6 -6
  416. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +16 -39
  417. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +24 -25
  418. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +12 -5
  419. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/BatchMountItem.kt +2 -2
  420. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchCommandMountItem.kt +3 -3
  421. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +335 -0
  422. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.kt +3 -3
  423. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +7 -7
  424. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEventMountItem.kt +2 -1
  425. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/TaskInterface.kt +1 -1
  426. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +16 -16
  427. package/ReactAndroid/src/main/java/com/facebook/react/internal/SystraceSection.kt +3 -3
  428. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +75 -60
  429. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +120 -100
  430. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +25 -21
  431. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +27 -23
  432. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +135 -113
  433. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +1 -3
  434. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
  435. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +25 -21
  436. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +84 -0
  437. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -2
  438. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEvent.kt +14 -4
  439. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +12 -2
  440. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.kt +293 -0
  441. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +405 -0
  442. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +63 -0
  443. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModulePerfLogger.kt +2 -2
  444. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutor.kt +5 -0
  445. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutorFactory.kt +7 -0
  446. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +1 -5
  447. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskEventListener.kt +3 -2
  448. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +13 -12
  449. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +2 -2
  450. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +336 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +113 -0
  452. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.kt +99 -0
  453. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.kt +4 -4
  454. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.kt +4 -0
  455. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.kt +1 -1
  456. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JSTimers.kt +4 -4
  457. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionAwareActivity.kt +2 -0
  458. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/PermissionListener.kt +1 -1
  459. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +1 -1
  460. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +5 -1
  461. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +4 -0
  462. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +1 -0
  463. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +14 -8
  464. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +4 -0
  465. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +12 -17
  466. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.kt +209 -0
  467. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.kt +205 -0
  468. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  469. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/SystraceRequestListener.kt +18 -18
  470. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +6 -5
  471. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +11 -22
  472. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +35 -29
  473. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +1 -1
  474. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +846 -0
  475. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpCompat.java +4 -1
  476. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.kt +57 -0
  477. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +2 -2
  478. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +6 -6
  479. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +4 -4
  480. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +13 -12
  481. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +14 -3
  482. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.kt +6 -5
  483. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +20 -0
  484. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +7 -11
  485. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.kt +161 -0
  486. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +130 -0
  487. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +10 -2
  488. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +156 -0
  489. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/RequestOnlyHandler.kt +1 -1
  490. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +112 -0
  491. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +10 -4
  492. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +159 -0
  493. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactStateTracker.kt +1 -1
  494. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +113 -0
  495. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +1 -1
  496. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +97 -75
  497. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +11 -10
  498. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +1 -1
  499. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +599 -0
  500. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.kt +91 -0
  501. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.kt +217 -0
  502. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +12 -11
  503. package/ReactAndroid/src/main/java/com/facebook/react/runtime/cxxreactpackage/CxxReactPackage.kt +4 -1
  504. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Continuation.kt +2 -2
  505. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.kt +418 -0
  506. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/TaskCompletionSource.kt +1 -1
  507. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +31 -25
  508. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  509. package/ReactAndroid/src/main/java/com/facebook/react/touch/JSResponderHandler.kt +9 -9
  510. package/ReactAndroid/src/main/java/com/facebook/react/touch/OnInterceptTouchEventListener.kt +4 -4
  511. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactHitSlopView.kt +2 -2
  512. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +5 -5
  513. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.kt +2 -11
  514. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.kt +3 -12
  515. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +7 -2
  516. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +64 -0
  517. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +7 -5
  518. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +1 -1
  519. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ComponentNameResolver.kt +1 -1
  520. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +59 -7
  521. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +7 -0
  522. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +8 -0
  523. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LengthPercentage.kt +1 -10
  524. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +3 -1
  525. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +13 -5
  526. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +11 -2
  527. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +12 -1
  528. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.kt +93 -0
  529. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.kt +1 -1
  530. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +16 -1
  531. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +146 -0
  532. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.kt +11 -9
  533. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.kt +63 -0
  534. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactCompoundView.kt +3 -3
  535. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +3 -3
  536. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +2 -2
  537. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +2 -2
  538. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +3 -0
  539. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +10 -1
  540. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.kt +68 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +6 -0
  542. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReferenceStateWrapper.kt +13 -0
  543. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +103 -0
  544. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +2 -2
  545. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +8 -11
  546. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +435 -0
  547. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +223 -0
  548. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +3 -3
  549. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +19 -13
  550. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +14 -3
  551. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +31 -15
  552. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.kt +92 -0
  553. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +17 -13
  554. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +3 -0
  555. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +27 -22
  556. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.kt +46 -0
  557. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +109 -0
  558. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +87 -0
  559. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +22 -3
  560. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +7 -5
  561. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +9 -4
  562. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +2 -0
  563. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +6 -0
  564. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.kt +97 -0
  565. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.kt +86 -0
  566. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.kt +15 -0
  567. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +5 -1
  568. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +3 -3
  569. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +3 -0
  570. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +3 -1
  571. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +9 -1
  572. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +8 -6
  573. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +10 -10
  574. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlackHoleEventDispatcher.kt +3 -17
  575. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/BlurEvent.kt +16 -5
  576. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.kt +206 -0
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +7 -7
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +1 -13
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +16 -43
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +2 -2
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{ReactEventEmitter.kt → EventEmitterImpl.kt} +39 -47
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +33 -43
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FocusEvent.kt +16 -5
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +27 -31
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +2 -0
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +0 -3
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +11 -4
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +12 -8
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/internal/LegacyArchitectureShadowNodeLogger.kt +52 -0
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +128 -0
  591. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +3 -0
  592. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +85 -0
  593. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +225 -0
  594. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +3 -0
  595. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +10 -0
  596. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +12 -0
  597. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +12 -0
  598. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +12 -0
  599. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +10 -1
  600. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +69 -0
  601. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +87 -0
  602. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +10 -2
  603. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +30 -12
  604. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +36 -22
  605. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +206 -0
  606. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +8 -0
  607. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +2 -38
  608. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +72 -246
  609. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +375 -0
  610. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +30 -0
  611. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.kt +6 -6
  612. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlay.kt +3 -1
  613. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +1 -1
  614. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +7 -7
  615. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +7 -7
  616. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +8 -8
  617. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +7 -10
  618. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageLoadEvent.kt +1 -1
  619. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +6 -5
  620. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +1 -1
  621. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +7 -10
  622. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.kt +20 -17
  623. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +20 -28
  624. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +43 -41
  625. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/RequestCloseEvent.kt +1 -1
  626. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ShowEvent.kt +1 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +4 -0
  628. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +14 -12
  629. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewManager.kt +1 -1
  630. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewShadowNode.kt +2 -1
  631. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +172 -0
  632. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +27 -7
  633. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +366 -0
  634. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +36 -7
  635. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +74 -1
  636. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +390 -0
  637. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +4 -2
  638. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +1 -0
  639. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/RefreshEvent.kt +1 -1
  640. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +1 -1
  641. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.kt +1 -1
  642. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +4 -0
  643. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -2
  644. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +18 -0
  645. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +418 -0
  646. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +212 -0
  647. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +25 -12
  648. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +6 -6
  649. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +31 -0
  650. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +207 -0
  651. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +6 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +1 -4
  653. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +40 -54
  654. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +4 -10
  655. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +9 -14
  656. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +3 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +2 -0
  658. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +30 -8
  659. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +2 -0
  660. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +237 -121
  661. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.kt +8 -4
  662. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +140 -0
  663. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +174 -0
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +2 -1
  665. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.kt +4 -3
  666. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpan.kt +3 -3
  667. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +8 -8
  668. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactAbsoluteSizeSpan.kt +1 -1
  669. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactBackgroundColorSpan.kt +1 -1
  670. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +6 -5
  671. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactForegroundColorSpan.kt +1 -1
  672. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactOpacitySpan.kt +1 -1
  673. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactSpan.kt +1 -1
  674. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +1 -1
  675. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTagSpan.kt +2 -2
  676. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactTextPaintHolderSpan.kt +1 -1
  677. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +1 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +5 -5
  679. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +3 -3
  680. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +11 -11
  681. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineViewPlaceholderSpan.kt +4 -7
  682. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.kt +50 -0
  683. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +1331 -0
  684. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.kt +151 -0
  685. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +44 -0
  686. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +51 -0
  687. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.kt +43 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.kt +35 -0
  689. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.kt +33 -0
  690. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +1139 -0
  691. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.kt +46 -0
  692. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +210 -0
  693. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.kt +40 -0
  694. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +66 -0
  695. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +49 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +45 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedView.kt +12 -9
  698. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/ReactUnimplementedViewManager.kt +6 -4
  699. package/ReactAndroid/src/main/java/com/facebook/react/views/view/MeasureUtil.kt +2 -2
  700. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +37 -8
  701. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +51 -4
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +4 -4
  703. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +19 -23
  704. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.kt +10 -11
  705. package/ReactAndroid/src/main/java/com/facebook/systrace/TraceListener.kt +3 -3
  706. package/ReactAndroid/src/main/jni/CMakeLists.txt +22 -9
  707. package/ReactAndroid/src/main/jni/first-party/fbgloginit/CMakeLists.txt +3 -0
  708. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/CMakeLists.txt +3 -1
  709. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/jni_lib_merge.h +1 -2
  710. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +4 -7
  711. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +3 -2
  712. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +2 -9
  713. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.cpp +3 -8
  714. package/ReactAndroid/src/main/jni/react/fabric/EventBeatManager.h +1 -9
  715. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +12 -0
  716. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +4 -0
  717. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +130 -13
  718. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +9 -0
  719. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +186 -0
  720. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.h +38 -0
  721. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +10 -0
  722. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  723. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +5 -2
  724. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +2 -1
  725. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +2 -10
  726. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +166 -138
  727. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +34 -28
  728. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/CMakeLists.txt +2 -5
  729. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +3 -7
  730. package/ReactAndroid/src/main/jni/react/hermes/tooling/CMakeLists.txt +2 -0
  731. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +54 -6
  732. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +14 -18
  733. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +10 -17
  734. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +1 -0
  735. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +9 -14
  736. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +33 -0
  737. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -15
  738. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.cpp +30 -0
  739. package/ReactAndroid/src/main/jni/react/jni/SafeReleaseJniRef.h +12 -1
  740. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +3 -3
  741. package/ReactAndroid/src/main/jni/react/jscexecutor/CMakeLists.txt +2 -0
  742. package/ReactAndroid/src/main/jni/react/jsctooling/CMakeLists.txt +2 -0
  743. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +3 -2
  744. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +3 -6
  745. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +10 -0
  746. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +4 -0
  747. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +4 -1
  748. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +3 -1
  749. package/ReactAndroid/src/main/jni/react/runtime/cxxreactpackage/CMakeLists.txt +4 -7
  750. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +4 -8
  751. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +5 -7
  752. package/ReactAndroid/src/main/jni/react/runtime/jni/JBindingsInstaller.h +2 -4
  753. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +0 -4
  754. package/ReactAndroid/src/main/jni/react/runtime/jsc/jni/CMakeLists.txt +3 -1
  755. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +4 -7
  756. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.cpp +1 -7
  757. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/CallInvokerHolder.h +4 -3
  758. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.cpp +1 -8
  759. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/NativeMethodCallInvokerHolder.h +4 -3
  760. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +3 -2
  761. package/ReactAndroid/src/main/jni/third-party/boost/CMakeLists.txt +1 -0
  762. package/ReactAndroid/src/main/jni/third-party/double-conversion/CMakeLists.txt +4 -1
  763. package/ReactAndroid/src/main/jni/third-party/fast_float/CMakeLists.txt +2 -1
  764. package/ReactAndroid/src/main/jni/third-party/fmt/CMakeLists.txt +2 -1
  765. package/ReactAndroid/src/main/jni/third-party/glog/CMakeLists.txt +14 -9
  766. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +5 -0
  767. package/ReactAndroid/src/main/res/devsupport/values-am/strings.xml +6 -0
  768. package/ReactAndroid/src/main/res/shell/values/styles.xml +4 -4
  769. package/ReactAndroid/src/main/res/systeminfo/values/strings.xml +4 -0
  770. package/ReactAndroid/src/main/res/systeminfo/values-af/strings.xml +6 -0
  771. package/ReactAndroid/src/main/res/systeminfo/values-ar/strings.xml +6 -0
  772. package/ReactAndroid/src/main/res/systeminfo/values-az/strings.xml +6 -0
  773. package/ReactAndroid/src/main/res/systeminfo/values-be/strings.xml +6 -0
  774. package/ReactAndroid/src/main/res/systeminfo/values-bg/strings.xml +6 -0
  775. package/ReactAndroid/src/main/res/systeminfo/values-bn/strings.xml +6 -0
  776. package/ReactAndroid/src/main/res/systeminfo/values-ca/strings.xml +6 -0
  777. package/ReactAndroid/src/main/res/systeminfo/values-cs/strings.xml +6 -0
  778. package/ReactAndroid/src/main/res/systeminfo/values-da/strings.xml +6 -0
  779. package/ReactAndroid/src/main/res/systeminfo/values-de/strings.xml +6 -0
  780. package/ReactAndroid/src/main/res/systeminfo/values-el/strings.xml +6 -0
  781. package/ReactAndroid/src/main/res/systeminfo/values-en-rGB/strings.xml +6 -0
  782. package/ReactAndroid/src/main/res/systeminfo/values-es/strings.xml +6 -0
  783. package/ReactAndroid/src/main/res/systeminfo/values-es-rES/strings.xml +6 -0
  784. package/ReactAndroid/src/main/res/systeminfo/values-et/strings.xml +6 -0
  785. package/ReactAndroid/src/main/res/systeminfo/values-fa/strings.xml +6 -0
  786. package/ReactAndroid/src/main/res/systeminfo/values-fi/strings.xml +6 -0
  787. package/ReactAndroid/src/main/res/systeminfo/values-fr/strings.xml +6 -0
  788. package/ReactAndroid/src/main/res/systeminfo/values-fr-rCA/strings.xml +6 -0
  789. package/ReactAndroid/src/main/res/systeminfo/values-gu/strings.xml +6 -0
  790. package/ReactAndroid/src/main/res/systeminfo/values-hi/strings.xml +6 -0
  791. package/ReactAndroid/src/main/res/systeminfo/values-hr/strings.xml +6 -0
  792. package/ReactAndroid/src/main/res/systeminfo/values-hu/strings.xml +6 -0
  793. package/ReactAndroid/src/main/res/systeminfo/values-hy/strings.xml +6 -0
  794. package/ReactAndroid/src/main/res/systeminfo/values-is/strings.xml +6 -0
  795. package/ReactAndroid/src/main/res/systeminfo/values-it/strings.xml +6 -0
  796. package/ReactAndroid/src/main/res/systeminfo/values-iw/strings.xml +6 -0
  797. package/ReactAndroid/src/main/res/systeminfo/values-ja/strings.xml +6 -0
  798. package/ReactAndroid/src/main/res/systeminfo/values-ka/strings.xml +6 -0
  799. package/ReactAndroid/src/main/res/systeminfo/values-kk/strings.xml +6 -0
  800. package/ReactAndroid/src/main/res/systeminfo/values-km/strings.xml +6 -0
  801. package/ReactAndroid/src/main/res/systeminfo/values-kn/strings.xml +6 -0
  802. package/ReactAndroid/src/main/res/systeminfo/values-ko/strings.xml +6 -0
  803. package/ReactAndroid/src/main/res/systeminfo/values-ky/strings.xml +6 -0
  804. package/ReactAndroid/src/main/res/systeminfo/values-lo/strings.xml +6 -0
  805. package/ReactAndroid/src/main/res/systeminfo/values-lt/strings.xml +6 -0
  806. package/ReactAndroid/src/main/res/systeminfo/values-lv/strings.xml +6 -0
  807. package/ReactAndroid/src/main/res/systeminfo/values-mk/strings.xml +6 -0
  808. package/ReactAndroid/src/main/res/systeminfo/values-ml/strings.xml +6 -0
  809. package/ReactAndroid/src/main/res/systeminfo/values-mn/strings.xml +6 -0
  810. package/ReactAndroid/src/main/res/systeminfo/values-mr/strings.xml +6 -0
  811. package/ReactAndroid/src/main/res/systeminfo/values-ms/strings.xml +6 -0
  812. package/ReactAndroid/src/main/res/systeminfo/values-my/strings.xml +6 -0
  813. package/ReactAndroid/src/main/res/systeminfo/values-ne/strings.xml +6 -0
  814. package/ReactAndroid/src/main/res/systeminfo/values-nl/strings.xml +6 -0
  815. package/ReactAndroid/src/main/res/systeminfo/values-pa/strings.xml +6 -0
  816. package/ReactAndroid/src/main/res/systeminfo/values-pl/strings.xml +6 -0
  817. package/ReactAndroid/src/main/res/systeminfo/values-pt/strings.xml +6 -0
  818. package/ReactAndroid/src/main/res/systeminfo/values-pt-rPT/strings.xml +6 -0
  819. package/ReactAndroid/src/main/res/systeminfo/values-ro/strings.xml +6 -0
  820. package/ReactAndroid/src/main/res/systeminfo/values-ru/strings.xml +6 -0
  821. package/ReactAndroid/src/main/res/systeminfo/values-si/strings.xml +6 -0
  822. package/ReactAndroid/src/main/res/systeminfo/values-sk/strings.xml +6 -0
  823. package/ReactAndroid/src/main/res/systeminfo/values-sl/strings.xml +6 -0
  824. package/ReactAndroid/src/main/res/systeminfo/values-sq/strings.xml +6 -0
  825. package/ReactAndroid/src/main/res/systeminfo/values-sr/strings.xml +6 -0
  826. package/ReactAndroid/src/main/res/systeminfo/values-sv/strings.xml +6 -0
  827. package/ReactAndroid/src/main/res/systeminfo/values-sw/strings.xml +6 -0
  828. package/ReactAndroid/src/main/res/systeminfo/values-ta/strings.xml +6 -0
  829. package/ReactAndroid/src/main/res/systeminfo/values-te/strings.xml +6 -0
  830. package/ReactAndroid/src/main/res/systeminfo/values-th/strings.xml +6 -0
  831. package/ReactAndroid/src/main/res/systeminfo/values-tr/strings.xml +6 -0
  832. package/ReactAndroid/src/main/res/systeminfo/values-uk/strings.xml +6 -0
  833. package/ReactAndroid/src/main/res/systeminfo/values-ur/strings.xml +6 -0
  834. package/ReactAndroid/src/main/res/systeminfo/values-vi/strings.xml +6 -0
  835. package/ReactAndroid/src/main/res/systeminfo/values-zh-rCN/strings.xml +6 -0
  836. package/ReactAndroid/src/main/res/systeminfo/values-zh-rHK/strings.xml +6 -0
  837. package/ReactAndroid/src/main/res/systeminfo/values-zh-rTW/strings.xml +6 -0
  838. package/ReactAndroid/src/main/res/systeminfo/values-zu/strings.xml +6 -0
  839. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +15 -0
  840. package/ReactAndroid/src/main/res/views/uimanager/values-am/strings.xml +6 -0
  841. package/ReactCommon/React-Fabric.podspec +4 -59
  842. package/ReactCommon/React-FabricComponents.podspec +4 -40
  843. package/ReactCommon/React-FabricImage.podspec +2 -19
  844. package/ReactCommon/React-Mapbuffer.podspec +2 -2
  845. package/ReactCommon/ReactCommon.podspec +4 -13
  846. package/ReactCommon/callinvoker/CMakeLists.txt +3 -6
  847. package/ReactCommon/cmake-utils/react-native-flags.cmake +39 -0
  848. package/ReactCommon/cxxreact/CMakeLists.txt +4 -6
  849. package/ReactCommon/cxxreact/CxxNativeModule.cpp +23 -33
  850. package/ReactCommon/cxxreact/JSExecutor.cpp +5 -2
  851. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +12 -10
  852. package/ReactCommon/cxxreact/JSModulesUnbundle.h +2 -4
  853. package/ReactCommon/cxxreact/JsArgumentHelpers-inl.h +28 -21
  854. package/ReactCommon/cxxreact/JsArgumentHelpers.h +1 -2
  855. package/ReactCommon/cxxreact/MethodCall.cpp +17 -17
  856. package/ReactCommon/cxxreact/ModuleRegistry.cpp +15 -12
  857. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -8
  858. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +2 -1
  859. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -13
  860. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  861. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  862. package/ReactCommon/cxxreact/tests/jsarg_helpers.cpp +2 -2
  863. package/ReactCommon/devtoolsruntimesettings/CMakeLists.txt +4 -9
  864. package/ReactCommon/hermes/React-hermes.podspec +4 -13
  865. package/ReactCommon/hermes/executor/CMakeLists.txt +2 -1
  866. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +3 -6
  867. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +2 -8
  868. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +2 -8
  869. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +100 -106
  870. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +1 -1
  871. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +2 -8
  872. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +2 -8
  873. package/ReactCommon/jsc/CMakeLists.txt +4 -7
  874. package/ReactCommon/jserrorhandler/CMakeLists.txt +2 -1
  875. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +12 -5
  876. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +2 -11
  877. package/ReactCommon/jsi/CMakeLists.txt +5 -6
  878. package/ReactCommon/jsi/React-jsi.podspec +2 -15
  879. package/ReactCommon/jsiexecutor/CMakeLists.txt +4 -5
  880. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -14
  881. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +7 -8
  882. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +1 -2
  883. package/ReactCommon/jsinspector-modern/CMakeLists.txt +7 -6
  884. package/ReactCommon/jsinspector-modern/HostAgent.cpp +304 -208
  885. package/ReactCommon/jsinspector-modern/HostAgent.h +8 -48
  886. package/ReactCommon/jsinspector-modern/HostTarget.cpp +1 -1
  887. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +1 -0
  888. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +4 -3
  889. package/ReactCommon/jsinspector-modern/InstanceAgent.h +1 -1
  890. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +22 -0
  891. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +2 -4
  892. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +4 -14
  893. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
  894. package/ReactCommon/jsinspector-modern/RuntimeAgentDelegate.h +1 -1
  895. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +27 -12
  896. package/ReactCommon/jsinspector-modern/TracingAgent.h +2 -1
  897. package/ReactCommon/jsinspector-modern/cdp/CMakeLists.txt +26 -0
  898. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +50 -0
  899. package/ReactCommon/jsinspector-modern/network/CMakeLists.txt +27 -0
  900. package/ReactCommon/jsinspector-modern/network/CdpNetwork.cpp +143 -0
  901. package/ReactCommon/jsinspector-modern/network/CdpNetwork.h +110 -0
  902. package/ReactCommon/jsinspector-modern/network/HttpUtils.cpp +157 -0
  903. package/ReactCommon/jsinspector-modern/network/HttpUtils.h +27 -0
  904. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +195 -0
  905. package/ReactCommon/jsinspector-modern/network/NetworkReporter.h +139 -0
  906. package/ReactCommon/jsinspector-modern/network/NetworkTypes.h +42 -0
  907. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +52 -0
  908. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +1 -2
  909. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +12 -0
  910. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +3 -6
  911. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.cpp → EventLoopReporter.cpp} +22 -9
  912. package/ReactCommon/jsinspector-modern/tracing/{EventLoopTaskReporter.h → EventLoopReporter.h} +13 -7
  913. package/ReactCommon/jsinspector-modern/tracing/InstanceTracingProfile.h +2 -5
  914. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +55 -42
  915. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +22 -13
  916. package/ReactCommon/jsinspector-modern/tracing/ProfileTreeNode.h +39 -30
  917. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +3 -8
  918. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +16 -0
  919. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +186 -162
  920. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +138 -5
  921. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +40 -92
  922. package/ReactCommon/jsinspector-modern/tracing/tests/ProfileTreeNodeTest.cpp +27 -35
  923. package/ReactCommon/jsinspector-modern/tracing/tests/RuntimeSamplingProfileTraceEventSerializerTest.cpp +290 -0
  924. package/ReactCommon/jsitooling/CMakeLists.txt +4 -8
  925. package/ReactCommon/jsitooling/React-jsitooling.podspec +3 -21
  926. package/ReactCommon/logger/CMakeLists.txt +2 -1
  927. package/ReactCommon/logger/React-logger.podspec +1 -9
  928. package/ReactCommon/logger/react_native_log.cpp +2 -2
  929. package/ReactCommon/oscompat/CMakeLists.txt +2 -1
  930. package/ReactCommon/react/bridging/CMakeLists.txt +3 -7
  931. package/ReactCommon/react/debug/CMakeLists.txt +3 -8
  932. package/ReactCommon/react/featureflags/CMakeLists.txt +4 -9
  933. package/ReactCommon/react/featureflags/React-featureflags.podspec +2 -7
  934. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +49 -41
  935. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +63 -53
  936. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +223 -187
  937. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +30 -26
  938. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +46 -38
  939. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +100 -82
  940. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +51 -0
  941. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +33 -0
  942. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +33 -0
  943. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -13
  944. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +3 -8
  945. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +4 -6
  946. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -0
  947. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.cpp +23 -0
  948. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleWithJSIBindings.h +29 -0
  949. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +12 -18
  950. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +6 -1
  951. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +3 -9
  952. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -0
  953. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +29 -2
  954. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +7 -39
  955. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +30 -2
  956. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +3 -7
  957. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +3 -10
  958. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/CMakeLists.txt +3 -7
  959. package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +3 -7
  960. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +2 -8
  961. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.cpp +84 -0
  962. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.h +30 -0
  963. package/ReactCommon/react/nativemodule/featureflags/CMakeLists.txt +3 -7
  964. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +58 -48
  965. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +25 -21
  966. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +3 -10
  967. package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +3 -8
  968. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +4 -11
  969. package/ReactCommon/react/nativemodule/microtasks/CMakeLists.txt +3 -7
  970. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +3 -10
  971. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -17
  972. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +4 -8
  973. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  974. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +21 -1
  975. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.kt +32 -5
  976. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.mm +5 -10
  977. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +18 -15
  978. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +53 -9
  979. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +29 -6
  980. package/ReactCommon/react/performance/timeline/CMakeLists.txt +5 -9
  981. package/ReactCommon/react/performance/timeline/CircularBuffer.h +0 -1
  982. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +53 -15
  983. package/ReactCommon/react/performance/timeline/PerformanceEntryCircularBuffer.cpp +12 -3
  984. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.cpp +5 -2
  985. package/ReactCommon/react/performance/timeline/PerformanceEntryKeyedBuffer.h +0 -1
  986. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +29 -33
  987. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  988. package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +8 -3
  989. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +3 -11
  990. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +80 -165
  991. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +38 -71
  992. package/ReactCommon/react/renderer/animations/CMakeLists.txt +3 -7
  993. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +5 -9
  994. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +2 -9
  995. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +3 -3
  996. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +3 -7
  997. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -1
  998. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +8 -1
  999. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +4 -6
  1000. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -2
  1001. package/ReactCommon/react/renderer/attributedstring/conversions.h +38 -6
  1002. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +3 -7
  1003. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +25 -5
  1004. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +3 -7
  1005. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +3 -7
  1006. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +3 -7
  1007. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +1 -2
  1008. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +1 -1
  1009. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +0 -1
  1010. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +3 -7
  1011. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +3 -7
  1012. package/ReactCommon/react/renderer/components/rncore/EventEmitters.cpp +48 -48
  1013. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +3 -7
  1014. package/ReactCommon/react/renderer/components/safeareaview/CMakeLists.txt +4 -10
  1015. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +3 -7
  1016. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +15 -0
  1017. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +3 -0
  1018. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +1 -0
  1019. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +4 -10
  1020. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +13 -9
  1021. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +6 -0
  1022. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +111 -25
  1023. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +22 -2
  1024. package/ReactCommon/react/renderer/components/text/{ParagraphState.cpp → platform/android/react/renderer/components/text/ParagraphState.cpp} +0 -2
  1025. package/ReactCommon/react/renderer/components/text/{ParagraphState.h → platform/android/react/renderer/components/text/ParagraphState.h} +9 -14
  1026. package/ReactCommon/react/renderer/components/text/platform/cxx/react/renderer/components/text/ParagraphState.h +42 -0
  1027. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +8 -1
  1028. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +2 -0
  1029. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +25 -11
  1030. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +3 -7
  1031. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +30 -19
  1032. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +12 -11
  1033. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +5 -5
  1034. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +3 -7
  1035. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +1 -1
  1036. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +21 -1
  1037. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +8 -6
  1038. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +3 -7
  1039. package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +16 -6
  1040. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +2 -1
  1041. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +2 -11
  1042. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +0 -2
  1043. package/ReactCommon/react/renderer/components/view/conversions.h +135 -79
  1044. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +18 -0
  1045. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +1 -0
  1046. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +6 -1
  1047. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +4 -0
  1048. package/ReactCommon/react/renderer/consistency/CMakeLists.txt +3 -7
  1049. package/ReactCommon/react/renderer/core/CMakeLists.txt +3 -7
  1050. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +2 -3
  1051. package/ReactCommon/react/renderer/core/ConcreteState.h +23 -2
  1052. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +44 -0
  1053. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +30 -0
  1054. package/ReactCommon/react/renderer/core/EventEmitter.cpp +7 -9
  1055. package/ReactCommon/react/renderer/core/EventEmitter.h +2 -3
  1056. package/ReactCommon/react/renderer/core/EventPayload.h +13 -0
  1057. package/ReactCommon/react/renderer/core/EventQueue.cpp +26 -26
  1058. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -0
  1059. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1060. package/ReactCommon/react/renderer/core/RawEvent.h +10 -2
  1061. package/ReactCommon/react/renderer/core/RawProps.cpp +1 -99
  1062. package/ReactCommon/react/renderer/core/RawProps.h +0 -11
  1063. package/ReactCommon/react/renderer/core/ReactEventPriority.h +5 -0
  1064. package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -4
  1065. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +3 -0
  1066. package/ReactCommon/react/renderer/core/State.h +2 -0
  1067. package/ReactCommon/react/renderer/core/graphicsConversions.h +25 -17
  1068. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +0 -36
  1069. package/ReactCommon/react/renderer/core/tests/TestComponent.h +0 -4
  1070. package/ReactCommon/react/renderer/css/CMakeLists.txt +7 -7
  1071. package/ReactCommon/react/renderer/css/CSSTokenizer.h +12 -49
  1072. package/ReactCommon/react/renderer/css/tests/CSSTokenizerTest.cpp +10 -0
  1073. package/ReactCommon/react/renderer/debug/CMakeLists.txt +3 -7
  1074. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +27 -16
  1075. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +14 -5
  1076. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +2 -16
  1077. package/ReactCommon/react/renderer/dom/CMakeLists.txt +3 -7
  1078. package/ReactCommon/react/renderer/element/CMakeLists.txt +3 -7
  1079. package/ReactCommon/react/renderer/graphics/BackgroundImage.h +2 -1
  1080. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +3 -7
  1081. package/ReactCommon/react/renderer/graphics/ColorStop.h +28 -0
  1082. package/ReactCommon/react/renderer/graphics/LinearGradient.h +1 -12
  1083. package/ReactCommon/react/renderer/graphics/RadialGradient.h +92 -0
  1084. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +2 -19
  1085. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +2 -2
  1086. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +2 -2
  1087. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +3 -7
  1088. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +1 -7
  1089. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +1 -13
  1090. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +3 -7
  1091. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +3 -8
  1092. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +3 -7
  1093. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +73 -55
  1094. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +5 -0
  1095. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -7
  1096. package/ReactCommon/react/renderer/mounting/ShadowTree.h +47 -36
  1097. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +3 -1
  1098. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +44 -12
  1099. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +39 -6
  1100. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +41 -12
  1101. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -1
  1102. package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +3 -7
  1103. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +0 -25
  1104. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +5 -2
  1105. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +3 -1
  1106. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +3 -7
  1107. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +2 -11
  1108. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -20
  1109. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +22 -10
  1110. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +3 -7
  1111. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +43 -20
  1112. package/ReactCommon/react/renderer/scheduler/Scheduler.h +15 -1
  1113. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +4 -0
  1114. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +84 -1
  1115. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +8 -0
  1116. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +3 -7
  1117. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +3 -7
  1118. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutContext.h +7 -11
  1119. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +124 -0
  1120. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +7 -0
  1121. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/JPreparedLayout.h +20 -0
  1122. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +126 -19
  1123. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +100 -0
  1124. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/{TextLayoutManager.cpp → react/renderer/textlayoutmanager/TextLayoutManager.cpp} +1 -18
  1125. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.h +57 -0
  1126. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +3 -0
  1127. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +47 -24
  1128. package/ReactCommon/react/renderer/textlayoutmanager/{TextLayoutManager.h → platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h} +2 -29
  1129. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -0
  1130. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +4 -8
  1131. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +54 -23
  1132. package/ReactCommon/react/renderer/uimanager/UIManager.h +27 -7
  1133. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +11 -1
  1134. package/ReactCommon/react/renderer/uimanager/UIManagerCommitHook.h +19 -1
  1135. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +30 -0
  1136. package/ReactCommon/react/renderer/uimanager/UIManagerNativeAnimatedDelegate.h +24 -0
  1137. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +223 -0
  1138. package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +3 -7
  1139. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +2 -1
  1140. package/ReactCommon/react/runtime/CMakeLists.txt +4 -7
  1141. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +4 -13
  1142. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +4 -11
  1143. package/ReactCommon/react/runtime/ReactInstance.cpp +10 -5
  1144. package/ReactCommon/react/runtime/ReactInstance.h +2 -1
  1145. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +2 -1
  1146. package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +1 -0
  1147. package/ReactCommon/react/runtime/nativeviewconfig/CMakeLists.txt +2 -1
  1148. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +2 -11
  1149. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +2 -0
  1150. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +17 -5
  1151. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +2 -0
  1152. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +64 -3
  1153. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  1154. package/ReactCommon/react/timing/CMakeLists.txt +3 -6
  1155. package/ReactCommon/react/utils/CMakeLists.txt +9 -9
  1156. package/ReactCommon/react/utils/React-utils.podspec +13 -17
  1157. package/ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.cpp +95 -0
  1158. package/{ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressure.kt → ReactCommon/react/utils/platform/android/react/utils/LowPriorityExecutor.h} +6 -6
  1159. package/ReactCommon/react/utils/platform/cxx/react/utils/LowPriorityExecutor.h +18 -0
  1160. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.h +16 -0
  1161. package/ReactCommon/react/utils/platform/ios/react/utils/LowPriorityExecutor.mm +22 -0
  1162. package/ReactCommon/reactperflogger/CMakeLists.txt +3 -7
  1163. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -12
  1164. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +7 -3
  1165. package/ReactCommon/runtimeexecutor/CMakeLists.txt +3 -6
  1166. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +0 -6
  1167. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +0 -12
  1168. package/ReactCommon/yoga/cmake/project-defaults.cmake +4 -4
  1169. package/ReactCommon/yoga/yoga/debug/AssertFatal.cpp +1 -0
  1170. package/ReactCommon/yoga/yoga/event/event.h +6 -6
  1171. package/flow/global.js +1 -0
  1172. package/gradle/libs.versions.toml +17 -6
  1173. package/index.js +54 -334
  1174. package/interface.js +0 -4
  1175. package/jest/resolver.js +31 -0
  1176. package/jest-preset.js +1 -0
  1177. package/package.json +105 -34
  1178. package/scripts/cocoapods/fabric.rb +0 -1
  1179. package/scripts/cocoapods/helpers.rb +12 -1
  1180. package/scripts/cocoapods/new_architecture.rb +46 -17
  1181. package/scripts/cocoapods/rndependencies.rb +211 -0
  1182. package/scripts/cocoapods/utils.rb +2 -0
  1183. package/scripts/codegen/generate-artifacts-executor/constants.js +80 -0
  1184. package/scripts/codegen/generate-artifacts-executor/generateAppDependencyProvider.js +66 -0
  1185. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +116 -0
  1186. package/scripts/codegen/generate-artifacts-executor/generateFBReactNativeSpecIOS.js +39 -0
  1187. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +114 -0
  1188. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +120 -0
  1189. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +223 -0
  1190. package/scripts/codegen/generate-artifacts-executor/generateRNCoreComponentsIOS.js +38 -0
  1191. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +93 -0
  1192. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +113 -0
  1193. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +92 -0
  1194. package/scripts/codegen/generate-artifacts-executor/index.js +232 -0
  1195. package/scripts/codegen/generate-artifacts-executor/utils.js +399 -0
  1196. package/scripts/codegen/templates/RCTAppDependencyProviderMM.template +5 -0
  1197. package/{React/Base/UIKitProxies/RCTInitializeUIKitProxies.h → scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderH.template} +5 -1
  1198. package/scripts/codegen/templates/RCTUnstableModulesRequiringMainQueueSetupProviderMM.template +19 -0
  1199. package/scripts/codegen/templates/ReactCodegen.podspec.template +2 -8
  1200. package/scripts/generate-codegen-artifacts.js +1 -1
  1201. package/scripts/react_native_pods.rb +18 -7
  1202. package/sdks/.hermesversion +1 -1
  1203. package/sdks/hermes-engine/hermes-utils.rb +7 -0
  1204. package/sdks/hermes-engine/utils/build-apple-framework.sh +4 -1
  1205. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +4 -3
  1206. package/sdks/hermesc/osx-bin/hermes +0 -0
  1207. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1208. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1209. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1210. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1211. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  1212. package/src/private/animated/NativeAnimatedHelper.js +21 -8
  1213. package/src/private/animated/createAnimatedPropsHook.js +11 -16
  1214. package/src/private/animated/createAnimatedPropsMemoHook.js +1 -2
  1215. package/src/private/components/{SafeAreaView_INTERNAL_DO_NOT_USE.js → safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js} +6 -6
  1216. package/src/private/components/{HScrollViewNativeComponents.js → scrollview/HScrollViewNativeComponents.js} +8 -8
  1217. package/src/private/components/scrollview/VScrollViewNativeComponents.js +25 -0
  1218. package/src/private/{devmenu → devsupport/devmenu}/DevMenu.js +1 -1
  1219. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BorderBox.js +3 -3
  1220. package/src/private/{inspector → devsupport/devmenu/elementinspector}/BoxInspector.js +6 -5
  1221. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementBox.js +8 -6
  1222. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ElementProperties.js +11 -10
  1223. package/src/private/{inspector → devsupport/devmenu/elementinspector}/Inspector.js +14 -12
  1224. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorOverlay.js +5 -4
  1225. package/src/private/{inspector → devsupport/devmenu/elementinspector}/InspectorPanel.js +9 -8
  1226. package/src/private/{inspector → devsupport/devmenu/elementinspector}/NetworkOverlay.js +10 -9
  1227. package/src/private/{inspector → devsupport/devmenu/elementinspector}/ReactDevToolsOverlay.js +7 -7
  1228. package/src/private/{inspector → devsupport/devmenu/elementinspector}/StyleInspector.js +7 -6
  1229. package/src/private/{inspector → devsupport/devmenu/elementinspector}/XHRInterceptor.js +2 -2
  1230. package/src/private/{inspector → devsupport/devmenu/elementinspector}/getInspectorDataForViewAtPoint.js +4 -4
  1231. package/src/private/{inspector → devsupport/devmenu/elementinspector}/resolveBoxStyle.js +1 -1
  1232. package/src/private/{inspector → devsupport/devmenu/perfmonitor}/PerformanceOverlay.js +6 -5
  1233. package/src/private/{specs_DEPRECATED/modules → devsupport/devmenu/specs}/NativeDevMenu.js +2 -2
  1234. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.android.js +1 -1
  1235. package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.ios.js +1 -1
  1236. package/src/private/{debugging → devsupport/rndevtools}/setUpFuseboxReactDevToolsDispatcher.js +1 -1
  1237. package/src/private/{fusebox → devsupport/rndevtools}/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  1238. package/src/private/{specs_DEPRECATED/modules → devsupport/rndevtools/specs}/NativeReactDevToolsSettingsManager.js +2 -2
  1239. package/src/private/featureflags/ReactNativeFeatureFlags.js +72 -80
  1240. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +9 -1
  1241. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +15 -13
  1242. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  1243. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +1 -1
  1244. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +1 -1
  1245. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +3 -0
  1246. package/src/private/styles/composeStyles.js +12 -5
  1247. package/src/private/types/HostComponent.js +1 -1
  1248. package/src/private/types/HostInstance.js +67 -1
  1249. package/src/private/webapis/dom/nodes/ReactNativeElement.js +2 -5
  1250. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +5 -18
  1251. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +6 -0
  1252. package/src/private/webapis/performance/Performance.js +1 -3
  1253. package/src/private/webapis/performance/PerformanceEntry.js +6 -1
  1254. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +3 -0
  1255. package/src/private/webapis/performance/specs/NativePerformance.js +10 -1
  1256. package/src/types/bom.js.flow +96 -0
  1257. package/src/types/cssom.js.flow +576 -0
  1258. package/src/types/dom.js.flow +19 -0
  1259. package/src/types/globals.d.ts +42 -0
  1260. package/src/types/streams.js.flow +141 -0
  1261. package/third-party-podspecs/RCT-Folly.podspec +7 -6
  1262. package/third-party-podspecs/ReactNativeDependencies.podspec +86 -0
  1263. package/third-party-podspecs/fast_float.podspec +2 -2
  1264. package/third-party-podspecs/replace_dependencies_version.js +107 -0
  1265. package/types/index.d.ts +5 -2
  1266. package/types/public/ReactNativeTVTypes.d.ts +42 -42
  1267. package/types/public/ReactNativeTypes.d.ts +2 -2
  1268. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +0 -38
  1269. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +0 -22
  1270. package/Libraries/Blob/FileReader_new.js +0 -231
  1271. package/Libraries/Blob/FileReader_old.js +0 -186
  1272. package/Libraries/Blob/__mocks__/FileReaderModule.js +0 -20
  1273. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +0 -32
  1274. package/Libraries/Core/__mocks__/ErrorUtils.js +0 -33
  1275. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +0 -19
  1276. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +0 -49
  1277. package/Libraries/Events/CustomEvent.js +0 -32
  1278. package/Libraries/Events/EventPolyfill.js +0 -239
  1279. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +0 -118
  1280. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +0 -134
  1281. package/Libraries/Network/XMLHttpRequest_new.js +0 -794
  1282. package/Libraries/Network/XMLHttpRequest_old.js +0 -701
  1283. package/Libraries/NewAppScreen/components/DebugInstructions.js +0 -48
  1284. package/Libraries/NewAppScreen/components/Header.js +0 -77
  1285. package/Libraries/NewAppScreen/components/HermesBadge.js +0 -72
  1286. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +0 -148
  1287. package/Libraries/NewAppScreen/components/ReloadInstructions.js +0 -39
  1288. package/Libraries/NewAppScreen/components/logo.png +0 -0
  1289. package/Libraries/NewAppScreen/index.js +0 -25
  1290. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +0 -58
  1291. package/Libraries/Utilities/__mocks__/BackHandler.js +0 -45
  1292. package/Libraries/Utilities/__mocks__/GlobalPerformanceLogger.js +0 -16
  1293. package/Libraries/Utilities/__mocks__/PixelRatio.js +0 -25
  1294. package/Libraries/WebSocket/WebSocketEvent.js +0 -30
  1295. package/Libraries/WebSocket/WebSocket_new.js +0 -325
  1296. package/Libraries/WebSocket/WebSocket_old.js +0 -297
  1297. package/Libraries/WebSocket/__mocks__/event-target-shim.js +0 -27
  1298. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +0 -30
  1299. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +0 -81
  1300. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.h +0 -30
  1301. package/React/Base/UIKitProxies/RCTInitialAccessibilityValuesProxy.mm +0 -185
  1302. package/React/Base/UIKitProxies/RCTInitializeUIKitProxies.mm +0 -23
  1303. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.h +0 -25
  1304. package/React/Base/UIKitProxies/RCTKeyWindowValuesProxy.mm +0 -129
  1305. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.h +0 -26
  1306. package/React/Base/UIKitProxies/RCTTraitCollectionProxy.mm +0 -80
  1307. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.h +0 -26
  1308. package/React/Base/UIKitProxies/RCTWindowSafeAreaProxy.mm +0 -70
  1309. package/React/Fabric/Utils/RCTViewFinder.mm +0 -34
  1310. package/ReactAndroid/src/main/java/com/facebook/annotationprocessors/common/ProcessorBase.kt +0 -23
  1311. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/KeepGettersAndSetters.kt +0 -24
  1312. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/proguard_annotations.pro +0 -21
  1313. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +0 -84
  1314. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.java +0 -59
  1315. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +0 -1240
  1316. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +0 -900
  1317. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.java +0 -29
  1318. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +0 -29
  1319. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.java +0 -37
  1320. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +0 -234
  1321. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.java +0 -57
  1322. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.java +0 -103
  1323. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromMap.java +0 -110
  1324. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromObject.java +0 -89
  1325. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.java +0 -42
  1326. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedRunnable.java +0 -36
  1327. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Inspector.java +0 -110
  1328. package/ReactAndroid/src/main/java/com/facebook/react/bridge/InvalidIteratorException.kt +0 -18
  1329. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSBundleLoader.java +0 -97
  1330. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.java +0 -110
  1331. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +0 -148
  1332. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptContextHolder.java +0 -33
  1333. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptExecutor.java +0 -31
  1334. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JsonWriterHelper.java +0 -155
  1335. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactBridge.kt +0 -48
  1336. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +0 -39
  1337. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UiThreadUtil.java +0 -75
  1338. package/ReactAndroid/src/main/java/com/facebook/react/bridge/bridge.pro +0 -12
  1339. package/ReactAndroid/src/main/java/com/facebook/react/common/SingleThreadAsserter.kt +0 -23
  1340. package/ReactAndroid/src/main/java/com/facebook/react/common/StandardCharsets.kt +0 -31
  1341. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +0 -128
  1342. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.java +0 -124
  1343. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.java +0 -313
  1344. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.java +0 -174
  1345. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DebugOverlayController.java +0 -117
  1346. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +0 -495
  1347. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +0 -1121
  1348. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +0 -56
  1349. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportSoLoader.kt +0 -24
  1350. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDebuggerWebSocketClient.java +0 -244
  1351. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.java +0 -166
  1352. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ReactInstanceDevHelper.java +0 -47
  1353. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +0 -300
  1354. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSplitBundleCallback.kt +0 -17
  1355. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +0 -239
  1356. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +0 -103
  1357. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +0 -329
  1358. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.kt +0 -40
  1359. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/fabric/SurfaceHandler.kt +0 -40
  1360. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/NativeModuleSoLoader.kt +0 -25
  1361. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.java +0 -288
  1362. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.java +0 -474
  1363. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.java +0 -76
  1364. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +0 -253
  1365. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +0 -383
  1366. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +0 -126
  1367. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.java +0 -103
  1368. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ChoreographerCompat.kt +0 -16
  1369. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/AlertFragment.java +0 -204
  1370. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +0 -240
  1371. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +0 -785
  1372. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressResponseBody.java +0 -68
  1373. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +0 -22
  1374. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/FileIoHandler.java +0 -191
  1375. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.java +0 -143
  1376. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +0 -193
  1377. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactLegacyArchitectureProcessor.kt +0 -48
  1378. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +0 -765
  1379. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.java +0 -131
  1380. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.java +0 -209
  1381. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.java +0 -138
  1382. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +0 -634
  1383. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactLifecycleStateManager.java +0 -90
  1384. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.java +0 -255
  1385. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.java +0 -555
  1386. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedErrorNotifier.kt +0 -27
  1387. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/UnobservedTaskException.kt +0 -11
  1388. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.java +0 -80
  1389. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.java +0 -65
  1390. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactInvalidPropertyException.kt +0 -16
  1391. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.java +0 -99
  1392. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.java +0 -87
  1393. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +0 -448
  1394. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +0 -231
  1395. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +0 -119
  1396. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.java +0 -46
  1397. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.java +0 -127
  1398. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +0 -116
  1399. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.java +0 -109
  1400. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropGroup.java +0 -97
  1401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactPropertyHolder.java +0 -19
  1402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +0 -220
  1403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.java +0 -116
  1404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.java +0 -86
  1405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.java +0 -224
  1406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.java +0 -72
  1407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.java +0 -69
  1408. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostHelper.kt +0 -63
  1409. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ModalHostShadowNode.kt +0 -31
  1410. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +0 -213
  1411. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +0 -361
  1412. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +0 -409
  1413. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.java +0 -47
  1414. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -233
  1415. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +0 -163
  1416. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.java +0 -185
  1417. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.java +0 -54
  1418. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +0 -1493
  1419. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +0 -160
  1420. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.java +0 -52
  1421. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputBlurEvent.java +0 -47
  1422. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputEndEditingEvent.java +0 -54
  1423. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputFocusEvent.java +0 -47
  1424. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputKeyPressEvent.java +0 -51
  1425. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputLocalData.java +0 -44
  1426. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +0 -1390
  1427. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.java +0 -53
  1428. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +0 -236
  1429. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSubmitEditingEvent.java +0 -52
  1430. package/ReactAndroid/src/main/jni/prebuilt/lib/DUMMY +0 -1
  1431. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.cpp +0 -18
  1432. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewEventEmitter.h +0 -31
  1433. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -26
  1434. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.cpp +0 -29
  1435. package/ReactCommon/react/renderer/uimanager/consistency/LatestShadowTreeRevisionProvider.h +0 -35
  1436. package/android/README.md +0 -21
  1437. package/flow/jest.js +0 -1287
  1438. package/jest/__tests__/setup-test.js +0 -18
  1439. package/scripts/codegen/generate-artifacts-executor.js +0 -1153
  1440. package/src/private/components/VScrollViewNativeComponents.js +0 -25
  1441. package/src/private/featureflags/README.md +0 -5
  1442. package/src/private/specs_DEPRECATED/README.md +0 -7
  1443. package/src/private/utilities/ensureInstance.js +0 -21
  1444. package/src/private/webapis/performance/specs/__mocks__/NativePerformanceMock.js +0 -267
  1445. package/types/modules/LaunchScreen.d.ts +0 -18
  1446. /package/ReactCommon/jsinspector-modern/{CdpJson.cpp → cdp/CdpJson.cpp} +0 -0
  1447. /package/ReactCommon/jsinspector-modern/{CdpJson.h → cdp/CdpJson.h} +0 -0
  1448. /package/src/private/{devmenu → devsupport/devmenu}/DevMenu.d.ts +0 -0
  1449. /package/src/private/{debugging → devsupport/rndevtools}/FuseboxSessionObserver.js +0 -0
  1450. /package/src/private/{debugging → devsupport/rndevtools}/ReactDevToolsSettingsManager.js.flow +0 -0
@@ -1,900 +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 android.util.SparseArray;
11
- import androidx.annotation.Nullable;
12
- import androidx.annotation.UiThread;
13
- import com.facebook.common.logging.FLog;
14
- import com.facebook.infer.annotation.Nullsafe;
15
- import com.facebook.react.bridge.Arguments;
16
- import com.facebook.react.bridge.Callback;
17
- import com.facebook.react.bridge.JSApplicationCausedNativeException;
18
- import com.facebook.react.bridge.JSApplicationIllegalArgumentException;
19
- import com.facebook.react.bridge.ReactApplicationContext;
20
- import com.facebook.react.bridge.ReactNoCrashSoftException;
21
- import com.facebook.react.bridge.ReactSoftExceptionLogger;
22
- import com.facebook.react.bridge.ReadableArray;
23
- import com.facebook.react.bridge.ReadableMap;
24
- import com.facebook.react.bridge.UIManager;
25
- import com.facebook.react.bridge.UiThreadUtil;
26
- import com.facebook.react.bridge.WritableArray;
27
- import com.facebook.react.bridge.WritableMap;
28
- import com.facebook.react.uimanager.UIManagerHelper;
29
- import com.facebook.react.uimanager.common.UIManagerType;
30
- import com.facebook.react.uimanager.events.Event;
31
- import com.facebook.react.uimanager.events.EventDispatcher;
32
- import com.facebook.react.uimanager.events.EventDispatcherListener;
33
- import java.util.ArrayDeque;
34
- import java.util.ArrayList;
35
- import java.util.HashSet;
36
- import java.util.LinkedList;
37
- import java.util.List;
38
- import java.util.ListIterator;
39
- import java.util.Queue;
40
- import java.util.Set;
41
-
42
- /**
43
- * This is the main class that coordinates how native animated JS implementation drives UI changes.
44
- *
45
- * <p>It implements a management interface for animated nodes graph as well as implements a graph
46
- * traversal algorithm that is run for each animation frame.
47
- *
48
- * <p>For each animation frame we visit animated nodes that might've been updated as well as their
49
- * children that may use parent's values to update themselves. At the end of the traversal algorithm
50
- * we expect to reach a special type of the node: PropsAnimatedNode that is then responsible for
51
- * calculating property map which can be sent to native view hierarchy to update the view.
52
- *
53
- * <p>IMPORTANT: This class should be accessed only from the UI Thread
54
- */
55
- @Nullsafe(Nullsafe.Mode.LOCAL)
56
- public class NativeAnimatedNodesManager implements EventDispatcherListener {
57
-
58
- private static final String TAG = "NativeAnimatedNodesManager";
59
-
60
- private final SparseArray<AnimatedNode> mAnimatedNodes = new SparseArray<>();
61
- private final SparseArray<AnimationDriver> mActiveAnimations = new SparseArray<>();
62
- private final SparseArray<AnimatedNode> mUpdatedNodes = new SparseArray<>();
63
- // List of event animation drivers for an event on view.
64
- // There may be multiple drivers for the same event and view.
65
- private final List<EventAnimationDriver> mEventDrivers = new ArrayList<>();
66
- private final ReactApplicationContext mReactApplicationContext;
67
- private int mAnimatedGraphBFSColor = 0;
68
- // Used to avoid allocating a new array on every frame in `runUpdates` and `onEventDispatch`.
69
- private final List<AnimatedNode> mRunUpdateNodeList = new LinkedList<>();
70
-
71
- private boolean mEventListenerInitializedForFabric = false;
72
- private boolean mEventListenerInitializedForNonFabric = false;
73
-
74
- private boolean mWarnedAboutGraphTraversal = false;
75
-
76
- public NativeAnimatedNodesManager(ReactApplicationContext reactApplicationContext) {
77
- mReactApplicationContext = reactApplicationContext;
78
- }
79
-
80
- /**
81
- * Initialize event listeners for Fabric UIManager or non-Fabric UIManager, exactly once. Once
82
- * Fabric is the only UIManager, this logic can be simplified. This is expected to only be called
83
- * from the native module thread.
84
- *
85
- * @param uiManagerType
86
- */
87
- public void initializeEventListenerForUIManagerType(@UIManagerType final int uiManagerType) {
88
- if (uiManagerType == UIManagerType.FABRIC
89
- ? mEventListenerInitializedForFabric
90
- : mEventListenerInitializedForNonFabric) {
91
- return;
92
- }
93
-
94
- UIManager uiManager = UIManagerHelper.getUIManager(mReactApplicationContext, uiManagerType);
95
- if (uiManager != null) {
96
- EventDispatcher eventDispatcher = (EventDispatcher) uiManager.getEventDispatcher();
97
- eventDispatcher.addListener(this);
98
- if (uiManagerType == UIManagerType.FABRIC) {
99
- mEventListenerInitializedForFabric = true;
100
- } else {
101
- mEventListenerInitializedForNonFabric = true;
102
- }
103
- }
104
- }
105
-
106
- @Nullable
107
- public AnimatedNode getNodeById(int id) {
108
- return mAnimatedNodes.get(id);
109
- }
110
-
111
- public boolean hasActiveAnimations() {
112
- return mActiveAnimations.size() > 0 || mUpdatedNodes.size() > 0;
113
- }
114
-
115
- @UiThread
116
- public void createAnimatedNode(int tag, ReadableMap config) {
117
- if (mAnimatedNodes.get(tag) != null) {
118
- throw new JSApplicationIllegalArgumentException(
119
- "createAnimatedNode: Animated node [" + tag + "] already exists");
120
- }
121
- String type = config.getString("type");
122
- final AnimatedNode node;
123
- if ("style".equals(type)) {
124
- node = new StyleAnimatedNode(config, this);
125
- } else if ("value".equals(type)) {
126
- node = new ValueAnimatedNode(config);
127
- } else if ("color".equals(type)) {
128
- node = new ColorAnimatedNode(config, this, mReactApplicationContext);
129
- } else if ("props".equals(type)) {
130
- node = new PropsAnimatedNode(config, this);
131
- } else if ("interpolation".equals(type)) {
132
- node = new InterpolationAnimatedNode(config);
133
- } else if ("addition".equals(type)) {
134
- node = new AdditionAnimatedNode(config, this);
135
- } else if ("subtraction".equals(type)) {
136
- node = new SubtractionAnimatedNode(config, this);
137
- } else if ("division".equals(type)) {
138
- node = new DivisionAnimatedNode(config, this);
139
- } else if ("multiplication".equals(type)) {
140
- node = new MultiplicationAnimatedNode(config, this);
141
- } else if ("modulus".equals(type)) {
142
- node = new ModulusAnimatedNode(config, this);
143
- } else if ("diffclamp".equals(type)) {
144
- node = new DiffClampAnimatedNode(config, this);
145
- } else if ("transform".equals(type)) {
146
- node = new TransformAnimatedNode(config, this);
147
- } else if ("tracking".equals(type)) {
148
- node = new TrackingAnimatedNode(config, this);
149
- } else if ("object".equals(type)) {
150
- node = new ObjectAnimatedNode(config, this);
151
- } else {
152
- throw new JSApplicationIllegalArgumentException("Unsupported node type: " + type);
153
- }
154
- node.tag = tag;
155
- mAnimatedNodes.put(tag, node);
156
- mUpdatedNodes.put(tag, node);
157
- }
158
-
159
- @UiThread
160
- public void updateAnimatedNodeConfig(int tag, ReadableMap config) {
161
- AnimatedNode node = mAnimatedNodes.get(tag);
162
- if (node == null) {
163
- throw new JSApplicationIllegalArgumentException(
164
- "updateAnimatedNode: Animated node [" + tag + "] does not exist");
165
- }
166
-
167
- if (node instanceof AnimatedNodeWithUpdateableConfig) {
168
- stopAnimationsForNode(node);
169
- ((AnimatedNodeWithUpdateableConfig) node).onUpdateConfig(config);
170
- mUpdatedNodes.put(tag, node);
171
- }
172
- }
173
-
174
- @UiThread
175
- public void dropAnimatedNode(int tag) {
176
- mAnimatedNodes.remove(tag);
177
- mUpdatedNodes.remove(tag);
178
- }
179
-
180
- @UiThread
181
- public void startListeningToAnimatedNodeValue(int tag, AnimatedNodeValueListener listener) {
182
- AnimatedNode node = mAnimatedNodes.get(tag);
183
- if (node == null || !(node instanceof ValueAnimatedNode)) {
184
- throw new JSApplicationIllegalArgumentException(
185
- "startListeningToAnimatedNodeValue: Animated node ["
186
- + tag
187
- + "] does not exist, or is not a 'value' node");
188
- }
189
- ((ValueAnimatedNode) node).setValueListener(listener);
190
- }
191
-
192
- @UiThread
193
- public void stopListeningToAnimatedNodeValue(int tag) {
194
- AnimatedNode node = mAnimatedNodes.get(tag);
195
- if (node == null || !(node instanceof ValueAnimatedNode)) {
196
- throw new JSApplicationIllegalArgumentException(
197
- "startListeningToAnimatedNodeValue: Animated node ["
198
- + tag
199
- + "] does not exist, or is not a 'value' node");
200
- }
201
- ((ValueAnimatedNode) node).setValueListener(null);
202
- }
203
-
204
- @UiThread
205
- public void setAnimatedNodeValue(int tag, double value) {
206
- AnimatedNode node = mAnimatedNodes.get(tag);
207
- if (node == null || !(node instanceof ValueAnimatedNode)) {
208
- throw new JSApplicationIllegalArgumentException(
209
- "setAnimatedNodeValue: Animated node ["
210
- + tag
211
- + "] does not exist, or is not a 'value' node");
212
- }
213
- stopAnimationsForNode(node);
214
- ((ValueAnimatedNode) node).nodeValue = value;
215
- mUpdatedNodes.put(tag, node);
216
- }
217
-
218
- @UiThread
219
- public void setAnimatedNodeOffset(int tag, double offset) {
220
- AnimatedNode node = mAnimatedNodes.get(tag);
221
- if (node == null || !(node instanceof ValueAnimatedNode)) {
222
- throw new JSApplicationIllegalArgumentException(
223
- "setAnimatedNodeOffset: Animated node ["
224
- + tag
225
- + "] does not exist, or is not a 'value' node");
226
- }
227
- ((ValueAnimatedNode) node).offset = offset;
228
- mUpdatedNodes.put(tag, node);
229
- }
230
-
231
- @UiThread
232
- public void flattenAnimatedNodeOffset(int tag) {
233
- AnimatedNode node = mAnimatedNodes.get(tag);
234
- if (node == null || !(node instanceof ValueAnimatedNode)) {
235
- throw new JSApplicationIllegalArgumentException(
236
- "flattenAnimatedNodeOffset: Animated node ["
237
- + tag
238
- + "] does not exist, or is not a 'value' node");
239
- }
240
- ((ValueAnimatedNode) node).flattenOffset();
241
- }
242
-
243
- @UiThread
244
- public void extractAnimatedNodeOffset(int tag) {
245
- AnimatedNode node = mAnimatedNodes.get(tag);
246
- if (node == null || !(node instanceof ValueAnimatedNode)) {
247
- throw new JSApplicationIllegalArgumentException(
248
- "extractAnimatedNodeOffset: Animated node ["
249
- + tag
250
- + "] does not exist, or is not a 'value' node");
251
- }
252
- ((ValueAnimatedNode) node).extractOffset();
253
- }
254
-
255
- @UiThread
256
- public void startAnimatingNode(
257
- int animationId,
258
- int animatedNodeTag,
259
- ReadableMap animationConfig,
260
- @Nullable Callback endCallback) {
261
- AnimatedNode node = mAnimatedNodes.get(animatedNodeTag);
262
- if (node == null) {
263
- throw new JSApplicationIllegalArgumentException(
264
- "startAnimatingNode: Animated node [" + animatedNodeTag + "] does not exist");
265
- }
266
- if (!(node instanceof ValueAnimatedNode)) {
267
- throw new JSApplicationIllegalArgumentException(
268
- "startAnimatingNode: Animated node ["
269
- + animatedNodeTag
270
- + "] should be of type "
271
- + ValueAnimatedNode.class.getName());
272
- }
273
-
274
- final AnimationDriver existingDriver = mActiveAnimations.get(animationId);
275
- if (existingDriver != null) {
276
- // animation with the given ID is already running, we need to update its configuration instead
277
- // of spawning a new one
278
- existingDriver.resetConfig(animationConfig);
279
- return;
280
- }
281
-
282
- String type = animationConfig.getString("type");
283
- final AnimationDriver animation;
284
- if ("frames".equals(type)) {
285
- animation = new FrameBasedAnimationDriver(animationConfig);
286
- } else if ("spring".equals(type)) {
287
- animation = new SpringAnimation(animationConfig);
288
- } else if ("decay".equals(type)) {
289
- animation = new DecayAnimation(animationConfig);
290
- } else {
291
- throw new JSApplicationIllegalArgumentException(
292
- "startAnimatingNode: Unsupported animation type [" + animatedNodeTag + "]: " + type);
293
- }
294
- animation.id = animationId;
295
- animation.endCallback = endCallback;
296
- animation.animatedValue = (ValueAnimatedNode) node;
297
- mActiveAnimations.put(animationId, animation);
298
- }
299
-
300
- @UiThread
301
- private void stopAnimationsForNode(AnimatedNode animatedNode) {
302
- // in most of the cases there should never be more than a few active animations running at the
303
- // same time. Therefore it does not make much sense to create an animationId -> animation
304
- // object map that would require additional memory just to support the use-case of stopping
305
- // an animation
306
- WritableArray events = null;
307
- for (int i = 0; i < mActiveAnimations.size(); i++) {
308
- AnimationDriver animation = mActiveAnimations.valueAt(i);
309
- if (animatedNode.equals(animation.animatedValue)) {
310
- if (animation.endCallback != null) {
311
- // Invoke animation end callback with {finished: false}
312
- WritableMap endCallbackResponse = Arguments.createMap();
313
- endCallbackResponse.putBoolean("finished", false);
314
- // NULLSAFE_FIXME[Nullable Dereference]
315
- endCallbackResponse.putDouble("value", animation.animatedValue.nodeValue);
316
- animation.endCallback.invoke(endCallbackResponse);
317
- } else if (mReactApplicationContext != null) {
318
- // If no callback is passed in, this /may/ be an animation set up by the single-op
319
- // instruction from JS, meaning that no jsi::functions are passed into native and
320
- // we communicate via RCTDeviceEventEmitter instead of callbacks.
321
- WritableMap params = Arguments.createMap();
322
- params.putInt("animationId", animation.id);
323
- params.putBoolean("finished", false);
324
- // NULLSAFE_FIXME[Nullable Dereference]
325
- params.putDouble("value", animation.animatedValue.nodeValue);
326
- if (events == null) {
327
- events = Arguments.createArray();
328
- }
329
- events.pushMap(params);
330
- }
331
- mActiveAnimations.removeAt(i);
332
- i--;
333
- }
334
- }
335
- if (events != null) {
336
- mReactApplicationContext.emitDeviceEvent("onNativeAnimatedModuleAnimationFinished", events);
337
- }
338
- }
339
-
340
- @UiThread
341
- public void stopAnimation(int animationId) {
342
- // in most of the cases there should never be more than a few active animations running at the
343
- // same time. Therefore it does not make much sense to create an animationId -> animation
344
- // object map that would require additional memory just to support the use-case of stopping
345
- // an animation
346
- WritableArray events = null;
347
- for (int i = 0; i < mActiveAnimations.size(); i++) {
348
- AnimationDriver animation = mActiveAnimations.valueAt(i);
349
- if (animation.id == animationId) {
350
- if (animation.endCallback != null) {
351
- // Invoke animation end callback with {finished: false}
352
- WritableMap endCallbackResponse = Arguments.createMap();
353
- endCallbackResponse.putBoolean("finished", false);
354
- // NULLSAFE_FIXME[Nullable Dereference]
355
- endCallbackResponse.putDouble("value", animation.animatedValue.nodeValue);
356
- animation.endCallback.invoke(endCallbackResponse);
357
- } else if (mReactApplicationContext != null) {
358
- // If no callback is passed in, this /may/ be an animation set up by the single-op
359
- // instruction from JS, meaning that no jsi::functions are passed into native and
360
- // we communicate via RCTDeviceEventEmitter instead of callbacks.
361
- WritableMap params = Arguments.createMap();
362
- params.putInt("animationId", animation.id);
363
- params.putBoolean("finished", false);
364
- // NULLSAFE_FIXME[Nullable Dereference]
365
- params.putDouble("value", animation.animatedValue.nodeValue);
366
- if (events == null) {
367
- events = Arguments.createArray();
368
- }
369
- events.pushMap(params);
370
- }
371
- mActiveAnimations.removeAt(i);
372
- break;
373
- }
374
- }
375
- if (events != null) {
376
- mReactApplicationContext.emitDeviceEvent("onNativeAnimatedModuleAnimationFinished", events);
377
- }
378
- // Do not throw an error in the case animation could not be found. We only keep "active"
379
- // animations in the registry and there is a chance that Animated.js will enqueue a
380
- // stopAnimation call after the animation has ended or the call will reach native thread only
381
- // when the animation is already over.
382
- }
383
-
384
- @UiThread
385
- public void connectAnimatedNodes(int parentNodeTag, int childNodeTag) {
386
- AnimatedNode parentNode = mAnimatedNodes.get(parentNodeTag);
387
- if (parentNode == null) {
388
- throw new JSApplicationIllegalArgumentException(
389
- "connectAnimatedNodes: Animated node with tag (parent) ["
390
- + parentNodeTag
391
- + "] does not exist");
392
- }
393
- AnimatedNode childNode = mAnimatedNodes.get(childNodeTag);
394
- if (childNode == null) {
395
- throw new JSApplicationIllegalArgumentException(
396
- "connectAnimatedNodes: Animated node with tag (child) ["
397
- + childNodeTag
398
- + "] does not exist");
399
- }
400
- parentNode.addChild(childNode);
401
- mUpdatedNodes.put(childNodeTag, childNode);
402
- }
403
-
404
- public void disconnectAnimatedNodes(int parentNodeTag, int childNodeTag) {
405
- AnimatedNode parentNode = mAnimatedNodes.get(parentNodeTag);
406
- if (parentNode == null) {
407
- throw new JSApplicationIllegalArgumentException(
408
- "disconnectAnimatedNodes: Animated node with tag (parent) ["
409
- + parentNodeTag
410
- + "] does not exist");
411
- }
412
- AnimatedNode childNode = mAnimatedNodes.get(childNodeTag);
413
- if (childNode == null) {
414
- throw new JSApplicationIllegalArgumentException(
415
- "disconnectAnimatedNodes: Animated node with tag (child) ["
416
- + childNodeTag
417
- + "] does not exist");
418
- }
419
- parentNode.removeChild(childNode);
420
- mUpdatedNodes.put(childNodeTag, childNode);
421
- }
422
-
423
- @UiThread
424
- public void connectAnimatedNodeToView(int animatedNodeTag, int viewTag) {
425
- AnimatedNode node = mAnimatedNodes.get(animatedNodeTag);
426
- if (node == null) {
427
- throw new JSApplicationIllegalArgumentException(
428
- "connectAnimatedNodeToView: Animated node with tag ["
429
- + animatedNodeTag
430
- + "] does not exist");
431
- }
432
- if (!(node instanceof PropsAnimatedNode)) {
433
- throw new JSApplicationIllegalArgumentException(
434
- "connectAnimatedNodeToView: Animated node connected to view ["
435
- + viewTag
436
- + "] should be of type "
437
- + PropsAnimatedNode.class.getName());
438
- }
439
- if (mReactApplicationContext == null) {
440
- throw new IllegalStateException(
441
- "connectAnimatedNodeToView: Animated node could not be connected, no"
442
- + " ReactApplicationContext: "
443
- + viewTag);
444
- }
445
-
446
- @Nullable
447
- UIManager uiManager =
448
- UIManagerHelper.getUIManagerForReactTag(mReactApplicationContext, viewTag);
449
- if (uiManager == null) {
450
- ReactSoftExceptionLogger.logSoftException(
451
- TAG,
452
- new ReactNoCrashSoftException(
453
- "connectAnimatedNodeToView: Animated node could not be connected to UIManager -"
454
- + " uiManager disappeared for tag: "
455
- + viewTag));
456
- return;
457
- }
458
-
459
- PropsAnimatedNode propsAnimatedNode = (PropsAnimatedNode) node;
460
- propsAnimatedNode.connectToView(viewTag, uiManager);
461
- mUpdatedNodes.put(animatedNodeTag, node);
462
- }
463
-
464
- @UiThread
465
- public void disconnectAnimatedNodeFromView(int animatedNodeTag, int viewTag) {
466
- AnimatedNode node = mAnimatedNodes.get(animatedNodeTag);
467
- if (node == null) {
468
- throw new JSApplicationIllegalArgumentException(
469
- "disconnectAnimatedNodeFromView: Animated node with tag ["
470
- + animatedNodeTag
471
- + "] does not exist");
472
- }
473
- if (!(node instanceof PropsAnimatedNode)) {
474
- throw new JSApplicationIllegalArgumentException(
475
- "disconnectAnimatedNodeFromView: Animated node connected to view ["
476
- + viewTag
477
- + "] should be of type "
478
- + PropsAnimatedNode.class.getName());
479
- }
480
- PropsAnimatedNode propsAnimatedNode = (PropsAnimatedNode) node;
481
- propsAnimatedNode.disconnectFromView(viewTag);
482
- }
483
-
484
- @UiThread
485
- public void getValue(int tag, Callback callback) {
486
- AnimatedNode node = mAnimatedNodes.get(tag);
487
- if (node == null || !(node instanceof ValueAnimatedNode)) {
488
- throw new JSApplicationIllegalArgumentException(
489
- "getValue: Animated node with tag [" + tag + "] does not exist or is not a 'value' node");
490
- }
491
- double value = ((ValueAnimatedNode) node).getValue();
492
- if (callback != null) {
493
- callback.invoke(value);
494
- return;
495
- }
496
-
497
- // If there's no callback, that means that JS is using the single-operation mode, and not
498
- // passing any callbacks into Java.
499
- // See NativeAnimatedHelper.js for details.
500
- // Instead, we use RCTDeviceEventEmitter to pass data back to JS and emulate callbacks.
501
- if (mReactApplicationContext == null) {
502
- return;
503
- }
504
- WritableMap params = Arguments.createMap();
505
- params.putInt("tag", tag);
506
- params.putDouble("value", value);
507
- mReactApplicationContext.emitDeviceEvent("onNativeAnimatedModuleGetValue", params);
508
- }
509
-
510
- @UiThread
511
- public void restoreDefaultValues(int animatedNodeTag) {
512
- AnimatedNode node = mAnimatedNodes.get(animatedNodeTag);
513
- // Restoring default values needs to happen before UIManager operations so it is
514
- // possible the node hasn't been created yet if it is being connected and
515
- // disconnected in the same batch. In that case we don't need to restore
516
- // default values since it will never actually update the view.
517
- if (node == null) {
518
- return;
519
- }
520
- if (!(node instanceof PropsAnimatedNode)) {
521
- throw new JSApplicationIllegalArgumentException(
522
- "Animated node connected to view [?] should be of type "
523
- + PropsAnimatedNode.class.getName());
524
- }
525
- PropsAnimatedNode propsAnimatedNode = (PropsAnimatedNode) node;
526
- propsAnimatedNode.restoreDefaultValues();
527
- }
528
-
529
- @UiThread
530
- public void addAnimatedEventToView(
531
- int viewTag, String eventHandlerName, ReadableMap eventMapping) {
532
- int nodeTag = eventMapping.getInt("animatedValueTag");
533
- AnimatedNode node = mAnimatedNodes.get(nodeTag);
534
- if (node == null) {
535
- throw new JSApplicationIllegalArgumentException(
536
- "addAnimatedEventToView: Animated node with tag [" + nodeTag + "] does not exist");
537
- }
538
- if (!(node instanceof ValueAnimatedNode)) {
539
- throw new JSApplicationIllegalArgumentException(
540
- "addAnimatedEventToView: Animated node on view ["
541
- + viewTag
542
- + "] connected to event handler ("
543
- + eventHandlerName
544
- + ") should be of type "
545
- + ValueAnimatedNode.class.getName());
546
- }
547
-
548
- ReadableArray path = eventMapping.getArray("nativeEventPath");
549
- // NULLSAFE_FIXME[Nullable Dereference]
550
- List<String> pathList = new ArrayList<>(path.size());
551
- // NULLSAFE_FIXME[Nullable Dereference]
552
- for (int i = 0; i < path.size(); i++) {
553
- // NULLSAFE_FIXME[Nullable Dereference]
554
- pathList.add(path.getString(i));
555
- }
556
-
557
- String eventName = normalizeEventName(eventHandlerName);
558
-
559
- EventAnimationDriver eventDriver =
560
- new EventAnimationDriver(eventName, viewTag, pathList, (ValueAnimatedNode) node);
561
- mEventDrivers.add(eventDriver);
562
-
563
- if (eventName.equals("topScroll")) {
564
- // Handle the custom topScrollEnded event sent by the ScrollViews when the user stops dragging
565
- addAnimatedEventToView(viewTag, "topScrollEnded", eventMapping);
566
- }
567
- }
568
-
569
- @UiThread
570
- public void removeAnimatedEventFromView(
571
- int viewTag, String eventHandlerName, int animatedValueTag) {
572
- String eventName = normalizeEventName(eventHandlerName);
573
-
574
- ListIterator<EventAnimationDriver> it = mEventDrivers.listIterator();
575
- while (it.hasNext()) {
576
- EventAnimationDriver driver = it.next();
577
- // NULLSAFE_FIXME[Nullable Dereference]
578
- if (eventName.equals(driver.eventName)
579
- // NULLSAFE_FIXME[Nullable Dereference]
580
- && viewTag == driver.viewTag
581
- // NULLSAFE_FIXME[Nullable Dereference]
582
- && animatedValueTag == driver.valueNode.tag) {
583
- it.remove();
584
- break;
585
- }
586
- }
587
-
588
- if (eventName.equals("topScroll")) {
589
- // Handle the custom topScrollEnded event sent by the ScrollViews when the user stops dragging
590
- removeAnimatedEventFromView(viewTag, "topScrollEnded", animatedValueTag);
591
- }
592
- }
593
-
594
- @Override
595
- public void onEventDispatch(final Event event) {
596
- // Events can be dispatched from any thread so we have to make sure handleEvent is run from the
597
- // UI thread.
598
- if (UiThreadUtil.isOnUiThread()) {
599
- handleEvent(event);
600
- } else {
601
- UiThreadUtil.runOnUiThread(
602
- new Runnable() {
603
- @Override
604
- public void run() {
605
- handleEvent(event);
606
- }
607
- });
608
- }
609
- }
610
-
611
- @UiThread
612
- private void handleEvent(Event event) {
613
- if (mEventDrivers.isEmpty()) {
614
- return;
615
- }
616
-
617
- boolean foundAtLeastOneDriver = false;
618
- Event.EventAnimationDriverMatchSpec matchSpec = event.getEventAnimationDriverMatchSpec();
619
- for (EventAnimationDriver driver : mEventDrivers) {
620
- if (matchSpec.match(driver.viewTag, driver.eventName)) {
621
- foundAtLeastOneDriver = true;
622
- stopAnimationsForNode(driver.valueNode);
623
- event.dispatchModern(driver);
624
- mRunUpdateNodeList.add(driver.valueNode);
625
- }
626
- }
627
-
628
- if (foundAtLeastOneDriver) {
629
- updateNodes(mRunUpdateNodeList);
630
- mRunUpdateNodeList.clear();
631
- }
632
- }
633
-
634
- /**
635
- * Animation loop performs two BFSes over the graph of animated nodes. We use incremented {@code
636
- * mAnimatedGraphBFSColor} to mark nodes as visited in each of the BFSes which saves additional
637
- * loops for clearing "visited" states.
638
- *
639
- * <p>First BFS starts with nodes that are in {@code mUpdatedNodes} (that is, their value have
640
- * been modified from JS in the last batch of JS operations) or directly attached to an active
641
- * animation (hence linked to objects from {@code mActiveAnimations}). In that step we calculate
642
- * an attribute {@code activeIncomingNodes}. The second BFS runs in topological order over the
643
- * sub-graph of *active* nodes. This is done by adding node to the BFS queue only if all its
644
- * "predecessors" have already been visited.
645
- */
646
- @UiThread
647
- public void runUpdates(long frameTimeNanos) {
648
- UiThreadUtil.assertOnUiThread();
649
- boolean hasFinishedAnimations = false;
650
-
651
- for (int i = 0; i < mUpdatedNodes.size(); i++) {
652
- AnimatedNode node = mUpdatedNodes.valueAt(i);
653
- mRunUpdateNodeList.add(node);
654
- }
655
-
656
- // Clean mUpdatedNodes queue
657
- mUpdatedNodes.clear();
658
-
659
- for (int i = 0; i < mActiveAnimations.size(); i++) {
660
- AnimationDriver animation = mActiveAnimations.valueAt(i);
661
- animation.runAnimationStep(frameTimeNanos);
662
- AnimatedNode valueNode = animation.animatedValue;
663
- mRunUpdateNodeList.add(valueNode);
664
- if (animation.hasFinished) {
665
- hasFinishedAnimations = true;
666
- }
667
- }
668
-
669
- updateNodes(mRunUpdateNodeList);
670
- mRunUpdateNodeList.clear();
671
-
672
- // Cleanup finished animations. Iterate over the array of animations and override ones that has
673
- // finished, then resize `mActiveAnimations`.
674
- if (hasFinishedAnimations) {
675
- WritableArray events = null;
676
- for (int i = mActiveAnimations.size() - 1; i >= 0; i--) {
677
- AnimationDriver animation = mActiveAnimations.valueAt(i);
678
- if (animation.hasFinished) {
679
- if (animation.endCallback != null) {
680
- WritableMap endCallbackResponse = Arguments.createMap();
681
- endCallbackResponse.putBoolean("finished", true);
682
- // NULLSAFE_FIXME[Nullable Dereference]
683
- endCallbackResponse.putDouble("value", animation.animatedValue.nodeValue);
684
- animation.endCallback.invoke(endCallbackResponse);
685
- } else if (mReactApplicationContext != null) {
686
- // If no callback is passed in, this /may/ be an animation set up by the single-op
687
- // instruction from JS, meaning that no jsi::functions are passed into native and
688
- // we communicate via RCTDeviceEventEmitter instead of callbacks.
689
- WritableMap params = Arguments.createMap();
690
- params.putInt("animationId", animation.id);
691
- params.putBoolean("finished", true);
692
- // NULLSAFE_FIXME[Nullable Dereference]
693
- params.putDouble("value", animation.animatedValue.nodeValue);
694
- if (events == null) {
695
- events = Arguments.createArray();
696
- }
697
- events.pushMap(params);
698
- }
699
- mActiveAnimations.removeAt(i);
700
- }
701
- }
702
- if (events != null) {
703
- mReactApplicationContext.emitDeviceEvent("onNativeAnimatedModuleAnimationFinished", events);
704
- }
705
- }
706
- }
707
-
708
- Set<Integer> getTagsOfConnectedNodes(int tag, String eventName) {
709
- Set<Integer> tags = new HashSet<>();
710
-
711
- // Filter only relevant animation drivers
712
- ListIterator<EventAnimationDriver> it = mEventDrivers.listIterator();
713
- while (it.hasNext()) {
714
- EventAnimationDriver driver = it.next();
715
- if (driver != null) {
716
- if (eventName.equals(driver.eventName) && tag == driver.viewTag) {
717
- tags.add(driver.viewTag);
718
- if (driver.valueNode != null && driver.valueNode.children != null) {
719
- for (AnimatedNode node : driver.valueNode.children) {
720
- tags.add(node.tag);
721
- }
722
- }
723
- }
724
- }
725
- }
726
-
727
- return tags;
728
- }
729
-
730
- @UiThread
731
- private void updateNodes(List<AnimatedNode> nodes) {
732
- int activeNodesCount = 0;
733
- int updatedNodesCount = 0;
734
-
735
- // STEP 1.
736
- // BFS over graph of nodes. Update `mIncomingNodes` attribute for each node during that BFS.
737
- // Store number of visited nodes in `activeNodesCount`. We "execute" active animations as a part
738
- // of this step.
739
-
740
- mAnimatedGraphBFSColor++; /* use new color */
741
- if (mAnimatedGraphBFSColor == AnimatedNode.INITIAL_BFS_COLOR) {
742
- // value "0" is used as an initial color for a new node, using it in BFS may cause some nodes
743
- // to be skipped.
744
- mAnimatedGraphBFSColor++;
745
- }
746
-
747
- Queue<AnimatedNode> nodesQueue = new ArrayDeque<>();
748
- for (AnimatedNode node : nodes) {
749
- if (node.BFSColor != mAnimatedGraphBFSColor) {
750
- node.BFSColor = mAnimatedGraphBFSColor;
751
- activeNodesCount++;
752
- nodesQueue.add(node);
753
- }
754
- }
755
-
756
- while (!nodesQueue.isEmpty()) {
757
- AnimatedNode nextNode = nodesQueue.poll();
758
- // NULLSAFE_FIXME[Nullable Dereference]
759
- if (nextNode.children != null) {
760
- // NULLSAFE_FIXME[Nullable Dereference]
761
- for (int i = 0; i < nextNode.children.size(); i++) {
762
- // NULLSAFE_FIXME[Nullable Dereference]
763
- AnimatedNode child = nextNode.children.get(i);
764
- child.activeIncomingNodes++;
765
- if (child.BFSColor != mAnimatedGraphBFSColor) {
766
- child.BFSColor = mAnimatedGraphBFSColor;
767
- activeNodesCount++;
768
- nodesQueue.add(child);
769
- }
770
- }
771
- }
772
- }
773
-
774
- // STEP 2
775
- // BFS over the graph of active nodes in topological order -> visit node only when all its
776
- // "predecessors" in the graph have already been visited. It is important to visit nodes in that
777
- // order as they may often use values of their predecessors in order to calculate "next state"
778
- // of their own. We start by determining the starting set of nodes by looking for nodes with
779
- // `activeIncomingNodes = 0` (those can only be the ones that we start BFS in the previous
780
- // step). We store number of visited nodes in this step in `updatedNodesCount`
781
-
782
- mAnimatedGraphBFSColor++;
783
- if (mAnimatedGraphBFSColor == AnimatedNode.INITIAL_BFS_COLOR) {
784
- // see reasoning for this check a few lines above
785
- mAnimatedGraphBFSColor++;
786
- }
787
-
788
- // find nodes with zero "incoming nodes", those can be either nodes from `mUpdatedNodes` or
789
- // ones connected to active animations
790
- for (AnimatedNode node : nodes) {
791
- if (node.activeIncomingNodes == 0 && node.BFSColor != mAnimatedGraphBFSColor) {
792
- node.BFSColor = mAnimatedGraphBFSColor;
793
- updatedNodesCount++;
794
- nodesQueue.add(node);
795
- }
796
- }
797
-
798
- // Run main "update" loop
799
- int cyclesDetected = 0;
800
- while (!nodesQueue.isEmpty()) {
801
- AnimatedNode nextNode = nodesQueue.poll();
802
- try {
803
- // NULLSAFE_FIXME[Nullable Dereference]
804
- nextNode.update();
805
- if (nextNode instanceof PropsAnimatedNode) {
806
- // Send property updates to native view manager
807
- ((PropsAnimatedNode) nextNode).updateView();
808
- }
809
- } catch (JSApplicationCausedNativeException e) {
810
- // An exception is thrown if the view hasn't been created yet. This can happen because
811
- // views are created in batches. If this particular view didn't make it into a batch yet,
812
- // the view won't exist and an exception will be thrown when attempting to start an
813
- // animation on it.
814
- //
815
- // Eat the exception rather than crashing. The impact is that we may drop one or more
816
- // frames of the animation.
817
- FLog.e(TAG, "Native animation workaround, frame lost as result of race condition", e);
818
- }
819
- if (nextNode instanceof ValueAnimatedNode) {
820
- // Potentially send events to JS when the node's value is updated
821
- ((ValueAnimatedNode) nextNode).onValueUpdate();
822
- }
823
- // NULLSAFE_FIXME[Nullable Dereference]
824
- if (nextNode.children != null) {
825
- // NULLSAFE_FIXME[Nullable Dereference]
826
- for (int i = 0; i < nextNode.children.size(); i++) {
827
- // NULLSAFE_FIXME[Nullable Dereference]
828
- AnimatedNode child = nextNode.children.get(i);
829
- child.activeIncomingNodes--;
830
- if (child.BFSColor != mAnimatedGraphBFSColor && child.activeIncomingNodes == 0) {
831
- child.BFSColor = mAnimatedGraphBFSColor;
832
- updatedNodesCount++;
833
- nodesQueue.add(child);
834
- } else if (child.BFSColor == mAnimatedGraphBFSColor) {
835
- cyclesDetected++;
836
- }
837
- }
838
- }
839
- }
840
-
841
- // Verify that we've visited *all* active nodes. Throw otherwise as this could mean there is a
842
- // cycle in animated node graph, or that the graph is only partially set up. We also take
843
- // advantage of the fact that all active nodes are visited in the step above so that all the
844
- // nodes properties `activeIncomingNodes` are set to zero.
845
- // In Fabric there can be race conditions between the JS thread setting up or tearing down
846
- // animated nodes, and Fabric executing them on the UI thread, leading to temporary inconsistent
847
- // states.
848
- if (activeNodesCount != updatedNodesCount) {
849
- if (mWarnedAboutGraphTraversal) {
850
- return;
851
- }
852
- mWarnedAboutGraphTraversal = true;
853
-
854
- // Before crashing or logging soft exception, log details about current graph setup
855
- FLog.e(TAG, "Detected animation cycle or disconnected graph. ");
856
- for (AnimatedNode node : nodes) {
857
- FLog.e(TAG, node.prettyPrintWithChildren());
858
- }
859
-
860
- // If we're running only in non-Fabric, we still throw an exception.
861
- // In Fabric, it seems that animations enter an inconsistent state fairly often.
862
- // We detect if the inconsistency is due to a cycle (a fatal error for which we must crash)
863
- // or disconnected regions, indicating a partially-set-up animation graph, which is not
864
- // fatal and can stay a warning.
865
- String reason =
866
- cyclesDetected > 0 ? "cycles (" + cyclesDetected + ")" : "disconnected regions";
867
- IllegalStateException ex =
868
- new IllegalStateException(
869
- "Looks like animated nodes graph has "
870
- + reason
871
- + ", there are "
872
- + activeNodesCount
873
- + " but toposort visited only "
874
- + updatedNodesCount);
875
- if (mEventListenerInitializedForFabric && cyclesDetected == 0) {
876
- // TODO T71377544: investigate these SoftExceptions and see if we can remove entirely
877
- // or fix the root cause
878
- ReactSoftExceptionLogger.logSoftException(TAG, new ReactNoCrashSoftException(ex));
879
- } else if (mEventListenerInitializedForFabric) {
880
- // TODO T71377544: investigate these SoftExceptions and see if we can remove entirely
881
- // or fix the root cause
882
- ReactSoftExceptionLogger.logSoftException(TAG, new ReactNoCrashSoftException(ex));
883
- } else {
884
- throw ex;
885
- }
886
- } else {
887
- mWarnedAboutGraphTraversal = false;
888
- }
889
- }
890
-
891
- private String normalizeEventName(String eventHandlerName) {
892
- // Fabric UIManager also makes this assumption
893
- String eventName = eventHandlerName;
894
- if (eventHandlerName.startsWith("on")) {
895
- eventName = "top" + eventHandlerName.substring(2);
896
- }
897
-
898
- return eventName;
899
- }
900
- }