react-native-tvos 0.77.0-0rc5 → 0.78.0-0rc4

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 (652) 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 +263 -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/TV/TVFocusGuideView.js +0 -1
  37. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +1 -0
  38. package/Libraries/Components/TextInput/TextInput.d.ts +5 -0
  39. package/Libraries/Components/TextInput/TextInput.flow.js +6 -0
  40. package/Libraries/Components/TextInput/TextInput.js +6 -0
  41. package/Libraries/Components/View/ViewPropTypes.d.ts +8 -7
  42. package/Libraries/Components/View/ViewPropTypes.js +0 -9
  43. package/Libraries/Core/ReactNativeVersion.js +2 -2
  44. package/Libraries/Core/setUpBatchedBridge.js +1 -16
  45. package/Libraries/EventEmitter/RCTEventEmitter.js +2 -6
  46. package/Libraries/Image/AssetSourceResolver.js +11 -0
  47. package/Libraries/Image/RCTImageLoader.mm +9 -1
  48. package/Libraries/Image/RCTImageView.mm +3 -3
  49. package/Libraries/Inspector/BorderBox.js +26 -14
  50. package/Libraries/Inspector/BoxInspector.js +60 -42
  51. package/Libraries/Inspector/ElementBox.js +55 -48
  52. package/Libraries/Inspector/StyleInspector.js +36 -30
  53. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -2
  54. package/Libraries/Lists/FlatList.d.ts +1 -1
  55. package/Libraries/Modal/Modal.js +2 -0
  56. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +1 -1
  57. package/Libraries/NativeComponent/BaseViewConfig.android.js +0 -2
  58. package/Libraries/NativeComponent/BaseViewConfig.ios.js +0 -2
  59. package/Libraries/Network/RCTNetworking.android.js +24 -16
  60. package/Libraries/Network/RCTNetworking.ios.js +1 -46
  61. package/Libraries/Network/RCTNetworking.js.flow +1 -46
  62. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +57 -0
  63. package/Libraries/Pressability/Pressability.js +2 -2
  64. package/Libraries/ReactNative/UIManagerProperties.js +3 -1
  65. package/Libraries/Renderer/implementations/ReactFabric-dev.js +15829 -26461
  66. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3907 -2560
  67. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +4399 -2878
  68. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +16103 -26908
  69. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +4034 -2695
  70. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +4535 -3045
  71. package/Libraries/Renderer/shims/ReactNativeTypes.js +5 -6
  72. package/Libraries/StyleSheet/processTransform.js +6 -0
  73. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +9 -0
  74. package/Libraries/Text/Text.d.ts +6 -1
  75. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +2 -0
  76. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +26 -0
  77. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +2 -0
  78. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +26 -1
  79. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +2 -0
  80. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -0
  81. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +26 -0
  82. package/Libraries/Text/TextProps.js +2 -2
  83. package/Libraries/Utilities/BackHandler.android.js +5 -4
  84. package/Libraries/Utilities/BackHandler.ios.js +3 -4
  85. package/README-core.md +2 -2
  86. package/React/Base/RCTConvert.mm +3 -1
  87. package/React/Base/RCTVersion.m +2 -2
  88. package/React/CoreModules/RCTDevSettings.h +0 -1
  89. package/React/CoreModules/RCTDeviceInfo.mm +4 -0
  90. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +3 -5
  91. package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -6
  92. package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +3 -5
  93. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +0 -24
  94. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +0 -28
  95. package/React/FBReactNativeSpec/FBReactNativeSpecJSI-generated.cpp +90 -57
  96. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +241 -104
  97. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +0 -5
  98. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +39 -10
  99. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +3 -3
  100. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +107 -34
  101. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +5 -0
  102. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +1 -0
  103. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +12 -4
  104. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +3 -0
  105. package/React/Fabric/Mounting/RCTMountingManager.mm +6 -9
  106. package/React/Fabric/RCTScheduler.mm +1 -1
  107. package/React/I18n/strings/da.lproj/fbt_language_pack.bin +0 -0
  108. package/React/Modules/RCTUIManager.mm +1 -2
  109. package/React/React-RCTFBReactNativeSpec.podspec +1 -0
  110. package/React/React-RCTFabric.podspec +3 -2
  111. package/React/Tests/Text/RCTParagraphComponentViewTests.mm +12 -12
  112. package/React/Views/RCTComponentData.mm +1 -5
  113. package/React/Views/RCTLayout.m +3 -0
  114. package/React/Views/RCTShadowView.h +3 -3
  115. package/React/Views/RCTShadowView.m +52 -20
  116. package/React/Views/RCTTVView.m +5 -2
  117. package/React/Views/RCTView.m +6 -2
  118. package/React/Views/RCTViewManager.m +0 -7
  119. package/React/Views/ScrollView/RCTScrollView.m +109 -45
  120. package/React-Core.podspec +1 -1
  121. package/ReactAndroid/api/ReactAndroid.api +123 -227
  122. package/ReactAndroid/build.gradle.kts +8 -13
  123. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +13 -3
  124. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +2 -0
  125. package/ReactAndroid/external-artifacts/build.gradle.kts +5 -5
  126. package/ReactAndroid/gradle.properties +3 -3
  127. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesMemoryDumper.java → HermesMemoryDumper.kt} +5 -5
  128. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/{HermesSamplingProfiler.java → HermesSamplingProfiler.kt} +8 -10
  129. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +12 -59
  130. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +8 -0
  131. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +8 -0
  132. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +37 -0
  133. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +12 -1
  134. package/ReactAndroid/src/main/java/com/facebook/react/{ReactPackageLogger.java → ReactPackageLogger.kt} +3 -3
  135. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +8 -8
  136. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseJavaModule.java +1 -1
  137. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +1 -3
  138. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +6 -0
  139. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.kt +5 -3
  140. package/ReactAndroid/src/main/java/com/facebook/react/common/network/OkHttpCallUtil.kt +4 -8
  141. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +11 -5
  142. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHostDelegate.kt +0 -7
  143. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +1 -3
  144. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +6 -1
  145. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +11 -23
  146. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +3 -30
  147. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/HMRClient.java +4 -1
  148. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  149. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/StackTraceHelper.java +4 -4
  150. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +21 -26
  151. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -14
  152. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.java +2 -11
  153. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +88 -0
  154. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +6 -6
  155. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +39 -8
  156. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/exceptionmanager/ReactJsExceptionHandler.kt +7 -7
  157. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +21 -21
  158. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +36 -36
  159. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +8 -8
  160. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +10 -10
  161. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +40 -40
  162. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +8 -8
  163. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +3 -3
  164. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.kt +55 -0
  165. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.kt +185 -0
  166. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/{HeadlessJsTaskEventListener.java → HeadlessJsTaskEventListener.kt} +5 -6
  167. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.kt +20 -0
  168. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/LinearCountingRetryPolicy.kt +4 -4
  169. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/NoRetryPolicy.kt +7 -8
  170. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +8 -5
  171. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.kt +11 -17
  172. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcher.kt +1 -1
  173. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.kt +16 -0
  174. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.kt +107 -0
  175. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +18 -19
  176. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.kt +48 -0
  177. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +2 -2
  178. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +397 -0
  179. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostDelegate.kt +0 -10
  180. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.java +1 -1
  181. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.java +8 -8
  182. package/ReactAndroid/src/main/java/com/facebook/react/runtime/hermes/HermesInstance.kt +4 -10
  183. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +4 -0
  184. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +13 -12
  185. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.kt +15 -12
  186. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{ComponentNameResolver.java → ComponentNameResolver.kt} +4 -5
  187. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +5 -2
  188. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -5
  189. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.kt +21 -0
  190. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.kt +18 -0
  191. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{RootView.java → RootView.kt} +11 -12
  192. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewManager.kt +1 -1
  193. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{UIBlock.java → UIBlock.kt} +3 -3
  194. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +2 -5
  195. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +25 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerDelegate.kt +1 -1
  197. package/{Libraries/AppDelegate/RCTAppDelegate+Protected.h → ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerWithGeneratedInterface.kt} +3 -8
  198. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +12 -5
  199. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundDrawable.kt +46 -80
  200. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BorderDrawable.kt +5 -5
  201. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/CSSBackgroundDrawable.java +5 -5
  202. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/{BatchEventDispatchedListener.java → BatchEventDispatchedListener.kt} +3 -3
  203. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.kt +46 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.kt +40 -0
  205. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.java +2 -6
  206. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.kt +19 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.kt +23 -0
  208. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +241 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.kt +193 -0
  210. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +44 -0
  211. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +37 -0
  212. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.kt +130 -0
  213. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -1
  214. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.kt +77 -0
  215. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +196 -0
  216. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +16 -17
  217. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +5 -0
  218. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +56 -3
  219. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarContainerView.kt +11 -0
  220. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/{FpsListener.java → FpsListener.kt} +4 -4
  221. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +16 -0
  222. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +3 -3
  223. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.kt +136 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +2 -2
  225. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +152 -0
  226. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +52 -0
  227. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +1 -7
  228. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +16 -2
  229. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +8 -13
  230. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +50 -0
  231. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ShadowStyleSpan.kt +1 -1
  232. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +1 -9
  233. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +111 -0
  234. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +90 -20
  235. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +2 -2
  236. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +22 -1
  237. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +43 -1
  238. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +86 -2
  239. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +44 -2
  240. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +7 -1
  241. package/ReactAndroid/src/main/jni/CMakeLists.txt +5 -6
  242. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +6 -1
  243. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +96 -11
  244. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +9 -0
  245. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +1 -0
  246. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -3
  247. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  248. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +41 -25
  249. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +0 -2
  250. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +63 -91
  251. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -7
  252. package/ReactAndroid/src/main/jni/react/fabric/MountItem.cpp +9 -9
  253. package/ReactAndroid/src/main/jni/react/fabric/MountItem.h +6 -10
  254. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
  255. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +4 -0
  256. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +1 -0
  257. package/ReactAndroid/src/main/jni/react/featureflags/CMakeLists.txt +0 -1
  258. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +49 -49
  259. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +11 -11
  260. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -4
  261. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +0 -1
  262. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -1
  263. package/ReactAndroid/src/main/jni/react/jni/JSLogging.cpp +4 -9
  264. package/ReactAndroid/src/main/jni/react/jni/JSLogging.h +0 -4
  265. package/ReactAndroid/src/main/jni/react/jni/JniJSModulesUnbundle.cpp +3 -4
  266. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.cpp +3 -4
  267. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.cpp +6 -0
  268. package/ReactAndroid/src/main/jni/react/jni/WritableNativeArray.h +1 -0
  269. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.cpp +6 -0
  270. package/ReactAndroid/src/main/jni/react/jni/WritableNativeMap.h +1 -0
  271. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +3 -7
  272. package/ReactAndroid/src/main/jni/react/mapbuffer/CMakeLists.txt +0 -2
  273. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +0 -1
  274. package/ReactAndroid/src/main/jni/react/reactperflogger/CMakeLists.txt +0 -1
  275. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.cpp +2 -8
  276. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/JHermesInstance.h +2 -8
  277. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -1
  278. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.cpp +18 -17
  279. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactExceptionManager.h +1 -1
  280. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +1 -1
  281. package/ReactAndroid/src/main/jni/react/turbomodule/CMakeLists.txt +0 -2
  282. package/ReactAndroid/src/main/jni/react/uimanager/CMakeLists.txt +0 -1
  283. package/ReactAndroid/src/main/res/views/view/values/ids.xml +5 -0
  284. package/ReactCommon/React-Fabric.podspec +8 -0
  285. package/ReactCommon/React-FabricComponents.podspec +2 -2
  286. package/ReactCommon/React-FabricImage.podspec +4 -1
  287. package/ReactCommon/cxxreact/CxxNativeModule.cpp +3 -3
  288. package/ReactCommon/cxxreact/Instance.cpp +6 -6
  289. package/ReactCommon/cxxreact/JSBigString.cpp +1 -1
  290. package/ReactCommon/cxxreact/JSExecutor.cpp +4 -2
  291. package/ReactCommon/cxxreact/ModuleRegistry.cpp +6 -6
  292. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -3
  293. package/ReactCommon/cxxreact/ReactNativeVersion.h +2 -2
  294. package/ReactCommon/cxxreact/SystraceSection.h +8 -141
  295. package/ReactCommon/cxxreact/TraceSection.h +181 -0
  296. package/ReactCommon/cxxreact/tests/jsbigstring.cpp +19 -0
  297. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -2
  298. package/ReactCommon/jsc/JSCRuntime.cpp +0 -2
  299. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  300. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +27 -19
  301. package/ReactCommon/jserrorhandler/JsErrorHandler.h +5 -3
  302. package/ReactCommon/jserrorhandler/StackTraceParser.cpp +16 -16
  303. package/ReactCommon/jserrorhandler/StackTraceParser.h +1 -1
  304. package/ReactCommon/jserrorhandler/tests/StackTraceParserTest.cpp +252 -246
  305. package/ReactCommon/jsi/jsi/CMakeLists.txt +0 -3
  306. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -1
  307. package/ReactCommon/jsi/jsi/JSIDynamic.h +1 -1
  308. package/ReactCommon/jsi/jsi/decorator.h +61 -0
  309. package/ReactCommon/jsi/jsi/jsi-inl.h +4 -0
  310. package/ReactCommon/jsi/jsi/jsi.cpp +37 -0
  311. package/ReactCommon/jsi/jsi/jsi.h +81 -0
  312. package/ReactCommon/jsi/jsi/test/testlib.cpp +88 -0
  313. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +9 -9
  314. package/ReactCommon/jsinspector-modern/CMakeLists.txt +1 -1
  315. package/ReactCommon/jsinspector-modern/HostAgent.cpp +3 -7
  316. package/ReactCommon/jsinspector-modern/HostTarget.cpp +22 -1
  317. package/ReactCommon/jsinspector-modern/HostTarget.h +1 -1
  318. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +19 -4
  319. package/ReactCommon/jsinspector-modern/InspectorFlags.h +14 -0
  320. package/ReactCommon/jsinspector-modern/React-jsinspector.podspec +21 -10
  321. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +12 -11
  322. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +2 -16
  323. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +14 -14
  324. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.h +7 -13
  325. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestGenericEngineAdapter.cpp +1 -1
  326. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -3
  327. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +3 -3
  328. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +1 -1
  329. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +26 -0
  330. package/ReactCommon/jsinspector-modern/tracing/CdpTracing.h +21 -0
  331. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +187 -0
  332. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +126 -0
  333. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +56 -0
  334. package/ReactCommon/react/featureflags/CMakeLists.txt +3 -0
  335. package/ReactCommon/react/featureflags/React-featureflags.podspec +7 -0
  336. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +15 -15
  337. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +18 -18
  338. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +88 -88
  339. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +9 -9
  340. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +17 -17
  341. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +454 -0
  342. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +5 -5
  343. package/ReactCommon/react/featureflags/tests/ReactNativeFeatureFlagsDynamicProviderTest.cpp +78 -0
  344. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +2 -3
  345. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +3 -3
  346. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +13 -4
  347. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +1 -0
  348. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +19 -11
  349. package/ReactCommon/react/nativemodule/cputime/CPUTime.h +55 -0
  350. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.cpp +35 -0
  351. package/ReactCommon/react/nativemodule/cputime/NativeCPUTime.h +28 -0
  352. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +18 -18
  353. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +8 -8
  354. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
  355. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.cpp +5 -8
  356. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -3
  357. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +22 -43
  358. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.h +0 -15
  359. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  360. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +22 -2
  361. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.h +9 -4
  362. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  363. package/ReactCommon/react/renderer/animations/CMakeLists.txt +0 -1
  364. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +1 -1
  365. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +25 -19
  366. package/ReactCommon/react/renderer/animations/primitives.h +1 -1
  367. package/ReactCommon/react/renderer/animations/utils.h +3 -4
  368. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +31 -9
  369. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +85 -29
  370. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -0
  371. package/ReactCommon/react/renderer/attributedstring/conversions.h +5 -0
  372. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +0 -1
  373. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.cpp +4 -1
  374. package/ReactCommon/react/renderer/components/image/ImageComponentDescriptor.h +2 -0
  375. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -2
  376. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +5 -5
  377. package/ReactCommon/react/renderer/components/image/ImageProps.h +1 -1
  378. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +38 -10
  379. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
  380. package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -3
  381. package/ReactCommon/react/renderer/components/image/ImageState.h +9 -6
  382. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarComponentDescriptor.h +0 -4
  383. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.h +7 -0
  384. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -2
  385. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +2 -2
  386. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.cpp +33 -0
  387. package/ReactCommon/react/renderer/components/scrollview/ScrollEvent.h +17 -0
  388. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +3 -2
  389. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +2 -1
  390. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchComponentDescriptor.h +0 -4
  391. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.h +7 -0
  392. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +12 -0
  393. package/ReactCommon/react/renderer/{uimanager/bindingUtils.h → components/text/ParagraphComponentDescriptor.cpp} +2 -8
  394. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +10 -7
  395. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.cpp +23 -0
  396. package/ReactCommon/react/renderer/components/textinput/BaseTextInputProps.h +8 -1
  397. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +243 -0
  398. package/ReactCommon/react/renderer/components/textinput/TextInputState.cpp +71 -0
  399. package/ReactCommon/react/renderer/components/textinput/{platform/ios/react/renderer/components/iostextinput/TextInputState.h → TextInputState.h} +27 -7
  400. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputComponentDescriptor.h +6 -13
  401. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -2
  402. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +145 -144
  403. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +27 -29
  404. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputComponentDescriptor.h +4 -5
  405. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.cpp +0 -26
  406. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputProps.h +0 -6
  407. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.cpp +0 -147
  408. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputShadowNode.h +5 -57
  409. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +60 -70
  410. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +3 -3
  411. package/ReactCommon/react/renderer/components/view/LayoutConformanceComponentDescriptor.h +18 -0
  412. package/ReactCommon/react/renderer/components/view/LayoutConformanceProps.h +36 -0
  413. package/ReactCommon/react/renderer/components/view/LayoutConformanceShadowNode.h +28 -0
  414. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +4 -0
  415. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -1
  416. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +21 -22
  417. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  418. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +3 -1
  419. package/ReactCommon/react/renderer/components/view/conversions.h +117 -43
  420. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +3 -2
  421. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +3 -1
  422. package/ReactCommon/react/renderer/components/view/primitives.h +1 -1
  423. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +12 -12
  424. package/ReactCommon/react/renderer/core/CMakeLists.txt +0 -1
  425. package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +4 -2
  426. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +4 -2
  427. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +17 -2
  428. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +26 -0
  429. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +4 -0
  430. package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -3
  431. package/ReactCommon/react/renderer/core/Props.cpp +16 -5
  432. package/ReactCommon/react/renderer/core/Props.h +11 -4
  433. package/ReactCommon/react/renderer/core/RawProps.cpp +30 -5
  434. package/ReactCommon/react/renderer/core/RawProps.h +10 -1
  435. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -2
  436. package/ReactCommon/react/renderer/core/RawPropsParser.h +7 -1
  437. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -0
  438. package/ReactCommon/react/renderer/core/RawValue.h +315 -22
  439. package/ReactCommon/react/renderer/core/tests/DynamicPropsUtilitiesTest.cpp +95 -4
  440. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +19 -4
  441. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +7 -1
  442. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +7 -5
  443. package/ReactCommon/react/renderer/graphics/Transform.cpp +11 -2
  444. package/ReactCommon/react/renderer/graphics/Transform.h +2 -1
  445. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +4 -2
  446. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +7 -0
  447. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +43 -0
  448. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +36 -0
  449. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +43 -0
  450. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +94 -0
  451. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +101 -0
  452. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +9 -1
  453. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  454. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageManager.mm +9 -0
  455. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +30 -0
  456. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +2 -2
  457. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +187 -152
  458. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -5
  459. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +10 -16
  460. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -12
  461. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +44 -14
  462. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +8 -4
  463. package/ReactCommon/react/renderer/mounting/stubs/stubs.cpp +1 -1
  464. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +116 -193
  465. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +0 -3
  466. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +7 -4
  467. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.h +2 -1
  468. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverManager.cpp +7 -8
  469. package/ReactCommon/react/renderer/observers/mutation/MutationObserverManager.cpp +6 -6
  470. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +3 -1
  471. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +2 -0
  472. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +11 -11
  473. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +14 -15
  474. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriorityUtils.h +4 -3
  475. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +0 -1
  476. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +6 -37
  477. package/ReactCommon/react/renderer/scheduler/Scheduler.h +0 -3
  478. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +15 -11
  479. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -0
  480. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +56 -2
  481. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +23 -3
  482. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +1 -2
  483. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManager.cpp +26 -0
  484. package/ReactCommon/react/renderer/textlayoutmanager/{platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h → TextLayoutManager.h} +18 -17
  485. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +2 -3
  486. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +77 -89
  487. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +6 -10
  488. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +11 -5
  489. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +23 -1
  490. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +11 -32
  491. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +9 -23
  492. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.cpp +88 -0
  493. package/ReactCommon/react/renderer/uimanager/AppRegistryBinding.h +50 -0
  494. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +0 -1
  495. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +3 -40
  496. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +23 -18
  497. package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -0
  498. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +2 -31
  499. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +0 -4
  500. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +10 -10
  501. package/ReactCommon/react/runtime/CMakeLists.txt +0 -1
  502. package/ReactCommon/react/runtime/React-RuntimeHermes.podspec +1 -2
  503. package/ReactCommon/react/runtime/ReactInstance.cpp +43 -57
  504. package/ReactCommon/react/runtime/TimerManager.cpp +4 -4
  505. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +5 -1
  506. package/ReactCommon/react/runtime/hermes/HermesInstance.h +0 -2
  507. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.h +2 -6
  508. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHermesInstance.mm +6 -15
  509. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +3 -1
  510. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +15 -15
  511. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +5 -4
  512. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +0 -3
  513. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.cpp +33 -17
  514. package/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h +8 -2
  515. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.cpp → ReactPerfettoLogger.cpp} +25 -24
  516. package/ReactCommon/reactperflogger/reactperflogger/{ReactPerfLogger.h → ReactPerfettoLogger.h} +9 -9
  517. package/ReactCommon/yoga/yoga/YGEnums.cpp +6 -0
  518. package/ReactCommon/yoga/yoga/YGEnums.h +4 -1
  519. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +124 -24
  520. package/ReactCommon/yoga/yoga/YGNodeStyle.h +22 -1
  521. package/ReactCommon/yoga/yoga/YGValue.h +3 -0
  522. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +6 -6
  523. package/ReactCommon/yoga/yoga/algorithm/FlexLine.cpp +2 -2
  524. package/ReactCommon/yoga/yoga/algorithm/FlexLine.h +1 -1
  525. package/ReactCommon/yoga/yoga/algorithm/PixelGrid.cpp +9 -6
  526. package/ReactCommon/yoga/yoga/enums/Unit.h +4 -1
  527. package/ReactCommon/yoga/yoga/node/Node.cpp +8 -8
  528. package/ReactCommon/yoga/yoga/node/Node.h +5 -5
  529. package/ReactCommon/yoga/yoga/style/Style.h +14 -12
  530. package/ReactCommon/yoga/yoga/style/StyleLength.h +14 -7
  531. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +139 -0
  532. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  533. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +60 -3
  534. package/gradle/libs.versions.toml +6 -2
  535. package/index.js +5 -0
  536. package/package.json +12 -13
  537. package/react-native.config.js +6 -0
  538. package/scripts/cocoapods/codegen_utils.rb +4 -4
  539. package/scripts/cocoapods/new_architecture.rb +3 -3
  540. package/scripts/cocoapods/utils.rb +4 -3
  541. package/scripts/codegen/generate-artifacts-executor.js +8 -4
  542. package/scripts/generate-codegen-artifacts.js +6 -1
  543. package/scripts/react-native-xcode.sh +1 -1
  544. package/scripts/react_native_pods.rb +3 -3
  545. package/scripts/xcode/ccache-clang++.sh +1 -1
  546. package/scripts/xcode/ccache-clang.sh +1 -1
  547. package/sdks/.hermesversion +1 -1
  548. package/sdks/hermes-engine/hermes-utils.rb +2 -2
  549. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +1 -1
  550. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  551. package/sdks/hermesc/osx-bin/hermes +0 -0
  552. package/sdks/hermesc/osx-bin/hermesc +0 -0
  553. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  554. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  555. package/src/private/featureflags/README.md +5 -0
  556. package/src/private/featureflags/ReactNativeFeatureFlags.js +32 -26
  557. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +5 -5
  558. package/src/private/renderer/errorhandling/ErrorHandlers.js +12 -55
  559. package/src/private/specs/modules/{NativeJSCSamplingProfiler.js → NativeCPUTime.js} +7 -2
  560. package/src/private/specs/modules/NativeFantom.js +37 -0
  561. package/src/private/utilities/ensureInstance.js +21 -0
  562. package/src/private/webapis/dom/nodes/ReactNativeElement.js +49 -6
  563. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +17 -9
  564. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +11 -11
  565. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +1 -1
  566. package/src/private/webapis/intersectionobserver/IntersectionObserverManager.js +1 -1
  567. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +1 -0
  568. package/src/private/webapis/performance/Performance.js +0 -12
  569. package/src/private/webapis/performance/specs/NativePerformance.js +0 -11
  570. package/types/index.d.ts +1 -0
  571. package/types/public/ReactNativeTVTypes.d.ts +49 -51
  572. package/Libraries/HeapCapture/HeapCapture.js +0 -29
  573. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +0 -13
  574. package/Libraries/Performance/NativeJSCSamplingProfiler.js +0 -13
  575. package/Libraries/Performance/SamplingProfiler.js +0 -39
  576. package/Libraries/ReactNative/__mocks__/FabricUIManager.js +0 -334
  577. package/React/Inspector/RCTInspectorPackagerConnection.m +0 -325
  578. package/ReactAndroid/src/main/java/com/facebook/react/bridge/GuardedResultAsyncTask.java +0 -50
  579. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +0 -314
  580. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +0 -76
  581. package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.kt +0 -36
  582. package/ReactAndroid/src/main/java/com/facebook/react/fabric/GuardedFrameCallback.kt +0 -33
  583. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.kt +0 -54
  584. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +0 -83
  585. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskConfig.java +0 -121
  586. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +0 -214
  587. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskRetryPolicy.java +0 -22
  588. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/XmlFormat.kt +0 -143
  589. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/CookieJarContainer.java +0 -17
  590. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +0 -124
  591. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ReactCookieJarContainer.java +0 -58
  592. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +0 -422
  593. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FabricViewStateManager.java +0 -98
  594. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +0 -25
  595. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactPointerEventsView.java +0 -20
  596. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +0 -45
  597. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcher.java +0 -37
  598. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherListener.java +0 -19
  599. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherProvider.java +0 -24
  600. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.java +0 -257
  601. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +0 -210
  602. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +0 -43
  603. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +0 -39
  604. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +0 -165
  605. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEventCoalescingKeyHelper.java +0 -85
  606. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +0 -204
  607. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewAccessibilityDelegate.java +0 -161
  608. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.java +0 -232
  609. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.java +0 -70
  610. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/LegacyLineHeightSpan.kt +0 -69
  611. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.java +0 -114
  612. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +0 -31
  613. package/ReactAndroid/src/main/jni/first-party/fb/assert.cpp +0 -39
  614. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ALog.h +0 -82
  615. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Build.h +0 -31
  616. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Countable.h +0 -45
  617. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Doxyfile +0 -18
  618. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/Environment.h +0 -93
  619. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ProgramLocation.h +0 -58
  620. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/RefPtr.h +0 -266
  621. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/StaticInitialized.h +0 -37
  622. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/ThreadLocal.h +0 -112
  623. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/assert.h +0 -43
  624. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/log.h +0 -350
  625. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/noncopyable.h +0 -20
  626. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/nonmovable.h +0 -20
  627. package/ReactAndroid/src/main/jni/first-party/fb/include/fb/visibility.h +0 -10
  628. package/ReactAndroid/src/main/jni/first-party/fb/log.cpp +0 -102
  629. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.cpp +0 -47
  630. package/ReactAndroid/src/main/jni/react/fabric/JEmptyReactNativeConfig.h +0 -38
  631. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.cpp +0 -41
  632. package/ReactAndroid/src/main/jni/react/fabric/ReactNativeConfigHolder.h +0 -35
  633. package/ReactAndroid/src/main/jni/react/perftests/OnLoad.cpp +0 -243
  634. package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +0 -15
  635. package/ReactCommon/React-nativeconfig.podspec +0 -36
  636. package/ReactCommon/cxxreact/tests/main.cpp +0 -15
  637. package/ReactCommon/react/config/CMakeLists.txt +0 -20
  638. package/ReactCommon/react/config/ReactNativeConfig.cpp +0 -28
  639. package/ReactCommon/react/config/ReactNativeConfig.h +0 -42
  640. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +0 -95
  641. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputState.h +0 -80
  642. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/TextInputState.cpp +0 -10
  643. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -78
  644. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.h +0 -69
  645. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +0 -123
  646. package/ReactCommon/react/renderer/uimanager/bindingUtils.cpp +0 -79
  647. package/src/private/webapis/dom/nodes/specs/__mocks__/NativeDOMMock.js +0 -413
  648. package/src/private/webapis/intersectionobserver/specs/__mocks__/NativeIntersectionObserver.js +0 -181
  649. package/src/private/webapis/mutationobserver/specs/__mocks__/NativeMutationObserver.js +0 -327
  650. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewComponentDescriptor.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewComponentDescriptor.h} +0 -0
  651. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.cpp → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.cpp} +0 -0
  652. /package/ReactCommon/react/renderer/components/scrollview/{AndroidHorizontalScrollContentViewShadowNode.h → platform/android/react/renderer/components/scrollview/AndroidHorizontalScrollContentViewShadowNode.h} +0 -0
