react-native-tvos 0.77.1-0 → 0.78.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 (636) hide show
  1. package/Libraries/Animated/animations/Animation.js +22 -1
  2. package/Libraries/Animated/animations/DecayAnimation.js +1 -0
  3. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  4. package/Libraries/Animated/animations/TimingAnimation.js +1 -0
  5. package/Libraries/Animated/nodes/AnimatedAddition.js +9 -2
  6. package/Libraries/Animated/nodes/AnimatedColor.js +4 -1
  7. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +10 -2
  8. package/Libraries/Animated/nodes/AnimatedDivision.js +9 -2
  9. package/Libraries/Animated/nodes/AnimatedInterpolation.js +5 -1
  10. package/Libraries/Animated/nodes/AnimatedModulo.js +5 -2
  11. package/Libraries/Animated/nodes/AnimatedMultiplication.js +9 -2
  12. package/Libraries/Animated/nodes/AnimatedNode.js +25 -46
  13. package/Libraries/Animated/nodes/AnimatedObject.js +9 -2
  14. package/Libraries/Animated/nodes/AnimatedProps.js +5 -1
  15. package/Libraries/Animated/nodes/AnimatedStyle.js +5 -1
  16. package/Libraries/Animated/nodes/AnimatedSubtraction.js +9 -2
  17. package/Libraries/Animated/nodes/AnimatedTracking.js +5 -1
  18. package/Libraries/Animated/nodes/AnimatedTransform.js +5 -1
  19. package/Libraries/Animated/nodes/AnimatedValue.js +63 -4
  20. package/Libraries/Animated/nodes/AnimatedValueXY.js +3 -1
  21. package/Libraries/Animated/useAnimatedProps.js +14 -56
  22. package/Libraries/AppDelegate/RCTAppDelegate.h +6 -48
  23. package/Libraries/AppDelegate/RCTAppDelegate.mm +5 -230
  24. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.h +21 -0
  25. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +123 -0
  26. package/Libraries/AppDelegate/RCTReactNativeFactory.h +98 -0
  27. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +266 -0
  28. package/Libraries/AppDelegate/RCTRootViewFactory.mm +1 -1
  29. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +0 -1
  30. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +1 -1
  31. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.js +3 -1
  32. package/Libraries/Components/LayoutConformance/LayoutConformance.d.ts +21 -0
  33. package/Libraries/Components/LayoutConformance/LayoutConformance.js +59 -0
  34. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +29 -0
  35. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  36. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
  37. package/Libraries/Components/TextInput/TextInput.d.ts +5 -0
  38. package/Libraries/Components/TextInput/TextInput.flow.js +6 -0
  39. package/Libraries/Components/TextInput/TextInput.js +6 -0
  40. package/Libraries/Components/View/ViewPropTypes.d.ts +4 -5
  41. package/Libraries/Components/View/ViewPropTypes.js +0 -9
  42. package/Libraries/Core/ReactNativeVersion.js +2 -2
  43. package/Libraries/Core/setUpBatchedBridge.js +1 -16
  44. package/Libraries/EventEmitter/RCTEventEmitter.js +2 -6
  45. package/Libraries/Image/AssetSourceResolver.js +11 -0
  46. package/Libraries/Image/RCTImageView.mm +3 -3
  47. package/Libraries/Inspector/BorderBox.js +26 -14
  48. package/Libraries/Inspector/BoxInspector.js +60 -42
  49. package/Libraries/Inspector/ElementBox.js +55 -48
  50. package/Libraries/Inspector/StyleInspector.js +36 -30
  51. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  52. package/Libraries/Lists/FlatList.d.ts +1 -1
  53. package/Libraries/Modal/Modal.js +2 -0
  54. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +1 -1
  55. package/Libraries/NativeComponent/BaseViewConfig.android.js +0 -2
  56. package/Libraries/NativeComponent/BaseViewConfig.ios.js +0 -2
  57. package/Libraries/Network/RCTNetworking.android.js +24 -16
  58. package/Libraries/Network/RCTNetworking.ios.js +1 -46
  59. package/Libraries/Network/RCTNetworking.js.flow +1 -46
  60. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
  61. package/Libraries/ReactNative/UIManagerProperties.js +3 -1
  62. package/Libraries/Renderer/implementations/ReactFabric-dev.js +15829 -26461
  63. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3907 -2560
  64. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4399 -2878
  65. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +16103 -26908
  66. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +4034 -2695
  67. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4535 -3045
  68. package/Libraries/Renderer/shims/ReactNativeTypes.js +5 -6
  69. package/Libraries/StyleSheet/processTransform.js +6 -0
  70. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +9 -0
  71. package/Libraries/Text/Text.d.ts +6 -1
  72. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +2 -0
  73. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +26 -0
  74. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +2 -0
  75. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +25 -0
  76. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +2 -0
  77. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -0
  78. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +26 -0
  79. package/Libraries/Text/TextProps.js +2 -2
  80. package/Libraries/Utilities/BackHandler.android.js +5 -4
  81. package/Libraries/Utilities/BackHandler.ios.js +3 -4
  82. package/README-core.md +2 -2
  83. package/React/Base/RCTVersion.m +2 -2
  84. package/React/CoreModules/RCTDevSettings.h +0 -1
  85. package/React/CoreModules/RCTDeviceInfo.mm +4 -0
  86. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +3 -5
  87. package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -6
  88. package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +3 -5
  89. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -24
  90. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +0 -28
  91. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +90 -57
  92. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +241 -104
  93. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +0 -5
  94. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +39 -10
  95. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +3 -3
  96. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +22 -3
  97. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +5 -0
  98. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  99. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +7 -2
  100. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +3 -0
  101. package/React/Fabric/Mounting/RCTMountingManager.mm +6 -9
  102. package/React/Fabric/RCTScheduler.mm +1 -1
  103. package/React/I18n/strings/da.lproj/fbt_language_pack.bin +0 -0
  104. package/React/Modules/RCTUIManager.mm +1 -2
  105. package/React/React-RCTFBReactNativeSpec.podspec +1 -0
  106. package/React/React-RCTFabric.podspec +3 -2
  107. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +12 -12
  108. package/React/Views/RCTComponentData.mm +1 -5
  109. package/React/Views/RCTLayout.m +3 -0
  110. package/React/Views/RCTShadowView.h +3 -3
  111. package/React/Views/RCTShadowView.m +52 -20
  112. package/React/Views/RCTView.m +6 -2
  113. package/React/Views/RCTViewManager.m +0 -7
  114. package/React/Views/ScrollView/RCTScrollView.m +46 -19
  115. package/React-Core.podspec +1 -1
  116. package/ReactAndroid/api/ReactAndroid.api +120 -227
  117. package/ReactAndroid/build.gradle.kts +8 -13
  118. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -0
  119. package/ReactAndroid/external-artifacts/build.gradle.kts +5 -5
  120. package/ReactAndroid/gradle.properties +1 -1
  121. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesMemoryDumper.java → HermesMemoryDumper.kt} +5 -5
  122. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesSamplingProfiler.java → HermesSamplingProfiler.kt} +8 -10
  123. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +12 -59
  124. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +12 -1
  125. package/ReactAndroid/src/main/java/com/facebook/react/{ReactPackageLogger.java → ReactPackageLogger.kt} +3 -3
  126. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +8 -8
  127. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +1 -3
  128. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +6 -0
  129. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +5 -3
  130. package/ReactAndroid/src/main/java/com/facebook/react/common/network/OkHttpCallUtil.kt +4 -8
  131. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +11 -5
  132. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHostDelegate.kt +0 -7
  133. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +1 -3
  134. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +6 -1
  135. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +11 -23
  136. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +3 -30
  137. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/HMRClient.java +4 -1
  138. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  139. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +4 -4
  140. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +21 -26
  141. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -14
  142. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +2 -11
  143. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +88 -0
  144. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +6 -6
  145. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +24 -0
  146. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +7 -7
  147. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +21 -21
  148. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +36 -36
  149. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +8 -8
  150. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +10 -10
  151. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +40 -40
  152. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +8 -8
  153. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +3 -3
  154. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +55 -0
  155. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +185 -0
  156. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/{HeadlessJsTaskEventListener.java → HeadlessJsTaskEventListener.kt} +5 -6
  157. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.kt +20 -0
  158. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +4 -4
  159. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.kt +7 -8
  160. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +8 -5
  161. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +11 -17
  162. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  163. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.kt +16 -0
  164. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +107 -0
  165. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +18 -19
  166. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.kt +48 -0
  167. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
  168. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +397 -0
  169. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +0 -10
  170. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +1 -1
  171. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +8 -8
  172. package/ReactAndroid/src/main/java/com/facebook/react/runtime/hermes/HermesInstance.kt +4 -10
  173. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +4 -0
  174. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +13 -12
  175. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +15 -12
  176. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ComponentNameResolver.java → ComponentNameResolver.kt} +4 -5
  177. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +5 -2
  178. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -5
  179. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +21 -0
  180. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +18 -0
  181. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{RootView.java → RootView.kt} +11 -12
  182. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +1 -1
  183. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{UIBlock.java → UIBlock.kt} +3 -3
  184. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -5
  185. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +25 -0
  186. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +1 -1
  187. package/{Libraries/AppDelegate/RCTAppDelegate+Protected.h → ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerWithGeneratedInterface.kt} +3 -8
  188. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +12 -5
  189. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +46 -80
  190. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +5 -5
  191. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +5 -5
  192. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CompositeBackgroundDrawable.kt +8 -9
  193. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{BatchEventDispatchedListener.java → BatchEventDispatchedListener.kt} +3 -3
  194. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +46 -0
  195. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +40 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +2 -6
  197. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.kt +19 -0
  198. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +23 -0
  199. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +241 -0
  200. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +193 -0
  201. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +44 -0
  202. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +37 -0
  203. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.kt +130 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -1
  205. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.kt +77 -0
  206. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +196 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +16 -17
  208. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +5 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +34 -1
  210. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +11 -0
  211. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/{FpsListener.java → FpsListener.kt} +4 -4
  212. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +16 -0
  213. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +3 -3
  214. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +136 -0
  215. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +2 -2
  216. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +152 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +52 -0
  218. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +1 -7
  219. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +8 -13
  220. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +50 -0
  221. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +1 -1
  222. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +1 -9
  223. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +111 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +90 -20
  225. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +2 -2
  226. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +22 -1
  227. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +43 -1
  228. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +86 -2
  229. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +44 -2
  230. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +7 -1
  231. package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -6
  232. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +6 -1
  233. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +96 -11
  234. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +9 -0
  235. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +1 -0
  236. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -3
  237. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  238. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +41 -25
  239. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +0 -2
  240. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +63 -91
  241. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -7
  242. package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +9 -9
  243. package/ReactAndroid/src/main/jni/react/fabric/MountItem.h +6 -10
  244. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
  245. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +4 -0
  246. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  247. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +0 -1
  248. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +49 -49
  249. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +11 -11
  250. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -4
  251. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -1
  252. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -1
  253. package/ReactAndroid/src/main/jni/react/jni/JSLogging.cpp +4 -9
  254. package/ReactAndroid/src/main/jni/react/jni/JSLogging.h +0 -4
  255. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +3 -4
  256. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +3 -4
  257. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +6 -0
  258. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +1 -0
  259. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +6 -0
  260. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +1 -0
  261. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +3 -7
  262. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +0 -2
  263. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +0 -1
  264. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +0 -1
  265. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.cpp +2 -8
  266. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.h +2 -8
  267. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -1
  268. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +18 -17
  269. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +1 -1
  270. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +1 -1
  271. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +0 -2
  272. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +0 -1
  273. package/ReactAndroid/src/main/res/views/view/values/ids.xml +5 -0
  274. package/ReactCommon/React-Fabric.podspec +8 -0
  275. package/ReactCommon/React-FabricComponents.podspec +2 -2
  276. package/ReactCommon/React-FabricImage.podspec +4 -1
  277. package/ReactCommon/cxxreact/CxxNativeModule.cpp +3 -3
  278. package/ReactCommon/cxxreact/Instance.cpp +6 -6
  279. package/ReactCommon/cxxreact/JSBigString.cpp +1 -1
  280. package/ReactCommon/cxxreact/JSExecutor.cpp +4 -2
  281. package/ReactCommon/cxxreact/ModuleRegistry.cpp +6 -6
  282. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -3
  283. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  284. package/ReactCommon/cxxreact/SystraceSection.h +8 -141
  285. package/ReactCommon/cxxreact/TraceSection.h +181 -0
  286. package/ReactCommon/cxxreact/tests/jsbigstring.cpp +19 -0
  287. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -2
  288. package/ReactCommon/jsc/JSCRuntime.cpp +0 -2
  289. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  290. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +27 -19
  291. package/ReactCommon/jserrorhandler/JsErrorHandler.h +5 -3
  292. package/ReactCommon/jserrorhandler/StackTraceParser.cpp +16 -16
  293. package/ReactCommon/jserrorhandler/StackTraceParser.h +1 -1
  294. package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +252 -246
  295. package/ReactCommon/jsi/jsi/CMakeLists.txt +0 -3
  296. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -1
  297. package/ReactCommon/jsi/jsi/JSIDynamic.h +1 -1
  298. package/ReactCommon/jsi/jsi/decorator.h +61 -0
  299. package/ReactCommon/jsi/jsi/jsi-inl.h +4 -0
  300. package/ReactCommon/jsi/jsi/jsi.cpp +37 -0
  301. package/ReactCommon/jsi/jsi/jsi.h +81 -0
  302. package/ReactCommon/jsi/jsi/test/testlib.cpp +88 -0
  303. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +9 -9
  304. package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -1
  305. package/ReactCommon/jsinspector-modern/HostAgent.cpp +3 -7
  306. package/ReactCommon/jsinspector-modern/HostTarget.cpp +22 -1
  307. package/ReactCommon/jsinspector-modern/HostTarget.h +1 -1
  308. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +19 -4
  309. package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -0
  310. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +21 -10
  311. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +12 -11
  312. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +2 -16
  313. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +14 -14
  314. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +7 -13
  315. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +1 -1
  316. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -3
  317. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +3 -3
  318. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +1 -1
  319. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +26 -0
  320. package/ReactCommon/jsinspector-modern/tracing/CdpTracing.h +21 -0
  321. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +187 -0
  322. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +126 -0
  323. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +56 -0
  324. package/ReactCommon/react/featureflags/CMakeLists.txt +3 -0
  325. package/ReactCommon/react/featureflags/React-featureflags.podspec +7 -0
  326. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +15 -15
  327. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +18 -18
  328. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +88 -88
  329. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +9 -9
  330. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +17 -17
  331. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +454 -0
  332. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +5 -5
  333. package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsDynamicProviderTest.cpp +78 -0
  334. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -3
  335. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +3 -3
  336. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +1 -5
  337. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +13 -23
  338. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +55 -0
  339. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.cpp +35 -0
  340. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.h +28 -0
  341. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +18 -18
  342. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +8 -8
  343. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
  344. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +5 -8
  345. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -3
  346. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +22 -43
  347. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +0 -15
  348. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  349. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +22 -2
  350. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  351. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  352. package/ReactCommon/react/renderer/animations/CMakeLists.txt +0 -1
  353. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +1 -1
  354. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +25 -19
  355. package/ReactCommon/react/renderer/animations/primitives.h +1 -1
  356. package/ReactCommon/react/renderer/animations/utils.h +3 -4
  357. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +31 -9
  358. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +81 -31
  359. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +0 -1
  360. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +4 -1
  361. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +2 -0
  362. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -2
  363. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +5 -5
  364. package/ReactCommon/react/renderer/components/image/ImageProps.h +1 -1
  365. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +38 -10
  366. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
  367. package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -3
  368. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -6
  369. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +0 -4
  370. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +7 -0
  371. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -2
  372. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +2 -2
  373. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +33 -0
  374. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +17 -0
  375. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +3 -2
  376. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +2 -1
  377. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +0 -4
  378. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +7 -0
  379. package/ReactCommon/react/renderer/{uimanager/bindingUtils.h → components/text/ParagraphComponentDescriptor.cpp} +2 -8
  380. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +10 -7
  381. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +23 -0
  382. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +8 -1
  383. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +243 -0
  384. package/ReactCommon/react/renderer/components/textinput/TextInputState.cpp +71 -0
  385. package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputState.h → TextInputState.h} +27 -7
  386. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +6 -13
  387. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -2
  388. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +145 -144
  389. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +27 -29
  390. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h +4 -5
  391. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +0 -26
  392. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +0 -6
  393. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +0 -147
  394. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +5 -57
  395. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +60 -70
  396. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +3 -3
  397. package/ReactCommon/react/renderer/components/view/LayoutConformanceComponentDescriptor.h +18 -0
  398. package/ReactCommon/react/renderer/components/view/LayoutConformanceProps.h +36 -0
  399. package/ReactCommon/react/renderer/components/view/LayoutConformanceShadowNode.h +28 -0
  400. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +4 -0
  401. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -1
  402. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +21 -22
  403. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  404. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +3 -1
  405. package/ReactCommon/react/renderer/components/view/conversions.h +117 -43
  406. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +3 -2
  407. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +3 -1
  408. package/ReactCommon/react/renderer/components/view/primitives.h +1 -1
  409. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +12 -12
  410. package/ReactCommon/react/renderer/core/CMakeLists.txt +0 -1
  411. package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +4 -2
  412. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +4 -2
  413. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +17 -2
  414. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +26 -0
  415. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +4 -0
  416. package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -3
  417. package/ReactCommon/react/renderer/core/Props.cpp +16 -5
  418. package/ReactCommon/react/renderer/core/Props.h +11 -4
  419. package/ReactCommon/react/renderer/core/RawProps.cpp +30 -5
  420. package/ReactCommon/react/renderer/core/RawProps.h +10 -1
  421. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -2
  422. package/ReactCommon/react/renderer/core/RawPropsParser.h +7 -1
  423. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -0
  424. package/ReactCommon/react/renderer/core/RawValue.h +315 -22
  425. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +95 -4
  426. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +19 -4
  427. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +7 -1
  428. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +7 -5
  429. package/ReactCommon/react/renderer/graphics/Transform.cpp +11 -2
  430. package/ReactCommon/react/renderer/graphics/Transform.h +2 -1
  431. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +4 -2
  432. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +7 -0
  433. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +43 -0
  434. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +36 -0
  435. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +43 -0
  436. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +94 -0
  437. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +101 -0
  438. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +9 -1
  439. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  440. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageManager.mm +9 -0
  441. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  442. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +2 -2
  443. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +187 -152
  444. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -5
  445. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +10 -16
  446. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -12
  447. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +44 -14
  448. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +8 -4
  449. package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +1 -1
  450. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +116 -193
  451. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +0 -3
  452. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +7 -4
  453. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +2 -1
  454. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +7 -8
  455. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +6 -6
  456. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +3 -1
  457. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +2 -0
  458. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +11 -11
  459. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -15
  460. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +4 -3
  461. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +0 -1
  462. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +6 -37
  463. package/ReactCommon/react/renderer/scheduler/Scheduler.h +0 -3
  464. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +15 -11
  465. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -0
  466. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +56 -2
  467. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +23 -3
  468. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +1 -2
  469. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +26 -0
  470. package/ReactCommon/react/renderer/textlayoutmanager/{platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h → TextLayoutManager.h} +18 -17
  471. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +77 -89
  472. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +6 -10
  473. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +6 -2
  474. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +23 -1
  475. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +11 -32
  476. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +9 -23
  477. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.cpp +88 -0
  478. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.h +50 -0
  479. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +0 -1
  480. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +3 -40
  481. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +23 -18
  482. package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -0
  483. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -31
  484. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +0 -4
  485. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +10 -10
  486. package/ReactCommon/react/runtime/CMakeLists.txt +0 -1
  487. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -2
  488. package/ReactCommon/react/runtime/ReactInstance.cpp +43 -57
  489. package/ReactCommon/react/runtime/TimerManager.cpp +4 -4
  490. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +5 -1
  491. package/ReactCommon/react/runtime/hermes/HermesInstance.h +0 -2
  492. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.h +2 -6
  493. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.mm +6 -15
  494. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +3 -1
  495. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +15 -15
  496. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +5 -4
  497. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  498. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +33 -17
  499. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +8 -2
  500. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.cpp → ReactPerfettoLogger.cpp} +25 -24
  501. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.h → ReactPerfettoLogger.h} +9 -9
  502. package/ReactCommon/yoga/yoga/YGEnums.cpp +6 -0
  503. package/ReactCommon/yoga/yoga/YGEnums.h +4 -1
  504. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +124 -24
  505. package/ReactCommon/yoga/yoga/YGNodeStyle.h +22 -1
  506. package/ReactCommon/yoga/yoga/YGValue.h +3 -0
  507. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +6 -6
  508. package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +2 -2
  509. package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +1 -1
  510. package/ReactCommon/yoga/yoga/algorithm/PixelGrid.cpp +9 -6
  511. package/ReactCommon/yoga/yoga/enums/Unit.h +4 -1
  512. package/ReactCommon/yoga/yoga/node/Node.cpp +8 -8
  513. package/ReactCommon/yoga/yoga/node/Node.h +5 -5
  514. package/ReactCommon/yoga/yoga/style/Style.h +14 -12
  515. package/ReactCommon/yoga/yoga/style/StyleLength.h +14 -7
  516. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +139 -0
  517. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  518. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +60 -3
  519. package/gradle/libs.versions.toml +6 -2
  520. package/index.js +5 -0
  521. package/package.json +12 -13
  522. package/react-native.config.js +6 -0
  523. package/scripts/cocoapods/codegen_utils.rb +4 -4
  524. package/scripts/cocoapods/new_architecture.rb +3 -3
  525. package/scripts/cocoapods/utils.rb +4 -3
  526. package/scripts/codegen/generate-artifacts-executor.js +8 -4
  527. package/scripts/generate-codegen-artifacts.js +6 -1
  528. package/scripts/react-native-xcode.sh +1 -1
  529. package/scripts/react_native_pods.rb +3 -3
  530. package/scripts/xcode/ccache-clang++.sh +1 -1
  531. package/scripts/xcode/ccache-clang.sh +1 -1
  532. package/sdks/.hermesversion +1 -1
  533. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +1 -1
  534. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  535. package/sdks/hermesc/osx-bin/hermes +0 -0
  536. package/sdks/hermesc/osx-bin/hermesc +0 -0
  537. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  538. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  539. package/src/private/featureflags/README.md +5 -0
  540. package/src/private/featureflags/ReactNativeFeatureFlags.js +33 -27
  541. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +5 -5
  542. package/src/private/renderer/errorhandling/ErrorHandlers.js +12 -55
  543. package/src/private/specs/modules/{NativeJSCSamplingProfiler.js → NativeCPUTime.js} +7 -2
  544. package/src/private/specs/modules/NativeFantom.js +37 -0
  545. package/src/private/utilities/ensureInstance.js +21 -0
  546. package/src/private/webapis/dom/nodes/ReactNativeElement.js +49 -6
  547. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +17 -9
  548. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +11 -11
  549. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  550. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -1
  551. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  552. package/src/private/webapis/performance/Performance.js +0 -12
  553. package/src/private/webapis/performance/specs/NativePerformance.js +0 -11
  554. package/types/index.d.ts +1 -0
  555. package/types/public/ReactNativeTVTypes.d.ts +49 -51
  556. package/Libraries/HeapCapture/HeapCapture.js +0 -29
  557. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -13
  558. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -13
  559. package/Libraries/Performance/SamplingProfiler.js +0 -39
  560. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +0 -334
  561. package/React/Inspector/RCTInspectorPackagerConnection.m +0 -325
  562. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedResultAsyncTask.java +0 -50
  563. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +0 -314
  564. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +0 -76
  565. package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.kt +0 -36
  566. package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.kt +0 -33
  567. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.kt +0 -54
  568. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +0 -83
  569. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.java +0 -121
  570. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +0 -214
  571. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.java +0 -22
  572. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/XmlFormat.kt +0 -143
  573. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.java +0 -17
  574. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +0 -124
  575. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java +0 -58
  576. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +0 -422
  577. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +0 -98
  578. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +0 -25
  579. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java +0 -20
  580. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +0 -45
  581. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.java +0 -37
  582. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.java +0 -19
  583. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.java +0 -24
  584. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +0 -257
  585. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +0 -210
  586. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +0 -43
  587. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +0 -39
  588. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +0 -165
  589. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.java +0 -85
  590. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +0 -204
  591. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +0 -161
  592. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +0 -232
  593. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +0 -70
  594. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/LegacyLineHeightSpan.kt +0 -69
  595. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +0 -114
  596. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +0 -31
  597. package/ReactAndroid/src/main/jni/first-party/fb/assert.cpp +0 -39
  598. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ALog.h +0 -82
  599. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Build.h +0 -31
  600. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Countable.h +0 -45
  601. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Doxyfile +0 -18
  602. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Environment.h +0 -93
  603. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ProgramLocation.h +0 -58
  604. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/RefPtr.h +0 -266
  605. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/StaticInitialized.h +0 -37
  606. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ThreadLocal.h +0 -112
  607. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/assert.h +0 -43
  608. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/log.h +0 -350
  609. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/noncopyable.h +0 -20
  610. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/nonmovable.h +0 -20
  611. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/visibility.h +0 -10
  612. package/ReactAndroid/src/main/jni/first-party/fb/log.cpp +0 -102
  613. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.cpp +0 -47
  614. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.h +0 -38
  615. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.cpp +0 -41
  616. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.h +0 -35
  617. package/ReactAndroid/src/main/jni/react/perftests/OnLoad.cpp +0 -243
  618. package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +0 -15
  619. package/ReactCommon/React-nativeconfig.podspec +0 -36
  620. package/ReactCommon/cxxreact/tests/main.cpp +0 -15
  621. package/ReactCommon/react/config/CMakeLists.txt +0 -20
  622. package/ReactCommon/react/config/ReactNativeConfig.cpp +0 -28
  623. package/ReactCommon/react/config/ReactNativeConfig.h +0 -42
  624. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -95
  625. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +0 -80
  626. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputState.cpp +0 -10
  627. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -78
  628. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -69
  629. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +0 -123
  630. package/ReactCommon/react/renderer/uimanager/bindingUtils.cpp +0 -79
  631. package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +0 -413
  632. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +0 -181
  633. package/src/private/webapis/mutationobserver/specs/__mocks__/NativeMutationObserver.js +0 -327
  634. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewComponentDescriptor.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewComponentDescriptor.h} +0 -0
  635. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.cpp → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.cpp} +0 -0
  636. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h} +0 -0
