react-native-tvos 0.80.1-0 → 0.81.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 (1773) hide show
  1. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  2. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  3. package/Libraries/Alert/Alert.js +3 -3
  4. package/Libraries/Alert/NativeAlertManager.js +1 -0
  5. package/Libraries/Alert/RCTAlertManager.android.js +19 -13
  6. package/Libraries/Alert/RCTAlertManager.ios.js +10 -12
  7. package/Libraries/Alert/RCTAlertManager.js +1 -3
  8. package/Libraries/Alert/RCTAlertManager.js.flow +5 -7
  9. package/Libraries/Animated/Animated.js +0 -1
  10. package/Libraries/Animated/Animated.js.flow +0 -1
  11. package/Libraries/Animated/AnimatedEvent.js +4 -3
  12. package/Libraries/Animated/AnimatedExports.js +0 -1
  13. package/Libraries/Animated/AnimatedExports.js.flow +5 -1
  14. package/Libraries/Animated/AnimatedImplementation.js +44 -44
  15. package/Libraries/Animated/AnimatedMock.js +2 -2
  16. package/Libraries/Animated/Easing.js +1 -1
  17. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  18. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  19. package/Libraries/Animated/SpringConfig.js +1 -1
  20. package/Libraries/Animated/animations/Animation.js +10 -2
  21. package/Libraries/Animated/components/AnimatedScrollView.js +58 -56
  22. package/Libraries/Animated/components/AnimatedText.js +2 -5
  23. package/Libraries/Animated/components/AnimatedView.js +2 -1
  24. package/Libraries/Animated/createAnimatedComponent.js +39 -37
  25. package/Libraries/Animated/nodes/AnimatedObject.js +2 -3
  26. package/Libraries/Animated/nodes/AnimatedProps.js +31 -4
  27. package/Libraries/Animated/nodes/AnimatedStyle.js +35 -34
  28. package/Libraries/Animated/shouldUseTurboAnimatedModule.js +6 -1
  29. package/Libraries/AppDelegate/RCTAppSetupUtils.h +1 -7
  30. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +4 -16
  31. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +2 -8
  32. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +8 -7
  33. package/Libraries/AppState/NativeAppState.js +1 -0
  34. package/Libraries/BatchedBridge/BatchedBridge.js +1 -1
  35. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  36. package/Libraries/Blob/BlobManager.js +4 -0
  37. package/Libraries/Blob/NativeBlobModule.js +1 -0
  38. package/Libraries/Blob/NativeFileReaderModule.js +1 -0
  39. package/Libraries/Blob/React-RCTBlob.podspec +3 -2
  40. package/Libraries/Blob/URL.js +1 -1
  41. package/Libraries/Blob/URLSearchParams.js +5 -1
  42. package/Libraries/Blob/URLSearchParams.js.flow +2 -1
  43. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -2
  44. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -2
  45. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.android.js +1 -1
  46. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.ios.js +1 -1
  47. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.js.flow +1 -1
  48. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +19 -19
  49. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
  50. package/Libraries/Components/Button.js +10 -7
  51. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  52. package/Libraries/Components/Clipboard/NativeClipboard.js +1 -2
  53. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -3
  54. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +3 -4
  55. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +1 -1
  56. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +1 -1
  57. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js.flow +1 -1
  58. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.js +1 -1
  59. package/Libraries/Components/Keyboard/Keyboard.js +1 -1
  60. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +3 -2
  61. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -2
  62. package/Libraries/Components/LayoutConformance/LayoutConformance.js +0 -1
  63. package/Libraries/Components/Pressable/Pressable.js +21 -18
  64. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +14 -13
  65. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +1 -1
  66. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -3
  67. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -3
  68. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -1
  69. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -1
  70. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -3
  71. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +9 -0
  72. package/Libraries/Components/SafeAreaView/SafeAreaView.js +3 -2
  73. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -3
  74. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -1
  75. package/Libraries/Components/ScrollView/ScrollView.d.ts +33 -6
  76. package/Libraries/Components/ScrollView/ScrollView.js +25 -15
  77. package/Libraries/Components/ScrollView/ScrollViewCommands.js +1 -1
  78. package/Libraries/Components/ScrollView/ScrollViewContext.js +2 -1
  79. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +1 -1
  80. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +19 -6
  81. package/Libraries/Components/ScrollView/processDecelerationRate.js +1 -1
  82. package/Libraries/Components/Sound/NativeSoundManager.js +1 -2
  83. package/Libraries/Components/Sound/SoundManager.js +1 -1
  84. package/Libraries/Components/StaticRenderer.js +1 -1
  85. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -2
  86. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -2
  87. package/Libraries/Components/StatusBar/StatusBar.d.ts +4 -0
  88. package/Libraries/Components/StatusBar/StatusBar.js +6 -1
  89. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -3
  90. package/Libraries/Components/Switch/Switch.js +10 -3
  91. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -3
  92. package/Libraries/Components/TV/TVEventControl.js +7 -6
  93. package/Libraries/Components/TV/TVFocusGuideView.js +29 -24
  94. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +9 -12
  95. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -3
  96. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -1
  97. package/Libraries/Components/TextInput/TextInput.flow.js +2 -6
  98. package/Libraries/Components/TextInput/TextInput.js +36 -37
  99. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  100. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -2
  101. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +1 -1
  102. package/Libraries/Components/ToastAndroid/ToastAndroid.ios.js +1 -1
  103. package/Libraries/Components/ToastAndroid/ToastAndroid.js +1 -1
  104. package/Libraries/Components/ToastAndroid/ToastAndroid.js.flow +1 -1
  105. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +1 -1
  106. package/Libraries/Components/Touchable/BoundingDimensions.js +1 -1
  107. package/Libraries/Components/Touchable/PooledClass.js +1 -1
  108. package/Libraries/Components/Touchable/Position.js +1 -1
  109. package/Libraries/Components/Touchable/Touchable.js +17 -3
  110. package/Libraries/Components/Touchable/TouchableBounce.js +9 -3
  111. package/Libraries/Components/Touchable/TouchableHighlight.js +16 -11
  112. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +5 -3
  113. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +1 -0
  114. package/Libraries/Components/Touchable/TouchableOpacity.js +10 -5
  115. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
  116. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -3
  117. package/Libraries/Components/View/ReactNativeStyleAttributes.js +7 -16
  118. package/Libraries/Components/View/View.js +144 -54
  119. package/Libraries/Components/View/ViewAccessibility.js +1 -8
  120. package/Libraries/Components/View/ViewPropTypes.d.ts +4 -0
  121. package/Libraries/Components/View/ViewPropTypes.js +8 -1
  122. package/Libraries/Core/Devtools/getDevServer.js +1 -1
  123. package/Libraries/Core/Devtools/loadBundleFromServer.js +49 -7
  124. package/Libraries/Core/Devtools/openFileInEditor.js +1 -1
  125. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -1
  126. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  127. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  128. package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
  129. package/Libraries/Core/ExceptionsManager.js +27 -16
  130. package/Libraries/Core/InitializeCore.js +2 -23
  131. package/Libraries/Core/NativeExceptionsManager.js +1 -0
  132. package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
  133. package/Libraries/Core/ReactNativeVersion.js +4 -6
  134. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
  135. package/Libraries/Core/Timers/JSTimers.js +1 -1
  136. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  137. package/Libraries/Core/Timers/immediateShim.js +1 -1
  138. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  139. package/Libraries/Core/checkNativeVersion.js +1 -0
  140. package/Libraries/Core/setUpDeveloperTools.js +13 -11
  141. package/Libraries/Core/setUpReactDevTools.js +21 -4
  142. package/Libraries/Debugging/DebuggingOverlay.js +12 -14
  143. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -1
  144. package/Libraries/Debugging/DebuggingOverlayRegistry.js +0 -1
  145. package/Libraries/Debugging/useSubscribeToDebuggingOverlayRegistry.js +0 -1
  146. package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
  147. package/Libraries/EventEmitter/RCTEventEmitter.js +1 -1
  148. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +1 -1
  149. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  150. package/Libraries/Image/AssetRegistry.js +4 -10
  151. package/Libraries/Image/Image.android.js +113 -107
  152. package/Libraries/Image/Image.ios.js +10 -2
  153. package/Libraries/Image/ImageAnalyticsTagContext.js +2 -2
  154. package/Libraries/Image/ImageInjection.js +1 -1
  155. package/Libraries/Image/ImageSource.d.ts +5 -0
  156. package/Libraries/Image/ImageViewNativeComponent.js +3 -3
  157. package/Libraries/Image/NativeImageEditor.js +1 -0
  158. package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
  159. package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
  160. package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
  161. package/Libraries/Image/NativeImageStoreIOS.js +1 -0
  162. package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +2 -1
  163. package/Libraries/Image/RCTImageUtils.mm +1 -1
  164. package/Libraries/Image/RCTResizeMode.h +3 -7
  165. package/Libraries/Image/React-RCTImage.podspec +4 -2
  166. package/Libraries/Image/RelativeImageStub.js +2 -1
  167. package/Libraries/Image/TextInlineImageNativeComponent.js +4 -4
  168. package/Libraries/Image/resolveAssetSource.js +1 -1
  169. package/Libraries/Interaction/FrameRateLogger.js +1 -1
  170. package/Libraries/Interaction/InteractionManager.js +64 -54
  171. package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
  172. package/Libraries/Interaction/TaskQueue.js +8 -9
  173. package/Libraries/Interaction/TouchHistoryMath.js +1 -1
  174. package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -8
  175. package/Libraries/Linking/Linking.js +1 -1
  176. package/Libraries/Linking/NativeIntentAndroid.js +1 -0
  177. package/Libraries/Linking/NativeLinkingManager.js +1 -0
  178. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
  179. package/Libraries/Lists/FlatList.d.ts +9 -5
  180. package/Libraries/Lists/FlatList.js +6 -7
  181. package/Libraries/Lists/SectionList.js +4 -4
  182. package/Libraries/Lists/SectionListModern.js +9 -3
  183. package/Libraries/Lists/VirtualizedList.js +3 -2
  184. package/Libraries/LogBox/Data/LogBoxData.js +7 -4
  185. package/Libraries/LogBox/Data/parseLogBoxLog.js +2 -0
  186. package/Libraries/LogBox/LogBox.js +72 -99
  187. package/Libraries/LogBox/UI/LogBoxButton.js +2 -1
  188. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +2 -1
  189. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -2
  190. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +2 -1
  191. package/Libraries/Modal/Modal.d.ts +8 -2
  192. package/Libraries/Modal/Modal.js +24 -3
  193. package/Libraries/Modal/NativeModalManager.js +1 -0
  194. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -1
  195. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +2 -1
  196. package/Libraries/NativeComponent/BaseViewConfig.android.js +9 -18
  197. package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -17
  198. package/Libraries/NativeComponent/BaseViewConfig.js.flow +1 -1
  199. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -1
  200. package/Libraries/NativeComponent/ViewConfigIgnore.js +3 -3
  201. package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
  202. package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
  203. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
  204. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
  205. package/Libraries/NativeModules/specs/NativeLogBox.js +1 -0
  206. package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
  207. package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
  208. package/Libraries/Network/FormData.js +1 -1
  209. package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
  210. package/Libraries/Network/NativeNetworkingIOS.js +1 -0
  211. package/Libraries/Network/RCTInspectorNetworkReporter.h +64 -0
  212. package/Libraries/Network/RCTInspectorNetworkReporter.mm +105 -0
  213. package/Libraries/Network/RCTNetworkConversions.h +23 -0
  214. package/Libraries/Network/RCTNetworking.android.js +2 -2
  215. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  216. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  217. package/Libraries/Network/RCTNetworking.mm +31 -4
  218. package/Libraries/Network/React-RCTNetwork.podspec +2 -1
  219. package/Libraries/Network/XMLHttpRequest.js +3 -3
  220. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  221. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +4 -3
  222. package/Libraries/Pressability/Pressability.js +1 -1
  223. package/Libraries/Promise.js +1 -1
  224. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  225. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +3 -2
  226. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +2 -0
  227. package/Libraries/ReactNative/AppContainer-dev.js +2 -3
  228. package/Libraries/ReactNative/AppContainer-prod.js +0 -1
  229. package/Libraries/ReactNative/AppContainer.js +1 -1
  230. package/Libraries/ReactNative/AppRegistry.flow.js +2 -2
  231. package/Libraries/ReactNative/AppRegistryImpl.js +2 -13
  232. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  233. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
  234. package/Libraries/ReactNative/NativeI18nManager.js +1 -0
  235. package/Libraries/ReactNative/NativeUIManager.js +1 -0
  236. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.js +1 -1
  237. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  238. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +1 -1
  239. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +81 -62
  240. package/Libraries/ReactNative/ReactFabricPublicInstance/warnForStyleProps.js +1 -1
  241. package/Libraries/ReactNative/RendererImplementation.js +1 -1
  242. package/Libraries/ReactNative/RendererProxy.js +1 -1
  243. package/Libraries/ReactNative/RootTag.js +2 -2
  244. package/Libraries/ReactNative/renderApplication.js +1 -1
  245. package/Libraries/ReactPrivate/ReactNativePrivateInitializeCore.js +1 -1
  246. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -1
  247. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +3 -3
  248. package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -1
  249. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -1
  250. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -1
  251. package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -36
  252. package/Libraries/Required/RCTRequired.podspec +1 -1
  253. package/Libraries/Settings/NativeSettingsManager.js +1 -0
  254. package/Libraries/Settings/React-RCTSettings.podspec +2 -1
  255. package/Libraries/Settings/Settings.ios.js +1 -1
  256. package/Libraries/Settings/Settings.js +1 -1
  257. package/Libraries/Settings/SettingsFallback.js +1 -1
  258. package/Libraries/Share/NativeShareModule.js +1 -0
  259. package/Libraries/Share/Share.js +1 -1
  260. package/Libraries/StyleSheet/EdgeInsetsPropType.js +1 -1
  261. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  262. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  263. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +1 -1
  264. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -1
  265. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +1 -1
  266. package/Libraries/StyleSheet/PointPropType.js +1 -1
  267. package/Libraries/StyleSheet/Rect.js +1 -1
  268. package/Libraries/StyleSheet/StyleSheet.js +1 -0
  269. package/Libraries/StyleSheet/StyleSheetTypes.js +0 -1
  270. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  271. package/Libraries/StyleSheet/processAspectRatio.js +1 -1
  272. package/Libraries/StyleSheet/processBackgroundImage.js +1 -1
  273. package/Libraries/StyleSheet/processBoxShadow.js +0 -1
  274. package/Libraries/StyleSheet/processColor.js +1 -1
  275. package/Libraries/StyleSheet/processColorArray.js +1 -1
  276. package/Libraries/StyleSheet/processFilter.js +1 -2
  277. package/Libraries/StyleSheet/processFontVariant.js +1 -1
  278. package/Libraries/StyleSheet/processTransform.js +1 -1
  279. package/Libraries/StyleSheet/processTransformOrigin.js +1 -1
  280. package/Libraries/StyleSheet/setNormalizedColorAlpha.js +1 -1
  281. package/Libraries/Text/React-RCTText.podspec +1 -1
  282. package/Libraries/Text/Text.d.ts +9 -0
  283. package/Libraries/Text/Text.js +255 -246
  284. package/Libraries/Text/TextAncestor.js +3 -9
  285. package/Libraries/Text/TextAncestorContext.js +23 -0
  286. package/Libraries/Text/TextNativeComponent.js +4 -0
  287. package/Libraries/Text/TextProps.js +2 -5
  288. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
  289. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  290. package/Libraries/Types/CodegenTypes.js +1 -1
  291. package/Libraries/Types/CodegenTypesNamespace.js +2 -1
  292. package/Libraries/Types/CoreEventTypes.d.ts +0 -4
  293. package/Libraries/Types/ReactDevToolsTypes.js +0 -1
  294. package/Libraries/Utilities/Appearance.js +1 -1
  295. package/Libraries/Utilities/BackHandler.js.flow +1 -1
  296. package/Libraries/Utilities/DevLoadingView.js +1 -1
  297. package/Libraries/Utilities/DeviceInfo.js +1 -1
  298. package/Libraries/Utilities/Dimensions.js +1 -1
  299. package/Libraries/Utilities/HMRClient.js +13 -3
  300. package/Libraries/Utilities/HMRClientProdShim.js +1 -1
  301. package/Libraries/Utilities/NativeAppearance.js +1 -0
  302. package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
  303. package/Libraries/Utilities/NativeDeviceInfo.js +1 -2
  304. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
  305. package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
  306. package/Libraries/Utilities/PerformanceLoggerContext.js +2 -2
  307. package/Libraries/Utilities/PixelRatio.js +1 -1
  308. package/Libraries/Utilities/Platform.android.js +2 -5
  309. package/Libraries/Utilities/Platform.ios.js +2 -5
  310. package/Libraries/Utilities/Platform.js +1 -1
  311. package/Libraries/Utilities/Platform.js.flow +2 -2
  312. package/Libraries/Utilities/PlatformTypes.js +2 -2
  313. package/Libraries/Utilities/RCTLog.js +1 -1
  314. package/Libraries/Utilities/SceneTracker.js +1 -1
  315. package/Libraries/Utilities/binaryToBase64.js +1 -1
  316. package/Libraries/Utilities/codegenNativeCommands.js +5 -3
  317. package/Libraries/Utilities/codegenNativeComponent.js +4 -4
  318. package/Libraries/Utilities/createPerformanceLogger.js +27 -20
  319. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -1
  320. package/Libraries/Utilities/defineLazyObjectProperty.js +1 -1
  321. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  322. package/Libraries/Utilities/differ/insetsDiffer.js +1 -1
  323. package/Libraries/Utilities/differ/matricesDiffer.js +1 -1
  324. package/Libraries/Utilities/differ/pointsDiffer.js +1 -1
  325. package/Libraries/Utilities/logError.js +1 -1
  326. package/Libraries/Utilities/mapWithSeparator.js +1 -1
  327. package/Libraries/Utilities/stringifySafe.js +1 -1
  328. package/Libraries/Utilities/stringifyViewConfig.js +1 -1
  329. package/Libraries/Utilities/useColorScheme.js +1 -1
  330. package/Libraries/Utilities/useWindowDimensions.js +1 -1
  331. package/Libraries/Utilities/warnOnce.js +1 -1
  332. package/Libraries/Vibration/NativeVibration.js +1 -0
  333. package/Libraries/Vibration/React-RCTVibration.podspec +2 -1
  334. package/Libraries/Vibration/Vibration.js +1 -2
  335. package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
  336. package/Libraries/WebSocket/WebSocket.js +1 -1
  337. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  338. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  339. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  340. package/Libraries/vendor/emitter/EventEmitter.js +6 -6
  341. package/React/Base/RCTBridge+Private.h +5 -0
  342. package/React/Base/RCTBridge.mm +108 -0
  343. package/React/Base/RCTBridgeDelegate.h +2 -0
  344. package/React/Base/RCTBridgeMethod.h +3 -2
  345. package/React/Base/RCTBridgeModule.h +6 -0
  346. package/React/Base/RCTBridgeProxy.mm +2 -0
  347. package/React/Base/RCTBundleManager.h +2 -0
  348. package/React/Base/RCTBundleManager.m +10 -0
  349. package/React/Base/RCTCallInvokerModule.h +2 -0
  350. package/React/Base/RCTCallableJSModules.m +6 -0
  351. package/React/Base/RCTDisplayLink.h +8 -1
  352. package/React/Base/RCTDisplayLink.m +15 -14
  353. package/React/Base/RCTJavaScriptExecutor.h +2 -0
  354. package/React/Base/RCTModuleData.mm +37 -0
  355. package/React/Base/RCTModuleMethod.mm +1 -0
  356. package/React/Base/RCTModuleRegistry.m +8 -0
  357. package/React/Base/RCTRootContentView.h +4 -0
  358. package/React/Base/RCTRootContentView.m +4 -0
  359. package/React/Base/RCTRootView.m +32 -0
  360. package/React/Base/RCTRootViewInternal.h +4 -0
  361. package/React/Base/RCTTVNavigationEventNotification.h +2 -0
  362. package/React/Base/RCTTVRemoteHandler.h +3 -0
  363. package/React/Base/RCTTVRemoteHandler.m +2 -0
  364. package/React/Base/RCTTVRemoteHandlerConstants.h +2 -0
  365. package/React/Base/RCTTVRemoteSelectHandler.h +2 -0
  366. package/React/Base/RCTTVRemoteSelectHandler.m +2 -0
  367. package/React/Base/RCTTouchHandler.m +2 -0
  368. package/React/Base/RCTTouchHandlerTV.m +2 -0
  369. package/React/Base/RCTUtils.h +0 -2
  370. package/React/Base/RCTUtils.mm +65 -35
  371. package/React/Base/RCTVersion.m +2 -2
  372. package/React/Base/RCTViewRegistry.m +16 -7
  373. package/React/Base/Surface/RCTSurface.mm +68 -0
  374. package/React/Base/Surface/RCTSurfaceRootShadowView.m +17 -0
  375. package/React/Base/Surface/RCTSurfaceView.h +3 -3
  376. package/React/Base/Surface/RCTSurfaceView.mm +2 -1
  377. package/React/CoreModules/RCTDeviceInfo.mm +4 -3
  378. package/React/CoreModules/RCTLogBox.mm +4 -1
  379. package/React/CoreModules/RCTLogBoxView.h +2 -0
  380. package/React/CoreModules/RCTLogBoxView.mm +6 -0
  381. package/React/CoreModules/RCTStatusBarManager.mm +2 -0
  382. package/React/CoreModules/RCTTVNavigationEventEmitter.mm +3 -1
  383. package/React/CoreModules/React-CoreModules.podspec +4 -1
  384. package/React/CxxBridge/RCTCxxBridge.mm +47 -11
  385. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +4 -0
  386. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +4 -0
  387. package/React/CxxBridge/RCTObjcExecutor.h +4 -0
  388. package/React/CxxBridge/RCTObjcExecutor.mm +5 -1
  389. package/React/CxxModule/DispatchMessageQueueThread.h +4 -0
  390. package/React/CxxModule/RCTCxxMethod.mm +1 -1
  391. package/React/CxxModule/RCTCxxModule.mm +1 -1
  392. package/React/CxxModule/RCTCxxUtils.h +4 -0
  393. package/React/CxxModule/RCTCxxUtils.mm +4 -1
  394. package/React/CxxModule/RCTNativeModule.h +4 -0
  395. package/React/CxxModule/RCTNativeModule.mm +5 -1
  396. package/React/CxxUtils/RCTFollyConvert.h +8 -6
  397. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -31
  398. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +3 -28
  399. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +153 -40
  400. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +243 -108
  401. package/{ReactCommon/react/renderer/components/rncore → React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec}/ComponentDescriptors.cpp +2 -2
  402. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.h +30 -0
  403. package/{ReactCommon/react/renderer/components/rncore → React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec}/EventEmitters.cpp +26 -1
  404. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +194 -0
  405. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +663 -0
  406. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +535 -0
  407. package/{ReactCommon/react/renderer/components/rncore → React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec}/RCTComponentViewHelpers.h +4 -0
  408. package/{ReactCommon/react/renderer/components/rncore → React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec}/ShadowNodes.cpp +1 -1
  409. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.h +98 -0
  410. package/{ReactCommon/react/renderer/components/rncore → React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec}/States.cpp +1 -1
  411. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/States.h +32 -0
  412. package/React/Fabric/Mounting/ComponentViews/ActivityIndicator/RCTActivityIndicatorViewComponentView.mm +3 -3
  413. package/React/Fabric/Mounting/ComponentViews/DebuggingOverlay/RCTDebuggingOverlayComponentView.h +1 -1
  414. package/React/Fabric/Mounting/ComponentViews/DebuggingOverlay/RCTDebuggingOverlayComponentView.mm +4 -4
  415. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.mm +1 -1
  416. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +1 -1
  417. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +0 -2
  418. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +18 -2
  419. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +4 -4
  420. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +7 -1
  421. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +4 -4
  422. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +2 -1
  423. package/React/Fabric/Mounting/ComponentViews/UnimplementedComponent/RCTUnimplementedNativeComponentView.mm +3 -3
  424. package/React/Fabric/Mounting/ComponentViews/UnimplementedView/RCTUnimplementedViewComponentView.mm +3 -3
  425. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +20 -7
  426. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.h +24 -0
  427. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +384 -0
  428. package/React/Fabric/Mounting/RCTMountingManager.h +1 -1
  429. package/React/Fabric/Mounting/RCTMountingManager.mm +15 -6
  430. package/React/Fabric/RCTScheduler.h +1 -0
  431. package/React/Fabric/RCTScheduler.mm +6 -2
  432. package/React/Fabric/RCTSurfacePointerHandler.mm +2 -0
  433. package/React/Fabric/RCTSurfacePointerHandlerTV.mm +2 -0
  434. package/React/Fabric/RCTSurfacePresenter.h +2 -1
  435. package/React/Fabric/RCTSurfacePresenter.mm +14 -8
  436. package/React/Fabric/RCTSurfaceTouchHandler.mm +2 -0
  437. package/React/Fabric/RCTSurfaceTouchHandlerTV.mm +2 -0
  438. package/React/Fabric/Surface/RCTFabricSurface.mm +4 -4
  439. package/React/Fabric/Utils/RCTGradientUtils.h +12 -0
  440. package/React/Fabric/Utils/RCTGradientUtils.mm +213 -6
  441. package/React/Fabric/Utils/RCTLinearGradient.mm +37 -42
  442. package/React/Fabric/Utils/RCTRadialGradient.mm +29 -64
  443. package/React/Modules/RCTSurfacePresenterStub.h +1 -1
  444. package/React/Modules/RCTUIManager.mm +206 -93
  445. package/React/React-RCTFBReactNativeSpec.podspec +33 -8
  446. package/React/React-RCTFabric.podspec +8 -3
  447. package/React/Runtime/React-RCTRuntime.podspec +7 -6
  448. package/React/Views/RCTBorderDrawing.h +5 -0
  449. package/React/Views/RCTBorderDrawing.m +37 -4
  450. package/React/Views/RCTModalHostView.h +1 -0
  451. package/React/Views/RCTModalHostView.m +16 -0
  452. package/React/Views/RCTModalHostViewController.m +0 -1
  453. package/React/Views/RCTModalHostViewManager.m +1 -0
  454. package/React/Views/RCTSwitch.h +2 -0
  455. package/React/Views/RCTSwitch.m +2 -0
  456. package/React/Views/RCTSwitchManager.h +2 -0
  457. package/React/Views/RCTSwitchManager.m +2 -0
  458. package/React/Views/RCTTVView.h +2 -0
  459. package/React/Views/RCTTVView.m +2 -0
  460. package/React/Views/RCTView.m +4 -1
  461. package/React/Views/RefreshControl/RCTRefreshControl.h +2 -0
  462. package/React/Views/RefreshControl/RCTRefreshControl.m +2 -0
  463. package/React/Views/RefreshControl/RCTRefreshControlManager.h +2 -0
  464. package/React/Views/RefreshControl/RCTRefreshControlManager.m +2 -0
  465. package/React/Views/RefreshControl/RCTRefreshableProtocol.h +2 -0
  466. package/React/Views/ScrollView/RCTScrollView.h +2 -0
  467. package/React/Views/ScrollView/RCTScrollView.m +2 -0
  468. package/React/Views/ScrollView/RCTScrollViewManager.m +2 -0
  469. package/React-Core-prebuilt.podspec +78 -0
  470. package/React-Core.podspec +29 -28
  471. package/ReactAndroid/api/ReactAndroid.api +294 -506
  472. package/ReactAndroid/build.gradle.kts +20 -55
  473. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +1 -1
  474. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -2
  475. package/ReactAndroid/external-artifacts/build.gradle.kts +52 -0
  476. package/ReactAndroid/gradle.properties +1 -1
  477. package/ReactAndroid/hermes-engine/build.gradle.kts +25 -0
  478. package/ReactAndroid/publish.gradle +2 -2
  479. package/ReactAndroid/src/main/AndroidManifest.xml +1 -1
  480. package/ReactAndroid/src/main/java/com/facebook/debug/tags/ReactDebugOverlayTags.kt +0 -9
  481. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +1 -0
  482. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.kt +194 -0
  483. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.kt +1 -5
  484. package/ReactAndroid/src/main/java/com/facebook/react/HeadlessJsTaskService.kt +5 -4
  485. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.kt +146 -0
  486. package/ReactAndroid/src/main/java/com/facebook/react/MemoryPressureRouter.kt +6 -5
  487. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +2 -2
  488. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +8 -0
  489. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +57 -30
  490. package/ReactAndroid/src/main/java/com/facebook/react/ReactApplication.kt +4 -0
  491. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +451 -0
  492. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.kt +237 -0
  493. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +11 -10
  494. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +396 -0
  495. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +7 -16
  496. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackage.kt +3 -3
  497. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +1 -0
  498. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageLogger.kt +2 -1
  499. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +244 -0
  500. package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.kt +1 -1
  501. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +4 -3
  502. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +1 -1
  503. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +59 -77
  504. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +43 -37
  505. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.kt +2 -2
  506. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +0 -2
  507. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +20 -11
  508. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +2 -2
  509. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +3 -4
  510. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +2 -0
  511. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedAsyncTask.kt +1 -1
  512. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.kt +37 -40
  513. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +399 -0
  514. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +2 -2
  515. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyArray.kt +8 -9
  516. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.kt +93 -0
  517. package/ReactAndroid/src/main/java/com/facebook/react/bridge/MemoryPressureListener.kt +1 -1
  518. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +227 -0
  519. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.kt +59 -0
  520. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeArgumentsParseException.kt +4 -2
  521. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +4 -2
  522. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +156 -0
  523. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +2 -1
  524. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +240 -0
  525. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.kt +20 -0
  526. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.kt +33 -0
  527. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +69 -0
  528. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.kt +212 -0
  529. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactModuleWithSpec.kt +2 -1
  530. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.kt +4 -2
  531. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashSoftException.kt +4 -3
  532. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +30 -21
  533. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableArrayBuilder.kt +8 -0
  534. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableMapBuilder.kt +21 -7
  535. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.kt +3 -3
  536. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RetryableMountingLayerException.kt +4 -4
  537. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +4 -4
  538. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerProvider.kt +2 -1
  539. package/ReactAndroid/src/main/java/com/facebook/react/bridge/queue/ReactQueueConfigurationImpl.kt +3 -3
  540. package/ReactAndroid/src/main/java/com/facebook/react/common/DebugServerException.kt +8 -8
  541. package/ReactAndroid/src/main/java/com/facebook/react/common/MapBuilder.kt +107 -0
  542. package/ReactAndroid/src/main/java/com/facebook/react/common/ShakeDetector.kt +2 -1
  543. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/LegacyArchitectureShadowNodeWithCxxImpl.kt +6 -4
  544. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/internal/InteropLegacyArchitecture.kt +1 -1
  545. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +1 -1
  546. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +16 -4
  547. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +53 -1
  548. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +4 -3
  549. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +9 -15
  550. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +2 -2
  551. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +0 -3
  552. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +5 -7
  553. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevInternalSettings.kt +0 -4
  554. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +1 -3
  555. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.kt +3 -2
  556. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +16 -7
  557. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.kt +1 -1
  558. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.kt +1 -1
  559. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevOptionHandler.kt +1 -1
  560. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +1 -1
  561. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/StackFrame.kt +3 -3
  562. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +65 -68
  563. package/ReactAndroid/src/main/java/com/facebook/react/fabric/LongStreamingStats.kt +6 -5
  564. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +1 -1
  565. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +4 -2
  566. package/ReactAndroid/src/main/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListener.kt +27 -16
  567. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +365 -0
  568. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +373 -0
  569. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +48 -50
  570. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchIntCommandMountItem.kt +1 -1
  571. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/DispatchStringCommandMountItem.kt +1 -1
  572. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +2 -2
  573. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +77 -5
  574. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +131 -11
  575. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +27 -3
  576. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +27 -3
  577. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +145 -13
  578. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +2 -2
  579. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +27 -3
  580. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleInteropUtils.kt +2 -2
  581. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +4 -4
  582. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +1 -1
  583. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +21 -30
  584. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +4 -11
  585. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.kt +2 -2
  586. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +6 -4
  587. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -1
  588. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.kt +1 -1
  589. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +2 -2
  590. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +3 -4
  591. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.kt +6 -2
  592. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevMenuModule.kt +2 -2
  593. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.kt +2 -3
  594. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +10 -9
  595. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +23 -55
  596. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.kt +1 -1
  597. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/interfaces/DeveloperSettings.kt +0 -5
  598. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +8 -3
  599. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.kt +0 -2
  600. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +9 -5
  601. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +5 -2
  602. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +4 -4
  603. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +23 -21
  604. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +7 -10
  605. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +9 -9
  606. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.kt +5 -5
  607. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.kt +24 -23
  608. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.kt +2 -2
  609. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.kt +3 -4
  610. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.kt +1 -1
  611. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +17 -20
  612. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  613. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.kt +11 -14
  614. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.kt +2 -2
  615. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +52 -40
  616. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +1 -1
  617. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +22 -18
  618. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +6 -4
  619. package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSRuntimeFactory.kt +6 -1
  620. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +1472 -0
  621. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +4 -0
  622. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +4 -0
  623. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +14 -14
  624. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceImpl.kt +3 -1
  625. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +6 -2
  626. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/ExecutorException.kt +1 -1
  627. package/ReactAndroid/src/main/java/com/facebook/react/runtime/internal/bolts/Task.kt +1 -1
  628. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +9 -2
  629. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +0 -17
  630. package/ReactAndroid/src/main/java/com/facebook/react/touch/OnInterceptTouchEventListener.kt +2 -2
  631. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/CallInvokerHolderImpl.kt +1 -1
  632. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/NativeMethodCallInvokerHolderImpl.kt +1 -1
  633. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +80 -63
  634. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +1 -5
  635. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +17 -5
  636. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FloatUtil.kt +2 -2
  637. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +238 -0
  638. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutDirectionUtil.kt +4 -10
  639. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +2 -2
  640. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/MatrixMathHelper.kt +25 -20
  641. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +2 -1
  642. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +2 -2
  643. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +2 -2
  644. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NoSuchNativeViewException.kt +4 -2
  645. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/OnLayoutEvent.kt +9 -9
  646. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PointerEvents.kt +6 -7
  647. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +0 -14
  648. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +63 -106
  649. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroup.kt +1 -1
  650. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingViewGroupHelper.kt +5 -4
  651. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +2 -2
  652. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactStylesDiffMap.kt +7 -7
  653. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactYogaConfigProvider.kt +2 -1
  654. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +3 -3
  655. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.kt +4 -6
  656. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +151 -0
  657. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +2 -2
  658. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +232 -0
  659. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +5 -5
  660. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.kt +0 -4
  661. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +238 -0
  662. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleListener.kt +2 -1
  663. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -2
  664. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewAtIndex.kt +2 -2
  665. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +5 -6
  666. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +15 -62
  667. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +18 -4
  668. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerPropertyUpdater.kt +2 -3
  669. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.kt +161 -0
  670. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerWithGeneratedInterface.kt +1 -1
  671. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +1 -2
  672. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/YogaNodePool.kt +4 -2
  673. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/ReactProp.kt +1 -1
  674. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +0 -2
  675. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +2 -1
  676. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +0 -5
  677. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +0 -2
  678. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.kt +8 -6
  679. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.kt +334 -0
  680. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventEmitterImpl.kt +3 -1
  681. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +12 -12
  682. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +340 -0
  683. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +2 -2
  684. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/internal/LegacyArchitectureShadowNodeLogger.kt +3 -2
  685. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AbstractLayoutAnimation.kt +2 -2
  686. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/AnimatedPropertyType.kt +2 -1
  687. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/BaseLayoutAnimation.kt +2 -2
  688. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/InterpolatorType.kt +2 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +2 -2
  690. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +2 -1
  691. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationType.kt +2 -2
  692. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutCreateAnimation.kt +2 -2
  693. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutDeleteAnimation.kt +2 -2
  694. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutHandlingAnimation.kt +2 -1
  695. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutUpdateAnimation.kt +8 -8
  696. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/OpacityAnimation.kt +2 -2
  697. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/PositionAndSizeAnimation.kt +4 -2
  698. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/SimpleSpringInterpolator.kt +9 -11
  699. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BoxShadow.kt +1 -1
  700. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +1 -1
  701. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +1 -1
  702. package/ReactAndroid/src/main/java/com/facebook/react/views/common/ContextUtils.kt +2 -2
  703. package/ReactAndroid/src/main/java/com/facebook/react/views/common/UiModeUtils.kt +26 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/views/debuggingoverlay/DebuggingOverlayManager.kt +5 -17
  705. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +4 -15
  706. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.kt +1 -1
  707. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.kt +1 -1
  708. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.kt +1 -1
  709. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.kt +1 -1
  710. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageDownloadListener.kt +2 -1
  711. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.kt +1 -1
  712. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/MultiSourceHelper.kt +3 -2
  713. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +6 -6
  714. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +80 -9
  715. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +10 -1
  716. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaViewShadowNode.kt +3 -1
  717. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -1
  718. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -1
  719. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +52 -4
  720. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +37 -7
  721. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +45 -5
  722. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +19 -28
  723. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +34 -6
  724. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.kt +28 -17
  725. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +2 -1
  726. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +0 -14
  727. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +0 -7
  728. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +10 -1
  729. package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.kt +7 -0
  730. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +15 -21
  731. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +5 -1
  732. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +103 -159
  733. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +29 -21
  734. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +11 -10
  735. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextManager.kt +4 -1
  736. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactRawTextShadowNode.kt +2 -1
  737. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +25 -22
  738. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.kt +349 -0
  739. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +87 -84
  740. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +181 -0
  741. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextShadowNode.kt +10 -1
  742. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactVirtualTextViewManager.kt +8 -1
  743. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.kt +137 -0
  744. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +1203 -0
  745. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextTransform.kt +2 -6
  746. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +17 -10
  747. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +7 -7
  748. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomLetterSpacingSpan.kt +1 -2
  749. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactContentSizeChangedEvent.kt +5 -5
  750. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +4 -4
  751. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +8 -15
  752. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputSelectionEvent.kt +5 -5
  753. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +8 -1
  754. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +1586 -0
  755. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +38 -44
  756. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ViewGroupClickEvent.kt +1 -5
  757. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +77 -43
  758. package/ReactAndroid/src/main/java/com/facebook/react/views/virtualview/ReactVirtualView.kt +382 -0
  759. package/ReactAndroid/src/main/java/com/facebook/react/views/virtualview/ReactVirtualViewManager.kt +102 -0
  760. package/ReactAndroid/src/main/java/com/facebook/react/views/virtualview/VirtualViewMode.kt +14 -0
  761. package/ReactAndroid/src/main/java/com/facebook/react/views/virtualview/VirtualViewModeChangeEvent.kt +49 -0
  762. package/ReactAndroid/src/main/java/com/facebook/react/views/virtualview/VirtualViewRenderState.kt +20 -0
  763. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.kt +1 -1
  764. package/ReactAndroid/src/main/jni/CMakeLists.txt +1 -98
  765. package/ReactAndroid/src/main/jni/first-party/fbgloginit/fb/glog_init.h +1 -3
  766. package/ReactAndroid/src/main/jni/first-party/fbgloginit/glog_init.cpp +2 -4
  767. package/ReactAndroid/src/main/jni/first-party/jni-lib-merge/SoMerging-utils.cmake +4 -0
  768. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +1 -1
  769. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +1 -1
  770. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +4 -1
  771. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +4 -2
  772. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +13 -10
  773. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -1
  774. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +105 -13
  775. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.h +8 -6
  776. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +1 -1
  777. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +181 -13
  778. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +39 -3
  779. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +11 -9
  780. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.h +2 -6
  781. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +10 -2
  782. package/ReactAndroid/src/main/jni/react/hermes/tooling/CMakeLists.txt +0 -1
  783. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +4 -0
  784. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +4 -0
  785. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +4 -0
  786. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +4 -0
  787. package/ReactAndroid/src/main/jni/react/jni/JavaScriptExecutorHolder.h +4 -0
  788. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +4 -0
  789. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.h +4 -0
  790. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +4 -0
  791. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.h +4 -0
  792. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +4 -0
  793. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +4 -0
  794. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -0
  795. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +1 -1
  796. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +1 -1
  797. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp +1 -1
  798. package/ReactAndroid/src/main/jni/react/newarchdefaults/rncore.h +20 -0
  799. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/BindingsInstallerHolder.h +1 -1
  800. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +1 -1
  801. package/ReactAndroid/src/main/res/systeminfo/values-am/strings.xml +6 -0
  802. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +3 -9
  803. package/ReactApple/Libraries/RCTFoundation/RCTDeprecation/RCTDeprecation.podspec +1 -1
  804. package/ReactCommon/React-Fabric.podspec +32 -43
  805. package/ReactCommon/React-FabricComponents.podspec +54 -57
  806. package/ReactCommon/React-FabricImage.podspec +2 -1
  807. package/ReactCommon/React-Mapbuffer.podspec +2 -2
  808. package/ReactCommon/ReactCommon.podspec +6 -7
  809. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  810. package/ReactCommon/callinvoker/ReactCommon/CallInvoker.h +5 -5
  811. package/ReactCommon/callinvoker/ReactCommon/SchedulerPriority.h +0 -2
  812. package/ReactCommon/cmake-utils/internal/react-native-platform-selector.cmake +24 -0
  813. package/ReactCommon/cmake-utils/react-native-flags.cmake +7 -11
  814. package/ReactCommon/cxxreact/CMakeLists.txt +1 -1
  815. package/ReactCommon/cxxreact/CxxModule.h +3 -7
  816. package/ReactCommon/cxxreact/CxxNativeModule.cpp +5 -0
  817. package/ReactCommon/cxxreact/CxxNativeModule.h +4 -0
  818. package/ReactCommon/cxxreact/Instance.cpp +4 -0
  819. package/ReactCommon/cxxreact/Instance.h +5 -1
  820. package/ReactCommon/cxxreact/JSBigString.cpp +3 -3
  821. package/ReactCommon/cxxreact/JSBigString.h +3 -2
  822. package/ReactCommon/cxxreact/JSExecutor.cpp +2 -6
  823. package/ReactCommon/cxxreact/JSExecutor.h +5 -4
  824. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +7 -1
  825. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +6 -0
  826. package/ReactCommon/cxxreact/JSModulesUnbundle.h +5 -1
  827. package/ReactCommon/cxxreact/JsArgumentHelpers.h +2 -4
  828. package/ReactCommon/cxxreact/MessageQueueThread.h +1 -3
  829. package/ReactCommon/cxxreact/MethodCall.cpp +4 -0
  830. package/ReactCommon/cxxreact/MethodCall.h +4 -0
  831. package/ReactCommon/cxxreact/ModuleRegistry.cpp +4 -0
  832. package/ReactCommon/cxxreact/ModuleRegistry.h +4 -0
  833. package/ReactCommon/cxxreact/NativeModule.h +5 -1
  834. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +4 -0
  835. package/ReactCommon/cxxreact/NativeToJsBridge.h +4 -0
  836. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +4 -0
  837. package/ReactCommon/cxxreact/RAMBundleRegistry.h +5 -1
  838. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -4
  839. package/ReactCommon/cxxreact/ReactMarker.cpp +2 -4
  840. package/ReactCommon/cxxreact/ReactMarker.h +2 -4
  841. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  842. package/ReactCommon/cxxreact/SharedProxyCxxModule.h +2 -6
  843. package/ReactCommon/devtoolsruntimesettings/CMakeLists.txt +5 -5
  844. package/ReactCommon/hermes/React-hermes.podspec +6 -3
  845. package/ReactCommon/hermes/executor/CMakeLists.txt +4 -1
  846. package/ReactCommon/hermes/executor/React-jsitracing.podspec +1 -1
  847. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +4 -1
  848. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.cpp +10 -6
  849. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeSamplingProfileSerializer.h +11 -1
  850. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +58 -9
  851. package/ReactCommon/jsc/JSCRuntime.cpp +2 -4
  852. package/ReactCommon/jsc/JSCRuntime.h +2 -4
  853. package/ReactCommon/jserrorhandler/CMakeLists.txt +3 -1
  854. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +4 -9
  855. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +4 -3
  856. package/ReactCommon/jserrorhandler/StackTraceParser.cpp +3 -1
  857. package/ReactCommon/jsi/CMakeLists.txt +1 -1
  858. package/ReactCommon/jsi/React-jsi.podspec +3 -6
  859. package/ReactCommon/jsi/jsi/CMakeLists.txt +1 -1
  860. package/ReactCommon/jsi/jsi/decorator.h +33 -0
  861. package/ReactCommon/jsi/jsi/jsi-inl.h +14 -0
  862. package/ReactCommon/jsi/jsi/jsi.cpp +119 -0
  863. package/ReactCommon/jsi/jsi/jsi.h +153 -1
  864. package/ReactCommon/jsi/jsi/test/testlib.cpp +111 -4
  865. package/ReactCommon/jsi/jsi/test/testlib.h +2 -2
  866. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +4 -2
  867. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +54 -1
  868. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +4 -0
  869. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +5 -0
  870. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.h +4 -0
  871. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +0 -6
  872. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +54 -2
  873. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +16 -0
  874. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +4 -3
  875. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +1 -1
  876. package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +157 -27
  877. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +4 -3
  878. package/ReactCommon/jsinspector-modern/TracingAgent.h +5 -2
  879. package/ReactCommon/jsinspector-modern/cdp/React-jsinspectorcdp.podspec +3 -2
  880. package/ReactCommon/jsinspector-modern/network/BoundedRequestBuffer.cpp +77 -0
  881. package/ReactCommon/jsinspector-modern/network/BoundedRequestBuffer.h +67 -0
  882. package/ReactCommon/jsinspector-modern/network/CMakeLists.txt +3 -1
  883. package/ReactCommon/jsinspector-modern/network/CdpNetwork.cpp +35 -0
  884. package/ReactCommon/jsinspector-modern/network/CdpNetwork.h +43 -0
  885. package/ReactCommon/jsinspector-modern/network/NetworkReporter.cpp +144 -23
  886. package/ReactCommon/jsinspector-modern/network/NetworkReporter.h +91 -19
  887. package/ReactCommon/jsinspector-modern/network/React-jsinspectornetwork.podspec +6 -2
  888. package/ReactCommon/jsinspector-modern/tests/ConsoleTimeStampTest.cpp +146 -0
  889. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +37 -36
  890. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +9 -9
  891. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +1 -0
  892. package/ReactCommon/jsinspector-modern/tracing/ConsoleTimeStamp.h +91 -0
  893. package/ReactCommon/jsinspector-modern/tracing/EventLoopReporter.cpp +5 -18
  894. package/ReactCommon/jsinspector-modern/tracing/EventLoopReporter.h +4 -2
  895. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +141 -84
  896. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +59 -18
  897. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +4 -2
  898. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfile.h +28 -8
  899. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.cpp +41 -32
  900. package/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h +9 -7
  901. package/ReactCommon/jsinspector-modern/tracing/Timing.h +42 -0
  902. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +6 -8
  903. package/ReactCommon/jsinspector-modern/tracing/TraceEventProfile.h +10 -2
  904. package/ReactCommon/jsinspector-modern/tracing/tests/RuntimeSamplingProfileTraceEventSerializerTest.cpp +13 -13
  905. package/ReactCommon/jsitooling/CMakeLists.txt +1 -1
  906. package/ReactCommon/jsitooling/React-jsitooling.podspec +4 -2
  907. package/ReactCommon/logger/React-logger.podspec +2 -1
  908. package/ReactCommon/oscompat/React-oscompat.podspec +1 -1
  909. package/ReactCommon/react/bridging/Base.h +45 -34
  910. package/ReactCommon/react/bridging/Bool.h +1 -1
  911. package/ReactCommon/react/bridging/Bridging.h +1 -0
  912. package/ReactCommon/react/bridging/CMakeLists.txt +2 -2
  913. package/ReactCommon/react/bridging/Class.h +36 -33
  914. package/ReactCommon/react/bridging/HighResTimeStamp.h +41 -0
  915. package/ReactCommon/react/bridging/Number.h +10 -10
  916. package/ReactCommon/react/bridging/Promise.h +14 -8
  917. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +35 -6
  918. package/ReactCommon/react/bridging/tests/ClassTest.cpp +58 -0
  919. package/ReactCommon/react/debug/CMakeLists.txt +6 -2
  920. package/ReactCommon/react/debug/React-debug.podspec +2 -2
  921. package/ReactCommon/react/featureflags/CMakeLists.txt +1 -1
  922. package/ReactCommon/react/featureflags/React-featureflags.podspec +3 -2
  923. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +53 -5
  924. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +65 -5
  925. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +269 -53
  926. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +30 -6
  927. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +52 -4
  928. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +115 -7
  929. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +4 -2
  930. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +15 -3
  931. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +9 -5
  932. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModulePerfLogger.cpp +2 -4
  933. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModulePerfLogger.h +2 -4
  934. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +0 -19
  935. package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +108 -0
  936. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +7 -2
  937. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +4 -3
  938. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +2 -4
  939. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +2 -4
  940. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +3 -4
  941. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +25 -26
  942. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +1 -1
  943. package/ReactCommon/react/nativemodule/cputime/CMakeLists.txt +20 -0
  944. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +3 -1
  945. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +2 -1
  946. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/CMakeLists.txt +2 -2
  947. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/DevToolsRuntimeSettingsModule.cpp +2 -0
  948. package/ReactCommon/react/nativemodule/devtoolsruntimesettings/DevToolsRuntimeSettingsModule.h +1 -1
  949. package/ReactCommon/react/nativemodule/dom/CMakeLists.txt +2 -1
  950. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +62 -51
  951. package/ReactCommon/react/nativemodule/dom/NativeDOM.h +33 -18
  952. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +4 -1
  953. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/CMakeLists.txt +29 -0
  954. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +52 -0
  955. package/ReactCommon/react/nativemodule/{fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.h → fantomtestspecificmethods/NativeFantomTestSpecificMethods.h} +7 -6
  956. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/internal/FantomForcedCloneCommitHook.cpp +56 -0
  957. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/internal/FantomForcedCloneCommitHook.h +29 -0
  958. package/ReactCommon/react/nativemodule/featureflags/CMakeLists.txt +1 -1
  959. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +66 -6
  960. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +31 -8
  961. package/ReactCommon/react/nativemodule/featureflags/React-featureflagsnativemodule.podspec +2 -1
  962. package/ReactCommon/react/nativemodule/idlecallbacks/CMakeLists.txt +1 -1
  963. package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.cpp +10 -17
  964. package/ReactCommon/react/nativemodule/idlecallbacks/NativeIdleCallbacks.h +3 -4
  965. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +3 -1
  966. package/ReactCommon/react/nativemodule/intersectionobserver/CMakeLists.txt +28 -0
  967. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +66 -11
  968. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +20 -4
  969. package/ReactCommon/react/nativemodule/microtasks/CMakeLists.txt +1 -1
  970. package/ReactCommon/react/nativemodule/microtasks/NativeMicrotasks.h +1 -3
  971. package/ReactCommon/react/nativemodule/microtasks/React-microtasksnativemodule.podspec +2 -1
  972. package/ReactCommon/react/nativemodule/mutationobserver/CMakeLists.txt +27 -0
  973. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +7 -8
  974. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +5 -5
  975. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -0
  976. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +1 -1
  977. package/ReactCommon/react/nativemodule/webperformance/CMakeLists.txt +21 -0
  978. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +45 -12
  979. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +20 -22
  980. package/ReactCommon/react/performance/timeline/CMakeLists.txt +2 -1
  981. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +11 -10
  982. package/ReactCommon/react/performance/timeline/PerformanceEntryBuffer.h +2 -2
  983. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +56 -47
  984. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +33 -20
  985. package/ReactCommon/react/performance/timeline/PerformanceObserver.h +8 -5
  986. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +3 -2
  987. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryReporterTest.cpp +196 -79
  988. package/ReactCommon/react/performance/timeline/tests/PerformanceObserverTest.cpp +238 -44
  989. package/ReactCommon/react/renderer/animations/CMakeLists.txt +1 -1
  990. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +5 -4
  991. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -6
  992. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +1 -1
  993. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +9 -3
  994. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +8 -1
  995. package/ReactCommon/react/renderer/attributedstring/PlaceholderAttributedString.h +34 -0
  996. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +3 -16
  997. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +1 -5
  998. package/ReactCommon/react/renderer/attributedstring/conversions.h +14 -7
  999. package/ReactCommon/react/renderer/bridging/CMakeLists.txt +15 -0
  1000. package/ReactCommon/react/renderer/bridging/bridging.h +52 -0
  1001. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +1 -1
  1002. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +1 -1
  1003. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +1 -1
  1004. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +108 -0
  1005. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -0
  1006. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +16 -0
  1007. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryShadowNode.h +2 -2
  1008. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +1 -1
  1009. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +18 -7
  1010. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +1 -1
  1011. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +9 -2
  1012. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +3 -2
  1013. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.h +5 -2
  1014. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.cpp +1 -1
  1015. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +7 -15
  1016. package/ReactCommon/react/renderer/components/modal/ModalHostViewUtils.h +2 -2
  1017. package/ReactCommon/react/renderer/components/modal/ModalHostViewUtils.mm +1 -1
  1018. package/ReactCommon/react/renderer/components/modal/platform/android/JReactModalHostView.h +38 -0
  1019. package/ReactCommon/react/renderer/components/modal/platform/android/ModalHostViewUtils.cpp +18 -0
  1020. package/ReactCommon/react/renderer/components/modal/platform/cxx/ModalHostViewUtils.cpp +17 -0
  1021. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +1 -1
  1022. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.cpp +2 -12
  1023. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.h +1 -5
  1024. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +2 -2
  1025. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/conversions.h +2 -2
  1026. package/ReactCommon/react/renderer/components/rncore/ComponentDescriptors.h +10 -26
  1027. package/ReactCommon/react/renderer/components/rncore/EventEmitters.h +10 -165
  1028. package/ReactCommon/react/renderer/components/rncore/Props.h +10 -393
  1029. package/ReactCommon/react/renderer/components/rncore/ShadowNodes.h +10 -94
  1030. package/ReactCommon/react/renderer/components/rncore/States.h +10 -97
  1031. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +1 -1
  1032. package/ReactCommon/react/renderer/components/safeareaview/CMakeLists.txt +1 -1
  1033. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewShadowNode.h +2 -2
  1034. package/ReactCommon/react/renderer/components/scrollview/{ScrollViewProps.cpp → BaseScrollViewProps.cpp} +29 -22
  1035. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.h +87 -0
  1036. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +16 -3
  1037. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +3 -73
  1038. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +2 -2
  1039. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +354 -0
  1040. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.h +46 -0
  1041. package/{React/Runtime/RCTJscInstanceFactory.h → ReactCommon/react/renderer/components/scrollview/platform/cxx/react/renderer/components/scrollview/HostPlatformScrollViewProps.h} +4 -10
  1042. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +1 -1
  1043. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.cpp +32 -41
  1044. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.h +0 -3
  1045. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +2 -2
  1046. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +192 -13
  1047. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +6 -0
  1048. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.h +0 -7
  1049. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +15 -6
  1050. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +93 -0
  1051. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -0
  1052. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +143 -80
  1053. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +26 -7
  1054. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +28 -0
  1055. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -0
  1056. package/ReactCommon/react/renderer/components/text/TextProps.cpp +21 -0
  1057. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -0
  1058. package/ReactCommon/react/renderer/components/text/conversions.h +2 -2
  1059. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.cpp +8 -0
  1060. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +23 -2
  1061. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +6 -0
  1062. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +9 -15
  1063. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +1 -1
  1064. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp +11 -7
  1065. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.h +2 -1
  1066. package/ReactCommon/react/renderer/components/textinput/TextInputState.h +5 -22
  1067. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +4 -2
  1068. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +277 -0
  1069. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -1
  1070. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +10 -21
  1071. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +2 -2
  1072. package/ReactCommon/react/renderer/components/textinput/{TextInputState.cpp → platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp} +3 -32
  1073. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +83 -0
  1074. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +1 -1
  1075. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.cpp +21 -0
  1076. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +4 -0
  1077. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +33 -0
  1078. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +28 -1
  1079. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1080. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +8 -0
  1081. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +11 -7
  1082. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +51 -27
  1083. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +14 -3
  1084. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +144 -516
  1085. package/ReactCommon/react/renderer/components/view/conversions.h +114 -0
  1086. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +119 -5
  1087. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +2 -3
  1088. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +1 -0
  1089. package/ReactCommon/react/renderer/components/view/propsConversions.h +537 -2
  1090. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +6 -2
  1091. package/ReactCommon/react/renderer/components/virtualview/VirtualViewComponentDescriptor.h +20 -0
  1092. package/ReactCommon/react/renderer/components/virtualview/VirtualViewShadowNode.h +37 -0
  1093. package/ReactCommon/react/renderer/consistency/CMakeLists.txt +1 -1
  1094. package/ReactCommon/react/renderer/consistency/React-rendererconsistency.podspec +1 -1
  1095. package/ReactCommon/react/renderer/core/CMakeLists.txt +3 -2
  1096. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +3 -3
  1097. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +9 -6
  1098. package/ReactCommon/react/renderer/core/ConcreteState.h +7 -9
  1099. package/ReactCommon/react/renderer/core/EventEmitter.cpp +7 -0
  1100. package/ReactCommon/react/renderer/core/EventEmitter.h +7 -0
  1101. package/ReactCommon/react/renderer/core/EventLogger.h +3 -2
  1102. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +24 -2
  1103. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +12 -3
  1104. package/ReactCommon/react/renderer/core/Props.cpp +1 -1
  1105. package/ReactCommon/react/renderer/core/Props.h +5 -2
  1106. package/ReactCommon/react/renderer/core/RawEvent.cpp +2 -0
  1107. package/ReactCommon/react/renderer/core/RawEvent.h +6 -1
  1108. package/ReactCommon/react/renderer/core/ShadowNode.cpp +127 -23
  1109. package/ReactCommon/react/renderer/core/ShadowNode.h +69 -26
  1110. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +8 -0
  1111. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +2 -1
  1112. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +26 -16
  1113. package/ReactCommon/react/renderer/core/State.cpp +2 -2
  1114. package/ReactCommon/react/renderer/core/State.h +3 -5
  1115. package/ReactCommon/react/renderer/core/StateData.h +2 -2
  1116. package/ReactCommon/react/renderer/core/graphicsConversions.h +47 -5
  1117. package/ReactCommon/react/renderer/core/propsConversions.h +37 -0
  1118. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +7 -6
  1119. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +9 -1
  1120. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +5 -0
  1121. package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +38 -5
  1122. package/ReactCommon/react/renderer/css/CMakeLists.txt +2 -2
  1123. package/ReactCommon/react/renderer/css/CSSTokenizer.h +0 -1
  1124. package/ReactCommon/react/renderer/css/React-renderercss.podspec +3 -3
  1125. package/ReactCommon/react/renderer/debug/CMakeLists.txt +1 -1
  1126. package/ReactCommon/react/renderer/debug/React-rendererdebug.podspec +3 -2
  1127. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +0 -2
  1128. package/ReactCommon/react/renderer/dom/CMakeLists.txt +1 -1
  1129. package/ReactCommon/react/renderer/dom/DOM.cpp +28 -31
  1130. package/ReactCommon/react/renderer/dom/DOM.h +3 -4
  1131. package/ReactCommon/react/renderer/element/CMakeLists.txt +1 -1
  1132. package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +4 -3
  1133. package/ReactCommon/react/renderer/element/ComponentBuilder.h +2 -1
  1134. package/ReactCommon/react/renderer/element/Element.h +7 -5
  1135. package/ReactCommon/react/renderer/element/ElementFragment.h +1 -1
  1136. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +4 -2
  1137. package/ReactCommon/react/renderer/graphics/BlendMode.h +37 -0
  1138. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +12 -4
  1139. package/ReactCommon/react/renderer/graphics/Color.cpp +1 -1
  1140. package/ReactCommon/react/renderer/graphics/Color.h +10 -0
  1141. package/ReactCommon/react/renderer/graphics/Filter.h +25 -0
  1142. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -3
  1143. package/ReactCommon/react/renderer/graphics/Transform.cpp +2 -15
  1144. package/ReactCommon/react/renderer/graphics/Transform.h +0 -7
  1145. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/HostPlatformColor.h +5 -2
  1146. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/HostPlatformColor.h +5 -2
  1147. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.h +4 -0
  1148. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.h +2 -4
  1149. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +14 -5
  1150. package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +11 -0
  1151. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +1 -1
  1152. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +1 -2
  1153. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +2 -1
  1154. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +1 -1
  1155. package/ReactCommon/react/renderer/imagemanager/primitives.h +59 -0
  1156. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +1 -1
  1157. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +1 -1
  1158. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +0 -2
  1159. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +0 -2
  1160. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +2 -1
  1161. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +34 -21
  1162. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -1
  1163. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +67 -25
  1164. package/ReactCommon/react/renderer/mounting/ShadowTree.h +13 -0
  1165. package/ReactCommon/react/renderer/mounting/internal/CullingContext.cpp +11 -6
  1166. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.cpp +6 -2
  1167. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +3 -53
  1168. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +9 -7
  1169. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -2
  1170. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +9 -6
  1171. package/ReactCommon/react/renderer/mounting/updateMountedFlag.h +4 -2
  1172. package/ReactCommon/react/renderer/observers/events/CMakeLists.txt +4 -2
  1173. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.cpp +27 -10
  1174. package/ReactCommon/react/renderer/observers/events/EventPerformanceLogger.h +9 -7
  1175. package/ReactCommon/react/renderer/observers/intersection/CMakeLists.txt +28 -0
  1176. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +74 -31
  1177. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +19 -13
  1178. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +136 -63
  1179. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.h +34 -8
  1180. package/ReactCommon/react/renderer/observers/mutation/CMakeLists.txt +24 -0
  1181. package/ReactCommon/react/renderer/observers/mutation/MutationObserver.cpp +34 -46
  1182. package/ReactCommon/react/renderer/observers/mutation/MutationObserver.h +15 -15
  1183. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +17 -32
  1184. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.h +2 -4
  1185. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +1 -1
  1186. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +4 -3
  1187. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +12 -6
  1188. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +16 -10
  1189. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +3 -5
  1190. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +1 -0
  1191. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerIntersectionObserverDelegate.h +25 -0
  1192. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +11 -4
  1193. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +11 -8
  1194. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +61 -62
  1195. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +25 -21
  1196. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +8 -7
  1197. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +17 -5
  1198. package/ReactCommon/react/renderer/runtimescheduler/Task.h +6 -4
  1199. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +43 -31
  1200. package/ReactCommon/react/renderer/runtimescheduler/tests/StubClock.h +6 -11
  1201. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -1
  1202. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +10 -3
  1203. package/ReactCommon/react/renderer/scheduler/Scheduler.h +5 -3
  1204. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +3 -0
  1205. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +5 -4
  1206. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +1 -1
  1207. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +16 -6
  1208. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +6 -0
  1209. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +81 -10
  1210. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +116 -104
  1211. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +5 -0
  1212. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/react/renderer/textlayoutmanager/TextLayoutManager.cpp +5 -2
  1213. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +23 -6
  1214. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +1 -1
  1215. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +27 -28
  1216. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +2 -1
  1217. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.cpp +15 -10
  1218. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.h +6 -7
  1219. package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.cpp +2 -3
  1220. package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.h +5 -3
  1221. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +21 -19
  1222. package/ReactCommon/react/renderer/uimanager/UIManager.h +13 -12
  1223. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +47 -23
  1224. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +9 -3
  1225. package/ReactCommon/react/renderer/uimanager/UIManagerMountHook.h +2 -2
  1226. package/ReactCommon/react/renderer/uimanager/UIManagerUpdateShadowTree.cpp +6 -1
  1227. package/ReactCommon/react/renderer/uimanager/consistency/CMakeLists.txt +1 -1
  1228. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +1 -1
  1229. package/ReactCommon/react/renderer/uimanager/primitives.h +10 -18
  1230. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +1 -1
  1231. package/ReactCommon/react/runtime/BridgelessNativeMethodCallInvoker.h +0 -1
  1232. package/ReactCommon/react/runtime/BufferedRuntimeExecutor.h +1 -0
  1233. package/ReactCommon/react/runtime/CMakeLists.txt +8 -3
  1234. package/ReactCommon/react/runtime/React-RuntimeCore.podspec +4 -3
  1235. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +4 -2
  1236. package/ReactCommon/react/runtime/ReactInstance.cpp +2 -1
  1237. package/ReactCommon/react/runtime/ReactInstance.h +1 -0
  1238. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +5 -2
  1239. package/ReactCommon/react/runtime/platform/ios/React-RuntimeApple.podspec +8 -10
  1240. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +43 -20
  1241. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTLegacyUIManagerConstantsProvider.mm +1 -1
  1242. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +16 -16
  1243. package/ReactCommon/react/timing/React-timing.podspec +1 -1
  1244. package/ReactCommon/react/timing/primitives.h +280 -15
  1245. package/ReactCommon/react/timing/tests/PrimitivesTest.cpp +82 -24
  1246. package/ReactCommon/react/utils/CMakeLists.txt +13 -3
  1247. package/ReactCommon/react/utils/FloatComparison.h +8 -2
  1248. package/ReactCommon/react/utils/ManagedObjectWrapper.mm +2 -4
  1249. package/ReactCommon/react/utils/OnScopeExit.h +1 -1
  1250. package/ReactCommon/react/utils/PackTraits.h +0 -2
  1251. package/ReactCommon/react/utils/React-utils.podspec +4 -3
  1252. package/ReactCommon/react/utils/SimpleThreadSafeCache.h +40 -28
  1253. package/ReactCommon/react/utils/iequals.h +1 -3
  1254. package/ReactCommon/react/utils/platform/ios/react/utils/FollyConvert.h +18 -0
  1255. package/{React/CxxUtils/RCTFollyConvert.mm → ReactCommon/react/utils/platform/ios/react/utils/FollyConvert.mm} +17 -1
  1256. package/ReactCommon/react/utils/tests/SimpleThreadSafeCacheTest.cpp +40 -0
  1257. package/ReactCommon/reactperflogger/React-perflogger.podspec +2 -1
  1258. package/ReactCommon/reactperflogger/reactperflogger/BridgeNativeModulePerfLogger.cpp +2 -4
  1259. package/ReactCommon/reactperflogger/reactperflogger/BridgeNativeModulePerfLogger.h +2 -6
  1260. package/ReactCommon/reactperflogger/reactperflogger/FuseboxPerfettoDataSource.cpp +6 -2
  1261. package/ReactCommon/reactperflogger/reactperflogger/HermesPerfettoDataSource.cpp +10 -4
  1262. package/ReactCommon/reactperflogger/reactperflogger/NativeModulePerfLogger.h +1 -1
  1263. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.cpp +10 -6
  1264. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfetto.h +2 -1
  1265. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +9 -12
  1266. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.h +4 -3
  1267. package/ReactCommon/runtimeexecutor/CMakeLists.txt +2 -2
  1268. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +24 -1
  1269. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +0 -72
  1270. package/ReactCommon/runtimeexecutor/platform/cxx/ReactCommon/RuntimeExecutorSyncUIThreadUtils.cpp +61 -0
  1271. package/ReactCommon/runtimeexecutor/platform/cxx/ReactCommon/RuntimeExecutorSyncUIThreadUtils.h +36 -0
  1272. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.h +39 -0
  1273. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.mm +260 -0
  1274. package/ReactCommon/yoga/Yoga.podspec +1 -1
  1275. package/ReactCommon/yoga/yoga/YGNodeLayout.cpp +8 -0
  1276. package/ReactCommon/yoga/yoga/YGNodeLayout.h +10 -0
  1277. package/ReactCommon/yoga/yoga/YGValue.h +2 -2
  1278. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +21 -16
  1279. package/ReactCommon/yoga/yoga/algorithm/PixelGrid.cpp +6 -6
  1280. package/ReactCommon/yoga/yoga/node/LayoutResults.h +9 -0
  1281. package/ReactCommon/yoga/yoga/node/Node.cpp +29 -0
  1282. package/ReactCommon/yoga/yoga/node/Node.h +6 -4
  1283. package/cli.js +52 -33
  1284. package/{src/types → flow}/bom.js.flow +0 -10
  1285. package/{src/types → flow}/cssom.js.flow +0 -1
  1286. package/{src/types → flow}/dom.js.flow +0 -1
  1287. package/{src/types → flow}/streams.js.flow +0 -1
  1288. package/gradle/libs.versions.toml +6 -5
  1289. package/index.js +22 -2
  1290. package/index.js.flow +10 -1
  1291. package/interface.js +1 -1
  1292. package/jest/MockNativeMethods.js +9 -3
  1293. package/jest/assetFileTransformer.js +1 -0
  1294. package/jest/local-setup.js +4 -3
  1295. package/jest/mock.js +39 -0
  1296. package/jest/mockComponent.js +47 -17
  1297. package/jest/mockNativeComponent.js +26 -15
  1298. package/jest/mocks/AccessibilityInfo.js +62 -0
  1299. package/jest/mocks/ActivityIndicator.js +23 -0
  1300. package/jest/mocks/AppState.js +19 -0
  1301. package/jest/mocks/Clipboard.js +16 -0
  1302. package/jest/mocks/Image.js +23 -0
  1303. package/jest/mocks/InitializeCore.js +9 -0
  1304. package/jest/mocks/Linking.js +28 -0
  1305. package/jest/mocks/Modal.js +33 -0
  1306. package/jest/mocks/NativeComponentRegistry.js +30 -0
  1307. package/jest/mocks/NativeModules.js +239 -0
  1308. package/jest/mocks/RefreshControl.js +31 -0
  1309. package/jest/mocks/RendererProxy.js +45 -0
  1310. package/jest/mocks/ScrollView.js +58 -0
  1311. package/jest/mocks/Text.js +27 -0
  1312. package/jest/mocks/TextInput.js +32 -0
  1313. package/jest/mocks/UIManager.js +60 -0
  1314. package/jest/mocks/Vibration.js +16 -0
  1315. package/jest/mocks/View.js +27 -0
  1316. package/jest/mocks/ViewNativeComponent.js +23 -0
  1317. package/jest/mocks/requireNativeComponent.js +22 -0
  1318. package/{Libraries/Utilities/infoLog.js → jest/mocks/useColorScheme.js} +7 -9
  1319. package/jest/react-native-env.js +1 -0
  1320. package/jest/renderer.js +1 -2
  1321. package/jest/resolver.js +1 -0
  1322. package/jest/setup.js +64 -443
  1323. package/jest-preset.js +1 -0
  1324. package/package.json +16 -22
  1325. package/react-native.config.js +18 -5
  1326. package/scripts/bundle.js +10 -2
  1327. package/scripts/cocoapods/helpers.rb +1 -1
  1328. package/scripts/cocoapods/jsengine.rb +28 -16
  1329. package/scripts/cocoapods/new_architecture.rb +1 -0
  1330. package/scripts/cocoapods/rncore.rb +247 -0
  1331. package/scripts/cocoapods/rndependencies.rb +86 -26
  1332. package/scripts/cocoapods/utils.rb +73 -44
  1333. package/scripts/codegen/codegen-utils.js +9 -4
  1334. package/scripts/codegen/generate-artifacts-executor/constants.js +30 -36
  1335. package/scripts/codegen/generate-artifacts-executor/generateAppDependencyProvider.js +2 -1
  1336. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +10 -4
  1337. package/scripts/codegen/generate-artifacts-executor/generateFBReactNativeSpecIOS.js +8 -4
  1338. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +21 -29
  1339. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +7 -6
  1340. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +13 -6
  1341. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +8 -7
  1342. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +15 -5
  1343. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +4 -3
  1344. package/scripts/codegen/generate-artifacts-executor/index.js +24 -10
  1345. package/scripts/codegen/generate-artifacts-executor/utils.js +51 -23
  1346. package/scripts/codegen/generate-specs-cli-executor.js +36 -30
  1347. package/scripts/codegen/templates/ReactCodegen.podspec.template +5 -2
  1348. package/scripts/compose-source-maps.js +3 -2
  1349. package/scripts/generate-codegen-artifacts.js +2 -0
  1350. package/scripts/generate-provider-cli.js +11 -5
  1351. package/scripts/generate-specs-cli.js +7 -0
  1352. package/scripts/hermes/hermes-utils.js +2 -2
  1353. package/scripts/hermes/prepare-hermes-for-build.js +2 -1
  1354. package/scripts/packager-reporter.js +9 -3
  1355. package/scripts/react_native_pods.rb +56 -24
  1356. package/scripts/replace-rncore-version.js +120 -0
  1357. package/sdks/.hermesversion +1 -1
  1358. package/sdks/hermes-engine/hermes-utils.rb +25 -23
  1359. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +11 -3
  1360. package/sdks/hermes-engine/utils/replace_hermes_version.js +1 -0
  1361. package/sdks/hermesc/osx-bin/hermes +0 -0
  1362. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1363. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1364. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  1365. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  1366. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  1367. package/src/private/animated/NativeAnimatedHelper.js +8 -1
  1368. package/src/private/animated/createAnimatedPropsHook.js +14 -4
  1369. package/src/private/animated/createAnimatedPropsMemoHook.js +2 -3
  1370. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +0 -1
  1371. package/src/private/components/scrollview/HScrollViewNativeComponents.js +0 -1
  1372. package/src/private/components/scrollview/VScrollViewNativeComponents.js +0 -1
  1373. package/src/private/components/virtualview/VirtualView.js +145 -0
  1374. package/src/private/components/virtualview/VirtualViewNativeComponent.js +90 -0
  1375. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +1 -1
  1376. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +1 -1
  1377. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +1 -1
  1378. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
  1379. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +1 -1
  1380. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +1 -1
  1381. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -1
  1382. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +1 -1
  1383. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +1 -1
  1384. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  1385. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +1 -1
  1386. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +1 -1
  1387. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  1388. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +1 -1
  1389. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +0 -1
  1390. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.android.js +8 -9
  1391. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.ios.js +12 -15
  1392. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.js.flow +3 -7
  1393. package/src/private/devsupport/rndevtools/setUpFuseboxReactDevToolsDispatcher.js +0 -1
  1394. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +0 -1
  1395. package/src/private/featureflags/ReactNativeFeatureFlags.js +93 -8
  1396. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +2 -0
  1397. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +16 -3
  1398. package/src/private/renderer/errorhandling/ErrorHandlers.js +1 -1
  1399. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +44 -0
  1400. package/src/private/setup/setUpPerformanceObserver.js +7 -0
  1401. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +8 -5
  1402. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +4 -4
  1403. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +4 -4
  1404. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +4 -4
  1405. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +10 -7
  1406. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +5 -4
  1407. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +7 -4
  1408. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +10 -7
  1409. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +9 -6
  1410. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +15 -6
  1411. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +9 -6
  1412. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +5 -5
  1413. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +4 -4
  1414. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +1 -0
  1415. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  1416. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  1417. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +1 -1
  1418. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +9 -6
  1419. package/src/private/styles/composeStyles.js +5 -12
  1420. package/src/private/types/HostInstance.js +1 -1
  1421. package/src/private/webapis/dom/events/Event.js +3 -0
  1422. package/src/private/webapis/dom/events/EventTarget.js +3 -0
  1423. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +1 -1
  1424. package/src/private/webapis/dom/nodes/ReactNativeElement.js +7 -24
  1425. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +1 -1
  1426. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +1 -1
  1427. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +4 -2
  1428. package/src/private/webapis/dom/nodes/ReadOnlyText.js +1 -1
  1429. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +1 -1
  1430. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  1431. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  1432. package/src/private/webapis/dom/nodes/internals/Traversal.js +1 -1
  1433. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +38 -0
  1434. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +4 -1
  1435. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +1 -1
  1436. package/src/private/webapis/dom/oldstylecollections/NodeList.js +4 -1
  1437. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +1 -1
  1438. package/src/private/webapis/errors/DOMException.js +166 -0
  1439. package/src/private/webapis/geometry/DOMRect.js +5 -0
  1440. package/src/private/webapis/geometry/DOMRectList.js +4 -1
  1441. package/src/private/webapis/geometry/DOMRectList.js.flow +1 -1
  1442. package/src/private/webapis/geometry/DOMRectReadOnly.js +6 -0
  1443. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +4 -2
  1444. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +15 -7
  1445. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +3 -0
  1446. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +83 -18
  1447. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +12 -0
  1448. package/src/private/webapis/mutationobserver/MutationObserver.js +13 -38
  1449. package/src/private/webapis/mutationobserver/MutationRecord.js +3 -0
  1450. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +7 -29
  1451. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +1 -4
  1452. package/src/private/webapis/performance/EventTiming.js +1 -1
  1453. package/src/private/webapis/performance/LongTasks.js +1 -1
  1454. package/src/private/webapis/performance/MemoryInfo.js +4 -1
  1455. package/src/private/webapis/performance/Performance.js +20 -9
  1456. package/src/private/webapis/performance/PerformanceEntry.js +5 -1
  1457. package/src/private/webapis/performance/PerformanceObserver.js +32 -28
  1458. package/src/private/webapis/performance/ReactNativeStartupTiming.js +4 -1
  1459. package/src/private/webapis/performance/ResourceTiming.js +108 -0
  1460. package/src/private/webapis/performance/UserTiming.js +1 -1
  1461. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +50 -33
  1462. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  1463. package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
  1464. package/src/private/webapis/structuredClone/structuredClone.js +233 -0
  1465. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  1466. package/src/private/webapis/webidl/PlatformObjects.js +59 -0
  1467. package/third-party-podspecs/ReactNativeDependencies.podspec +14 -1
  1468. package/third-party-podspecs/replace_dependencies_version.js +37 -6
  1469. package/types/modules/Devtools.d.ts +23 -9
  1470. package/types_generated/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +101 -0
  1471. package/types_generated/Libraries/Alert/Alert.d.ts +55 -0
  1472. package/types_generated/Libraries/Animated/Animated.d.ts +14 -0
  1473. package/types_generated/Libraries/Animated/AnimatedEvent.d.ts +30 -0
  1474. package/types_generated/Libraries/Animated/AnimatedExports.d.ts +190 -0
  1475. package/types_generated/Libraries/Animated/AnimatedImplementation.d.ts +128 -0
  1476. package/types_generated/Libraries/Animated/AnimatedPlatformConfig.d.ts +13 -0
  1477. package/types_generated/Libraries/Animated/Easing.d.ts +171 -0
  1478. package/types_generated/Libraries/Animated/animations/Animation.d.ts +35 -0
  1479. package/types_generated/Libraries/Animated/animations/DecayAnimation.d.ts +42 -0
  1480. package/types_generated/Libraries/Animated/animations/SpringAnimation.d.ts +130 -0
  1481. package/types_generated/Libraries/Animated/animations/TimingAnimation.d.ts +54 -0
  1482. package/types_generated/Libraries/Animated/components/AnimatedFlatList.d.ts +22 -0
  1483. package/types_generated/Libraries/Animated/components/AnimatedImage.d.ts +18 -0
  1484. package/types_generated/Libraries/Animated/components/AnimatedScrollView.d.ts +23 -0
  1485. package/types_generated/Libraries/Animated/components/AnimatedSectionList.d.ts +22 -0
  1486. package/types_generated/Libraries/Animated/components/AnimatedText.d.ts +18 -0
  1487. package/types_generated/Libraries/Animated/components/AnimatedView.d.ts +19 -0
  1488. package/types_generated/Libraries/Animated/createAnimatedComponent.d.ts +42 -0
  1489. package/types_generated/Libraries/Animated/nodes/AnimatedAddition.d.ts +22 -0
  1490. package/types_generated/Libraries/Animated/nodes/AnimatedColor.d.ts +76 -0
  1491. package/types_generated/Libraries/Animated/nodes/AnimatedDiffClamp.d.ts +22 -0
  1492. package/types_generated/Libraries/Animated/nodes/AnimatedDivision.d.ts +22 -0
  1493. package/types_generated/Libraries/Animated/nodes/AnimatedInterpolation.d.ts +36 -0
  1494. package/types_generated/Libraries/Animated/nodes/AnimatedModulo.d.ts +22 -0
  1495. package/types_generated/Libraries/Animated/nodes/AnimatedMultiplication.d.ts +22 -0
  1496. package/types_generated/Libraries/Animated/nodes/AnimatedNode.d.ts +46 -0
  1497. package/types_generated/Libraries/Animated/nodes/AnimatedProps.d.ts +29 -0
  1498. package/types_generated/Libraries/Animated/nodes/AnimatedStyle.d.ts +32 -0
  1499. package/types_generated/Libraries/Animated/nodes/AnimatedSubtraction.d.ts +22 -0
  1500. package/types_generated/Libraries/Animated/nodes/AnimatedTracking.d.ts +21 -0
  1501. package/types_generated/Libraries/Animated/nodes/AnimatedValue.d.ts +126 -0
  1502. package/types_generated/Libraries/Animated/nodes/AnimatedValueXY.d.ts +135 -0
  1503. package/types_generated/Libraries/Animated/nodes/AnimatedWithChildren.d.ts +15 -0
  1504. package/types_generated/Libraries/Animated/useAnimatedValue.d.ts +15 -0
  1505. package/types_generated/Libraries/AppState/AppState.d.ts +63 -0
  1506. package/types_generated/Libraries/BatchedBridge/BatchedBridge.d.ts +17 -0
  1507. package/types_generated/Libraries/BatchedBridge/MessageQueue.d.ts +39 -0
  1508. package/types_generated/Libraries/BatchedBridge/NativeModules.d.ts +20 -0
  1509. package/types_generated/Libraries/Blob/Blob.d.ts +80 -0
  1510. package/types_generated/Libraries/Blob/BlobTypes.d.ts +27 -0
  1511. package/types_generated/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +220 -0
  1512. package/types_generated/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.d.ts +20 -0
  1513. package/types_generated/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +84 -0
  1514. package/types_generated/Libraries/Components/Button.d.ts +251 -0
  1515. package/types_generated/Libraries/Components/Clipboard/Clipboard.d.ts +38 -0
  1516. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +17 -0
  1517. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidFallback.d.ts +27 -0
  1518. package/types_generated/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.d.ts +176 -0
  1519. package/types_generated/Libraries/Components/Keyboard/Keyboard.d.ts +146 -0
  1520. package/types_generated/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +73 -0
  1521. package/types_generated/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +24 -0
  1522. package/types_generated/Libraries/Components/Pressable/Pressable.d.ts +141 -0
  1523. package/types_generated/Libraries/Components/Pressable/useAndroidRippleForView.d.ts +45 -0
  1524. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +32 -0
  1525. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.d.ts +14 -0
  1526. package/types_generated/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.d.ts +50 -0
  1527. package/types_generated/Libraries/Components/RefreshControl/RefreshControl.d.ts +113 -0
  1528. package/types_generated/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +33 -0
  1529. package/types_generated/Libraries/Components/ScrollView/ScrollView.d.ts +560 -0
  1530. package/types_generated/Libraries/Components/ScrollView/ScrollViewContext.d.ts +24 -0
  1531. package/types_generated/Libraries/Components/ScrollView/ScrollViewNativeComponent.d.ts +21 -0
  1532. package/types_generated/Libraries/Components/ScrollView/ScrollViewNativeComponentType.d.ts +134 -0
  1533. package/types_generated/Libraries/Components/ScrollView/ScrollViewStickyHeader.d.ts +36 -0
  1534. package/types_generated/Libraries/Components/StatusBar/StatusBar.d.ts +222 -0
  1535. package/types_generated/Libraries/Components/Switch/AndroidSwitchNativeComponent.d.ts +14 -0
  1536. package/types_generated/Libraries/Components/Switch/Switch.d.ts +138 -0
  1537. package/types_generated/Libraries/Components/Switch/SwitchNativeComponent.d.ts +14 -0
  1538. package/types_generated/Libraries/Components/TV/TVEventControl.d.ts +23 -0
  1539. package/types_generated/Libraries/Components/TV/TVEventHandler.d.ts +21 -0
  1540. package/types_generated/Libraries/Components/TV/TVFocusGuideView.d.ts +71 -0
  1541. package/types_generated/Libraries/Components/TV/TVTextScrollView.d.ts +97 -0
  1542. package/types_generated/Libraries/Components/TV/TVViewPropTypes.d.ts +79 -0
  1543. package/types_generated/Libraries/Components/TV/tagForComponentOrHandle.d.ts +24 -0
  1544. package/types_generated/Libraries/Components/TV/useTVEventHandler.d.ts +20 -0
  1545. package/types_generated/Libraries/Components/TextInput/InputAccessoryView.d.ts +86 -0
  1546. package/types_generated/Libraries/Components/TextInput/TextInput.d.ts +47 -0
  1547. package/types_generated/Libraries/Components/TextInput/TextInput.flow.d.ts +984 -0
  1548. package/types_generated/Libraries/Components/TextInput/TextInputState.d.ts +54 -0
  1549. package/types_generated/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +99 -0
  1550. package/types_generated/Libraries/Components/Touchable/Touchable.d.ts +257 -0
  1551. package/types_generated/Libraries/Components/Touchable/TouchableHighlight.d.ts +71 -0
  1552. package/types_generated/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +228 -0
  1553. package/types_generated/Libraries/Components/Touchable/TouchableOpacity.d.ts +76 -0
  1554. package/types_generated/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +121 -0
  1555. package/types_generated/Libraries/Components/View/View.d.ts +30 -0
  1556. package/types_generated/Libraries/Components/View/ViewAccessibility.d.ts +415 -0
  1557. package/types_generated/Libraries/Components/View/ViewNativeComponent.d.ts +29 -0
  1558. package/types_generated/Libraries/Components/View/ViewPropTypes.d.ts +431 -0
  1559. package/types_generated/Libraries/Core/Devtools/symbolicateStackTrace.d.ts +27 -0
  1560. package/types_generated/Libraries/Core/ExceptionsManager.d.ts +43 -0
  1561. package/types_generated/Libraries/Core/ExtendedError.d.ts +26 -0
  1562. package/types_generated/Libraries/Core/NativeExceptionsManager.d.ts +17 -0
  1563. package/types_generated/Libraries/Core/RawEventEmitter.d.ts +26 -0
  1564. package/types_generated/Libraries/Core/ReactFiberErrorDialog.d.ts +27 -0
  1565. package/types_generated/Libraries/Core/registerCallableModule.d.ts +18 -0
  1566. package/types_generated/Libraries/EventEmitter/NativeEventEmitter.d.ts +42 -0
  1567. package/types_generated/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +19 -0
  1568. package/types_generated/Libraries/EventEmitter/RCTEventEmitter.d.ts +18 -0
  1569. package/types_generated/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +21 -0
  1570. package/types_generated/Libraries/Image/AssetSourceResolver.d.ts +71 -0
  1571. package/types_generated/Libraries/Image/Image.d.ts +18 -0
  1572. package/types_generated/Libraries/Image/ImageBackground.d.ts +44 -0
  1573. package/types_generated/Libraries/Image/ImageProps.d.ts +512 -0
  1574. package/types_generated/Libraries/Image/ImageResizeMode.d.ts +17 -0
  1575. package/types_generated/Libraries/Image/ImageSource.d.ts +94 -0
  1576. package/types_generated/Libraries/Image/ImageTypes.flow.d.ts +64 -0
  1577. package/types_generated/Libraries/Image/ImageViewNativeComponent.d.ts +68 -0
  1578. package/types_generated/Libraries/Image/TextInlineImageNativeComponent.d.ts +42 -0
  1579. package/types_generated/Libraries/Interaction/InteractionManager.d.ts +100 -0
  1580. package/types_generated/Libraries/Interaction/PanResponder.d.ts +231 -0
  1581. package/types_generated/Libraries/Interaction/TaskQueue.d.ts +73 -0
  1582. package/types_generated/Libraries/LayoutAnimation/LayoutAnimation.d.ts +76 -0
  1583. package/types_generated/Libraries/Linking/Linking.d.ts +68 -0
  1584. package/types_generated/Libraries/Lists/FlatList.d.ts +317 -0
  1585. package/types_generated/Libraries/Lists/SectionList.d.ts +172 -0
  1586. package/types_generated/Libraries/Lists/VirtualizedList.d.ts +19 -0
  1587. package/types_generated/Libraries/Lists/VirtualizedSectionList.d.ts +19 -0
  1588. package/types_generated/Libraries/LogBox/Data/LogBoxData.d.ts +78 -0
  1589. package/types_generated/Libraries/LogBox/Data/LogBoxLog.d.ts +88 -0
  1590. package/types_generated/Libraries/LogBox/Data/LogBoxSymbolication.d.ts +17 -0
  1591. package/types_generated/Libraries/LogBox/Data/parseLogBoxLog.d.ts +53 -0
  1592. package/types_generated/Libraries/LogBox/LogBox.d.ts +29 -0
  1593. package/types_generated/Libraries/Modal/Modal.d.ts +110 -0
  1594. package/types_generated/Libraries/NativeModules/specs/NativeDialogManagerAndroid.d.ts +17 -0
  1595. package/types_generated/Libraries/Network/FormData.d.ts +56 -0
  1596. package/types_generated/Libraries/Network/RCTNetworking.d.ts +25 -0
  1597. package/types_generated/Libraries/Network/RCTNetworkingEventDefinitions.flow.d.ts +22 -0
  1598. package/types_generated/Libraries/Network/XMLHttpRequest.d.ts +96 -0
  1599. package/types_generated/Libraries/Network/convertRequestBody.d.ts +21 -0
  1600. package/types_generated/Libraries/Performance/Systrace.d.ts +61 -0
  1601. package/types_generated/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +129 -0
  1602. package/types_generated/Libraries/Pressability/Pressability.d.ts +241 -0
  1603. package/types_generated/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +323 -0
  1604. package/types_generated/Libraries/ReactNative/AppRegistry.d.ts +14 -0
  1605. package/types_generated/Libraries/ReactNative/AppRegistry.flow.d.ts +44 -0
  1606. package/types_generated/Libraries/ReactNative/AppRegistryImpl.d.ts +73 -0
  1607. package/types_generated/Libraries/ReactNative/DisplayMode.d.ts +24 -0
  1608. package/types_generated/Libraries/ReactNative/I18nManager.d.ts +23 -0
  1609. package/types_generated/Libraries/ReactNative/NativeI18nManager.d.ts +17 -0
  1610. package/types_generated/Libraries/ReactNative/NativeUIManager.d.ts +17 -0
  1611. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricHostComponent.d.ts +28 -0
  1612. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.d.ts +32 -0
  1613. package/types_generated/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.d.ts +15 -0
  1614. package/types_generated/Libraries/ReactNative/RendererImplementation.d.ts +37 -0
  1615. package/types_generated/Libraries/ReactNative/RendererProxy.d.ts +28 -0
  1616. package/types_generated/Libraries/ReactNative/RootTag.d.ts +22 -0
  1617. package/types_generated/Libraries/ReactNative/UIManager.d.ts +17 -0
  1618. package/types_generated/Libraries/ReactNative/requireNativeComponent.d.ts +25 -0
  1619. package/types_generated/Libraries/ReactPrivate/ReactNativePrivateInterface.d.ts +33 -0
  1620. package/types_generated/Libraries/Renderer/shims/ReactNativeTypes.d.ts +169 -0
  1621. package/types_generated/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.d.ts +41 -0
  1622. package/types_generated/Libraries/Settings/Settings.d.ts +21 -0
  1623. package/types_generated/Libraries/Share/Share.d.ts +85 -0
  1624. package/types_generated/Libraries/StyleSheet/EdgeInsetsPropType.d.ts +15 -0
  1625. package/types_generated/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +17 -0
  1626. package/types_generated/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +27 -0
  1627. package/types_generated/Libraries/StyleSheet/PointPropType.d.ts +16 -0
  1628. package/types_generated/Libraries/StyleSheet/Rect.d.ts +22 -0
  1629. package/types_generated/Libraries/StyleSheet/StyleSheet.d.ts +153 -0
  1630. package/types_generated/Libraries/StyleSheet/StyleSheetExports.d.ts +107 -0
  1631. package/types_generated/Libraries/StyleSheet/StyleSheetTypes.d.ts +826 -0
  1632. package/types_generated/Libraries/StyleSheet/flattenStyle.d.ts +19 -0
  1633. package/types_generated/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.d.ts +17 -0
  1634. package/types_generated/Libraries/StyleSheet/private/_TransformStyle.d.ts +76 -0
  1635. package/types_generated/Libraries/StyleSheet/processColor.d.ts +18 -0
  1636. package/types_generated/Libraries/Text/Text.d.ts +30 -0
  1637. package/types_generated/Libraries/Text/TextAncestorContext.d.ts +20 -0
  1638. package/types_generated/Libraries/Text/TextNativeComponent.d.ts +31 -0
  1639. package/types_generated/Libraries/Text/TextProps.d.ts +220 -0
  1640. package/types_generated/Libraries/TurboModule/RCTExport.d.ts +35 -0
  1641. package/types_generated/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
  1642. package/types_generated/Libraries/Types/CodegenTypes.d.ts +24 -0
  1643. package/types_generated/Libraries/Types/CodegenTypesNamespace.d.ts +14 -0
  1644. package/types_generated/Libraries/Types/CoreEventTypes.d.ts +327 -0
  1645. package/types_generated/Libraries/Types/RootTagTypes.d.ts +13 -0
  1646. package/types_generated/Libraries/Types/UIManagerJSInterface.d.ts +17 -0
  1647. package/types_generated/Libraries/UTFSequence.d.ts +39 -0
  1648. package/types_generated/Libraries/Utilities/Appearance.d.ts +31 -0
  1649. package/types_generated/Libraries/Utilities/BackHandler.d.ts +23 -0
  1650. package/types_generated/Libraries/Utilities/DevSettings.d.ts +34 -0
  1651. package/types_generated/Libraries/Utilities/DeviceInfo.d.ts +17 -0
  1652. package/types_generated/Libraries/Utilities/Dimensions.d.ts +54 -0
  1653. package/types_generated/Libraries/Utilities/IPerformanceLogger.d.ts +51 -0
  1654. package/types_generated/Libraries/Utilities/NativeAppearance.d.ts +17 -0
  1655. package/types_generated/Libraries/Utilities/NativeDeviceInfo.d.ts +14 -0
  1656. package/types_generated/Libraries/Utilities/PixelRatio.d.ts +110 -0
  1657. package/types_generated/Libraries/Utilities/Platform.d.ts +16 -0
  1658. package/types_generated/Libraries/Utilities/PlatformTypes.d.ts +134 -0
  1659. package/types_generated/Libraries/Utilities/codegenNativeCommands.d.ts +19 -0
  1660. package/types_generated/Libraries/Utilities/codegenNativeComponent.d.ts +24 -0
  1661. package/types_generated/Libraries/Utilities/createPerformanceLogger.d.ts +23 -0
  1662. package/types_generated/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.d.ts +33 -0
  1663. package/types_generated/Libraries/Utilities/differ/deepDiffer.d.ts +19 -0
  1664. package/types_generated/Libraries/Utilities/useColorScheme.d.ts +15 -0
  1665. package/types_generated/Libraries/Utilities/useWindowDimensions.d.ts +15 -0
  1666. package/types_generated/Libraries/Vibration/Vibration.d.ts +29 -0
  1667. package/types_generated/Libraries/vendor/core/ErrorUtils.d.ts +39 -0
  1668. package/types_generated/Libraries/vendor/emitter/EventEmitter.d.ts +67 -0
  1669. package/types_generated/index.d.ts +164 -0
  1670. package/types_generated/src/private/components/virtualview/VirtualView.d.ts +70 -0
  1671. package/types_generated/src/private/components/virtualview/VirtualViewNativeComponent.d.ts +97 -0
  1672. package/types_generated/src/private/devsupport/devmenu/DevMenu.d.ts +28 -0
  1673. package/types_generated/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.d.ts +53 -0
  1674. package/types_generated/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.d.ts +36 -0
  1675. package/types_generated/src/private/specs_DEPRECATED/components/SwitchNativeComponent.d.ts +51 -0
  1676. package/types_generated/src/private/specs_DEPRECATED/modules/NativeAppearance.d.ts +26 -0
  1677. package/types_generated/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.d.ts +46 -0
  1678. package/types_generated/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.d.ts +37 -0
  1679. package/types_generated/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.d.ts +45 -0
  1680. package/types_generated/src/private/specs_DEPRECATED/modules/NativeI18nManager.d.ts +27 -0
  1681. package/types_generated/src/private/specs_DEPRECATED/modules/NativeUIManager.d.ts +109 -0
  1682. package/types_generated/src/private/styles/composeStyles.d.ts +19 -0
  1683. package/types_generated/src/private/types/HostComponent.d.ts +19 -0
  1684. package/types_generated/src/private/types/HostInstance.d.ts +91 -0
  1685. package/types_generated/src/private/webapis/dom/events/CustomEvent.d.ts +27 -0
  1686. package/types_generated/src/private/webapis/dom/events/Event.d.ts +58 -0
  1687. package/types_generated/src/private/webapis/dom/events/EventTarget.d.ts +48 -0
  1688. package/types_generated/src/private/webapis/dom/nodes/ReactNativeDocument.d.ts +32 -0
  1689. package/types_generated/src/private/webapis/dom/nodes/ReactNativeElement.d.ts +36 -0
  1690. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyCharacterData.d.ts +30 -0
  1691. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyElement.d.ts +54 -0
  1692. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyNode.d.ts +126 -0
  1693. package/types_generated/src/private/webapis/dom/nodes/ReadOnlyText.d.ts +24 -0
  1694. package/types_generated/src/private/webapis/dom/nodes/internals/NodeInternals.d.ts +29 -0
  1695. package/types_generated/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.d.ts +23 -0
  1696. package/types_generated/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.d.ts +22 -0
  1697. package/types_generated/src/private/webapis/dom/nodes/specs/NativeDOM.d.ts +222 -0
  1698. package/types_generated/src/private/webapis/dom/oldstylecollections/HTMLCollection.d.ts +22 -0
  1699. package/types_generated/src/private/webapis/dom/oldstylecollections/NodeList.d.ts +25 -0
  1700. package/types_generated/src/private/webapis/geometry/DOMRect.d.ts +46 -0
  1701. package/types_generated/src/private/webapis/geometry/DOMRectReadOnly.d.ts +73 -0
  1702. package/types_generated/src/private/webapis/utils/ArrayLikeUtils.d.ts +27 -0
  1703. package/types_generated/tsconfig.json +3 -0
  1704. package/types_generated/tsconfig.test.json +16 -0
  1705. package/Libraries/BugReporting/BugReporting.js +0 -140
  1706. package/Libraries/BugReporting/NativeBugReporting.js +0 -13
  1707. package/Libraries/BugReporting/dumpReactTree.js +0 -151
  1708. package/Libraries/BugReporting/getReactData.js +0 -187
  1709. package/Libraries/Interaction/JSEventLoopWatchdog.js +0 -88
  1710. package/React/CxxBridge/JSCExecutorFactory.h +0 -27
  1711. package/React/CxxBridge/JSCExecutorFactory.mm +0 -24
  1712. package/React/Runtime/RCTJscInstanceFactory.mm +0 -20
  1713. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +0 -222
  1714. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.kt +0 -21
  1715. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +0 -144
  1716. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +0 -420
  1717. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +0 -270
  1718. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +0 -421
  1719. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +0 -269
  1720. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.java +0 -413
  1721. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaScriptModuleRegistry.java +0 -102
  1722. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +0 -247
  1723. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleSpec.java +0 -75
  1724. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +0 -169
  1725. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.java +0 -257
  1726. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactApplicationContext.java +0 -25
  1727. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +0 -44
  1728. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.java +0 -75
  1729. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +0 -233
  1730. package/ReactAndroid/src/main/java/com/facebook/react/common/MapBuilder.java +0 -136
  1731. package/ReactAndroid/src/main/java/com/facebook/react/common/annotations/DeprecatedInNewArchitecture.kt +0 -16
  1732. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +0 -410
  1733. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +0 -474
  1734. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutor.kt +0 -41
  1735. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/JSCExecutorFactory.kt +0 -44
  1736. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/OkHttpCompat.java +0 -38
  1737. package/ReactAndroid/src/main/java/com/facebook/react/runtime/JSCInstance.kt +0 -24
  1738. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +0 -1825
  1739. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +0 -247
  1740. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +0 -203
  1741. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +0 -235
  1742. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +0 -244
  1743. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +0 -190
  1744. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +0 -372
  1745. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +0 -417
  1746. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +0 -383
  1747. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +0 -235
  1748. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +0 -208
  1749. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +0 -968
  1750. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +0 -1559
  1751. package/ReactAndroid/src/main/jni/react/jscexecutor/CMakeLists.txt +0 -37
  1752. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +0 -74
  1753. package/ReactAndroid/src/main/jni/react/jsctooling/CMakeLists.txt +0 -36
  1754. package/ReactAndroid/src/main/jni/react/runtime/jsc/jni/CMakeLists.txt +0 -26
  1755. package/ReactAndroid/src/main/jni/react/runtime/jsc/jni/OnLoad.cpp +0 -48
  1756. package/ReactCommon/React-rncore.podspec +0 -52
  1757. package/ReactCommon/cxxreact/SampleCxxModule.cpp +0 -182
  1758. package/ReactCommon/cxxreact/SampleCxxModule.h +0 -59
  1759. package/ReactCommon/jsc/CMakeLists.txt +0 -34
  1760. package/ReactCommon/jsc/React-jsc.podspec +0 -37
  1761. package/ReactCommon/react/nativemodule/fantomforcedclonecommithook/NativeFantomForcedCloneCommitHook.cpp +0 -84
  1762. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboCxxModule.h +0 -18
  1763. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboCxxModule.mm +0 -31
  1764. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/SampleTurboCxxModuleLegacyImpl.cpp +0 -177
  1765. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/SampleTurboCxxModuleLegacyImpl.h +0 -46
  1766. package/ReactCommon/react/renderer/components/rncore/Props.cpp +0 -156
  1767. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +0 -22
  1768. package/jest/mockModal.js +0 -32
  1769. package/jest/mockScrollView.js +0 -35
  1770. package/scripts/codegen/generate-artifacts-executor/generateRNCoreComponentsIOS.js +0 -38
  1771. package/src/private/specs_DEPRECATED/modules/NativeBugReporting.js +0 -20
  1772. package/types/tsconfig.test.json +0 -16
  1773. package/types/tslint.json +0 -24