@@ -1,243 +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
- #include <cxxreact/CxxModule.h>
9
- #include <cxxreact/JsArgumentHelpers.h>
10
- #include <fb/log.h>
11
- #include <fbjni/fbjni.h>
12
-
13
- #include <condition_variable>
14
- #include <mutex>
15
-
16
- namespace facebook::react {
17
-
18
- using facebook::jni::alias_ref;
19
-
20
- namespace {
21
-
22
- // This is a wrapper around the Java proxy to the javascript module. This
23
- // allows us to call functions on the js module from c++. Are you seeing
24
- // crashes in this class? Android 6+ crashes when you try to call a
25
- // method on a Proxy. Switch to an older version of Android. If you're
26
- // really desperate, you can fix this by using ToReflectedMethod on the
27
- // underlying jmethodid and invoking that.
28
- class JavaJSModule : public jni::JavaClass<JavaJSModule> {
29
- public:
30
- static constexpr auto kJavaDescriptor =
31
- "Lcom/facebook/react/CatalystBridgeBenchmarks$BridgeBenchmarkModule;";
32
-
33
- static void bounceCxx(alias_ref<javaobject> obj, int iters) {
34
- static auto method = javaClassLocal()->getMethod<void(jint)>("bounceCxx");
35
- method(obj, iters);
36
- }
37
-
38
- static void bounceArgsCxx(
39
- alias_ref<javaobject> obj,
40
- int iters,
41
- int a,
42
- int b,
43
- double x,
44
- double y,
45
- const std::string& s,
46
- const std::string& t) {
47
- static auto method =
48
- javaClassLocal()
49
- ->getMethod<void(
50
- jint, jint, jint, jdouble, jdouble, jstring, jstring)>(
51
- "bounceArgsCxx");
52
- method(
53
- obj,
54
- iters,
55
- a,
56
- b,
57
- x,
58
- y,
59
- jni::make_jstring(s).get(),
60
- jni::make_jstring(t).get());
61
- }
62
- };
63
-
64
- // This is just the test instance itself. Used only to countdown the latch.
65
- class CatalystBridgeBenchmarks
66
- : public jni::JavaClass<CatalystBridgeBenchmarks> {
67
- public:
68
- static constexpr auto kJavaDescriptor =
69
- "Lcom/facebook/react/CatalystBridgeBenchmarks;";
70
-
71
- static void countDown(alias_ref<javaobject> obj) {
72
- static auto method = javaClassLocal()->getMethod<void()>("countDown");
73
- method(obj);
74
- }
75
- };
76
-
77
- // This is the shared data for two cxx bounce threads.
78
- struct Data {
79
- std::mutex m;
80
- std::condition_variable cv;
81
- bool leftActive;
82
- Data() : leftActive(true) {}
83
- };
84
- Data data;
85
-
86
- void runBounce(jni::alias_ref<jclass>, bool isLeft, int iters) {
87
- for (int i = 0; i < iters; i++) {
88
- std::unique_lock<std::mutex> lk(data.m);
89
- data.cv.wait(lk, [&] { return data.leftActive == isLeft; });
90
- data.leftActive = !isLeft;
91
- data.cv.notify_one();
92
- }
93
- }
94
-
95
- static jni::global_ref<JavaJSModule::javaobject> jsModule;
96
- static jni::global_ref<CatalystBridgeBenchmarks::javaobject> javaTestInstance;
97
-
98
- class CxxBenchmarkModule : public xplat::module::CxxModule {
99
- public:
100
- virtual std::string getName() override {
101
- return "CxxBenchmarkModule";
102
- }
103
-
104
- virtual auto getConstants()
105
- -> std::map<std::string, folly::dynamic> override {
106
- return std::map<std::string, folly::dynamic>();
107
- }
108
-
109
- virtual auto getMethods() -> std::vector<Method> override {
110
- return std::vector<Method>{
111
- Method(
112
- "bounce",
113
- [this](folly::dynamic args) {
114
- this->bounce(xplat::jsArgAsInt(args, 0));
115
- }),
116
- Method(
117
- "bounceArgs",
118
- [this](folly::dynamic args) {
119
- this->bounceArgs(
120
- xplat::jsArgAsInt(args, 0),
121
- xplat::jsArgAsInt(args, 1),
122
- xplat::jsArgAsInt(args, 2),
123
- xplat::jsArgAsDouble(args, 3),
124
- xplat::jsArgAsDouble(args, 4),
125
- xplat::jsArgAsString(args, 5),
126
- xplat::jsArgAsString(args, 6));
127
- }),
128
- };
129
- }
130
-
131
- void bounce(int iters) {
132
- if (iters == 0) {
133
- CatalystBridgeBenchmarks::countDown(javaTestInstance);
134
- } else {
135
- JavaJSModule::bounceCxx(jsModule, iters - 1);
136
- }
137
- }
138
-
139
- void bounceArgs(
140
- int iters,
141
- int a,
142
- int b,
143
- double x,
144
- double y,
145
- const std::string& s,
146
- const std::string& t) {
147
- if (iters == 0) {
148
- CatalystBridgeBenchmarks::countDown(javaTestInstance);
149
- } else {
150
- JavaJSModule::bounceArgsCxx(jsModule, iters - 1, a, b, x, y, s, t);
151
- }
152
- }
153
- };
154
-
155
- void setUp(
156
- alias_ref<CatalystBridgeBenchmarks::javaobject> obj,
157
- alias_ref<JavaJSModule::javaobject> mod) {
158
- javaTestInstance = jni::make_global(obj);
159
- jsModule = jni::make_global(mod);
160
- }
161
-
162
- void tearDown(alias_ref<CatalystBridgeBenchmarks::javaobject>) {
163
- javaTestInstance.reset();
164
- jsModule.reset();
165
- }
166
-
167
- namespace logwatcher {
168
-
169
- static std::string gMessageToLookFor;
170
- static int gMessagePriorityToLookFor;
171
- static bool gHasSeenMessage = false;
172
-
173
- /**
174
- * NB: Don't put JNI logic (or anything else that could trigger a log) here!
175
- */
176
- static void stubLogHandler(int pri, const char* tag, const char* msg) {
177
- if (gMessageToLookFor.empty()) {
178
- return;
179
- }
180
-
181
- bool priorityMatches = pri == gMessagePriorityToLookFor;
182
- bool substringFound = strstr(msg, gMessageToLookFor.c_str()) != NULL;
183
- gHasSeenMessage |= priorityMatches && substringFound;
184
- }
185
-
186
- static jboolean hasSeenExpectedLogMessage(JNIEnv*, jclass) {
187
- return gHasSeenMessage ? JNI_TRUE : JNI_FALSE;
188
- }
189
-
190
- static void stopWatchingLogMessages(JNIEnv*, jclass) {
191
- gMessageToLookFor = "";
192
- gHasSeenMessage = false;
193
- setLogHandler(NULL);
194
- }
195
-
196
- static void startWatchingForLogMessage(
197
- JNIEnv* env,
198
- jclass loggerClass,
199
- jstring jmsg,
200
- jint priority) {
201
- stopWatchingLogMessages(env, loggerClass);
202
- gMessageToLookFor = jni::wrap_alias(jmsg)->toStdString();
203
- gMessagePriorityToLookFor = priority;
204
- setLogHandler(&stubLogHandler);
205
- }
206
-
207
- } // namespace logwatcher
208
- } // namespace
209
- } // namespace facebook::react
210
-
211
- using namespace facebook::react;
212
-
213
- extern "C" facebook::xplat::module::CxxModule* CxxBenchmarkModule() {
214
- return new facebook::react::CxxBenchmarkModule();
215
- }
216
-
217
- extern "C" jint JNI_OnLoad(JavaVM* vm, void*) {
218
- return facebook::jni::initialize(vm, [] {
219
- facebook::jni::registerNatives(
220
- "com/facebook/catalyst/testing/LogWatcher",
221
- {
222
- makeNativeMethod(
223
- "startWatchingForLogMessage",
224
- "(Ljava/lang/String;I)V",
225
- logwatcher::startWatchingForLogMessage),
226
- makeNativeMethod(
227
- "stopWatchingLogMessages",
228
- "()V",
229
- logwatcher::stopWatchingLogMessages),
230
- makeNativeMethod(
231
- "hasSeenExpectedLogMessage",
232
- "()Z",
233
- logwatcher::hasSeenExpectedLogMessage),
234
- });
235
- facebook::jni::registerNatives(
236
- "com/facebook/react/CatalystBridgeBenchmarks",
237
- {
238
- makeNativeMethod("runNativeBounce", runBounce),
239
- makeNativeMethod("nativeSetUp", setUp),
240
- makeNativeMethod("nativeTearDown", tearDown),
241
- });
242
- });
243
- }
@@ -1,15 +0,0 @@
1
- # Copyright (c) Meta Platforms, Inc. and affiliates.
2
- #
3
- # This source code is licensed under the MIT license found in the
4
- # LICENSE file in the root directory of this source tree.
5
-
6
- cmake_minimum_required(VERSION 3.13)
7
- set(CMAKE_VERBOSE_MAKEFILE on)
8
-
9
- add_library(jsc SHARED IMPORTED GLOBAL)
10
- set_target_properties(jsc
11
- PROPERTIES
12
- IMPORTED_LOCATION
13
- ${CMAKE_CURRENT_SOURCE_DIR}/jni/${ANDROID_ABI}/libjsc.so)
14
-
15
- target_include_directories(jsc INTERFACE ${CMAKE_CURRENT_SOURCE_DIR})
@@ -1,36 +0,0 @@
1
- # Copyright (c) Meta Platforms, Inc. and affiliates.
2
- #
3
- # This source code is licensed under the MIT license found in the
4
- # LICENSE file in the root directory of this source tree.
5
-
6
- require "json"
7
-
8
- package = JSON.parse(File.read(File.join(__dir__, "..", "package.json")))
9
- version = package['version']
10
-
11
- source = { :git => 'https://github.com/facebook/react-native.git' }
12
- if version == '1000.0.0'
13
- # This is an unpublished version, use the latest commit hash of the react-native repo, which we’re presumably in.
14
- source[:commit] = `git rev-parse HEAD`.strip if system("git rev-parse --git-dir > /dev/null 2>&1")
15
- else
16
- source[:tag] = "v#{version}"
17
- end
18
-
19
- Pod::Spec.new do |s|
20
- s.name = "React-nativeconfig"
21
- s.version = version
22
- s.summary = "-"
23
- s.homepage = "https://reactnative.dev/"
24
- s.license = package["license"]
25
- s.author = "Meta Platforms, Inc. and its affiliates"
26
- s.platforms = min_supported_versions
27
- s.source = source
28
- s.source_files = "react/config/*.{m,mm,cpp,h}"
29
- s.header_dir = "react/config"
30
- s.pod_target_xcconfig = { "CLANG_CXX_LANGUAGE_STANDARD" => rct_cxx_language_standard() }
31
-
32
- if ENV['USE_FRAMEWORKS']
33
- s.header_mappings_dir = './'
34
- s.module_name = 'React_nativeconfig'
35
- end
36
- end
@@ -1,15 +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
- #include <folly/init/Init.h>
9
- #include <gtest/gtest.h>
10
-
11
- int main(int argc, char** argv) {
12
- ::testing::InitGoogleTest(&argc, argv);
13
- folly::init(&argc, &argv);
14
- return RUN_ALL_TESTS();
15
- }
@@ -1,20 +0,0 @@
1
- # Copyright (c) Meta Platforms, Inc. and affiliates.
2
- #
3
- # This source code is licensed under the MIT license found in the
4
- # LICENSE file in the root directory of this source tree.
5
-
6
- cmake_minimum_required(VERSION 3.13)
7
- set(CMAKE_VERBOSE_MAKEFILE on)
8
-
9
- add_compile_options(
10
- -fexceptions
11
- -frtti
12
- -std=c++20
13
- -Wall
14
- -Wpedantic
15
- -DLOG_TAG=\"Fabric\")
16
-
17
- file(GLOB react_config_SRC CONFIGURE_DEPENDS *.cpp)
18
- add_library(react_config OBJECT ${react_config_SRC})
19
-
20
- target_include_directories(react_config PUBLIC ${REACT_COMMON_DIR})
@@ -1,28 +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
- #include "ReactNativeConfig.h"
9
-
10
- namespace facebook::react {
11
-
12
- bool EmptyReactNativeConfig::getBool(const std::string& param) const {
13
- return false;
14
- }
15
-
16
- std::string EmptyReactNativeConfig::getString(const std::string& param) const {
17
- return "";
18
- }
19
-
20
- int64_t EmptyReactNativeConfig::getInt64(const std::string& param) const {
21
- return 0;
22
- }
23
-
24
- double EmptyReactNativeConfig::getDouble(const std::string& param) const {
25
- return 0.0;
26
- }
27
-
28
- } // namespace facebook::react
@@ -1,42 +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
- #pragma once
9
-
10
- #include <string>
11
-
12
- namespace facebook::react {
13
-
14
- /**
15
- * ReactNative configuration as provided by the hosting app.
16
- * Provide a sub-class implementation to allow app specific customization.
17
- */
18
- class ReactNativeConfig {
19
- public:
20
- ReactNativeConfig() = default;
21
- virtual ~ReactNativeConfig() = default;
22
-
23
- virtual bool getBool(const std::string& param) const = 0;
24
- virtual std::string getString(const std::string& param) const = 0;
25
- virtual int64_t getInt64(const std::string& param) const = 0;
26
- virtual double getDouble(const std::string& param) const = 0;
27
- };
28
-
29
- /**
30
- * Empty configuration that will provide hardcoded default values.
31
- */
32
- class EmptyReactNativeConfig : public ReactNativeConfig {
33
- public:
34
- EmptyReactNativeConfig() = default;
35
-
36
- bool getBool(const std::string& param) const override;
37
- std::string getString(const std::string& param) const override;
38
- int64_t getInt64(const std::string& param) const override;
39
- double getDouble(const std::string& param) const override;
40
- };
41
-
42
- } // namespace facebook::react
@@ -1,95 +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
- #include "AndroidTextInputState.h"
9
-
10
- #include <react/renderer/components/text/conversions.h>
11
- #include <react/renderer/debug/debugStringConvertibleUtils.h>
12
- #include <react/renderer/mapbuffer/MapBuffer.h>
13
- #include <react/renderer/mapbuffer/MapBufferBuilder.h>
14
-
15
- #include <utility>
16
-
17
- namespace facebook::react {
18
-
19
- AndroidTextInputState::AndroidTextInputState(
20
- int64_t mostRecentEventCount,
21
- AttributedString attributedString,
22
- AttributedString reactTreeAttributedString,
23
- ParagraphAttributes paragraphAttributes,
24
- float defaultThemePaddingStart,
25
- float defaultThemePaddingEnd,
26
- float defaultThemePaddingTop,
27
- float defaultThemePaddingBottom)
28
- : mostRecentEventCount(mostRecentEventCount),
29
- attributedString(std::move(attributedString)),
30
- reactTreeAttributedString(std::move(reactTreeAttributedString)),
31
- paragraphAttributes(std::move(paragraphAttributes)),
32
- defaultThemePaddingStart(defaultThemePaddingStart),
33
- defaultThemePaddingEnd(defaultThemePaddingEnd),
34
- defaultThemePaddingTop(defaultThemePaddingTop),
35
- defaultThemePaddingBottom(defaultThemePaddingBottom) {}
36
-
37
- AndroidTextInputState::AndroidTextInputState(
38
- const AndroidTextInputState& previousState,
39
- const folly::dynamic& data)
40
- : mostRecentEventCount(data.getDefault(
41
- "mostRecentEventCount",
42
- previousState.mostRecentEventCount)
43
- .getInt()),
44
- cachedAttributedStringId(data.getDefault(
45
- "opaqueCacheId",
46
- previousState.cachedAttributedStringId)
47
- .getInt()),
48
- attributedString(previousState.attributedString),
49
- reactTreeAttributedString(previousState.reactTreeAttributedString),
50
- paragraphAttributes(previousState.paragraphAttributes),
51
- defaultThemePaddingStart(data.getDefault(
52
- "themePaddingStart",
53
- previousState.defaultThemePaddingStart)
54
- .getDouble()),
55
- defaultThemePaddingEnd(data.getDefault(
56
- "themePaddingEnd",
57
- previousState.defaultThemePaddingEnd)
58
- .getDouble()),
59
- defaultThemePaddingTop(data.getDefault(
60
- "themePaddingTop",
61
- previousState.defaultThemePaddingTop)
62
- .getDouble()),
63
- defaultThemePaddingBottom(data.getDefault(
64
- "themePaddingBottom",
65
- previousState.defaultThemePaddingBottom)
66
- .getDouble()){};
67
-
68
- folly::dynamic AndroidTextInputState::getDynamic() const {
69
- LOG(FATAL) << "Android TextInput state should only be read using MapBuffer";
70
- }
71
-
72
- MapBuffer AndroidTextInputState::getMapBuffer() const {
73
- auto builder = MapBufferBuilder();
74
- // If we have a `cachedAttributedStringId` we know that we're (1) not trying
75
- // to set a new string, so we don't need to pass it along; (2) setState was
76
- // called from Java to trigger a relayout with a `cachedAttributedStringId`,
77
- // so Java has all up-to-date information and we should pass an empty map
78
- // through.
79
- if (cachedAttributedStringId == 0) {
80
- // TODO truncation
81
- builder.putInt(
82
- TX_STATE_KEY_MOST_RECENT_EVENT_COUNT,
83
- static_cast<int32_t>(mostRecentEventCount));
84
-
85
- auto attStringMapBuffer = toMapBuffer(attributedString);
86
- builder.putMapBuffer(TX_STATE_KEY_ATTRIBUTED_STRING, attStringMapBuffer);
87
- auto paMapBuffer = toMapBuffer(paragraphAttributes);
88
- builder.putMapBuffer(TX_STATE_KEY_PARAGRAPH_ATTRIBUTES, paMapBuffer);
89
-
90
- builder.putInt(TX_STATE_KEY_HASH, attStringMapBuffer.getInt(AS_KEY_HASH));
91
- }
92
- return builder.build();
93
- }
94
-
95
- } // namespace facebook::react
@@ -1,80 +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
- #pragma once
9
-
10
- #include <folly/dynamic.h>
11
- #include <react/renderer/attributedstring/AttributedString.h>
12
- #include <react/renderer/attributedstring/ParagraphAttributes.h>
13
- #include <react/renderer/mapbuffer/MapBuffer.h>
14
- #include <react/renderer/mapbuffer/MapBufferBuilder.h>
15
- #include <react/renderer/textlayoutmanager/TextLayoutManager.h>
16
-
17
- namespace facebook::react {
18
-
19
- /*
20
- * State for <TextInput> component.
21
- */
22
- class AndroidTextInputState final {
23
- public:
24
- int64_t mostRecentEventCount{0};
25
-
26
- /**
27
- * Stores an opaque cache ID used on the Java side to refer to a specific
28
- * AttributedString for measurement purposes only.
29
- */
30
- int64_t cachedAttributedStringId{0};
31
-
32
- /*
33
- * All content of <TextInput> component represented as an `AttributedString`.
34
- * Only set if changed from the React tree's perspective.
35
- */
36
- AttributedString attributedString{};
37
-
38
- /*
39
- * All content of <TextInput> component represented as an `AttributedString`.
40
- * This stores the previous computed *from the React tree*. This usually
41
- * doesn't change as the TextInput contents are being updated. If it does
42
- * change, we need to wipe out current contents of the TextInput and replace
43
- * with the new value from the tree.
44
- */
45
- AttributedString reactTreeAttributedString{};
46
-
47
- /*
48
- * Represents all visual attributes of a paragraph of text represented as
49
- * a ParagraphAttributes.
50
- */
51
- ParagraphAttributes paragraphAttributes{};
52
-
53
- /**
54
- * Communicates Android theme padding back to the ShadowNode / Component
55
- * Descriptor for layout.
56
- */
57
- float defaultThemePaddingStart{NAN};
58
- float defaultThemePaddingEnd{NAN};
59
- float defaultThemePaddingTop{NAN};
60
- float defaultThemePaddingBottom{NAN};
61
-
62
- AndroidTextInputState(
63
- int64_t mostRecentEventCount,
64
- AttributedString attributedString,
65
- AttributedString reactTreeAttributedString,
66
- ParagraphAttributes paragraphAttributes,
67
- float defaultThemePaddingStart,
68
- float defaultThemePaddingEnd,
69
- float defaultThemePaddingTop,
70
- float defaultThemePaddingBottom);
71
-
72
- AndroidTextInputState() = default;
73
- AndroidTextInputState(
74
- const AndroidTextInputState& previousState,
75
- const folly::dynamic& data);
76
- folly::dynamic getDynamic() const;
77
- MapBuffer getMapBuffer() const;
78
- };
79
-
80
- } // namespace facebook::react
@@ -1,10 +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
- #include "TextInputState.h"
9
-
10
- namespace facebook::react {} // namespace facebook::react
@@ -1,78 +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
- #pragma once
9
-
10
- #include <memory>
11
-
12
- #include <react/renderer/attributedstring/AttributedString.h>
13
- #include <react/renderer/attributedstring/AttributedStringBox.h>
14
- #include <react/renderer/attributedstring/ParagraphAttributes.h>
15
- #include <react/renderer/core/LayoutConstraints.h>
16
- #include <react/renderer/textlayoutmanager/TextLayoutContext.h>
17
- #include <react/renderer/textlayoutmanager/TextMeasureCache.h>
18
- #include <react/utils/ContextContainer.h>
19
-
20
- namespace facebook::react {
21
-
22
- class TextLayoutManager;
23
-
24
- using SharedTextLayoutManager = std::shared_ptr<const TextLayoutManager>;
25
-
26
- /*
27
- * Cross platform facade for Android-specific TextLayoutManager.
28
- */
29
- class TextLayoutManager {
30
- public:
31
- TextLayoutManager(const ContextContainer::Shared& contextContainer) {}
32
-
33
- virtual ~TextLayoutManager() = default;
34
-
35
- /*
36
- * Measures `attributedStringBox` using native text rendering infrastructure.
37
- */
38
- virtual TextMeasurement measure(
39
- const AttributedStringBox& attributedStringBox,
40
- const ParagraphAttributes& paragraphAttributes,
41
- const TextLayoutContext& layoutContext,
42
- const LayoutConstraints& layoutConstraints) const;
43
-
44
- /**
45
- * Measures an AttributedString on the platform, as identified by some
46
- * opaque cache ID.
47
- */
48
- virtual TextMeasurement measureCachedSpannableById(
49
- int64_t cacheId,
50
- const ParagraphAttributes& paragraphAttributes,
51
- const LayoutConstraints& layoutConstraints) const;
52
-
53
- /*
54
- * Measures lines of `attributedString` using native text rendering
55
- * infrastructure.
56
- */
57
- virtual LinesMeasurements measureLines(
58
- const AttributedStringBox& attributedStringBox,
59
- const ParagraphAttributes& paragraphAttributes,
60
- const Size& size) const;
61
-
62
- /*
63
- * Calculates baseline of `attributedString` using native text rendering
64
- * infrastructure.
65
- */
66
- virtual Float baseline(
67
- const AttributedStringBox& attributedStringBox,
68
- const ParagraphAttributes& paragraphAttributes,
69
- const Size& size) const;
70
-
71
- /*
72
- * Returns an opaque pointer to platform-specific TextLayoutManager.
73
- * Is used on a native views layer to delegate text rendering to the manager.
74
- */
75
- void* getNativeTextLayoutManager() const;
76
- };
77
-
78
- } // namespace facebook::react