@@ -99,7 +99,7 @@ val preparePrefab by
99
99
  // jsiinpsector
100
100
  Pair("../ReactCommon/jsinspector-modern/", "jsinspector-modern/"),
101
101
  // mapbufferjni
102
- Pair("src/main/jni/react/mapbuffer", "react/mapbuffer/"),
102
+ Pair("src/main/jni/react/mapbuffer", ""),
103
103
  // turbomodulejsijni
104
104
  Pair("src/main/jni/react/turbomodule", ""),
105
105
  // react_codegen_rncore
@@ -193,7 +193,6 @@ val preparePrefab by
193
193
  Pair("../ReactCommon/callinvoker/", ""),
194
194
  Pair("../ReactCommon/cxxreact/", "cxxreact/"),
195
195
  Pair("../ReactCommon/react/bridging/", "react/bridging/"),
196
- Pair("../ReactCommon/react/config/", "react/config/"),
197
196
  Pair("../ReactCommon/react/nativemodule/core/", ""),
198
197
  Pair("../ReactCommon/react/nativemodule/core/platform/android/", ""),
199
198
  Pair(
@@ -398,13 +397,6 @@ val prepareGlog by
398
397
  outputDir.set(File(thirdPartyNdkDir, "glog"))
399
398
  }
400
399
 