@@ -1,1825 +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.runtime;
9
-
10
- import static com.facebook.infer.annotation.Assertions.assertNotNull;
11
- import static com.facebook.infer.annotation.ThreadConfined.UI;
12
- import static java.lang.Boolean.FALSE;
13
- import static java.lang.Boolean.TRUE;
14
-
15
- import android.app.Activity;
16
- import android.content.Context;
17
- import android.content.Intent;
18
- import android.net.Uri;
19
- import android.nfc.NfcAdapter;
20
- import android.os.Bundle;
21
- import androidx.annotation.Nullable;
22
- import androidx.annotation.VisibleForTesting;
23
- import com.facebook.common.logging.FLog;
24
- import com.facebook.infer.annotation.Assertions;
25
- import com.facebook.infer.annotation.Nullsafe;
26
- import com.facebook.infer.annotation.ThreadConfined;
27
- import com.facebook.infer.annotation.ThreadSafe;
28
- import com.facebook.proguard.annotations.DoNotStrip;
29
- import com.facebook.react.MemoryPressureRouter;
30
- import com.facebook.react.ReactHost;
31
- import com.facebook.react.ReactInstanceEventListener;
32
- import com.facebook.react.bridge.Callback;
33
- import com.facebook.react.bridge.JSBundleLoader;
34
- import com.facebook.react.bridge.JavaScriptContextHolder;
35
- import com.facebook.react.bridge.MemoryPressureListener;
36
- import com.facebook.react.bridge.NativeArray;
37
- import com.facebook.react.bridge.NativeModule;
38
- import com.facebook.react.bridge.ReactContext;
39
- import com.facebook.react.bridge.ReactMarker;
40
- import com.facebook.react.bridge.ReactMarkerConstants;
41
- import com.facebook.react.bridge.ReactNoCrashBridgeNotAllowedSoftException;
42
- import com.facebook.react.bridge.ReactNoCrashSoftException;
43
- import com.facebook.react.bridge.ReactSoftExceptionLogger;
44
- import com.facebook.react.bridge.RuntimeExecutor;
45
- import com.facebook.react.bridge.UiThreadUtil;
46
- import com.facebook.react.bridge.queue.ReactQueueConfiguration;
47
- import com.facebook.react.common.LifecycleState;
48
- import com.facebook.react.common.build.ReactBuildConfig;
49
- import com.facebook.react.devsupport.DefaultDevSupportManagerFactory;
50
- import com.facebook.react.devsupport.DevSupportManagerBase;
51
- import com.facebook.react.devsupport.DevSupportManagerFactory;
52
- import com.facebook.react.devsupport.InspectorFlags;
53
- import com.facebook.react.devsupport.inspector.InspectorNetworkHelper;
54
- import com.facebook.react.devsupport.inspector.InspectorNetworkRequestListener;
55
- import com.facebook.react.devsupport.interfaces.BundleLoadCallback;
56
- import com.facebook.react.devsupport.interfaces.DevSupportManager;
57
- import com.facebook.react.devsupport.interfaces.DevSupportManager.PausedInDebuggerOverlayCommandListener;
58
- import com.facebook.react.fabric.ComponentFactory;
59
- import com.facebook.react.fabric.FabricUIManager;
60
- import com.facebook.react.interfaces.TaskInterface;
61
- import com.facebook.react.interfaces.fabric.ReactSurface;
62
- import com.facebook.react.internal.featureflags.ReactNativeFeatureFlags;
63
- import com.facebook.react.internal.featureflags.ReactNativeNewArchitectureFeatureFlags;
64
- import com.facebook.react.modules.appearance.AppearanceModule;
65
- import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler;
66
- import com.facebook.react.modules.core.DeviceEventManagerModule;
67
- import com.facebook.react.modules.systeminfo.AndroidInfoHelpers;
68
- import com.facebook.react.runtime.internal.bolts.Continuation;
69
- import com.facebook.react.runtime.internal.bolts.Task;
70
- import com.facebook.react.runtime.internal.bolts.TaskCompletionSource;
71
- import com.facebook.react.turbomodule.core.interfaces.CallInvokerHolder;
72
- import com.facebook.react.uimanager.DisplayMetricsHolder;
73
- import com.facebook.react.uimanager.UIManagerModule;
74
- import com.facebook.react.uimanager.events.BlackHoleEventDispatcher;
75
- import com.facebook.react.uimanager.events.EventDispatcher;
76
- import com.facebook.react.views.imagehelper.ResourceDrawableIdHelper;
77
- import java.lang.ref.WeakReference;
78
- import java.util.ArrayList;
79
- import java.util.Collection;
80
- import java.util.HashSet;
81
- import java.util.List;
82
- import java.util.Map;
83
- import java.util.Set;
84
- import java.util.concurrent.CopyOnWriteArrayList;
85
- import java.util.concurrent.Executor;
86
- import java.util.concurrent.Executors;
87
- import java.util.concurrent.atomic.AtomicInteger;
88
- import java.util.concurrent.atomic.AtomicReference;
89
- import kotlin.Unit;
90
- import kotlin.jvm.functions.Function0;
91
- import kotlin.jvm.functions.Function1;
92
-
93
- /**
94
- * A ReactHost is an object that manages a single {@link ReactInstance}. A ReactHost can be
95
- * constructed without initializing the ReactInstance, and it will continue to exist after the
96
- * instance is destroyed. This class ensures safe access to the ReactInstance and the JS runtime;
97
- * methods that operate on the instance use Bolts Tasks to defer the operation until the instance
98
- * has been initialized. They also return a Task so the caller can be notified of completion.
99
- *
100
- * @see <a href="https://github.com/BoltsFramework/Bolts-Android#tasks">Bolts Android</a>
101
- */
102
- @DoNotStrip
103
- @ThreadSafe
104
- @Nullsafe(Nullsafe.Mode.LOCAL)
105
- public class ReactHostImpl implements ReactHost {
106
- private static final String TAG = "ReactHost";
107
- private static final int BRIDGELESS_MARKER_INSTANCE_KEY = 1;
108
- private static final AtomicInteger mCounter = new AtomicInteger(0);
109
-
110
- private final Context mContext;
111
- private final ReactHostDelegate mReactHostDelegate;
112
- private final ComponentFactory mComponentFactory;
113
- private DevSupportManager mDevSupportManager;
114
- private final Executor mBGExecutor;
115
- private final Executor mUIExecutor;
116
- private final Set<ReactSurfaceImpl> mAttachedSurfaces = new HashSet<>();
117
- private final MemoryPressureRouter mMemoryPressureRouter;
118
- private final boolean mAllowPackagerServerAccess;
119
- private final boolean mUseDevSupport;
120
-
121
- // todo: T192399917 This no longer needs to store the react instance
122
- private final BridgelessAtomicRef<Task<ReactInstance>> mCreateReactInstanceTaskRef =
123
- new BridgelessAtomicRef<>(Task.forResult(null));
124
- private @Nullable ReactInstance mReactInstance;
125
-
126
- private final BridgelessAtomicRef<BridgelessReactContext> mBridgelessReactContextRef =
127
- new BridgelessAtomicRef<>();
128
-
129
- private final AtomicReference<Activity> mActivity = new AtomicReference<>();
130
- private final AtomicReference<WeakReference<Activity>> mLastUsedActivity =
131
- new AtomicReference<>(new WeakReference<>(null));
132
- private final BridgelessReactStateTracker mBridgelessReactStateTracker =
133
- new BridgelessReactStateTracker(ReactBuildConfig.DEBUG);
134
- private final ReactLifecycleStateManager mReactLifecycleStateManager =
135
- new ReactLifecycleStateManager(mBridgelessReactStateTracker);
136
- private final int mId = mCounter.getAndIncrement();
137
- private @Nullable MemoryPressureListener mMemoryPressureListener;
138
- private @Nullable DefaultHardwareBackBtnHandler mDefaultHardwareBackBtnHandler;
139
-
140
- private final List<ReactInstanceEventListener> mReactInstanceEventListeners =
141
- new CopyOnWriteArrayList<>();
142
- private final List<Function0<Unit>> mBeforeDestroyListeners = new CopyOnWriteArrayList<>();
143
-
144
- private @Nullable ReactHostInspectorTarget mReactHostInspectorTarget;
145
-
146
- private volatile boolean mHostInvalidated = false;
147
-
148
- public ReactHostImpl(
149
- Context context,
150
- ReactHostDelegate delegate,
151
- ComponentFactory componentFactory,
152
- boolean allowPackagerServerAccess,
153
- boolean useDevSupport) {
154
- this(
155
- context,
156
- delegate,
157
- componentFactory,
158
- Executors.newSingleThreadExecutor(),
159
- Task.UI_THREAD_EXECUTOR,
160
- allowPackagerServerAccess,
161
- useDevSupport);
162
- }
163
-
164
- public ReactHostImpl(
165
- Context context,
166
- ReactHostDelegate delegate,
167
- ComponentFactory componentFactory,
168
- Executor bgExecutor,
169
- Executor uiExecutor,
170
- boolean allowPackagerServerAccess,
171
- boolean useDevSupport) {
172
- this(
173
- context,
174
- delegate,
175
- componentFactory,
176
- bgExecutor,
177
- uiExecutor,
178
- allowPackagerServerAccess,
179
- useDevSupport,
180
- null);
181
- }
182
-
183
- public ReactHostImpl(
184
- Context context,
185
- ReactHostDelegate delegate,
186
- ComponentFactory componentFactory,
187
- Executor bgExecutor,
188
- Executor uiExecutor,
189
- boolean allowPackagerServerAccess,
190
- boolean useDevSupport,
191
- @Nullable DevSupportManagerFactory devSupportManagerFactory) {
192
- mContext = context;
193
- mReactHostDelegate = delegate;
194
- mComponentFactory = componentFactory;
195
- mBGExecutor = bgExecutor;
196
- mUIExecutor = uiExecutor;
197
- mMemoryPressureRouter = new MemoryPressureRouter(context);
198
- mAllowPackagerServerAccess = allowPackagerServerAccess;
199
- mUseDevSupport = useDevSupport;
200
- if (devSupportManagerFactory == null) {
201
- devSupportManagerFactory = new DefaultDevSupportManagerFactory();
202
- }
203
-
204
- mDevSupportManager =
205
- devSupportManagerFactory.create(
206
- /* applicationContext */ context.getApplicationContext(),
207
- /* reactInstanceManagerHelper */ new ReactHostImplDevHelper(ReactHostImpl.this),
208
- /* packagerPathForJSBundleName */ mReactHostDelegate.getJsMainModulePath(),
209
- /* enableOnCreate */ true,
210
- /* redBoxHandler */ null,
211
- /* devBundleDownloadListener */ null,
212
- /* minNumShakes */ 2,
213
- /* customPackagerCommandHandlers */ null,
214
- /* surfaceDelegateFactory */ null,
215
- /* devLoadingViewManager */ null,
216
- /* pausedInDebuggerOverlayManager */ null,
217
- mUseDevSupport);
218
- }
219
-
220
- @Override
221
- public LifecycleState getLifecycleState() {
222
- return mReactLifecycleStateManager.getLifecycleState();
223
- }
224
-
225
- /**
226
- * This function can be used to initialize the ReactInstance in a background thread before a
227
- * surface needs to be rendered. It is not necessary to call this function; startSurface() will
228
- * initialize the ReactInstance if it hasn't been preloaded.
229
- *
230
- * @return A Task that completes when the instance is initialized. The task will be faulted if any
231
- * errors occur during initialization, and will be cancelled if ReactHost.destroy() is called
232
- * before it completes.
233
- */
234
- @Override
235
- public TaskInterface<Void> start() {
236
- return Task.call(this::getOrCreateStartTask, mBGExecutor);
237
- }
238
-
239
- /** Initialize and run a React Native surface in a background without mounting real views. */
240
- /* package */
241
- TaskInterface<Void> prerenderSurface(final ReactSurfaceImpl surface) {
242
- final String method = "prerenderSurface(surfaceId = " + surface.getSurfaceID() + ")";
243
- log(method, "Schedule");
244
-
245
- attachSurface(surface);
246
- return callAfterGetOrCreateReactInstance(
247
- method,
248
- reactInstance -> {
249
- log(method, "Execute");
250
- reactInstance.prerenderSurface(surface);
251
- },
252
- mBGExecutor);
253
- }
254
-
255
- /**
256
- * Start rendering a React Native surface on screen.
257
- *
258
- * @param surface The ReactSurface to render
259
- * @return A Task that will complete when startSurface has been called.
260
- */
261
- /** package */
262
- TaskInterface<Void> startSurface(final ReactSurfaceImpl surface) {
263
- final String method = "startSurface(surfaceId = " + surface.getSurfaceID() + ")";
264
- log(method, "Schedule");
265
-
266
- attachSurface(surface);
267
- return callAfterGetOrCreateReactInstance(
268
- method,
269
- reactInstance -> {
270
- log(method, "Execute");
271
- reactInstance.startSurface(surface);
272
- },
273
- mBGExecutor);
274
- }
275
-
276
- /**
277
- * Stop rendering a React Native surface.
278
- *
279
- * @param surface The surface to stop
280
- * @return A Task that will complete when stopSurface has been called.
281
- */
282
- /** package */
283
- TaskInterface<Void> stopSurface(final ReactSurfaceImpl surface) {
284
- final String method = "stopSurface(surfaceId = " + surface.getSurfaceID() + ")";
285
- log(method, "Schedule");
286
-
287
- detachSurface(surface);
288
- return callWithExistingReactInstance(
289
- method,
290
- reactInstance -> {
291
- log(method, "Execute");
292
- reactInstance.stopSurface(surface);
293
- },
294
- mBGExecutor)
295
- .makeVoid();
296
- }
297
-
298
- /**
299
- * To be called when the host activity is resumed.
300
- *
301
- * @param activity The host activity
302
- */
303
- @ThreadConfined(UI)
304
- @Override
305
- public void onHostResume(
306
- final @Nullable Activity activity,
307
- @Nullable DefaultHardwareBackBtnHandler defaultBackButtonImpl) {
308
- mDefaultHardwareBackBtnHandler = defaultBackButtonImpl;
309
- onHostResume(activity);
310
- }
311
-
312
- @ThreadConfined(UI)
313
- @Override
314
- public void onHostResume(final @Nullable Activity activity) {
315
- final String method = "onHostResume(activity)";
316
- log(method);
317
-
318
- setCurrentActivity(activity);
319
- ReactContext currentContext = getCurrentReactContext();
320
-
321
- maybeEnableDevSupport(true);
322
- mReactLifecycleStateManager.moveToOnHostResume(currentContext, getCurrentActivity());
323
- }
324
-
325
- @ThreadConfined(UI)
326
- @Override
327
- public void onHostLeaveHint(final @Nullable Activity activity) {
328
- final String method = "onUserLeaveHint(activity)";
329
- log(method);
330
-
331
- ReactContext currentContext = getCurrentReactContext();
332
- if (currentContext != null) {
333
- currentContext.onUserLeaveHint(activity);
334
- }
335
- }
336
-
337
- @ThreadConfined(UI)
338
- @Override
339
- public void onHostPause(final @Nullable Activity activity) {
340
- final String method = "onHostPause(activity)";
341
- log(method);
342
-
343
- ReactContext currentContext = getCurrentReactContext();
344
-
345
- Activity currentActivity = getCurrentActivity();
346
- if (currentActivity != null) {
347
- String currentActivityClass = currentActivity.getClass().getSimpleName();
348
- String activityClass = activity == null ? "null" : activity.getClass().getSimpleName();
349
- Assertions.assertCondition(
350
- activity == currentActivity,
351
- "Pausing an activity that is not the current activity, this is incorrect! "
352
- + "Current activity: "
353
- + currentActivityClass
354
- + " "
355
- + "Paused activity: "
356
- + activityClass);
357
- }
358
-
359
- maybeEnableDevSupport(false);
360
- mDefaultHardwareBackBtnHandler = null;
361
- mReactLifecycleStateManager.moveToOnHostPause(currentContext, currentActivity);
362
- }
363
-
364
- /** To be called when the host activity is paused. */
365
- @ThreadConfined(UI)
366
- @Override
367
- public void onHostPause() {
368
- final String method = "onHostPause()";
369
- log(method);
370
-
371
- ReactContext currentContext = getCurrentReactContext();
372
-
373
- maybeEnableDevSupport(false);
374
- mDefaultHardwareBackBtnHandler = null;
375
- mReactLifecycleStateManager.moveToOnHostPause(currentContext, getCurrentActivity());
376
- }
377
-
378
- /** To be called when the host activity is destroyed. */
379
- @ThreadConfined(UI)
380
- @Override
381
- public void onHostDestroy() {
382
- final String method = "onHostDestroy()";
383
- log(method);
384
-
385
- maybeEnableDevSupport(false);
386
- moveToHostDestroy(getCurrentReactContext());
387
- }
388
-
389
- @ThreadConfined(UI)
390
- @Override
391
- public void onHostDestroy(@Nullable Activity activity) {
392
- final String method = "onHostDestroy(activity)";
393
- log(method);
394
-
395
- Activity currentActivity = getCurrentActivity();
396
-
397
- if (currentActivity == activity) {
398
- maybeEnableDevSupport(false);
399
- moveToHostDestroy(getCurrentReactContext());
400
- }
401
- }
402
-
403
- private void maybeEnableDevSupport(boolean enabled) {
404
- if (mUseDevSupport) {
405
- mDevSupportManager.setDevSupportEnabled(enabled);
406
- }
407
- }
408
-
409
- /**
410
- * Returns current ReactContext which could be nullable if ReactInstance hasn't been created.
411
- *
412
- * @return The {@link BridgelessReactContext} associated with ReactInstance.
413
- */
414
- @Override
415
- public @Nullable ReactContext getCurrentReactContext() {
416
- return mBridgelessReactContextRef.getNullable();
417
- }
418
-
419
- @Override
420
- public DevSupportManager getDevSupportManager() {
421
- return assertNotNull(mDevSupportManager);
422
- }
423
-
424
- @Override
425
- public ReactSurface createSurface(
426
- Context context, String moduleName, @Nullable Bundle initialProps) {
427
- ReactSurfaceImpl surface = new ReactSurfaceImpl(context, moduleName, initialProps);
428
- ReactSurfaceView surfaceView = new ReactSurfaceView(context, surface);
429
- surfaceView.setShouldLogContentAppeared(true);
430
- surface.attachView(surfaceView);
431
- surface.attach(this);
432
- return surface;
433
- }
434
-
435
- @Override
436
- public MemoryPressureRouter getMemoryPressureRouter() {
437
- return mMemoryPressureRouter;
438
- }
439
-
440
- /* package */ boolean isInstanceInitialized() {
441
- return mReactInstance != null;
442
- }
443
-
444
- @ThreadConfined(UI)
445
- @Override
446
- public boolean onBackPressed() {
447
- UiThreadUtil.assertOnUiThread();
448
- final ReactInstance reactInstance = mReactInstance;
449
- if (reactInstance == null) {
450
- return false;
451
- }
452
-
453
- DeviceEventManagerModule deviceEventManagerModule =
454
- reactInstance.getNativeModule(DeviceEventManagerModule.class);
455
- if (deviceEventManagerModule == null) {
456
- return false;
457
- }
458
-
459
- deviceEventManagerModule.emitHardwareBackPressed();
460
- return true;
461
- }
462
-
463
- public @Nullable ReactQueueConfiguration getReactQueueConfiguration() {
464
- final ReactInstance reactInstance = mReactInstance;
465
- if (reactInstance != null) {
466
- return reactInstance.getReactQueueConfiguration();
467
- }
468
- return null;
469
- }
470
-
471
- /** Add a listener to be notified of ReactInstance events. */
472
- public void addReactInstanceEventListener(ReactInstanceEventListener listener) {
473
- mReactInstanceEventListeners.add(listener);
474
- }
475
-
476
- /** Remove a listener previously added with {@link #addReactInstanceEventListener}. */
477
- public void removeReactInstanceEventListener(ReactInstanceEventListener listener) {
478
- mReactInstanceEventListeners.remove(listener);
479
- }
480
-
481
- /**
482
- * Entrypoint to reload the ReactInstance. If the ReactInstance is destroying, will wait until
483
- * destroy is finished, before reloading.
484
- *
485
- * @param reason {@link String} describing why ReactHost is being reloaded (e.g. js error, user
486
- * tap on reload button)
487
- * @return A task that completes when React Native reloads
488
- */
489
- @Override
490
- public TaskInterface<Void> reload(String reason) {
491
- final String method = "reload()";
492
- return Task.call(
493
- () -> {
494
- Task<Void> reloadTask = null;
495
- if (mDestroyTask != null) {
496
- log(method, "Waiting for destroy to finish, before reloading React Native.");
497
- reloadTask =
498
- mDestroyTask
499
- .continueWithTask(task -> getOrCreateReloadTask(reason), mBGExecutor)
500
- .makeVoid();
501
- } else {
502
- reloadTask = getOrCreateReloadTask(reason).makeVoid();
503
- }
504
-
505
- return reloadTask.continueWithTask(
506
- task -> {
507
- if (task.isFaulted()) {
508
- final Exception ex = task.getError();
509
- Assertions.assertNotNull(ex, "Reload failed without an exception");
510
- if (mUseDevSupport) {
511
- mDevSupportManager.handleException(ex);
512
- } else {
513
- mReactHostDelegate.handleInstanceException(ex);
514
- }
515
- return getOrCreateDestroyTask("Reload failed", ex);
516
- }
517
-
518
- return task;
519
- },
520
- mBGExecutor);
521
- },
522
- mBGExecutor);
523
- }
524
-
525
- @DoNotStrip
526
- private void setPausedInDebuggerMessage(@Nullable String message) {
527
- if (message == null) {
528
- mDevSupportManager.hidePausedInDebuggerOverlay();
529
- } else {
530
- mDevSupportManager.showPausedInDebuggerOverlay(
531
- message,
532
- new PausedInDebuggerOverlayCommandListener() {
533
- @Override
534
- public void onResume() {
535
- UiThreadUtil.assertOnUiThread();
536
- if (mReactHostInspectorTarget != null) {
537
- mReactHostInspectorTarget.sendDebuggerResumeCommand();
538
- }
539
- }
540
- });
541
- }
542
- }
543
-
544
- @DoNotStrip
545
- private Map<String, String> getHostMetadata() {
546
- return AndroidInfoHelpers.getInspectorHostMetadata(mContext);
547
- }
548
-
549
- @DoNotStrip
550
- private void loadNetworkResource(String url, InspectorNetworkRequestListener listener) {
551
- InspectorNetworkHelper.loadNetworkResource(url, listener);
552
- }
553
-
554
- /**
555
- * Entrypoint to destroy the ReactInstance. If the ReactInstance is reloading, will wait until
556
- * reload is finished, before destroying.
557
- *
558
- * <p>The destroy operation is asynchronous and the task returned by this method will complete
559
- * when React Native gets destroyed. Note that the destroy operation will execute in multiple
560
- * threads, in particular some of the sub-tasks will run in the UIThread. Calling {@link
561
- * TaskInterface#waitForCompletion()} from the UIThread will lead into a deadlock. Use
562
- * onDestroyFinished callback to be notified when React Native gets destroyed.
563
- *
564
- * @param reason describing why ReactHost is being destroyed (e.g. memory pressure)
565
- * @param ex exception that caused the trigger to destroy ReactHost (or null) This exception will
566
- * be used to log properly the cause of destroy operation.
567
- * @param onDestroyFinished callback that will be called when React Native gets destroyed, the
568
- * callback will run on a background thread.
569
- * @return A task that completes when React Native gets destroyed.
570
- */
571
- @Override
572
- public TaskInterface<Void> destroy(
573
- String reason, @Nullable Exception ex, Function1<? super Boolean, Unit> onDestroyFinished) {
574
- Task<Void> task = (Task<Void>) destroy(reason, ex);
575
- return task.continueWith(
576
- new Continuation<Void, Void>() {
577
- @Nullable
578
- @Override
579
- public Void then(Task<Void> task) throws Exception {
580
- boolean instanceDestroyedSuccessfully = task.isCompleted() && !task.isFaulted();
581
- onDestroyFinished.invoke(instanceDestroyedSuccessfully);
582
- return null;
583
- }
584
- });
585
- }
586
-
587
- /**
588
- * Entrypoint to destroy the ReactInstance. If the ReactInstance is reloading, will wait until
589
- * reload is finished, before destroying.
590
- *
591
- * <p>The destroy operation is asynchronous and the task returned by this method will complete
592
- * when React Native gets destroyed. Note that the destroy operation will execute in multiple
593
- * threads, in particular some of the sub-tasks will run in the UIThread. Calling {@link
594
- * TaskInterface#waitForCompletion()} from the UIThread will lead into a deadlock.
595
- *
596
- * @param reason {@link String} describing why ReactHost is being destroyed (e.g. memory pressure)
597
- * @param ex {@link Exception} exception that caused the trigger to destroy ReactHost (or null)
598
- * This exception will be used to log properly the cause of destroy operation.
599
- * @return A task that completes when React Native gets destroyed.
600
- */
601
- @Override
602
- public TaskInterface<Void> destroy(String reason, @Nullable Exception ex) {
603
- final String method = "destroy()";
604
- return Task.call(
605
- () -> {
606
- if (mReloadTask != null) {
607
- log(
608
- method,
609
- "Reloading React Native. Waiting for reload to finish before destroying React"
610
- + " Native.");
611
- return mReloadTask.continueWithTask(
612
- task -> getOrCreateDestroyTask(reason, ex), mBGExecutor);
613
- }
614
- return getOrCreateDestroyTask(reason, ex);
615
- },
616
- mBGExecutor);
617
- }
618
-
619
- private MemoryPressureListener createMemoryPressureListener(ReactInstance reactInstance) {
620
- WeakReference<ReactInstance> weakReactInstance = new WeakReference<>(reactInstance);
621
- return (level) -> {
622
- mBGExecutor.execute(
623
- () -> {
624
- @Nullable ReactInstance strongReactInstance = weakReactInstance.get();
625
- if (strongReactInstance != null) {
626
- strongReactInstance.handleMemoryPressure(level);
627
- }
628
- });
629
- };
630
- }
631
-
632
- @Nullable
633
- /* package */ Activity getCurrentActivity() {
634
- return mActivity.get();
635
- }
636
-
637
- @Nullable
638
- /* package */ Activity getLastUsedActivity() {
639
- @Nullable WeakReference<Activity> lastUsedActivityWeakRef = mLastUsedActivity.get();
640
- if (lastUsedActivityWeakRef != null) {
641
- return lastUsedActivityWeakRef.get();
642
- }
643
- return null;
644
- }
645
-
646
- private void setCurrentActivity(@Nullable Activity activity) {
647
- mActivity.set(activity);
648
- if (activity != null) {
649
- mLastUsedActivity.set(new WeakReference<>(activity));
650
- }
651
- }
652
-
653
- /**
654
- * Get the {@link EventDispatcher} from the {@link FabricUIManager}. This always returns an
655
- * EventDispatcher, even if the instance isn't alive; in that case, it returns a {@link
656
- * BlackHoleEventDispatcher} which no-ops.
657
- *
658
- * @return The real {@link EventDispatcher} if the instance is alive; otherwise, a {@link
659
- * BlackHoleEventDispatcher}.
660
- */
661
- /* package */ EventDispatcher getEventDispatcher() {
662
- final ReactInstance reactInstance = mReactInstance;
663
- if (reactInstance == null) {
664
- return BlackHoleEventDispatcher.INSTANCE;
665
- }
666
-
667
- return reactInstance.getEventDispatcher();
668
- }
669
-
670
- /* package */
671
- @Nullable
672
- FabricUIManager getUIManager() {
673
- final ReactInstance reactInstance = mReactInstance;
674
- if (reactInstance == null) {
675
- return null;
676
- }
677
- return reactInstance.getFabricUIManager();
678
- }
679
-
680
- /* package */ <T extends NativeModule> boolean hasNativeModule(Class<T> nativeModuleInterface) {
681
- final ReactInstance reactInstance = mReactInstance;
682
- if (reactInstance != null) {
683
- return reactInstance.hasNativeModule(nativeModuleInterface);
684
- }
685
- return false;
686
- }
687
-
688
- /* package */ Collection<NativeModule> getNativeModules() {
689
- final ReactInstance reactInstance = mReactInstance;
690
- if (reactInstance != null) {
691
- return reactInstance.getNativeModules();
692
- }
693
- return new ArrayList<>();
694
- }
695
-
696
- /* package */
697
- @Nullable
698
- <T extends NativeModule> T getNativeModule(Class<T> nativeModuleInterface) {
699
- if (!ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE
700
- && nativeModuleInterface == UIManagerModule.class) {
701
-
702
- ReactSoftExceptionLogger.logSoftExceptionVerbose(
703
- TAG,
704
- new ReactNoCrashBridgeNotAllowedSoftException(
705
- "getNativeModule(UIManagerModule.class) cannot be called when the bridge is"
706
- + " disabled"));
707
- }
708
-
709
- final ReactInstance reactInstance = mReactInstance;
710
- if (reactInstance != null) {
711
- return reactInstance.getNativeModule(nativeModuleInterface);
712
- }
713
- return null;
714
- }
715
-
716
- /* package */
717
- @Nullable
718
- NativeModule getNativeModule(String nativeModuleName) {
719
- final ReactInstance reactInstance = mReactInstance;
720
- if (reactInstance != null) {
721
- return reactInstance.getNativeModule(nativeModuleName);
722
- }
723
- return null;
724
- }
725
-
726
- /* package */
727
- @Nullable
728
- RuntimeExecutor getRuntimeExecutor() {
729
- final String method = "getRuntimeExecutor()";
730
-
731
- final ReactInstance reactInstance = mReactInstance;
732
- if (reactInstance != null) {
733
- return reactInstance.getBufferedRuntimeExecutor();
734
- }
735
- raiseSoftException(method, "Tried to get runtime executor while instance is not ready");
736
- return null;
737
- }
738
-
739
- /* package */
740
- @Nullable
741
- CallInvokerHolder getJSCallInvokerHolder() {
742
- final String method = "getJSCallInvokerHolder()";
743
-
744
- final ReactInstance reactInstance = mReactInstance;
745
- if (reactInstance != null) {
746
- return reactInstance.getJSCallInvokerHolder();
747
- }
748
- raiseSoftException(method, "Tried to get JSCallInvokerHolder while instance is not ready");
749
- return null;
750
- }
751
-
752
- /**
753
- * To be called when the host activity receives an activity result.
754
- *
755
- * @param activity The host activity
756
- */
757
- @ThreadConfined(UI)
758
- @Override
759
- public void onActivityResult(
760
- Activity activity, int requestCode, int resultCode, @Nullable Intent data) {
761
- final String method =
762
- "onActivityResult(activity = \""
763
- + activity
764
- + "\", requestCode = \""
765
- + requestCode
766
- + "\", resultCode = \""
767
- + resultCode
768
- + "\", data = \""
769
- + data
770
- + "\")";
771
-
772
- ReactContext currentContext = getCurrentReactContext();
773
- if (currentContext != null) {
774
- currentContext.onActivityResult(activity, requestCode, resultCode, data);
775
- } else {
776
- raiseSoftException(method, "Tried to access onActivityResult while context is not ready");
777
- }
778
- }
779
-
780
- /* To be called when focus has changed for the hosting window. */
781
- @ThreadConfined(UI)
782
- @Override
783
- public void onWindowFocusChange(boolean hasFocus) {
784
- final String method = "onWindowFocusChange(hasFocus = \"" + hasFocus + "\")";
785
-
786
- ReactContext currentContext = getCurrentReactContext();
787
- if (currentContext != null) {
788
- currentContext.onWindowFocusChange(hasFocus);
789
- } else {
790
- raiseSoftException(method, "Tried to access onWindowFocusChange while context is not ready");
791
- }
792
- }
793
-
794
- /* This method will give JS the opportunity to receive intents via Linking.
795
- *
796
- * @param intent The incoming intent
797
- */
798
- @ThreadConfined(UI)
799
- @Override
800
- public void onNewIntent(Intent intent) {
801
- final String method = "onNewIntent(intent = \"" + intent + "\")";
802
-
803
- ReactContext currentContext = getCurrentReactContext();
804
- if (currentContext != null) {
805
- String action = intent.getAction();
806
- Uri uri = intent.getData();
807
-
808
- if (uri != null
809
- && (Intent.ACTION_VIEW.equals(action)
810
- || NfcAdapter.ACTION_NDEF_DISCOVERED.equals(action))) {
811
- DeviceEventManagerModule deviceEventManagerModule =
812
- currentContext.getNativeModule(DeviceEventManagerModule.class);
813
- if (deviceEventManagerModule != null) {
814
- deviceEventManagerModule.emitNewIntentReceived(uri);
815
- }
816
- }
817
- currentContext.onNewIntent(getCurrentActivity(), intent);
818
- } else {
819
- raiseSoftException(method, "Tried to access onNewIntent while context is not ready");
820
- }
821
- }
822
-
823
- @ThreadConfined(UI)
824
- @Override
825
- public void onConfigurationChanged(Context updatedContext) {
826
- ReactContext currentReactContext = getCurrentReactContext();
827
- if (currentReactContext != null) {
828
- if (ReactNativeFeatureFlags.enableFontScaleChangesUpdatingLayout()) {
829
- DisplayMetricsHolder.initDisplayMetrics(currentReactContext);
830
- }
831
-
832
- AppearanceModule appearanceModule =
833
- currentReactContext.getNativeModule(AppearanceModule.class);
834
-
835
- if (appearanceModule != null) {
836
- appearanceModule.onConfigurationChanged(updatedContext);
837
- }
838
- }
839
- }
840
-
841
- @Nullable
842
- JavaScriptContextHolder getJavaScriptContextHolder() {
843
- final ReactInstance reactInstance = mReactInstance;
844
- if (reactInstance != null) {
845
- return reactInstance.getJavaScriptContextHolder();
846
- }
847
- return null;
848
- }
849
-
850
- /* package */
851
- DefaultHardwareBackBtnHandler getDefaultBackButtonHandler() {
852
- return () -> {
853
- UiThreadUtil.assertOnUiThread();
854
- if (mDefaultHardwareBackBtnHandler != null) {
855
- mDefaultHardwareBackBtnHandler.invokeDefaultOnBackPressed();
856
- }
857
- };
858
- }
859
-
860
- /* package */ Task<Boolean> loadBundle(final JSBundleLoader bundleLoader) {
861
- final String method = "loadBundle()";
862
- log(method, "Schedule");
863
-
864
- return callWithExistingReactInstance(
865
- method,
866
- reactInstance -> {
867
- log(method, "Execute");
868
- reactInstance.loadJSBundle(bundleLoader);
869
- },
870
- null);
871
- }
872
-
873
- /* package */ Task<Boolean> registerSegment(
874
- final int segmentId, final String path, final Callback callback) {
875
- final String method =
876
- "registerSegment(segmentId = \"" + segmentId + "\", path = \"" + path + "\")";
877
- log(method, "Schedule");
878
-
879
- return callWithExistingReactInstance(
880
- method,
881
- reactInstance -> {
882
- log(method, "Execute");
883
- reactInstance.registerSegment(segmentId, path);
884
- assertNotNull(callback).invoke();
885
- },
886
- null);
887
- }
888
-
889
- /* package */ void handleHostException(Exception e) {
890
- final String method = "handleHostException(message = \"" + e.getMessage() + "\")";
891
- log(method);
892
-
893
- if (mUseDevSupport) {
894
- mDevSupportManager.handleException(e);
895
- } else {
896
- mReactHostDelegate.handleInstanceException(e);
897
- }
898
- destroy(method, e);
899
- }
900
-
901
- /**
902
- * Call a function on a JS module that has been registered as callable.
903
- *
904
- * @param moduleName The name of the JS module
905
- * @param methodName The function to call
906
- * @param args Arguments to be passed to the function
907
- * @return A Task that will complete when the function call has been enqueued on the JS thread.
908
- */
909
- /* package */ Task<Boolean> callFunctionOnModule(
910
- final String moduleName, final String methodName, final NativeArray args) {
911
- final String method = "callFunctionOnModule(\"" + moduleName + "\", \"" + methodName + "\")";
912
- return callWithExistingReactInstance(
913
- method,
914
- reactInstance -> {
915
- reactInstance.callFunctionOnModule(moduleName, methodName, args);
916
- },
917
- null);
918
- }
919
-
920
- /* package */ void attachSurface(ReactSurfaceImpl surface) {
921
- final String method = "attachSurface(surfaceId = " + surface.getSurfaceID() + ")";
922
- log(method);
923
-
924
- synchronized (mAttachedSurfaces) {
925
- mAttachedSurfaces.add(surface);
926
- }
927
- }
928
-
929
- /* package */ void detachSurface(ReactSurfaceImpl surface) {
930
- final String method = "detachSurface(surfaceId = " + surface.getSurfaceID() + ")";
931
- log(method);
932
-
933
- synchronized (mAttachedSurfaces) {
934
- mAttachedSurfaces.remove(surface);
935
- }
936
- }
937
-
938
- /* package */ boolean isSurfaceAttached(ReactSurfaceImpl surface) {
939
- synchronized (mAttachedSurfaces) {
940
- return mAttachedSurfaces.contains(surface);
941
- }
942
- }
943
-
944
- /* package */ boolean isSurfaceWithModuleNameAttached(String moduleName) {
945
- synchronized (mAttachedSurfaces) {
946
- for (ReactSurfaceImpl surface : mAttachedSurfaces) {
947
- if (surface.getModuleName().equals(moduleName)) {
948
- return true;
949
- }
950
- }
951
- return false;
952
- }
953
- }
954
-
955
- @Override
956
- public void addBeforeDestroyListener(Function0<Unit> onBeforeDestroy) {
957
- mBeforeDestroyListeners.add(onBeforeDestroy);
958
- }
959
-
960
- @Override
961
- public void removeBeforeDestroyListener(Function0<Unit> onBeforeDestroy) {
962
- mBeforeDestroyListeners.remove(onBeforeDestroy);
963
- }
964
-
965
- private interface ReactInstanceCalback {
966
- void then(ReactInstance reactInstance);
967
- }
968
-
969
- @ThreadConfined("ReactHost")
970
- private @Nullable Task<Void> mStartTask = null;
971
-
972
- @ThreadConfined("ReactHost")
973
- private Task<Void> getOrCreateStartTask() {
974
- final String method = "getOrCreateStartTask()";
975
- if (mStartTask == null) {
976
- log(method, "Schedule");
977
- if (ReactBuildConfig.DEBUG) {
978
- Assertions.assertCondition(
979
- ReactNativeNewArchitectureFeatureFlags.enableBridgelessArchitecture(),
980
- "enableBridgelessArchitecture FeatureFlag must be set to start ReactNative.");
981
-
982
- Assertions.assertCondition(
983
- ReactNativeNewArchitectureFeatureFlags.enableFabricRenderer(),
984
- "enableFabricRenderer FeatureFlag must be set to start ReactNative.");
985
-
986
- Assertions.assertCondition(
987
- ReactNativeNewArchitectureFeatureFlags.useTurboModules(),
988
- "useTurboModules FeatureFlag must be set to start ReactNative.");
989
- }
990
- if (ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE) {
991
- Assertions.assertCondition(
992
- !ReactNativeNewArchitectureFeatureFlags.useFabricInterop(),
993
- "useFabricInterop FeatureFlag must be false when"
994
- + " UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE == true.");
995
- Assertions.assertCondition(
996
- !ReactNativeNewArchitectureFeatureFlags.useTurboModuleInterop(),
997
- "useTurboModuleInterop FeatureFlag must be false when"
998
- + " UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE == true.");
999
- }
1000
- mStartTask =
1001
- waitThenCallGetOrCreateReactInstanceTask()
1002
- .continueWithTask(
1003
- (task) -> {
1004
- if (task.isFaulted()) {
1005
- Exception ex = Assertions.assertNotNull(task.getError());
1006
- if (mUseDevSupport) {
1007
- mDevSupportManager.handleException(ex);
1008
- } else {
1009
- mReactHostDelegate.handleInstanceException(ex);
1010
- }
1011
- // Wait for destroy to finish
1012
- return getOrCreateDestroyTask(
1013
- "getOrCreateStartTask() failure: " + ex.getMessage(), ex)
1014
- .continueWithTask(destroyTask -> Task.forError(ex))
1015
- .makeVoid();
1016
- }
1017
- return task.makeVoid();
1018
- },
1019
- mBGExecutor);
1020
- }
1021
- return mStartTask;
1022
- }
1023
-
1024
- @ThreadConfined(UI)
1025
- private void moveToHostDestroy(@Nullable ReactContext currentContext) {
1026
- mReactLifecycleStateManager.moveToOnHostDestroy(currentContext);
1027
- setCurrentActivity(null);
1028
- }
1029
-
1030
- private void raiseSoftException(String callingMethod, String message) {
1031
- raiseSoftException(callingMethod, message, null);
1032
- }
1033
-
1034
- private void raiseSoftException(
1035
- String callingMethod, String message, @Nullable Throwable throwable) {
1036
- final String method = "raiseSoftException(" + callingMethod + ")";
1037
- log(method, message);
1038
- ReactSoftExceptionLogger.logSoftException(
1039
- TAG, new ReactNoCrashSoftException(method + ": " + message, throwable));
1040
- }
1041
-
1042
- /** Schedule work on a ReactInstance that is already created. */
1043
- private Task<Boolean> callWithExistingReactInstance(
1044
- final String callingMethod,
1045
- final ReactInstanceCalback continuation,
1046
- @Nullable Executor executor) {
1047
- final String method = "callWithExistingReactInstance(" + callingMethod + ")";
1048
-
1049
- if (executor == null) {
1050
- executor = Task.IMMEDIATE_EXECUTOR;
1051
- }
1052
-
1053
- return mCreateReactInstanceTaskRef
1054
- .get()
1055
- .onSuccess(
1056
- task -> {
1057
- final ReactInstance reactInstance = task.getResult();
1058
- if (reactInstance == null) {
1059
- raiseSoftException(method, "Execute: reactInstance is null. Dropping work.");
1060
- return FALSE;
1061
- }
1062
-
1063
- continuation.then(reactInstance);
1064
- return TRUE;
1065
- },
1066
- executor);
1067
- }
1068
-
1069
- /** Create a ReactInstance if it doesn't exist already, and schedule work on it. */
1070
- private Task<Void> callAfterGetOrCreateReactInstance(
1071
- final String callingMethod,
1072
- final ReactInstanceCalback runnable,
1073
- @Nullable Executor executor) {
1074
- final String method = "callAfterGetOrCreateReactInstance(" + callingMethod + ")";
1075
-
1076
- if (executor == null) {
1077
- executor = Task.IMMEDIATE_EXECUTOR;
1078
- }
1079
-
1080
- return getOrCreateReactInstance()
1081
- .onSuccess(
1082
- task -> {
1083
- final ReactInstance reactInstance = task.getResult();
1084
- if (reactInstance == null) {
1085
- raiseSoftException(method, "Execute: reactInstance is null. Dropping work.");
1086
- return null;
1087
- }
1088
-
1089
- runnable.then(reactInstance);
1090
- return null;
1091
- },
1092
- executor)
1093
- .continueWith(
1094
- task -> {
1095
- if (task.isFaulted()) {
1096
- handleHostException(Assertions.assertNotNull(task.getError()));
1097
- }
1098
- return null;
1099
- });
1100
- }
1101
-
1102
- private BridgelessReactContext getOrCreateReactContext() {
1103
- final String method = "getOrCreateReactContext()";
1104
- return mBridgelessReactContextRef.getOrCreate(
1105
- () -> {
1106
- log(method, "Creating BridgelessReactContext");
1107
- return new BridgelessReactContext(mContext, ReactHostImpl.this);
1108
- });
1109
- }
1110
-
1111
- /**
1112
- * Entrypoint to create the ReactInstance.
1113
- *
1114
- * <p>If the ReactInstance is reloading, will return the reload task. If the ReactInstance is
1115
- * destroying, will wait until destroy is finished, before creating.
1116
- */
1117
- private Task<ReactInstance> getOrCreateReactInstance() {
1118
- return Task.call(this::waitThenCallGetOrCreateReactInstanceTask, mBGExecutor);
1119
- }
1120
-
1121
- @ThreadConfined("ReactHost")
1122
- private Task<ReactInstance> waitThenCallGetOrCreateReactInstanceTask() {
1123
- return waitThenCallGetOrCreateReactInstanceTaskWithRetries(0, 4);
1124
- }
1125
-
1126
- @ThreadConfined("ReactHost")
1127
- private Task<ReactInstance> waitThenCallGetOrCreateReactInstanceTaskWithRetries(
1128
- int tryNum, int maxTries) {
1129
- final String method = "waitThenCallGetOrCreateReactInstanceTaskWithRetries";
1130
- if (mReloadTask != null) {
1131
- log(method, "React Native is reloading. Return reload task.");
1132
- return mReloadTask;
1133
- }
1134
-
1135
- if (mDestroyTask != null) {
1136
- boolean shouldTryAgain = tryNum < maxTries;
1137
- if (shouldTryAgain) {
1138
- log(
1139
- method,
1140
- "React Native is tearing down."
1141
- + "Wait for teardown to finish, before trying again (try count = "
1142
- + tryNum
1143
- + ").");
1144
- return mDestroyTask.onSuccessTask(
1145
- (task) -> waitThenCallGetOrCreateReactInstanceTaskWithRetries(tryNum + 1, maxTries),
1146
- mBGExecutor);
1147
- }
1148
-
1149
- raiseSoftException(
1150
- method,
1151
- "React Native is tearing down. Not wait for teardown to finish: reached max retries.");
1152
- }
1153
-
1154
- return getOrCreateReactInstanceTask();
1155
- }
1156
-
1157
- private static class CreationResult {
1158
- final ReactInstance mInstance;
1159
- final ReactContext mContext;
1160
- final boolean mIsReloading;
1161
-
1162
- private CreationResult(ReactInstance instance, ReactContext context, boolean isReloading) {
1163
- mInstance = instance;
1164
- mContext = context;
1165
- mIsReloading = isReloading;
1166
- }
1167
- }
1168
-
1169
- @ThreadConfined("ReactHost")
1170
- private Task<ReactInstance> getOrCreateReactInstanceTask() {
1171
- final String method = "getOrCreateReactInstanceTask()";
1172
- log(method);
1173
-
1174
- return mCreateReactInstanceTaskRef.getOrCreate(
1175
- () -> {
1176
- log(method, "Start");
1177
- Assertions.assertCondition(
1178
- !mHostInvalidated, "Cannot start a new ReactInstance on an invalidated ReactHost");
1179
-
1180
- ReactMarker.logMarker(
1181
- ReactMarkerConstants.REACT_BRIDGELESS_LOADING_START, BRIDGELESS_MARKER_INSTANCE_KEY);
1182
-
1183
- Task<CreationResult> creationTask =
1184
- getJsBundleLoader()
1185
- .onSuccess(
1186
- task -> {
1187
- final JSBundleLoader bundleLoader =
1188
- Assertions.assertNotNull(task.getResult());
1189
- final BridgelessReactContext reactContext = getOrCreateReactContext();
1190
- final DevSupportManager devSupportManager = getDevSupportManager();
1191
- reactContext.setJSExceptionHandler(devSupportManager);
1192
-
1193
- log(method, "Creating ReactInstance");
1194
- final ReactInstance instance =
1195
- new ReactInstance(
1196
- reactContext,
1197
- mReactHostDelegate,
1198
- mComponentFactory,
1199
- devSupportManager,
1200
- this::handleHostException,
1201
- mUseDevSupport,
1202
- getOrCreateReactHostInspectorTarget());
1203
- mReactInstance = instance;
1204
-
1205
- MemoryPressureListener memoryPressureListener =
1206
- createMemoryPressureListener(instance);
1207
- mMemoryPressureListener = memoryPressureListener;
1208
- mMemoryPressureRouter.addMemoryPressureListener(memoryPressureListener);
1209
-
1210
- // Eagerly initialize turbo modules in parallel with JS bundle execution
1211
- // as TurboModuleManager will handle any concurrent access
1212
- instance.initializeEagerTurboModules();
1213
-
1214
- log(method, "Loading JS Bundle");
1215
- instance.loadJSBundle(bundleLoader);
1216
-
1217
- log(
1218
- method,
1219
- "Calling DevSupportManagerBase.onNewReactContextCreated(reactContext)");
1220
- devSupportManager.onNewReactContextCreated(reactContext);
1221
-
1222
- reactContext.runOnJSQueueThread(
1223
- () -> {
1224
- // Executing on the JS thread to ensure that we're done
1225
- // loading the JS bundle.
1226
- // TODO T76081936 Move this if we switch to a sync RTE
1227
- ReactMarker.logMarker(
1228
- ReactMarkerConstants.REACT_BRIDGELESS_LOADING_END,
1229
- BRIDGELESS_MARKER_INSTANCE_KEY);
1230
- });
1231
-
1232
- return new CreationResult(instance, reactContext, mReloadTask != null);
1233
- },
1234
- mBGExecutor);
1235
-
1236
- Continuation<CreationResult, ReactInstance> lifecycleUpdateTask =
1237
- task -> {
1238
- CreationResult result = Assertions.assertNotNull(task.getResult());
1239
- final ReactInstance reactInstance = result.mInstance;
1240
- final ReactContext reactContext = result.mContext;
1241
- final boolean isReloading = result.mIsReloading;
1242
- final boolean isManagerResumed =
1243
- mReactLifecycleStateManager.getLifecycleState() == LifecycleState.RESUMED;
1244
-
1245
- /**
1246
- * ReactContext.onHostResume() should only be called when the user navigates to the
1247
- * first React Native screen.
1248
- *
1249
- * <p>During init: The application puts the React manager in a resumed state, when
1250
- * the user navigates to a React Native screen. Two types of init: (1) If React
1251
- * Native init happens when the user navigates to a React Native screen, the React
1252
- * manager will get resumed on init start, so ReactContext.onHostResume() will be
1253
- * executed here. (2) If React Native init happens before the user navigates to a
1254
- * React Native screen (i.e: React Native is preloaded), the React manager won't be
1255
- * in a resumed state here. So ReactContext.onHostResume() won't be executed here.
1256
- * But, when the user navigates to their first React Native screen, the application
1257
- * will call ReactHost.onHostResume(). That will call ReactContext.onHostResume().
1258
- *
1259
- * <p>During reloads, if the manager isn't resumed, call
1260
- * ReactContext.onHostResume(). If React Native is reloading, it seems reasonable to
1261
- * assume that: (1) We must have navigated to a React Native screen in the past, or
1262
- * (2) We must be on a React Native screen.
1263
- */
1264
- if (isReloading && !isManagerResumed) {
1265
- mReactLifecycleStateManager.moveToOnHostResume(
1266
- reactContext, getCurrentActivity());
1267
- } else {
1268
- /**
1269
- * Call ReactContext.onHostResume() only when already in the resumed state which
1270
- * aligns with the bridge https://fburl.com/diffusion/2qhxmudv.
1271
- */
1272
- mReactLifecycleStateManager.resumeReactContextIfHostResumed(
1273
- reactContext, getCurrentActivity());
1274
- }
1275
-
1276
- log(method, "Executing ReactInstanceEventListeners");
1277
- for (ReactInstanceEventListener listener : mReactInstanceEventListeners) {
1278
- if (listener != null) {
1279
- listener.onReactContextInitialized(reactContext);
1280
- }
1281
- }
1282
- return reactInstance;
1283
- };
1284
-
1285
- creationTask.onSuccess(lifecycleUpdateTask, mUIExecutor);
1286
- return creationTask.onSuccess(
1287
- task -> Assertions.assertNotNull(task.getResult()).mInstance,
1288
- Task.IMMEDIATE_EXECUTOR);
1289
- });
1290
- }
1291
-
1292
- private Task<JSBundleLoader> getJsBundleLoader() {
1293
- final String method = "getJSBundleLoader()";
1294
- log(method);
1295
-
1296
- if (mUseDevSupport && mAllowPackagerServerAccess) {
1297
- return isMetroRunning()
1298
- .onSuccessTask(
1299
- task -> {
1300
- boolean isMetroRunning = Assertions.assertNotNull(task.getResult());
1301
- if (isMetroRunning) {
1302
- // Since metro is running, fetch the JS bundle from the server
1303
- return loadJSBundleFromMetro();
1304
- }
1305
- return Task.forResult(mReactHostDelegate.getJsBundleLoader());
1306
- },
1307
- mBGExecutor);
1308
- } else {
1309
- if (ReactBuildConfig.DEBUG) {
1310
- FLog.d(TAG, "Packager server access is disabled in this environment");
1311
- }
1312
-
1313
- /**
1314
- * In prod mode: fall back to the JS bundle loader from the delegate.
1315
- *
1316
- * <p>Note: Create the prod JSBundleLoader inside a Task.call. Why: If JSBundleLoader creation
1317
- * throws an exception, the task will fault, and we'll go through the ReactHost error
1318
- * reporting pipeline.
1319
- */
1320
- try {
1321
- return Task.forResult(mReactHostDelegate.getJsBundleLoader());
1322
- } catch (Exception e) {
1323
- return Task.forError(e);
1324
- }
1325
- }
1326
- }
1327
-
1328
- private Task<Boolean> isMetroRunning() {
1329
- final String method = "isMetroRunning()";
1330
- log(method);
1331
-
1332
- final TaskCompletionSource<Boolean> taskCompletionSource = new TaskCompletionSource<>();
1333
- final DevSupportManager asyncDevSupportManager = getDevSupportManager();
1334
-
1335
- asyncDevSupportManager.isPackagerRunning(
1336
- packagerIsRunning -> {
1337
- log(method, "Async result = " + packagerIsRunning);
1338
- taskCompletionSource.setResult(packagerIsRunning);
1339
- });
1340
-
1341
- return taskCompletionSource.getTask();
1342
- }
1343
-
1344
- private Task<JSBundleLoader> loadJSBundleFromMetro() {
1345
- final String method = "loadJSBundleFromMetro()";
1346
- log(method);
1347
-
1348
- final TaskCompletionSource<JSBundleLoader> taskCompletionSource = new TaskCompletionSource<>();
1349
- final DevSupportManagerBase asyncDevSupportManager =
1350
- ((DevSupportManagerBase) getDevSupportManager());
1351
- String bundleURL =
1352
- asyncDevSupportManager
1353
- .getDevServerHelper()
1354
- .getDevServerBundleURL(
1355
- Assertions.assertNotNull(asyncDevSupportManager.getJSAppBundleName()));
1356
-
1357
- asyncDevSupportManager.reloadJSFromServer(
1358
- bundleURL,
1359
- new BundleLoadCallback() {
1360
- @Override
1361
- public void onSuccess() {
1362
- log(method, "Creating BundleLoader");
1363
- JSBundleLoader bundleLoader =
1364
- JSBundleLoader.createCachedBundleFromNetworkLoader(
1365
- bundleURL, asyncDevSupportManager.getDownloadedJSBundleFile());
1366
- taskCompletionSource.setResult(bundleLoader);
1367
- }
1368
-
1369
- @Override
1370
- public void onError(Exception cause) {
1371
- taskCompletionSource.setError(cause);
1372
- }
1373
- });
1374
-
1375
- return taskCompletionSource.getTask();
1376
- }
1377
-
1378
- private void log(String method, String message) {
1379
- mBridgelessReactStateTracker.enterState("ReactHost{" + mId + "}." + method + ": " + message);
1380
- }
1381
-
1382
- private void log(String method) {
1383
- mBridgelessReactStateTracker.enterState("ReactHost{" + mId + "}." + method);
1384
- }
1385
-
1386
- private void stopAttachedSurfaces(String method, ReactInstance reactInstance) {
1387
- log(method, "Stopping all React Native surfaces");
1388
- synchronized (mAttachedSurfaces) {
1389
- for (ReactSurfaceImpl surface : mAttachedSurfaces) {
1390
- reactInstance.stopSurface(surface);
1391
- surface.clear();
1392
- }
1393
- }
1394
- }
1395
-
1396
- private void startAttachedSurfaces(String method, ReactInstance reactInstance) {
1397
- log(method, "Restarting previously running React Native Surfaces");
1398
- synchronized (mAttachedSurfaces) {
1399
- for (ReactSurfaceImpl surface : mAttachedSurfaces) {
1400
- reactInstance.startSurface(surface);
1401
- }
1402
- }
1403
- }
1404
-
1405
- @ThreadConfined("ReactHost")
1406
- private @Nullable Task<ReactInstance> mReloadTask = null;
1407
-
1408
- private interface ReactInstanceTaskUnwrapper {
1409
- @Nullable
1410
- ReactInstance unwrap(Task<ReactInstance> task, String stage);
1411
- }
1412
-
1413
- private ReactInstanceTaskUnwrapper createReactInstanceUnwrapper(
1414
- String tag, String method, String reason) {
1415
-
1416
- return (task, stage) -> {
1417
- final ReactInstance reactInstance = task.getResult();
1418
- final ReactInstance currentReactInstance = mReactInstance;
1419
-
1420
- final String stageLabel = "Stage: " + stage;
1421
- final String reasonLabel = tag + " reason: " + reason;
1422
- if (task.isFaulted()) {
1423
- final Exception ex = Assertions.assertNotNull(task.getError());
1424
- final String faultLabel = "Fault reason: " + ex.getMessage();
1425
- raiseSoftException(
1426
- method,
1427
- tag
1428
- + ": ReactInstance task faulted. "
1429
- + stageLabel
1430
- + ". "
1431
- + faultLabel
1432
- + ". "
1433
- + reasonLabel);
1434
- return currentReactInstance;
1435
- }
1436
-
1437
- if (task.isCancelled()) {
1438
- raiseSoftException(
1439
- method, tag + ": ReactInstance task cancelled. " + stageLabel + ". " + reasonLabel);
1440
- return currentReactInstance;
1441
- }
1442
-
1443
- if (reactInstance == null) {
1444
- raiseSoftException(
1445
- method, tag + ": ReactInstance task returned null. " + stageLabel + ". " + reasonLabel);
1446
- return currentReactInstance;
1447
- }
1448
-
1449
- if (currentReactInstance != null && reactInstance != currentReactInstance) {
1450
- raiseSoftException(
1451
- method,
1452
- tag
1453
- + ": Detected two different ReactInstances. Returning old. "
1454
- + stageLabel
1455
- + ". "
1456
- + reasonLabel);
1457
- }
1458
-
1459
- return reactInstance;
1460
- };
1461
- }
1462
-
1463
- /**
1464
- * The ReactInstance is loaded. Tear it down, and re-create it.
1465
- *
1466
- * <p>If the ReactInstance is in an "invalid state", make a "best effort" attempt to clean up
1467
- * React. "invalid state" means: ReactInstance task is faulted; ReactInstance is null; React
1468
- * instance task is cancelled; BridgelessReactContext is null. This can typically happen if the
1469
- * ReactInstance task work throws an exception.
1470
- */
1471
- @ThreadConfined("ReactHost")
1472
- private Task<ReactInstance> getOrCreateReloadTask(String reason) {
1473
- final String method = "getOrCreateReloadTask()";
1474
- log(method);
1475
-
1476
- // Log how React Native is destroyed
1477
- // TODO(T136397487): Remove after Venice is shipped to 100%
1478
- raiseSoftException(method, reason);
1479
-
1480
- ReactInstanceTaskUnwrapper reactInstanceTaskUnwrapper =
1481
- createReactInstanceUnwrapper("Reload", method, reason);
1482
-
1483
- if (mReloadTask == null) {
1484
- // When using the immediate executor, we want to avoid scheduling any further work immediately
1485
- // when destruction is kicked off.
1486
- log(method, "Resetting createReactInstance task ref");
1487
- mReloadTask =
1488
- mCreateReactInstanceTaskRef
1489
- .getAndReset()
1490
- .continueWithTask(
1491
- (task) -> {
1492
- log(method, "Starting React Native reload");
1493
- final ReactInstance reactInstance =
1494
- reactInstanceTaskUnwrapper.unwrap(task, "1: Starting reload");
1495
-
1496
- unregisterInstanceFromInspector(reactInstance);
1497
-
1498
- final ReactContext reactContext = mBridgelessReactContextRef.getNullable();
1499
- if (reactContext == null) {
1500
- raiseSoftException(method, "ReactContext is null. Reload reason: " + reason);
1501
- }
1502
-
1503
- if (reactContext != null
1504
- && mReactLifecycleStateManager.getLifecycleState()
1505
- == LifecycleState.RESUMED) {
1506
- log(method, "Calling ReactContext.onHostPause()");
1507
- reactContext.onHostPause();
1508
- }
1509
-
1510
- return Task.forResult(reactInstance);
1511
- },
1512
- mUIExecutor)
1513
- .continueWithTask(
1514
- task -> {
1515
- final ReactInstance reactInstance =
1516
- reactInstanceTaskUnwrapper.unwrap(task, "2: Surface shutdown");
1517
-
1518
- if (reactInstance == null) {
1519
- raiseSoftException(method, "Skipping surface shutdown: ReactInstance null");
1520
- return task;
1521
- }
1522
-
1523
- stopAttachedSurfaces(method, reactInstance);
1524
- return task;
1525
- },
1526
- mBGExecutor)
1527
- .continueWithTask(
1528
- (task) -> {
1529
- reactInstanceTaskUnwrapper.unwrap(task, "3: Destroying ReactContext");
1530
- for (Function0<Unit> destroyListener : mBeforeDestroyListeners) {
1531
- destroyListener.invoke();
1532
- }
1533
-
1534
- if (mMemoryPressureListener != null) {
1535
- log(method, "Removing memory pressure listener");
1536
- mMemoryPressureRouter.removeMemoryPressureListener(mMemoryPressureListener);
1537
- }
1538
-
1539
- final ReactContext reactContext = mBridgelessReactContextRef.getNullable();
1540
- if (reactContext != null) {
1541
- log(method, "Resetting ReactContext ref");
1542
- mBridgelessReactContextRef.reset();
1543
-
1544
- log(method, "Destroying ReactContext");
1545
- reactContext.destroy();
1546
- }
1547
-
1548
- if (mUseDevSupport && reactContext != null) {
1549
- log(
1550
- method,
1551
- "Calling DevSupportManager.onReactInstanceDestroyed(reactContext)");
1552
- mDevSupportManager.onReactInstanceDestroyed(reactContext);
1553
- }
1554
-
1555
- return task;
1556
- },
1557
- mUIExecutor)
1558
- .continueWithTask(
1559
- task -> {
1560
- final ReactInstance reactInstance =
1561
- reactInstanceTaskUnwrapper.unwrap(task, "4: Destroying ReactInstance");
1562
-
1563
- if (reactInstance == null) {
1564
- raiseSoftException(
1565
- method, "Skipping ReactInstance.destroy(): ReactInstance null");
1566
- } else {
1567
- log(method, "Resetting ReactInstance ptr");
1568
- mReactInstance = null;
1569
-
1570
- log(method, "Destroying ReactInstance");
1571
- reactInstance.destroy();
1572
- }
1573
-
1574
- log(method, "Resetting start task ref");
1575
- mStartTask = null;
1576
-
1577
- // Kickstart a new ReactInstance create
1578
- return getOrCreateReactInstanceTask();
1579
- },
1580
- mBGExecutor)
1581
- .continueWithTask(
1582
- task -> {
1583
- final ReactInstance reactInstance =
1584
- reactInstanceTaskUnwrapper.unwrap(task, "5: Restarting surfaces");
1585
-
1586
- if (reactInstance == null) {
1587
- raiseSoftException(method, "Skipping surface restart: ReactInstance null");
1588
- return task;
1589
- }
1590
-
1591
- startAttachedSurfaces(method, reactInstance);
1592
-
1593
- return task;
1594
- },
1595
- mBGExecutor)
1596
- .continueWithTask(
1597
- task -> {
1598
- if (task.isFaulted()) {
1599
- Exception fault = Assertions.assertNotNull(task.getError());
1600
- raiseSoftException(
1601
- method,
1602
- "Error during reload. ReactInstance task faulted. Fault reason: "
1603
- + fault.getMessage()
1604
- + ". Reload reason: "
1605
- + reason,
1606
- task.getError());
1607
- }
1608
-
1609
- if (task.isCancelled()) {
1610
- raiseSoftException(
1611
- method,
1612
- "Error during reload. ReactInstance task cancelled. Reload reason: "
1613
- + reason);
1614
- }
1615
-
1616
- log(method, "Resetting reload task ref");
1617
- mReloadTask = null;
1618
- return task;
1619
- },
1620
- mBGExecutor);
1621
- }
1622
-
1623
- return mReloadTask;
1624
- }
1625
-
1626
- @ThreadConfined("ReactHost")
1627
- private @Nullable Task<Void> mDestroyTask = null;
1628
-
1629
- /**
1630
- * The ReactInstance is loaded. Tear it down.
1631
- *
1632
- * <p>If the ReactInstance is in an "invalid state", make a "best effort" attempt to clean up
1633
- * React. "invalid state" means: ReactInstance task is faulted; ReactInstance is null; React
1634
- * instance task is cancelled; BridgelessReactContext is null. This can typically happen if the *
1635
- * ReactInstance task work throws an exception.
1636
- */
1637
- @ThreadConfined("ReactHost")
1638
- private Task<Void> getOrCreateDestroyTask(final String reason, @Nullable Exception ex) {
1639
- final String method = "getOrCreateDestroyTask()";
1640
- log(method);
1641
-
1642
- // Log how React Native is destroyed
1643
- // TODO(T136397487): Remove after Venice is shipped to 100%
1644
- raiseSoftException(method, reason, ex);
1645
-
1646
- ReactInstanceTaskUnwrapper reactInstanceTaskUnwrapper =
1647
- createReactInstanceUnwrapper("Destroy", method, reason);
1648
-
1649
- if (mDestroyTask == null) {
1650
- // When using the immediate executor, we want to avoid scheduling any further work immediately
1651
- // when destruction is kicked off.
1652
- log(method, "Resetting createReactInstance task ref");
1653
- mDestroyTask =
1654
- mCreateReactInstanceTaskRef
1655
- .getAndReset()
1656
- .continueWithTask(
1657
- task -> {
1658
- log(method, "Starting React Native destruction");
1659
-
1660
- final ReactInstance reactInstance =
1661
- reactInstanceTaskUnwrapper.unwrap(task, "1: Starting destroy");
1662
-
1663
- unregisterInstanceFromInspector(reactInstance);
1664
-
1665
- if (mHostInvalidated) {
1666
- // If the host has been invalidated, now that the current context/instance
1667
- // has been unregistered, we can safely destroy the host's inspector
1668
- // target.
1669
- if (mReactHostInspectorTarget != null) {
1670
- mReactHostInspectorTarget.close();
1671
- mReactHostInspectorTarget = null;
1672
- }
1673
- }
1674
-
1675
- // Step 1: Destroy DevSupportManager
1676
- if (mUseDevSupport) {
1677
- log(method, "DevSupportManager cleanup");
1678
- // TODO(T137233065): Disable DevSupportManager here
1679
- mDevSupportManager.stopInspector();
1680
- }
1681
-
1682
- final ReactContext reactContext = mBridgelessReactContextRef.getNullable();
1683
- if (reactContext == null) {
1684
- raiseSoftException(method, "ReactContext is null. Destroy reason: " + reason);
1685
- }
1686
-
1687
- // Step 2: Move React Native to onHostDestroy()
1688
- log(method, "Move ReactHost to onHostDestroy()");
1689
- mReactLifecycleStateManager.moveToOnHostDestroy(reactContext);
1690
-
1691
- return Task.forResult(reactInstance);
1692
- },
1693
- mUIExecutor)
1694
- .continueWithTask(
1695
- task -> {
1696
- final ReactInstance reactInstance =
1697
- reactInstanceTaskUnwrapper.unwrap(task, "2: Stopping surfaces");
1698
- if (reactInstance == null) {
1699
- raiseSoftException(method, "Skipping surface shutdown: ReactInstance null");
1700
- return task;
1701
- }
1702
-
1703
- // Step 3: Stop all React Native surfaces
1704
- stopAttachedSurfaces(method, reactInstance);
1705
- synchronized (mAttachedSurfaces) {
1706
- mAttachedSurfaces.clear();
1707
- }
1708
-
1709
- return task;
1710
- },
1711
- mBGExecutor)
1712
- .continueWithTask(
1713
- task -> {
1714
- reactInstanceTaskUnwrapper.unwrap(task, "3: Destroying ReactContext");
1715
- for (Function0<Unit> destroyListener : mBeforeDestroyListeners) {
1716
- destroyListener.invoke();
1717
- }
1718
-
1719
- final ReactContext reactContext = mBridgelessReactContextRef.getNullable();
1720
- if (reactContext == null) {
1721
- raiseSoftException(method, "ReactContext is null. Destroy reason: " + reason);
1722
- }
1723
-
1724
- // Step 4: De-register the memory pressure listener
1725
- log(method, "Destroying MemoryPressureRouter");
1726
- mMemoryPressureRouter.destroy(mContext);
1727
-
1728
- if (reactContext != null) {
1729
- log(method, "Resetting ReactContext ref");
1730
- mBridgelessReactContextRef.reset();
1731
-
1732
- log(method, "Destroying ReactContext");
1733
- reactContext.destroy();
1734
- }
1735
-
1736
- // Reset current activity
1737
- setCurrentActivity(null);
1738
-
1739
- // Clear ResourceIdleDrawableIdMap
1740
- ResourceDrawableIdHelper.getInstance().clear();
1741
-
1742
- return task;
1743
- },
1744
- mUIExecutor)
1745
- .continueWithTask(
1746
- task -> {
1747
- final ReactInstance reactInstance =
1748
- reactInstanceTaskUnwrapper.unwrap(task, "4: Destroying ReactInstance");
1749
-
1750
- if (reactInstance == null) {
1751
- raiseSoftException(
1752
- method, "Skipping ReactInstance.destroy(): ReactInstance null");
1753
- } else {
1754
- log(method, "Resetting ReactInstance ptr");
1755
- mReactInstance = null;
1756
-
1757
- log(method, "Destroying ReactInstance");
1758
- reactInstance.destroy();
1759
- }
1760
-
1761
- log(method, "Resetting start task ref");
1762
- mStartTask = null;
1763
-
1764
- log(method, "Resetting destroy task ref");
1765
- mDestroyTask = null;
1766
- return task;
1767
- },
1768
- mBGExecutor)
1769
- .continueWith(
1770
- task -> {
1771
- if (task.isFaulted()) {
1772
- Exception fault = Assertions.assertNotNull(task.getError());
1773
- raiseSoftException(
1774
- method,
1775
- "React destruction failed. ReactInstance task faulted. Fault reason: "
1776
- + fault.getMessage()
1777
- + ". Destroy reason: "
1778
- + reason,
1779
- task.getError());
1780
- }
1781
-
1782
- if (task.isCancelled()) {
1783
- raiseSoftException(
1784
- method,
1785
- "React destruction failed. ReactInstance task cancelled. Destroy reason: "
1786
- + reason);
1787
- }
1788
- return null;
1789
- });
1790
- }
1791
-
1792
- return mDestroyTask;
1793
- }
1794
-
1795
- @VisibleForTesting
1796
- /* package */ @Nullable
1797
- ReactHostInspectorTarget getOrCreateReactHostInspectorTarget() {
1798
- if (mReactHostInspectorTarget == null && InspectorFlags.getFuseboxEnabled()) {
1799
- // NOTE: ReactHostInspectorTarget only retains a weak reference to `this`.
1800
- mReactHostInspectorTarget = new ReactHostInspectorTarget(this);
1801
- }
1802
-
1803
- return mReactHostInspectorTarget;
1804
- }
1805
-
1806
- @ThreadConfined(UI)
1807
- @VisibleForTesting
1808
- /* package */ void unregisterInstanceFromInspector(final @Nullable ReactInstance reactInstance) {
1809
- if (reactInstance != null) {
1810
- if (InspectorFlags.getFuseboxEnabled()) {
1811
- Assertions.assertCondition(
1812
- mReactHostInspectorTarget != null && mReactHostInspectorTarget.isValid(),
1813
- "Host inspector target destroyed before instance was unregistered");
1814
- }
1815
- reactInstance.unregisterFromInspector();
1816
- }
1817
- }
1818
-
1819
- @Override
1820
- public void invalidate() {
1821
- FLog.d(TAG, "ReactHostImpl.invalidate()");
1822
- mHostInvalidated = true;
1823
- destroy("ReactHostImpl.invalidate()", null);
1824
- }
1825
- }