401
- // Create Android native library module based on jsc from npm
402
- val prepareJSC by
403
- tasks.registering(PrepareJSCTask::class) {
404
- jscPackagePath.set(findNodeModulePath(projectDir, "jsc-android"))
405
- outputDir = project.layout.buildDirectory.dir("third-party-ndk/jsc")
406
- }
407
-
408
400
  val prepareKotlinBuildScriptModel by
409
401
  tasks.registering {
410
402
  // This task is run when Gradle Sync is running.
@@ -522,6 +514,7 @@ android {
522
514
  buildConfigField("boolean", "IS_INTERNAL_BUILD", "false")
523
515
  buildConfigField("int", "EXOPACKAGE_FLAGS", "0")
524
516
  buildConfigField("boolean", "UNSTABLE_ENABLE_FUSEBOX_RELEASE", "false")
517
+ buildConfigField("boolean", "ENABLE_PERFETTO", "false")
525
518
 
526
519
  resValue("integer", "react_native_dev_server_port", reactNativeDevServerPort())
527
520
 
@@ -579,7 +572,6 @@ android {
579
572
  prepareFolly,
580
573
  prepareGlog,
581
574
  prepareGtest,
582
- prepareJSC,
583
575
  preparePrefab)
584
576
  tasks.getByName("generateCodegenSchemaFromJavaScript").dependsOn(buildCodegenCLI)
585
577
  prepareKotlinBuildScriptModel.dependsOn("preBuild")
@@ -593,7 +585,8 @@ android {
593
585
  "src/main/res/shell",
594
586
  "src/main/res/views/alert",
595
587
  "src/main/res/views/modal",
596
- "src/main/res/views/uimanager"))
588
+ "src/main/res/views/uimanager",
589
+ "src/main/res/views/view"))
597
590
  java.exclude("com/facebook/react/processing")
598
591
  java.exclude("com/facebook/react/module/processing")
599
592
  }
@@ -665,13 +658,15 @@ dependencies {
665
658
  compileOnly(libs.javax.annotation.api)
666
659
  api(libs.javax.inject)
667
660
 
668
- // It's up to the consumer to decide if hermes should be included or not.
669
- // Therefore hermes-engine is a compileOnly dependency.
661
+ // It's up to the consumer to decide if hermes/jsc should be included or not.
662
+ // Therefore hermes-engine and jsc are compileOnly dependencies.
670
663
  compileOnly(project(":packages:react-native:ReactAndroid:hermes-engine"))
664
+ compileOnly(libs.jsc.android)
671
665
 
672
666
  testImplementation(libs.junit)
673
667
  testImplementation(libs.assertj)
674
668
  testImplementation(libs.mockito)
669
+ testImplementation(libs.mockito.kotlin)
675
670
  testImplementation(libs.robolectric)
676
671
  testImplementation(libs.thoughtworks)
677
672
  }
@@ -73,6 +73,8 @@ std::shared_ptr<TurboModule> cxxModuleProvider(
73
73
 
74
74
  // And we fallback to the CXX module providers autolinked
75
75
  return autolinking_cxxModuleProvider(name, jsInvoker);
76
+
77
+ return nullptr;
76
78
  }
77
79
 
78
80
  std::shared_ptr<TurboModule> javaModuleProvider(
@@ -17,13 +17,13 @@ version =
17
17
  parent?.extraProperties?.get("publishing_version")
18
18
  ?: error("publishing_version not set for external-artifacts")
19
19
 
20
- configurations.maybeCreate("default")
20
+ configurations.maybeCreate("externalArtifacts")
21
21
 
22
22
  // Those artifacts should be placed inside the `artifacts/hermes-ios-*.tar.gz` location.
23
23
  val hermesiOSDebugArtifactFile: RegularFile =
24
24
  layout.projectDirectory.file("artifacts/hermes-ios-debug.tar.gz")
25
25
  val hermesiOSDebugArtifact: PublishArtifact =
26
- artifacts.add("default", hermesiOSDebugArtifactFile) {
26
+ artifacts.add("externalArtifacts", hermesiOSDebugArtifactFile) {
27
27
  type = "tgz"
28
28
  extension = "tar.gz"
29
29
  classifier = "hermes-ios-debug"
@@ -31,7 +31,7 @@ val hermesiOSDebugArtifact: PublishArtifact =
31
31
  val hermesiOSReleaseArtifactFile: RegularFile =
32
32
  layout.projectDirectory.file("artifacts/hermes-ios-release.tar.gz")
33
33
  val hermesiOSReleaseArtifact: PublishArtifact =
34
- artifacts.add("default", hermesiOSReleaseArtifactFile) {
34
+ artifacts.add("externalArtifacts", hermesiOSReleaseArtifactFile) {
35
35
  type = "tgz"
36
36
  extension = "tar.gz"
37
37
  classifier = "hermes-ios-release"
@@ -41,7 +41,7 @@ val hermesiOSReleaseArtifact: PublishArtifact =
41
41
  val hermesDSYMDebugArtifactFile: RegularFile =
42
42
  layout.projectDirectory.file("artifacts/hermes-framework-dSYM-debug.tar.gz")
43
43
  val hermesDSYMDebugArtifact: PublishArtifact =
44
- artifacts.add("default", hermesDSYMDebugArtifactFile) {
44
+ artifacts.add("externalArtifacts", hermesDSYMDebugArtifactFile) {
45
45
  type = "tgz"
46
46
  extension = "tar.gz"
47
47
  classifier = "hermes-framework-dSYM-debug"
@@ -49,7 +49,7 @@ val hermesDSYMDebugArtifact: PublishArtifact =
49
49
  val hermesDSYMReleaseArtifactFile: RegularFile =
50
50
  layout.projectDirectory.file("artifacts/hermes-framework-dSYM-release.tar.gz")
51
51
  val hermesDSYMReleaseArtifact: PublishArtifact =
52
- artifacts.add("default", hermesDSYMReleaseArtifactFile) {
52
+ artifacts.add("externalArtifacts", hermesDSYMReleaseArtifactFile) {
53
53
  type = "tgz"
54
54
  extension = "tar.gz"
55
55
  classifier = "hermes-framework-dSYM-release"
@@ -1,4 +1,4 @@
1
- VERSION_NAME=0.77.1-0
1
+ VERSION_NAME=0.78.0-0
2
2
  react.internal.publishingGroup=io.github.react-native-tvos
3
3
 
4
4
  android.useAndroidX=true
@@ -5,14 +5,14 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- package com.facebook.hermes.instrumentation;
8
+ package com.facebook.hermes.instrumentation
9
9
 
10
10
  public interface HermesMemoryDumper {
11
- boolean shouldSaveSnapshot();
11
+ public fun shouldSaveSnapshot(): Boolean
12
12
 
13
- String getInternalStorage();
13
+ public fun getInternalStorage(): String
14
14
 
15
- String getId();
15
+ public fun getId(): String
16
16
 
17
- void setMetaData(String crashId);
17
+ public fun setMetaData(crashId: String)
18
18
  }
@@ -5,28 +5,26 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- package com.facebook.hermes.instrumentation;
8
+ package com.facebook.hermes.instrumentation
9
9
 
10
- import com.facebook.soloader.SoLoader;
10
+ import com.facebook.soloader.SoLoader
11
11
 
12
12
  /** Hermes sampling profiler static JSI API. */
13
- public class HermesSamplingProfiler {
14
- static {
15
- SoLoader.loadLibrary("jsijniprofiler");
13
+ public object HermesSamplingProfiler {
14
+ init {
15
+ SoLoader.loadLibrary("jsijniprofiler")
16
16
  }
17
17
 
18
18
  /** Start sample profiling. */
19
- public static native void enable();
19
+ @JvmStatic public external fun enable()
20
20
 
21
21
  /** Stop sample profiling. */
22
- public static native void disable();
22
+ @JvmStatic public external fun disable()
23
23
 
24
24
  /**
25
25
  * Dump sampled stack traces to file.
26
26
  *
27
27
  * @param filename the file to dump sampling trace to.
28
28
  */
29
- public static native void dumpSampledTraceToFile(String filename);
30
-
31
- private HermesSamplingProfiler() {}
29
+ @JvmStatic public external fun dumpSampledTraceToFile(filename: String)
32
30
  }
@@ -11,9 +11,6 @@ import androidx.annotation.Nullable;
11
11
  import com.facebook.react.bridge.ModuleSpec;
12
12
  import com.facebook.react.bridge.NativeModule;
13
13
  import com.facebook.react.bridge.ReactApplicationContext;
14
- import com.facebook.react.common.ClassFinder;
15
- import com.facebook.react.devsupport.JSCHeapCapture;
16
- import com.facebook.react.module.annotations.ReactModule;
17
14
  import com.facebook.react.module.annotations.ReactModuleList;
18
15
  import com.facebook.react.module.model.ReactModuleInfo;
19
16
  import com.facebook.react.module.model.ReactModuleInfoProvider;
@@ -22,20 +19,17 @@ import com.facebook.react.uimanager.ViewManager;
22
19
  import com.facebook.react.views.debuggingoverlay.DebuggingOverlayManager;
23
20
  import java.util.ArrayList;
24
21
  import java.util.Collection;
22
+ import java.util.Collections;
25
23
  import java.util.HashMap;
26
24
  import java.util.List;
27
25
  import java.util.Map;
28
- import javax.inject.Provider;
29
26
 
30
27
  /**
31
28
  * Package defining core framework modules (e.g. UIManager). It should be used for modules that
32
29
  * require special integration with other framework parts (e.g. with the list of packages to load
33
30
  * view managers from).
34
31
  */
35
- @ReactModuleList(
36
- nativeModules = {
37
- JSCHeapCapture.class,
38
- })
32
+ @ReactModuleList(nativeModules = {})
39
33
  /* package */
40
34
  public class DebugCorePackage extends BaseReactPackage implements ViewManagerOnDemandReactPackage {
41
35
  private @Nullable Map<String, ModuleSpec> mViewManagers;
@@ -44,59 +38,17 @@ public class DebugCorePackage extends BaseReactPackage implements ViewManagerOnD
44
38
 
45
39
  @Override
46
40
  public @Nullable NativeModule getModule(String name, ReactApplicationContext reactContext) {
47
- switch (name) {
48
- case JSCHeapCapture.NAME:
49
- return new JSCHeapCapture(reactContext);
50
- default:
51
- return null;
52
- }
41
+ return null;
53
42
  }
54
43
 
55
44
  @Override
56
45
  public ReactModuleInfoProvider getReactModuleInfoProvider() {
57
- if (!ClassFinder.canLoadClassesFromAnnotationProcessors()) {
58
- return fallbackForMissingClass();
59
- }
60
- try {
61
- Class<?> reactModuleInfoProviderClass =
62
- ClassFinder.findClass("com.facebook.react.DebugCorePackage$$ReactModuleInfoProvider");
63
- return (ReactModuleInfoProvider) reactModuleInfoProviderClass.newInstance();
64
- } catch (ClassNotFoundException e) {
65
- return fallbackForMissingClass();
66
- } catch (InstantiationException e) {
67
- throw new RuntimeException(
68
- "No ReactModuleInfoProvider for DebugCorePackage$$ReactModuleInfoProvider", e);
69
- } catch (IllegalAccessException e) {
70
- throw new RuntimeException(
71
- "No ReactModuleInfoProvider for DebugCorePackage$$ReactModuleInfoProvider", e);
72
- }
73
- }
74
-
75
- private ReactModuleInfoProvider fallbackForMissingClass() {
76
- // In OSS case, the annotation processor does not run. We fall back on creating this by hand
77
- Class<? extends NativeModule>[] moduleList = new Class[] {JSCHeapCapture.class};
78
-
79
- final Map<String, ReactModuleInfo> reactModuleInfoMap = new HashMap<>();
80
- for (Class<? extends NativeModule> moduleClass : moduleList) {
81
- ReactModule reactModule = moduleClass.getAnnotation(ReactModule.class);
82
-
83
- reactModuleInfoMap.put(
84
- reactModule.name(),
85
- new ReactModuleInfo(
86
- reactModule.name(),
87
- moduleClass.getName(),
88
- reactModule.canOverrideExistingModule(),
89
- reactModule.needsEagerInit(),
90
- reactModule.isCxxModule(),
91
- ReactModuleInfo.classIsTurboModule(moduleClass)));
92
- }
93
-
94
- return () -> reactModuleInfoMap;
95
- }
96
-
97
- private static void appendMap(
98
- Map<String, ModuleSpec> map, String name, Provider<? extends NativeModule> provider) {
99
- map.put(name, ModuleSpec.viewManagerSpec(provider));
46
+ return new ReactModuleInfoProvider() {
47
+ @Override
48
+ public Map<String, ReactModuleInfo> getReactModuleInfos() {
49
+ return Collections.emptyMap();
50
+ }
51
+ };
100
52
  }
101
53
 
102
54
  /**
@@ -105,8 +57,9 @@ public class DebugCorePackage extends BaseReactPackage implements ViewManagerOnD
105
57
  private Map<String, ModuleSpec> getViewManagersMap() {
106
58
  if (mViewManagers == null) {
107
59
  Map<String, ModuleSpec> viewManagers = new HashMap<>();
108
- appendMap(viewManagers, DebuggingOverlayManager.REACT_CLASS, DebuggingOverlayManager::new);
109
-
60
+ viewManagers.put(
61
+ DebuggingOverlayManager.REACT_CLASS,
62
+ ModuleSpec.viewManagerSpec(DebuggingOverlayManager::new));
110
63
  mViewManagers = viewManagers;
111
64
  }
112
65
  return mViewManagers;
@@ -651,6 +651,16 @@ public class ReactInstanceManager {
651
651
  @ThreadConfined(UI)
652
652
  public void onHostPause(@Nullable Activity activity) {
653
653
  if (mRequireActivity) {
654
+ if (mCurrentActivity == null) {
655
+ String message =
656
+ "ReactInstanceManager.onHostPause called with null activity, expected:"
657
+ + mCurrentActivity.getClass().getSimpleName();
658
+ FLog.e(TAG, message);
659
+ StackTraceElement[] stackTrace = Thread.currentThread().getStackTrace();
660
+ for (StackTraceElement element : stackTrace) {
661
+ FLog.e(TAG, element.toString());
662
+ }
663
+ }
654
664
  Assertions.assertCondition(mCurrentActivity != null);
655
665
  }
656
666
  if (mCurrentActivity != null) {
@@ -1521,7 +1531,8 @@ public class ReactInstanceManager {
1521
1531
  if (mBridgeIdleDebugListener != null) {
1522
1532
  catalystInstance.addBridgeIdleDebugListener(mBridgeIdleDebugListener);
1523
1533
  }
1524
- if (Systrace.isTracing(TRACE_TAG_REACT_APPS | TRACE_TAG_REACT_JS_VM_CALLS)) {
1534
+ if (BuildConfig.ENABLE_PERFETTO
1535
+ || Systrace.isTracing(TRACE_TAG_REACT_APPS | TRACE_TAG_REACT_JS_VM_CALLS)) {
1525
1536
  catalystInstance.setGlobalVariable("__RCTProfileIsProfiling", "true");
1526
1537
  }
1527
1538
 
@@ -5,12 +5,12 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
- package com.facebook.react;
8
+ package com.facebook.react
9
9
 
10
10
  /** Interface for the bridge to call for TTI start and end markers. */
11
11
  public interface ReactPackageLogger {
12
12
 
13
- void startProcessPackage();
13
+ public fun startProcessPackage(): Unit
14
14
 
15
- void endProcessPackage();
15
+ public fun endProcessPackage(): Unit
16
16
  }
@@ -25,17 +25,17 @@ internal class EventAnimationDriver(
25
25
  @JvmField internal var valueNode: ValueAnimatedNode
26
26
  ) : RCTModernEventEmitter {
27
27
  @Deprecated("Deprecated in Java")
28
- override fun receiveEvent(targetReactTag: Int, eventName: String, event: WritableMap?) =
29
- receiveEvent(-1, targetReactTag, eventName, event)
28
+ override fun receiveEvent(targetTag: Int, eventName: String, params: WritableMap?) =
29
+ receiveEvent(-1, targetTag, eventName, params)
30
30
 
31
31
  override fun receiveEvent(
32
32
  surfaceId: Int,
33
33
  targetTag: Int,
34
34
  eventName: String,
35
- event: WritableMap?
35
+ params: WritableMap?
36
36
  ) =
37
37
  // We assume this event can't be coalesced. `customCoalesceKey` has no meaning in Fabric.
38
- receiveEvent(surfaceId, targetTag, eventName, false, 0, event, EventCategoryDef.UNSPECIFIED)
38
+ receiveEvent(surfaceId, targetTag, eventName, false, 0, params, EventCategoryDef.UNSPECIFIED)
39
39
 
40
40
  @Deprecated("Deprecated in Java")
41
41
  override fun receiveTouches(
@@ -47,7 +47,7 @@ internal class EventAnimationDriver(
47
47
  }
48
48
 
49
49
  @Deprecated("Deprecated in Java")
50
- override fun receiveTouches(touchEvent: TouchEvent) {
50
+ override fun receiveTouches(event: TouchEvent) {
51
51
  throw UnsupportedOperationException("receiveTouches is not support by native animated events")
52
52
  }
53
53
 
@@ -57,13 +57,13 @@ internal class EventAnimationDriver(
57
57
  eventName: String,
58
58
  canCoalesceEvent: Boolean,
59
59
  customCoalesceKey: Int,
60
- event: WritableMap?,
60
+ params: WritableMap?,
61
61
  @EventCategoryDef category: Int
62
62
  ) {
63
- requireNotNull(event) { "Native animated events must have event data." }
63
+ requireNotNull(params) { "Native animated events must have event data." }
64
64
 
65
65
  // Get the new value for the node by looking into the event map using the provided event path.
66
- var currMap: ReadableMap? = event
66
+ var currMap: ReadableMap? = params
67
67
  var currArray: ReadableArray? = null
68
68
  for (i in 0 until eventPath.size - 1) {
69
69
  if (currMap != null) {
@@ -503,9 +503,7 @@ public abstract class ReactContext extends ContextWrapper {
503
503
  public abstract @Nullable CallInvokerHolder getJSCallInvokerHolder();
504
504
 
505
505
  @Deprecated(
506
- since =
507
- "This method will be deprecated later as part of Stable APIs with bridge removal and not"
508
- + " encouraged usage.")
506
+ since = "This method is deprecated, please use UIManagerHelper.getUIManager() instead.")
509
507
  /**
510
508
  * Get the UIManager for Fabric from the CatalystInstance.
511
509
  *
@@ -14,6 +14,12 @@ import kotlin.jvm.JvmStatic
14
14
 
15
15
  @DoNotStrip
16
16
  public object ReactSoftExceptionLogger {
17
+ /** Constants that listeners can utilize for custom category-based behavior. */
18
+ public object Categories {
19
+ public const val RVG_IS_VIEW_CLIPPED: String = "ReactViewGroup.isViewClipped"
20
+ public const val RVG_ON_VIEW_REMOVED: String = "ReactViewGroup.onViewRemoved"
21
+ public const val SOFT_ASSERTIONS: String = "SoftAssertions"
22
+ }
17
23
 
18
24
  // Use a list instead of a set here because we expect the number of listeners
19
25
  // to be very small, and we want listeners to be called in a deterministic
@@ -7,6 +7,8 @@
7
7
 
8
8
  package com.facebook.react.bridge
9
9
 
10
+ import com.facebook.react.bridge.ReactSoftExceptionLogger.Categories.SOFT_ASSERTIONS
11
+
10
12
  /**
11
13
  * Utility class to make assertions that should not hard-crash the app but instead be handled by the
12
14
  * Catalyst app [JSExceptionHandler]. See the javadoc on that class for more information about our
@@ -23,7 +25,7 @@ public object SoftAssertions {
23
25
  */
24
26
  @JvmStatic
25
27
  public fun assertUnreachable(message: String): Unit {
26
- ReactSoftExceptionLogger.logSoftException("SoftAssertions", AssertionException(message))
28
+ ReactSoftExceptionLogger.logSoftException(SOFT_ASSERTIONS, AssertionException(message))
27
29
  }
28
30
 
29
31
  /**
@@ -34,7 +36,7 @@ public object SoftAssertions {
34
36
  @JvmStatic
35
37
  public fun assertCondition(condition: Boolean, message: String): Unit {
36
38
  if (!condition) {
37
- ReactSoftExceptionLogger.logSoftException("SoftAssertions", AssertionException(message))
39
+ ReactSoftExceptionLogger.logSoftException(SOFT_ASSERTIONS, AssertionException(message))
38
40
  }
39
41
  }
40
42
 
@@ -46,7 +48,7 @@ public object SoftAssertions {
46
48
  public fun <T> assertNotNull(instance: T?): T? {
47
49
  if (instance == null) {
48
50
  ReactSoftExceptionLogger.logSoftException(
49
- "SoftAssertions", AssertionException("Expected object to not be null!"))
51
+ SOFT_ASSERTIONS, AssertionException("Expected object to not be null!"))
50
52
  }
51
53
  return instance
52
54
  }
@@ -5,9 +5,10 @@
5
5
  * LICENSE file in the root directory of this source tree.
6
6
  */
7
7
 
8
+ @file:Suppress("DEPRECATION_ERROR") // Conflicting okhttp versions
9
+
8
10
  package com.facebook.react.common.network
9
11
 
10
- import okhttp3.Dispatcher
11
12
  import okhttp3.OkHttpClient
12
13
 
13
14
  /**
@@ -15,13 +16,8 @@ import okhttp3.OkHttpClient
15
16
  */
16
17
  internal object OkHttpCallUtil {
17
18
  @JvmStatic
18
- public fun cancelTag(client: OkHttpClient, tag: Any) {
19
- // client.dispatcher is private, so we need to use reflection to access
20
- // it via method dispatcher() otherwise we will get a compile error:
21
- // Using 'dispatcher(): Dispatcher' is an error. moved to val
22
- val dispatcherMethod = OkHttpClient::class.java.getMethod("dispatcher")
23
- dispatcherMethod.setAccessible(true)
24
- val dispatcher = dispatcherMethod.invoke(client) as Dispatcher
19
+ fun cancelTag(client: OkHttpClient, tag: Any) {
20
+ val dispatcher = client.dispatcher()
25
21
  for (call in dispatcher.queuedCalls()) {
26
22
  if (tag == call.request().tag()) {
27
23
  call.cancel()
@@ -16,6 +16,7 @@ import com.facebook.react.bridge.ReactContext
16
16
  import com.facebook.react.common.annotations.UnstableReactNativeAPI
17
17
  import com.facebook.react.common.build.ReactBuildConfig
18
18
  import com.facebook.react.fabric.ComponentFactory
19
+ import com.facebook.react.runtime.BindingsInstaller
19
20
  import com.facebook.react.runtime.JSCInstance
20
21
  import com.facebook.react.runtime.ReactHostImpl
21
22
  import com.facebook.react.runtime.cxxreactpackage.CxxReactPackage
@@ -42,11 +43,12 @@ public object DefaultReactHost {
42
43
  * `index.<platform>`
43
44
  * @param jsBundleAssetPath the path to the JS bundle relative to the assets directory. Will be
44
45
  * composed in a `asset://...` URL
46
+ * @param jsBundleFilePath the path to the JS bundle on the filesystem. Will be composed in a
47
+ * `file://...` URL
45
48
  * @param isHermesEnabled whether to use Hermes as the JS engine, default to true.
46
49
  * @param useDevSupport whether to enable dev support, default to ReactBuildConfig.DEBUG.
47
50
  * @param cxxReactPackageProviders a list of cxxreactpackage providers (to register c++ turbo
48
51
  * modules)
49
- * @param jsBundleLoader a [JSBundleLoader] to use for creating the [ReactHost]
50
52
  *
51
53
  * TODO(T186951312): Should this be @UnstableReactNativeAPI?
52
54
  */
@@ -70,9 +72,9 @@ public object DefaultReactHost {
70
72
  jsBundleFilePath,
71
73
  isHermesEnabled,
72
74
  useDevSupport,
73
- cxxReactPackageProviders) {
74
- throw it
75
- }
75
+ cxxReactPackageProviders,
76
+ { throw it },
77
+ null)
76
78
 
77
79
  /**
78
80
  * Util function to create a default [ReactHost] to be used in your application. This method is
@@ -84,13 +86,15 @@ public object DefaultReactHost {
84
86
  * `index.<platform>`
85
87
  * @param jsBundleAssetPath the path to the JS bundle relative to the assets directory. Will be
86
88
  * composed in a `asset://...` URL
89
+ * @param jsBundleFilePath the path to the JS bundle on the filesystem. Will be composed in a
90
+ * `file://...` URL
87
91
  * @param isHermesEnabled whether to use Hermes as the JS engine, default to true.
88
92
  * @param useDevSupport whether to enable dev support, default to ReactBuildConfig.DEBUG.
89
93
  * @param cxxReactPackageProviders a list of cxxreactpackage providers (to register c++ turbo
90
94
  * modules)
91
- * @param jsBundleLoader a [JSBundleLoader] to use for creating the [ReactHost]
92
95
  * @param exceptionHandler Callback that can be used by React Native host applications to react to
93
96
  * exceptions thrown by the internals of React Native.
97
+ * @param bindingsInstaller that can be used for installing bindings.
94
98
  *
95
99
  * TODO(T186951312): Should this be @UnstableReactNativeAPI?
96
100
  */
@@ -106,6 +110,7 @@ public object DefaultReactHost {
106
110
  useDevSupport: Boolean = ReactBuildConfig.DEBUG,
107
111
  cxxReactPackageProviders: List<(ReactContext) -> CxxReactPackage> = emptyList(),
108
112
  exceptionHandler: (Exception) -> Unit = { throw it },
113
+ bindingsInstaller: BindingsInstaller? = null,
109
114
  ): ReactHost {
110
115
  if (reactHost == null) {
111
116
 
@@ -128,6 +133,7 @@ public object DefaultReactHost {
128
133
  jsBundleLoader = bundleLoader,
129
134
  reactPackages = packageList,
130
135
  jsRuntimeFactory = jsRuntimeFactory,
136
+ bindingsInstaller = bindingsInstaller,
131
137
  turboModuleManagerDelegateBuilder = defaultTmmDelegateBuilder,
132
138
  exceptionHandler = exceptionHandler)
133
139
  val componentFactory = ComponentFactory()
@@ -12,7 +12,6 @@ import com.facebook.react.ReactPackage
12
12
  import com.facebook.react.ReactPackageTurboModuleManagerDelegate
13
13
  import com.facebook.react.bridge.JSBundleLoader
14
14
  import com.facebook.react.common.annotations.UnstableReactNativeAPI
15
- import com.facebook.react.fabric.ReactNativeConfig
16
15
  import com.facebook.react.runtime.BindingsInstaller
17
16
  import com.facebook.react.runtime.JSRuntimeFactory
18
17
  import com.facebook.react.runtime.ReactHostDelegate
@@ -31,8 +30,6 @@ import com.facebook.react.runtime.hermes.HermesInstance
31
30
  * @param jsRuntimeFactory Object that holds a native reference to the JS Runtime factory
32
31
  * @param bindingsInstaller Object that holds a native C++ references that allow host applications
33
32
  * to install C++ objects into jsi::Runtime during the initialization of React Native
34
- * @param reactNativeConfig ReactNative Configuration that allows to customize the behavior of
35
- * key/value pairs used by the framework to enable/disable experimental capabilities
36
33
  * @param exceptionHandler Callback that can be used by React Native host applications to react to
37
34
  * exceptions thrown by the internals of React Native.
38
35
  */
@@ -44,12 +41,8 @@ public class DefaultReactHostDelegate(
44
41
  override val reactPackages: List<ReactPackage> = emptyList(),
45
42
  override val jsRuntimeFactory: JSRuntimeFactory = HermesInstance(),
46
43
  override val bindingsInstaller: BindingsInstaller? = null,
47
- private val reactNativeConfig: ReactNativeConfig = ReactNativeConfig.DEFAULT_CONFIG,
48
44
  private val exceptionHandler: (Exception) -> Unit = { throw it },
49
45
  override val turboModuleManagerDelegateBuilder: ReactPackageTurboModuleManagerDelegate.Builder
50
46
  ) : ReactHostDelegate {
51
-
52
- override fun getReactNativeConfig(): ReactNativeConfig = reactNativeConfig
53
-
54
47
  override fun handleInstanceException(error: Exception): Unit = exceptionHandler(error)
55
48
  }
@@ -18,7 +18,6 @@ import com.facebook.react.bridge.UIManagerProvider
18
18
  import com.facebook.react.common.annotations.UnstableReactNativeAPI
19
19
  import com.facebook.react.fabric.ComponentFactory
20
20
  import com.facebook.react.fabric.FabricUIManagerProviderImpl
21
- import com.facebook.react.fabric.ReactNativeConfig
22
21
  import com.facebook.react.uimanager.ViewManagerRegistry
23
22
  import com.facebook.react.uimanager.ViewManagerResolver
24
23
 
@@ -63,8 +62,7 @@ protected constructor(
63
62
  reactInstanceManager.getOrCreateViewManagers(reactApplicationContext))
64
63
  }
65
64
 
66
- FabricUIManagerProviderImpl(
67
- componentFactory, ReactNativeConfig.DEFAULT_CONFIG, viewManagerRegistry)
65
+ FabricUIManagerProviderImpl(componentFactory, viewManagerRegistry)
68
66
  .createUIManager(reactApplicationContext)
69
67
  }
70
68
  } else {
@@ -9,6 +9,7 @@ package com.facebook.react.devsupport
9
9
 
10
10
  import android.content.Context
11
11
  import com.facebook.react.common.SurfaceDelegateFactory
12
+ import com.facebook.react.common.build.ReactBuildConfig
12
13
  import com.facebook.react.devsupport.interfaces.DevBundleDownloadListener
13
14
  import com.facebook.react.devsupport.interfaces.DevLoadingViewManager
14
15
  import com.facebook.react.devsupport.interfaces.DevSupportManager
@@ -101,7 +102,11 @@ public class DefaultDevSupportManagerFactory : DevSupportManagerFactory {
101
102
  useDevSupport: Boolean
102
103
  ): DevSupportManager =
103
104
  if (!useDevSupport) {
104
- ReleaseDevSupportManager()
105
+ if (ReactBuildConfig.UNSTABLE_ENABLE_FUSEBOX_RELEASE) {
106
+ PerftestDevSupportManager(applicationContext)
107
+ } else {
108
+ ReleaseDevSupportManager()
109
+ }
105
110
  } else {
106
111
  BridgelessDevSupportManager(
107
112
  applicationContext,