react-native-tvos 0.86.0-2 → 0.87.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 (1076) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +19 -24
  2. package/Libraries/Alert/Alert.js +38 -1
  3. package/Libraries/Animated/AnimatedExports.js +22 -0
  4. package/Libraries/Animated/AnimatedExports.js.flow +1 -1
  5. package/Libraries/Animated/AnimatedImplementation.js +120 -3
  6. package/Libraries/Animated/Easing.js +4 -3
  7. package/Libraries/Animated/NativeAnimatedAllowlist.js +37 -0
  8. package/Libraries/Animated/animations/Animation.js +14 -5
  9. package/Libraries/Animated/animations/DecayAnimation.js +1 -0
  10. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  11. package/Libraries/Animated/animations/TimingAnimation.js +9 -0
  12. package/Libraries/Animated/createAnimatedComponent.js +3 -3
  13. package/Libraries/Animated/nodes/AnimatedColor.js +8 -8
  14. package/Libraries/Animated/nodes/AnimatedInterpolation.js +106 -0
  15. package/Libraries/Animated/nodes/AnimatedProps.js +27 -3
  16. package/Libraries/Animated/nodes/AnimatedValue.js +8 -0
  17. package/Libraries/Animated/nodes/AnimatedValueXY.js +2 -2
  18. package/Libraries/AppDelegate/RCTAppDelegate.h +5 -9
  19. package/Libraries/AppDelegate/RCTAppDelegate.mm +0 -20
  20. package/Libraries/AppDelegate/RCTAppSetupUtils.h +0 -18
  21. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +0 -78
  22. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +18 -17
  23. package/Libraries/AppDelegate/RCTReactNativeFactory.h +5 -41
  24. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +0 -82
  25. package/Libraries/AppDelegate/RCTRootViewFactory.h +4 -1
  26. package/Libraries/AppDelegate/RCTRootViewFactory.mm +3 -98
  27. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -0
  28. package/Libraries/AppState/AppState.d.ts +4 -1
  29. package/Libraries/AppState/AppState.js +32 -17
  30. package/Libraries/BatchedBridge/MessageQueue.js +42 -51
  31. package/Libraries/BatchedBridge/NativeModules.js +7 -0
  32. package/Libraries/Blob/Blob.js +7 -1
  33. package/Libraries/Blob/FileReader.js +6 -0
  34. package/Libraries/Blob/URLSearchParams.js.flow +1 -1
  35. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +20 -9
  36. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +30 -43
  37. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +59 -49
  38. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  39. package/Libraries/Components/Button.js +96 -182
  40. package/Libraries/Components/Clipboard/Clipboard.js +5 -0
  41. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  42. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +8 -69
  43. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +10 -1
  44. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +2 -0
  45. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +26 -31
  46. package/Libraries/Components/Keyboard/Keyboard.js +23 -60
  47. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +15 -7
  48. package/Libraries/Components/Pressable/Pressable.js +39 -17
  49. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +5 -6
  50. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +4 -4
  51. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  52. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +17 -0
  53. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  54. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  55. package/Libraries/Components/RefreshControl/RefreshControl.js +40 -50
  56. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  57. package/Libraries/Components/SafeAreaView/SafeAreaView.js +8 -8
  58. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  59. package/Libraries/Components/ScrollView/ScrollView.d.ts +55 -43
  60. package/Libraries/Components/ScrollView/ScrollView.js +202 -115
  61. package/Libraries/Components/ScrollView/ScrollViewCommands.js +4 -4
  62. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +1 -1
  63. package/Libraries/Components/StatusBar/StatusBar.d.ts +7 -54
  64. package/Libraries/Components/StatusBar/StatusBar.js +85 -161
  65. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  66. package/Libraries/Components/Switch/Switch.js +76 -75
  67. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  68. package/Libraries/Components/TV/TVEventHandler.js +16 -1
  69. package/Libraries/Components/TextInput/InputAccessoryView.js +13 -61
  70. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  71. package/Libraries/Components/TextInput/TextInput.d.ts +9 -2
  72. package/Libraries/Components/TextInput/TextInput.flow.js +19 -2
  73. package/Libraries/Components/TextInput/TextInput.js +116 -111
  74. package/Libraries/Components/TextInput/TextInputNativeCommands.js +3 -3
  75. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +25 -19
  76. package/Libraries/Components/Touchable/Touchable.js +94 -95
  77. package/Libraries/Components/Touchable/TouchableHighlight.js +46 -114
  78. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +13 -25
  79. package/Libraries/Components/Touchable/TouchableOpacity.js +14 -84
  80. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +4 -3
  81. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  82. package/Libraries/Components/View/ReactNativeStyleAttributes.js +1 -0
  83. package/Libraries/Components/View/View.js +85 -64
  84. package/Libraries/Components/View/ViewAccessibility.d.ts +11 -1
  85. package/Libraries/Components/View/ViewAccessibility.js +16 -5
  86. package/Libraries/Components/View/ViewNativeComponent.js +6 -8
  87. package/Libraries/Components/View/ViewPropTypes.js +55 -9
  88. package/Libraries/Core/InitializeCore.js +9 -1
  89. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  90. package/Libraries/Core/ReactNativeVersion.js +2 -2
  91. package/Libraries/Core/Timers/JSTimers.js +53 -52
  92. package/Libraries/Core/setUpGlobals.js +9 -4
  93. package/Libraries/Core/setUpNavigator.js +6 -1
  94. package/Libraries/Core/setUpReactDevTools.js +0 -118
  95. package/Libraries/Core/setUpXHR.js +6 -2
  96. package/Libraries/Debugging/DebuggingOverlay.js +2 -2
  97. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  98. package/Libraries/EventEmitter/NativeEventEmitter.js +29 -0
  99. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +7 -7
  100. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +3 -0
  101. package/Libraries/Image/AssetSourceResolver.js +18 -27
  102. package/Libraries/Image/Image.android.js +13 -2
  103. package/Libraries/Image/Image.ios.js +3 -1
  104. package/Libraries/Image/ImageBackground.js +30 -18
  105. package/Libraries/Image/ImageProps.js +116 -117
  106. package/Libraries/Image/ImageSource.d.ts +1 -1
  107. package/Libraries/Image/ImageSource.js +9 -9
  108. package/Libraries/Image/ImageSourceUtils.js +10 -7
  109. package/Libraries/Image/ImageTypes.flow.js +2 -0
  110. package/Libraries/Image/ImageViewNativeComponent.js +1 -1
  111. package/Libraries/Image/RCTImageLoader.mm +60 -63
  112. package/Libraries/Image/RCTImageStoreManager.h +0 -2
  113. package/Libraries/Image/RelativeImageStub.js +1 -1
  114. package/Libraries/Image/resolveAssetSource.js +1 -1
  115. package/Libraries/Interaction/PanResponder.js +102 -97
  116. package/Libraries/LayoutAnimation/LayoutAnimation.js +22 -6
  117. package/Libraries/Linking/Linking.js +24 -23
  118. package/Libraries/Lists/FlatList.d.ts +6 -17
  119. package/Libraries/Lists/FlatList.js +7 -8
  120. package/Libraries/Lists/SectionList.js +7 -0
  121. package/Libraries/Lists/VirtualizedList.js +3 -0
  122. package/Libraries/Lists/VirtualizedSectionList.js +4 -0
  123. package/Libraries/LogBox/LogBox.js +3 -3
  124. package/Libraries/LogBox/UI/AnsiHighlight.js +2 -1
  125. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +2 -2
  126. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +4 -1
  127. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +3 -1
  128. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +8 -2
  129. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +9 -2
  130. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +17 -4
  131. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +3 -1
  132. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -1
  133. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -0
  134. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +4 -2
  135. package/Libraries/LogBox/UI/LogBoxMessage.js +18 -5
  136. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +4 -1
  137. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +1 -0
  138. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -4
  139. package/Libraries/Modal/Modal.d.ts +5 -4
  140. package/Libraries/Modal/Modal.js +71 -37
  141. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  142. package/Libraries/NativeComponent/BaseViewConfig.android.js +17 -0
  143. package/Libraries/NativeComponent/ViewConfig.js +3 -3
  144. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
  145. package/Libraries/Network/RCTHTTPRequestHandler.h +1 -1
  146. package/Libraries/Performance/Systrace.js +36 -0
  147. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +4 -2
  148. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +29 -17
  149. package/Libraries/Pressability/Pressability.js +1 -1
  150. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +4 -0
  151. package/Libraries/ReactNative/AppContainer-dev.js +3 -1
  152. package/Libraries/ReactNative/AppRegistry.flow.js +1 -0
  153. package/Libraries/ReactNative/AppRegistry.js +15 -11
  154. package/Libraries/ReactNative/AppRegistryImpl.js +57 -11
  155. package/Libraries/ReactNative/DisplayMode.js +1 -1
  156. package/Libraries/ReactNative/FabricUIManager.js +29 -26
  157. package/Libraries/ReactNative/I18nManager.js +20 -0
  158. package/Libraries/ReactNative/UIManager.js +53 -0
  159. package/Libraries/ReactNative/renderApplication.js +1 -1
  160. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -126
  161. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +5 -41
  162. package/Libraries/Renderer/shims/ReactNativeTypes.js +36 -36
  163. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +4 -4
  164. package/Libraries/Settings/Settings.ios.js +22 -0
  165. package/Libraries/Share/Share.js +25 -28
  166. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +6 -0
  167. package/Libraries/StyleSheet/StyleSheet.js +42 -2
  168. package/Libraries/StyleSheet/StyleSheet.js.flow +1 -1
  169. package/Libraries/StyleSheet/StyleSheetExports.js +7 -5
  170. package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
  171. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +24 -3
  172. package/Libraries/StyleSheet/StyleSheetTypes.js +34 -6
  173. package/Libraries/StyleSheet/flattenStyle.js +28 -13
  174. package/Libraries/StyleSheet/private/_TransformStyle.js +16 -14
  175. package/Libraries/Text/Text.js +12 -9
  176. package/Libraries/Text/TextEffectNativeComponent.js +31 -0
  177. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +0 -1
  178. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +0 -1
  179. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +0 -1
  180. package/Libraries/Text/TextProps.js +59 -93
  181. package/Libraries/Text/requireNativeTextEffect.js +28 -0
  182. package/Libraries/TurboModule/RCTExport.js +1 -1
  183. package/Libraries/Types/CoreEventTypes.d.ts +8 -0
  184. package/Libraries/Types/CoreEventTypes.js +32 -29
  185. package/Libraries/Types/UIManagerJSInterface.js +2 -2
  186. package/Libraries/Utilities/Appearance.d.ts +32 -17
  187. package/Libraries/Utilities/Appearance.js +35 -18
  188. package/Libraries/Utilities/BackHandler.android.js +13 -33
  189. package/Libraries/Utilities/BackHandler.js.flow +18 -2
  190. package/Libraries/Utilities/DevSettings.js +8 -1
  191. package/Libraries/Utilities/Dimensions.js +18 -12
  192. package/Libraries/Utilities/PixelRatio.js +5 -2
  193. package/Libraries/Utilities/Platform.js.flow +4 -0
  194. package/Libraries/Utilities/PlatformTypes.js +77 -0
  195. package/Libraries/Utilities/differ/deepDiffer.js +5 -2
  196. package/Libraries/Utilities/useColorScheme.js +11 -1
  197. package/Libraries/Utilities/useWindowDimensions.js +6 -0
  198. package/Libraries/Vibration/Vibration.js +14 -11
  199. package/Libraries/vendor/emitter/EventEmitter.js +3 -3
  200. package/React/Base/RCTBridge+Private.h +0 -22
  201. package/React/Base/RCTBridge.h +10 -8
  202. package/React/Base/RCTBridge.mm +5 -447
  203. package/React/Base/RCTBridgeDelegate.h +1 -56
  204. package/React/Base/RCTBridgeModule.h +0 -9
  205. package/React/Base/RCTBridgeProxy.h +8 -0
  206. package/React/Base/RCTBridgeProxy.mm +3 -20
  207. package/React/Base/RCTBundleManager.h +0 -3
  208. package/React/Base/RCTBundleManager.m +0 -31
  209. package/React/Base/RCTBundleURLProvider.mm +4 -4
  210. package/React/Base/RCTCallableJSModules.m +0 -18
  211. package/React/Base/RCTConstants.h +1 -0
  212. package/React/Base/RCTConstants.m +1 -0
  213. package/React/Base/RCTConvert.mm +3 -0
  214. package/React/Base/RCTDisplayLink.h +3 -1
  215. package/React/Base/RCTJavaScriptExecutor.h +0 -69
  216. package/React/Base/RCTModuleData.mm +2 -483
  217. package/React/Base/RCTModuleRegistry.m +0 -25
  218. package/React/Base/RCTRootView.h +0 -11
  219. package/React/Base/RCTRootView.m +3 -461
  220. package/React/Base/RCTUtils.h +0 -3
  221. package/React/Base/RCTUtils.mm +17 -27
  222. package/React/Base/RCTVersion.m +2 -2
  223. package/React/Base/RCTViewRegistry.m +1 -29
  224. package/React/Base/Surface/RCTSurface.mm +1 -582
  225. package/React/Base/Surface/RCTSurfaceRootShadowView.m +0 -89
  226. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +0 -1
  227. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +0 -2
  228. package/React/CoreModules/RCTAlertController.mm +1 -0
  229. package/React/CoreModules/RCTAlertManager.mm +0 -5
  230. package/React/CoreModules/RCTLogBox.mm +0 -11
  231. package/React/CoreModules/RCTLogBoxView.h +0 -3
  232. package/React/CoreModules/RCTLogBoxView.mm +0 -31
  233. package/React/CoreModules/RCTPerfMonitor.mm +0 -2
  234. package/React/CoreModules/RCTStatusBarManager.mm +0 -11
  235. package/React/CxxModule/RCTCxxUtils.h +0 -8
  236. package/React/CxxModule/RCTCxxUtils.mm +0 -17
  237. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +179 -7
  238. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +100 -2
  239. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +373 -119
  240. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.cpp +1 -1
  241. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.h +1 -1
  242. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.cpp +71 -71
  243. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +96 -96
  244. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +357 -363
  245. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +211 -212
  246. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/RCTComponentViewHelpers.h +107 -107
  247. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.cpp +1 -1
  248. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.h +11 -11
  249. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/States.h +2 -2
  250. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.h +4 -0
  251. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +4 -0
  252. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +4 -0
  253. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +5 -0
  254. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +0 -1
  255. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +14 -0
  256. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +12 -3
  257. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerState.mm +12 -26
  258. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +39 -4
  259. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +18 -22
  260. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +0 -18
  261. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +9 -5
  262. package/React/Fabric/RCTSurfacePresenter.mm +86 -5
  263. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +2 -0
  264. package/React/I18n/RCTLocalizedString.mm +38 -2
  265. package/React/Modules/RCTEventEmitter.m +30 -10
  266. package/React/Modules/RCTI18nUtil.m +3 -1
  267. package/React/Modules/RCTUIManager.mm +0 -1501
  268. package/React/React-RCTFBReactNativeSpec.podspec +1 -1
  269. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +27 -0
  270. package/React/Views/RCTModalHostViewController.h +0 -18
  271. package/React/Views/RCTModalHostViewManager.h +0 -24
  272. package/React/Views/RCTShadowView.h +0 -2
  273. package/React/Views/RCTShadowView.m +0 -723
  274. package/React/Views/RCTView.h +0 -19
  275. package/React/Views/RCTViewManager.m +0 -53
  276. package/React/Views/ScrollView/RCTScrollView.h +0 -92
  277. package/React/Views/ScrollView/RCTScrollableProtocol.h +0 -4
  278. package/React-Core-prebuilt.podspec +45 -17
  279. package/React-Core.podspec +9 -2
  280. package/ReactAndroid/api/ReactAndroid.api +128 -142
  281. package/ReactAndroid/build.gradle.kts +26 -21
  282. package/ReactAndroid/external-artifacts/build.gradle.kts +49 -0
  283. package/ReactAndroid/gradle.properties +1 -1
  284. package/ReactAndroid/hermes-engine/build.gradle.kts +19 -20
  285. package/ReactAndroid/src/debug/AndroidManifest.xml +6 -0
  286. package/ReactAndroid/src/debugOptimized/AndroidManifest.xml +22 -0
  287. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -7
  288. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +4 -2
  289. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +4 -6
  290. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +5 -7
  291. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.kt +212 -0
  292. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +0 -16
  293. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +6 -1
  294. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.kt +1 -0
  295. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.kt +287 -0
  296. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +16 -0
  297. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +15 -2
  298. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +1 -3
  299. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +4 -0
  300. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +50 -2
  301. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +63 -22
  302. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +33 -0
  303. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +4 -12
  304. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +14 -10
  305. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +6 -6
  306. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +50 -47
  307. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +0 -4
  308. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +10 -10
  309. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LocalNetworkPermissionUtil.kt +49 -0
  310. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +101 -26
  311. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +40 -38
  312. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +1 -10
  313. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerProviderImpl.kt +0 -3
  314. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +15 -11
  315. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +4 -4
  316. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +7 -13
  317. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +195 -194
  318. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SynchronousMountItem.kt +12 -8
  319. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +30 -66
  320. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +51 -111
  321. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +11 -23
  322. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +12 -24
  323. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +57 -123
  324. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +7 -5
  325. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -5
  326. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +11 -23
  327. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +0 -24
  328. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +0 -4
  329. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +1 -0
  330. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.kt +3 -0
  331. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +50 -0
  332. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +53 -3
  333. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +2 -77
  334. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
  335. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +2 -2
  336. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +1 -1
  337. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +9 -4
  338. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +4 -19
  339. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +1 -5
  340. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +4 -4
  341. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +46 -9
  342. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +1 -49
  343. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/HasChildPressedStateDelay.kt +29 -0
  344. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.kt +796 -0
  345. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +2 -4
  346. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.kt +27 -27
  347. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.kt +184 -0
  348. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.kt +486 -0
  349. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +8 -8
  350. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +2 -2
  351. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SkewMatrixHelper.kt +200 -0
  352. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +3 -0
  353. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +6 -1
  354. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +2 -2
  355. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.kt +7 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.kt +645 -0
  357. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +2 -3
  358. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.kt +142 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +0 -10
  360. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +3 -3
  361. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.kt +527 -0
  362. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +3 -1
  363. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +6 -6
  364. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +6 -0
  365. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +7 -0
  366. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.kt +8 -1
  367. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +0 -3
  368. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +2 -0
  369. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +4 -4
  370. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +2 -0
  371. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.kt +1729 -0
  372. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +15 -15
  373. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.kt +1297 -0
  374. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollViewManager.kt +13 -13
  375. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.kt +1392 -0
  376. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +14 -14
  377. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +19 -33
  378. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateClassic.kt +8 -6
  379. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +4 -4
  380. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js +13 -20
  381. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +7 -1
  382. package/ReactAndroid/src/main/java/com/facebook/react/views/text/MutableSpannableLayout.kt +107 -0
  383. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +122 -10
  384. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +91 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +3 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +41 -0
  387. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.kt +48 -2
  388. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextDecorationStyle.kt +200 -0
  389. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectRegistry.kt +45 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectSpanFactory.kt +17 -0
  391. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +361 -15
  392. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/AnimatedEffectSpan.kt +37 -0
  393. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/{DrawCommandSpan.kt → CanvasEffectSpan.kt} +3 -4
  394. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +23 -3
  395. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +30 -3
  396. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +25 -3
  397. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +1 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/StatefulSpan.kt +21 -0
  399. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextEffectSpan.kt +19 -0
  400. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TouchableSpan.kt +29 -0
  401. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +81 -9
  402. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +4 -0
  403. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +7 -21
  404. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +9 -1
  405. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +2 -0
  406. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/VirtualViewRenderState.kt +1 -1
  407. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +7 -8
  408. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.kt +45 -0
  409. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.kt +27 -0
  410. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.kt +15 -0
  411. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.kt +6 -0
  412. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.kt +27 -0
  413. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.kt +31 -0
  414. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.kt +41 -0
  415. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.kt +37 -0
  416. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.kt +27 -0
  417. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.kt +31 -0
  418. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.kt +33 -0
  419. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.kt +29 -0
  420. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.kt +43 -0
  421. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.kt +39 -0
  422. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.kt +29 -0
  423. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.kt +16 -0
  424. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.kt +12 -2
  425. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.kt +762 -0
  426. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +4 -4
  427. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.kt +27 -0
  428. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.kt +29 -0
  429. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.kt +29 -0
  430. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.kt +24 -2
  431. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.kt +37 -0
  432. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.kt +29 -0
  433. package/ReactAndroid/src/main/jni/CMakeLists.txt +1 -2
  434. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +94 -0
  435. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionDelegateImpl.cpp +3 -0
  436. package/ReactAndroid/src/main/jni/react/fabric/AndroidAnimationChoreographer.h +10 -10
  437. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +3 -0
  438. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +12 -15
  439. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +1 -3
  440. package/ReactAndroid/src/main/jni/react/fabric/test/FabricMountingManagerTest.cpp +159 -0
  441. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +69 -153
  442. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +15 -33
  443. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +10 -24
  444. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +0 -2
  445. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.cpp +13 -0
  446. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +4 -1
  447. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +8 -0
  448. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +4 -0
  449. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +5 -0
  450. package/ReactAndroid/src/main/res/views/uimanager/values-zu/strings.xml +3 -0
  451. package/ReactApple/RCTAnimatedModuleProvider/React-RCTAnimatedModuleProvider.podspec +63 -0
  452. package/ReactCommon/React-Fabric.podspec +2 -0
  453. package/ReactCommon/ReactCommon.podspec +2 -12
  454. package/ReactCommon/cmake-utils/react-native-flags.cmake +1 -3
  455. package/ReactCommon/cxxreact/CMakeLists.txt +1 -0
  456. package/ReactCommon/cxxreact/ErrorUtils.h +2 -32
  457. package/ReactCommon/cxxreact/Instance.cpp +1 -26
  458. package/ReactCommon/cxxreact/Instance.h +0 -2
  459. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -2
  460. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +0 -12
  461. package/ReactCommon/cxxreact/RAMBundleRegistry.h +0 -5
  462. package/ReactCommon/cxxreact/React-cxxreact.podspec +2 -1
  463. package/ReactCommon/cxxreact/ReactMarker.cpp +4 -30
  464. package/ReactCommon/cxxreact/ReactMarker.h +38 -21
  465. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  466. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  467. package/ReactCommon/cxxreact/tests/methodcall.cpp +4 -0
  468. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +6 -79
  469. package/ReactCommon/jserrorhandler/ErrorUtils.cpp +42 -0
  470. package/{React/CxxLogUtils/RCTDefaultCxxLogFunction.h → ReactCommon/jserrorhandler/ErrorUtils.h} +2 -2
  471. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -1
  472. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +2 -3
  473. package/ReactCommon/jsi/jsi/hermes-interfaces.h +53 -0
  474. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +2 -1
  475. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +3 -14
  476. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +4 -13
  477. package/ReactCommon/jsinspector-modern/HostAgent.cpp +54 -0
  478. package/ReactCommon/jsinspector-modern/HostTarget.h +0 -7
  479. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +10 -7
  480. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +4 -1
  481. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +7 -0
  482. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +20 -0
  483. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -0
  484. package/ReactCommon/jsinspector-modern/SessionState.h +31 -0
  485. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +53 -0
  486. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +14 -1
  487. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +11 -0
  488. package/ReactCommon/react/bridging/ArrayBuffer.h +180 -0
  489. package/ReactCommon/react/bridging/Bridging.h +1 -0
  490. package/ReactCommon/react/bridging/Convert.h +12 -0
  491. package/ReactCommon/react/bridging/React-bridging.podspec +44 -0
  492. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +185 -11
  493. package/ReactCommon/react/bridging/tests/ClassTest.cpp +22 -0
  494. package/ReactCommon/react/cxxstableapi/CMakeLists.txt +18 -0
  495. package/ReactCommon/react/cxxstableapi/FrameworksGuard.h +35 -0
  496. package/ReactCommon/react/cxxstableapi/PrivateGuard.h +34 -0
  497. package/ReactCommon/react/cxxstableapi/React-cxxstableapi.podspec +34 -0
  498. package/ReactCommon/react/cxxstableapi/UmbrellaGuard.h +53 -0
  499. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +21 -45
  500. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +26 -56
  501. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +134 -242
  502. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +14 -26
  503. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +20 -44
  504. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +43 -97
  505. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +10 -6
  506. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -7
  507. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -8
  508. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +7 -13
  509. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +1 -0
  510. package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +49 -0
  511. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.cpp +4 -0
  512. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +4 -0
  513. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +1 -1
  514. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
  515. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +4 -0
  516. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +4 -0
  517. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +60 -3
  518. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +0 -9
  519. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +37 -139
  520. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleWithJSIBindings.h +0 -3
  521. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +6 -0
  522. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +10 -4
  523. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +1 -0
  524. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +25 -55
  525. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +11 -23
  526. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
  527. package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +1 -0
  528. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +4 -0
  529. package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +1 -0
  530. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h +1 -1
  531. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +1 -0
  532. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +95 -63
  533. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +20 -1
  534. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +7 -10
  535. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +20 -1
  536. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.h +1 -0
  537. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +67 -6
  538. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +12 -0
  539. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +25 -13
  540. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +7 -0
  541. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +48 -0
  542. package/ReactCommon/react/renderer/animated/tests/DecayAnimationDriverTest.cpp +245 -0
  543. package/ReactCommon/react/renderer/animated/tests/ManagedPropsMountingOverrideTests.cpp +204 -0
  544. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -1
  545. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
  546. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +17 -0
  547. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +0 -2
  548. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +6 -2
  549. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +25 -1
  550. package/ReactCommon/react/renderer/attributedstring/conversions.h +29 -1
  551. package/ReactCommon/react/renderer/attributedstring/primitives.h +4 -2
  552. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +73 -0
  553. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -0
  554. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +79 -126
  555. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.cpp +4 -0
  556. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +4 -0
  557. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.h +4 -0
  558. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +5 -0
  559. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +4 -0
  560. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.cpp +5 -0
  561. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.h +4 -0
  562. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.cpp +4 -0
  563. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +4 -0
  564. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +4 -0
  565. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +4 -0
  566. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +5 -0
  567. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +4 -0
  568. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +5 -0
  569. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.cpp +253 -379
  570. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +36 -55
  571. package/ReactCommon/react/renderer/components/text/BaseParagraphProps.cpp +17 -27
  572. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +8 -10
  573. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +19 -0
  574. package/ReactCommon/react/renderer/components/text/TextEffectComponentDescriptor.h +17 -0
  575. package/ReactCommon/react/renderer/components/text/TextEffectProps.cpp +59 -0
  576. package/ReactCommon/react/renderer/components/text/TextEffectProps.h +30 -0
  577. package/{Libraries/Text/VirtualText/RCTVirtualTextView.mm → ReactCommon/react/renderer/components/text/TextEffectShadowNode.cpp} +4 -6
  578. package/ReactCommon/react/renderer/components/text/TextEffectShadowNode.h +26 -0
  579. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +18 -28
  580. package/ReactCommon/react/renderer/components/text/tests/BaseTextShadowNodeTest.cpp +15 -0
  581. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +42 -50
  582. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +168 -754
  583. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +0 -9
  584. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +262 -326
  585. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +0 -6
  586. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +2 -12
  587. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +73 -27
  588. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +7 -9
  589. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -11
  590. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +94 -180
  591. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.h +2 -2
  592. package/ReactCommon/react/renderer/components/view/primitives.h +5 -0
  593. package/ReactCommon/react/renderer/components/view/propsConversions.h +74 -42
  594. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +5 -5
  595. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +353 -6
  596. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +41 -16
  597. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +19 -0
  598. package/ReactCommon/react/renderer/core/EventEmitter.cpp +20 -4
  599. package/ReactCommon/react/renderer/core/LayoutMetrics.h +3 -0
  600. package/ReactCommon/react/renderer/core/Props.cpp +8 -39
  601. package/ReactCommon/react/renderer/core/Props.h +63 -13
  602. package/ReactCommon/react/renderer/core/RawProps.cpp +20 -3
  603. package/ReactCommon/react/renderer/core/RawProps.h +44 -0
  604. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +11 -27
  605. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +3 -3
  606. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +4 -6
  607. package/ReactCommon/react/renderer/core/RawPropsParser.h +3 -3
  608. package/ReactCommon/react/renderer/core/ShadowNode.cpp +27 -19
  609. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +2 -0
  610. package/ReactCommon/react/renderer/core/StateData.h +4 -4
  611. package/ReactCommon/react/renderer/core/propsConversions.h +3 -7
  612. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +8 -0
  613. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +7 -7
  614. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +19 -19
  615. package/ReactCommon/react/renderer/core/tests/PropsConceptsTest.cpp +135 -0
  616. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +43 -53
  617. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +3 -3
  618. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +17 -0
  619. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
  620. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +123 -33
  621. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +26 -14
  622. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +96 -53
  623. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +4 -0
  624. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +96 -1
  625. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +29 -318
  626. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +105 -33
  627. package/ReactCommon/react/renderer/mounting/ShadowTree.h +2 -0
  628. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +11 -3
  629. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +1 -1
  630. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +15 -250
  631. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeReactBranchingTest.cpp +141 -0
  632. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +1 -1
  633. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +1 -0
  634. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -0
  635. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +22 -2
  636. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +13 -2
  637. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +13 -0
  638. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +9 -0
  639. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +43 -5
  640. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +17 -1
  641. package/ReactCommon/react/renderer/runtimescheduler/Task.h +4 -0
  642. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +113 -8
  643. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +14 -6
  644. package/ReactCommon/react/renderer/scheduler/Scheduler.h +3 -2
  645. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +1 -85
  646. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +0 -6
  647. package/ReactCommon/react/renderer/scheduler/tests/SchedulerDelegateInvalidationTest.cpp +671 -0
  648. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +22 -5
  649. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +4 -2
  650. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +11 -0
  651. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +65 -26
  652. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +193 -1
  653. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +14 -2
  654. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +2 -1
  655. package/ReactCommon/react/renderer/textlayoutmanager/tests/TextLayoutManagerTest.cpp +86 -5
  656. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +89 -94
  657. package/ReactCommon/react/renderer/uimanager/UIManager.h +2 -2
  658. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +1 -1
  659. package/ReactCommon/react/renderer/uimanager/tests/FabricUIManagerTest.cpp +144 -3
  660. package/ReactCommon/react/renderer/uimanager/tests/FindShadowNodeByTagTest.cpp +1 -52
  661. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +4 -4
  662. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +88 -39
  663. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +12 -2
  664. package/ReactCommon/react/runtime/PlatformTimerRegistry.h +10 -0
  665. package/ReactCommon/react/runtime/ReactInstance.cpp +79 -64
  666. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +0 -89
  667. package/ReactCommon/react/runtime/iostests/MainQueueCoordinatorTests.mm +99 -0
  668. package/ReactCommon/react/runtime/iostests/RCTInstanceTests.mm +244 -0
  669. package/ReactCommon/react/runtime/platform/ios/ReactCommon/ObjCTimerRegistry.h +1 -1
  670. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +47 -30
  671. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.mm +3 -2
  672. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTPerformanceLoggerUtils.mm +3 -2
  673. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +27 -3
  674. package/ReactCommon/react/runtime/tests/cxx/RuntimeExecutorShutdownTest.cpp +155 -0
  675. package/ReactCommon/react/utils/Telemetry.h +0 -13
  676. package/ReactCommon/react/utils/tests/Base64Tests.cpp +36 -0
  677. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +0 -1
  678. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.mm +21 -38
  679. package/ReactCommon/yoga/Yoga.podspec +1 -1
  680. package/ReactCommon/yoga/yoga/YGEnums.cpp +2 -0
  681. package/ReactCommon/yoga/yoga/YGEnums.h +1 -0
  682. package/ReactCommon/yoga/yoga/YGNode.cpp +27 -0
  683. package/ReactCommon/yoga/yoga/YGNode.h +69 -0
  684. package/ReactCommon/yoga/yoga/YGNodeLayout.h +0 -2
  685. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +2 -1
  686. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +294 -17
  687. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +1 -1
  688. package/ReactCommon/yoga/yoga/config/Config.h +1 -1
  689. package/ReactCommon/yoga/yoga/enums/Errata.h +1 -0
  690. package/ReactCommon/yoga/yoga/node/LayoutResults.h +8 -0
  691. package/ReactCommon/yoga/yoga/node/Node.cpp +32 -0
  692. package/ReactCommon/yoga/yoga/node/Node.h +33 -0
  693. package/cli.js +3 -182
  694. package/flow/bom.js.flow +42 -42
  695. package/flow/cssom.js.flow +21 -21
  696. package/flow/dom.js.flow +128 -128
  697. package/flow/global.js +6 -0
  698. package/gradle/libs.versions.toml +7 -5
  699. package/index.js +53 -86
  700. package/index.js.flow +53 -23
  701. package/package.json +41 -52
  702. package/react-native.config.js +82 -1
  703. package/scripts/cocoapods/fabric.rb +1 -1
  704. package/scripts/cocoapods/jsengine.rb +1 -1
  705. package/scripts/cocoapods/new_architecture.rb +1 -1
  706. package/scripts/cocoapods/rncore.rb +36 -78
  707. package/scripts/cocoapods/rncore_facades.rb +232 -0
  708. package/scripts/cocoapods/rndependencies.rb +64 -3
  709. package/scripts/cocoapods/rndeps_facades.rb +193 -0
  710. package/scripts/cocoapods/spm.rb +78 -11
  711. package/scripts/cocoapods/utils.rb +5 -7
  712. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +0 -1
  713. package/scripts/codegen/templates/Package.swift.spm-template +97 -0
  714. package/scripts/codegen/templates/ReactCodegen.podspec.template +1 -1
  715. package/scripts/hermes/hermes-utils.js +27 -58
  716. package/scripts/react-native-xcode.sh +20 -0
  717. package/scripts/react_native_pods.rb +71 -21
  718. package/scripts/react_native_pods_utils/script_phases.sh +4 -3
  719. package/scripts/replace-rncore-version.js +57 -86
  720. package/scripts/setup-apple-spm.js +1267 -0
  721. package/scripts/spm/__doc__/rfc-spm-xcframework.md +707 -0
  722. package/scripts/spm/__doc__/spm-autolinking-plugins.md +244 -0
  723. package/scripts/spm/__doc__/spm-header-paths-contract.md +97 -0
  724. package/scripts/spm/__doc__/spm-plugins-assessment.md +128 -0
  725. package/scripts/spm/__doc__/spm-scripts.md +486 -0
  726. package/scripts/spm/autolinking-plugins.js +331 -0
  727. package/scripts/spm/download-spm-artifacts.js +1409 -0
  728. package/scripts/spm/expand-spm-dependencies.js +216 -0
  729. package/scripts/spm/flavored-frameworks.js +1008 -0
  730. package/scripts/spm/generate-spm-autolinking-config.js +221 -0
  731. package/scripts/spm/generate-spm-autolinking.js +1888 -0
  732. package/scripts/spm/generate-spm-package.js +302 -0
  733. package/scripts/spm/generate-spm-xcodeproj.js +2266 -0
  734. package/scripts/spm/read-podspec.js +695 -0
  735. package/scripts/spm/scaffold-package-swift.js +1206 -0
  736. package/scripts/spm/spm-pbxproj.js +654 -0
  737. package/scripts/spm/spm-types.js +520 -0
  738. package/scripts/spm/spm-utils.js +645 -0
  739. package/scripts/spm/sync-spm-autolinking.js +160 -0
  740. package/sdks/.hermesv1version +1 -1
  741. package/sdks/hermes-engine/hermes-engine.podspec +9 -39
  742. package/sdks/hermes-engine/hermes-utils.rb +20 -74
  743. package/sdks/hermes-engine/utils/replace_hermes_version.js +18 -4
  744. package/sdks/hermes-engine/version.properties +1 -2
  745. package/settings.gradle.kts +0 -43
  746. package/src/asset-registry.js +29 -0
  747. package/src/private/animated/NativeAnimatedHelper.js +45 -21
  748. package/src/private/assets/AssetRegistry.js +52 -0
  749. package/src/private/{specs_DEPRECATED/components → components/activityindicator/specs}/ActivityIndicatorViewNativeComponent.js +5 -5
  750. package/src/private/{specs_DEPRECATED/components → components/debuggingoverlay/specs}/DebuggingOverlayNativeComponent.js +8 -8
  751. package/src/private/{specs_DEPRECATED/components → components/drawerlayoutandroid/specs}/AndroidDrawerLayoutNativeComponent.js +8 -8
  752. package/src/private/{specs_DEPRECATED/components → components/inputaccessoryview/specs}/RCTInputAccessoryViewNativeComponent.js +4 -4
  753. package/src/private/{specs_DEPRECATED/components → components/modal/specs}/RCTModalHostViewNativeComponent.js +4 -9
  754. package/src/private/{specs_DEPRECATED/components → components/progressbarandroid/specs}/ProgressBarAndroidNativeComponent.js +5 -5
  755. package/src/private/{specs_DEPRECATED/components → components/refreshcontrol/specs}/AndroidSwipeRefreshLayoutNativeComponent.js +7 -7
  756. package/src/private/{specs_DEPRECATED/components → components/refreshcontrol/specs}/PullToRefreshViewNativeComponent.js +7 -7
  757. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  758. package/src/private/{specs_DEPRECATED/components → components/safeareaview/specs}/RCTSafeAreaViewNativeComponent.js +3 -3
  759. package/src/private/components/scrollview/HScrollViewNativeComponents.js +1 -1
  760. package/src/private/{specs_DEPRECATED/components → components/scrollview/specs}/AndroidHorizontalScrollContentViewNativeComponent.js +3 -3
  761. package/src/private/{specs_DEPRECATED/components → components/switch/specs}/AndroidSwitchNativeComponent.js +7 -7
  762. package/src/private/{specs_DEPRECATED/components → components/switch/specs}/SwitchNativeComponent.js +10 -7
  763. package/src/private/{specs_DEPRECATED/components → components/unimplementedview/specs}/UnimplementedNativeViewNativeComponent.js +4 -4
  764. package/src/private/components/virtualcollection/Virtual.js +5 -5
  765. package/src/private/components/virtualcollection/VirtualCollectionView.js +2 -6
  766. package/src/private/components/virtualcollection/column/VirtualColumn.js +1 -1
  767. package/src/private/components/virtualcollection/row/VirtualRow.js +1 -1
  768. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +3 -1
  769. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +4 -4
  770. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +4 -2
  771. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
  772. package/src/private/featureflags/ReactNativeFeatureFlags.js +46 -70
  773. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +88 -94
  774. package/src/private/renderer/errorhandling/ErrorHandlers.js +2 -2
  775. package/src/private/renderer/events/ReactNativeResponder.js +49 -4
  776. package/src/private/renderer/events/ResponderTouchHistoryStore.js +11 -2
  777. package/src/private/renderer/events/dispatchNativeEvent.js +71 -36
  778. package/src/private/setup/setUpDOM.js +19 -9
  779. package/src/private/setup/setUpIntersectionObserver.js +7 -0
  780. package/src/private/setup/setUpMutationObserver.js +3 -1
  781. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +9 -9
  782. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +24 -24
  783. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +28 -28
  784. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
  785. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +45 -25
  786. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +44 -24
  787. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +4 -4
  788. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +8 -6
  789. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +7 -7
  790. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +3 -3
  791. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +2 -2
  792. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +11 -11
  793. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
  794. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +4 -4
  795. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +7 -7
  796. package/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.js +4 -4
  797. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
  798. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +4 -4
  799. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +2 -2
  800. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
  801. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +13 -13
  802. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +9 -6
  803. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +6 -6
  804. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
  805. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +8 -5
  806. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +5 -5
  807. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
  808. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +2 -2
  809. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +6 -6
  810. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +2 -2
  811. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +2 -2
  812. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +5 -5
  813. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +6 -6
  814. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +6 -4
  815. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
  816. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +1 -1
  817. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +35 -31
  818. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +2 -2
  819. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +24 -24
  820. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +2 -2
  821. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +3 -3
  822. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +2 -2
  823. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
  824. package/src/private/specs_DEPRECATED/modules/NativeSourceCode.js +1 -1
  825. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid.js +5 -17
  826. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS.js +10 -15
  827. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +3 -3
  828. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +4 -4
  829. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +35 -22
  830. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +4 -4
  831. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +7 -7
  832. package/src/private/types/HostInstance.js +38 -80
  833. package/src/private/viewtransition/specs/NativeViewTransition.js +6 -4
  834. package/src/private/webapis/dom/abort-api/AbortController.js +92 -0
  835. package/src/private/webapis/dom/abort-api/AbortSignal.js +243 -0
  836. package/src/private/webapis/dom/events/CustomEvent.js +1 -1
  837. package/src/private/webapis/dom/events/Event.js +12 -12
  838. package/src/private/webapis/dom/events/EventTarget.js +146 -37
  839. package/src/private/webapis/dom/events/internals/EventInternals.js +36 -0
  840. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +38 -3
  841. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +11 -0
  842. package/src/private/webapis/dom/nodes/ReactNativeElement.js +105 -4
  843. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +11 -0
  844. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +9 -0
  845. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +34 -7
  846. package/src/private/webapis/dom/nodes/ReadOnlyText.js +33 -0
  847. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +46 -42
  848. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +12 -0
  849. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +4 -2
  850. package/src/private/webapis/dom/oldstylecollections/NodeList.js +10 -0
  851. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +4 -3
  852. package/src/private/webapis/errors/DOMException.js +50 -50
  853. package/src/private/webapis/geometry/DOMRectList.js +12 -0
  854. package/src/private/webapis/geometry/DOMRectList.js.flow +3 -1
  855. package/src/private/webapis/html/events/MessageEvent.js +3 -3
  856. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
  857. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +13 -0
  858. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +3 -7
  859. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +5 -5
  860. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
  861. package/src/private/webapis/mutationobserver/MutationObserver.js +7 -7
  862. package/src/private/webapis/mutationobserver/MutationRecord.js +12 -0
  863. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +5 -7
  864. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +5 -5
  865. package/src/private/webapis/performance/EventTiming.js +3 -3
  866. package/src/private/webapis/performance/PerformanceEntry.js +3 -3
  867. package/src/private/webapis/performance/PerformanceObserver.js +4 -4
  868. package/src/private/webapis/performance/ResourceTiming.js +13 -13
  869. package/src/private/webapis/performance/UserTiming.js +3 -3
  870. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  871. package/src/private/webapis/performance/specs/NativePerformance.js +26 -20
  872. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  873. package/src/private/webapis/websockets/events/CloseEvent.js +3 -3
  874. package/src/private/webapis/xhr/events/ProgressEvent.js +3 -3
  875. package/src/react-private-interface.js +145 -0
  876. package/src/react-private-interface.js.flow +48 -0
  877. package/src/setup-env.js +22 -0
  878. package/src/types/globals.d.ts +33 -1
  879. package/src/unstable-internals-do-not-use.d.ts +214 -0
  880. package/src/unstable-internals-do-not-use.js +76 -0
  881. package/third-party-podspecs/ReactNativeDependencies.podspec +2 -2
  882. package/types/index.d.ts +0 -1
  883. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -4
  884. package/types/public/ReactNativeTypes.d.ts +4 -2
  885. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +0 -38
  886. package/Libraries/Image/AssetRegistry.js +0 -14
  887. package/Libraries/Image/RCTImageShadowView.h +0 -17
  888. package/Libraries/Image/RCTImageShadowView.mm +0 -28
  889. package/Libraries/Image/RCTImageView.h +0 -32
  890. package/Libraries/Image/RCTImageView.mm +0 -507
  891. package/Libraries/Image/RCTImageViewManager.h +0 -17
  892. package/Libraries/Image/RCTImageViewManager.mm +0 -115
  893. package/Libraries/Interaction/InteractionManager.d.ts +0 -87
  894. package/Libraries/Interaction/InteractionManager.js +0 -189
  895. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +0 -35
  896. package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +0 -162
  897. package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +0 -21
  898. package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +0 -64
  899. package/Libraries/Text/RCTTextAttributes.h +0 -107
  900. package/Libraries/Text/RCTTextAttributes.mm +0 -358
  901. package/Libraries/Text/RawText/RCTRawTextShadowView.h +0 -23
  902. package/Libraries/Text/RawText/RCTRawTextShadowView.mm +0 -38
  903. package/Libraries/Text/RawText/RCTRawTextViewManager.h +0 -21
  904. package/Libraries/Text/RawText/RCTRawTextViewManager.mm +0 -32
  905. package/Libraries/Text/Text/RCTTextShadowView.h +0 -33
  906. package/Libraries/Text/Text/RCTTextShadowView.mm +0 -469
  907. package/Libraries/Text/Text/RCTTextView.h +0 -34
  908. package/Libraries/Text/Text/RCTTextView.mm +0 -308
  909. package/Libraries/Text/Text/RCTTextViewManager.h +0 -19
  910. package/Libraries/Text/Text/RCTTextViewManager.mm +0 -97
  911. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +0 -21
  912. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +0 -67
  913. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +0 -21
  914. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +0 -30
  915. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +0 -30
  916. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +0 -367
  917. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +0 -68
  918. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +0 -858
  919. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +0 -17
  920. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +0 -181
  921. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +0 -17
  922. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +0 -24
  923. package/Libraries/Text/TextInput/RCTInputAccessoryView.h +0 -22
  924. package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +0 -82
  925. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +0 -17
  926. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +0 -78
  927. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +0 -17
  928. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +0 -33
  929. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +0 -21
  930. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +0 -43
  931. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +0 -21
  932. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +0 -35
  933. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +0 -17
  934. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +0 -42
  935. package/Libraries/Text/VirtualText/RCTVirtualTextView.h +0 -28
  936. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +0 -17
  937. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +0 -30
  938. package/Libraries/Utilities/SceneTracker.js +0 -42
  939. package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +0 -21
  940. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +0 -57
  941. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +0 -21
  942. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +0 -27
  943. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +0 -25
  944. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +0 -50
  945. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +0 -23
  946. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +0 -35
  947. package/Libraries/Wrapper/RCTWrapper.h +0 -73
  948. package/Libraries/Wrapper/RCTWrapperShadowView.h +0 -27
  949. package/Libraries/Wrapper/RCTWrapperShadowView.m +0 -138
  950. package/Libraries/Wrapper/RCTWrapperView.h +0 -42
  951. package/Libraries/Wrapper/RCTWrapperView.m +0 -99
  952. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +0 -30
  953. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +0 -137
  954. package/Libraries/Wrapper/RCTWrapperViewManager.h +0 -25
  955. package/Libraries/Wrapper/RCTWrapperViewManager.m +0 -31
  956. package/React/Base/RCTRootContentView.h +0 -43
  957. package/React/Base/RCTRootContentView.m +0 -111
  958. package/React/Base/RCTRootViewInternal.h +0 -40
  959. package/React/CxxBridge/RCTCxxBridge.mm +0 -1572
  960. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +0 -25
  961. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +0 -34
  962. package/React/CxxBridge/RCTObjcExecutor.h +0 -34
  963. package/React/CxxBridge/RCTObjcExecutor.mm +0 -150
  964. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -34
  965. package/React/CxxModule/DispatchMessageQueueThread.h +0 -50
  966. package/React/CxxModule/RCTCxxMethod.h +0 -17
  967. package/React/CxxModule/RCTCxxMethod.mm +0 -147
  968. package/React/CxxModule/RCTNativeModule.h +0 -34
  969. package/React/CxxModule/RCTNativeModule.mm +0 -241
  970. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +0 -205
  971. package/React/Tests/Text/RCTTextAttributesTest.mm +0 -49
  972. package/React/Views/RCTActivityIndicatorView.h +0 -16
  973. package/React/Views/RCTActivityIndicatorView.m +0 -26
  974. package/React/Views/RCTActivityIndicatorViewManager.h +0 -23
  975. package/React/Views/RCTActivityIndicatorViewManager.m +0 -65
  976. package/React/Views/RCTDebuggingOverlayManager.h +0 -17
  977. package/React/Views/RCTDebuggingOverlayManager.m +0 -68
  978. package/React/Views/RCTModalHostView.h +0 -72
  979. package/React/Views/RCTModalHostView.m +0 -302
  980. package/React/Views/RCTModalHostViewController.m +0 -107
  981. package/React/Views/RCTModalHostViewManager.m +0 -131
  982. package/React/Views/RCTModalManager.h +0 -22
  983. package/React/Views/RCTModalManager.m +0 -46
  984. package/React/Views/RCTRootShadowView.h +0 -35
  985. package/React/Views/RCTRootShadowView.m +0 -53
  986. package/React/Views/RCTShadowView+Internal.h +0 -18
  987. package/React/Views/RCTShadowView+Internal.m +0 -23
  988. package/React/Views/RCTSwitch.h +0 -24
  989. package/React/Views/RCTSwitch.m +0 -26
  990. package/React/Views/RCTSwitchManager.h +0 -19
  991. package/React/Views/RCTSwitchManager.m +0 -72
  992. package/React/Views/RCTTVView.h +0 -105
  993. package/React/Views/RCTTVView.m +0 -602
  994. package/React/Views/RefreshControl/RCTRefreshControl.h +0 -26
  995. package/React/Views/RefreshControl/RCTRefreshControl.m +0 -232
  996. package/React/Views/RefreshControl/RCTRefreshControlManager.h +0 -19
  997. package/React/Views/RefreshControl/RCTRefreshControlManager.m +0 -49
  998. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.h +0 -21
  999. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +0 -57
  1000. package/React/Views/SafeAreaView/RCTSafeAreaView.h +0 -27
  1001. package/React/Views/SafeAreaView/RCTSafeAreaView.m +0 -79
  1002. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.h +0 -25
  1003. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.m +0 -25
  1004. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.h +0 -21
  1005. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +0 -32
  1006. package/React/Views/ScrollView/RCTScrollContentShadowView.h +0 -19
  1007. package/React/Views/ScrollView/RCTScrollContentShadowView.m +0 -35
  1008. package/React/Views/ScrollView/RCTScrollContentView.h +0 -19
  1009. package/React/Views/ScrollView/RCTScrollContentView.m +0 -36
  1010. package/React/Views/ScrollView/RCTScrollContentViewManager.h +0 -17
  1011. package/React/Views/ScrollView/RCTScrollContentViewManager.m +0 -31
  1012. package/React/Views/ScrollView/RCTScrollView.m +0 -1508
  1013. package/React/Views/ScrollView/RCTScrollViewManager.h +0 -25
  1014. package/React/Views/ScrollView/RCTScrollViewManager.m +0 -208
  1015. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +0 -251
  1016. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +0 -315
  1017. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +0 -51
  1018. package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +0 -89
  1019. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +0 -736
  1020. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +0 -221
  1021. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -399
  1022. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactZIndexedViewGroup.kt +0 -35
  1023. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -346
  1024. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -666
  1025. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -147
  1026. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +0 -113
  1027. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +0 -614
  1028. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +0 -1949
  1029. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +0 -1646
  1030. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +0 -1744
  1031. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +0 -51
  1032. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.java +0 -33
  1033. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +0 -33
  1034. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +0 -37
  1035. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +0 -47
  1036. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.java +0 -41
  1037. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +0 -33
  1038. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +0 -37
  1039. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +0 -39
  1040. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +0 -35
  1041. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +0 -49
  1042. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +0 -45
  1043. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +0 -35
  1044. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +0 -928
  1045. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +0 -33
  1046. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +0 -35
  1047. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +0 -35
  1048. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +0 -43
  1049. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +0 -35
  1050. package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.cpp +0 -23
  1051. package/ReactAndroid/src/main/jni/react/fabric/JAnimationBackendChoreographer.h +0 -37
  1052. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +0 -135
  1053. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +0 -72
  1054. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +0 -143
  1055. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +0 -55
  1056. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +0 -78
  1057. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +0 -39
  1058. package/ReactCommon/hermes/inspector-modern/chrome/tests/ConnectionDemuxTests.cpp +0 -148
  1059. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +0 -168
  1060. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +0 -416
  1061. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +0 -31
  1062. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +0 -134
  1063. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +0 -290
  1064. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +0 -62
  1065. package/ReactCommon/react/renderer/core/RawPropsKey.h +0 -39
  1066. package/ReactCommon/react/renderer/mounting/internal/DiffMap.h +0 -170
  1067. package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +0 -95
  1068. package/ReactCommon/react/renderer/mounting/internal/TinyMap.h +0 -147
  1069. package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +0 -154
  1070. package/interface.js +0 -21
  1071. package/jest-preset.js +0 -26
  1072. package/rn-get-polyfills.js +0 -13
  1073. package/sdks/.hermesversion +0 -1
  1074. package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +0 -13
  1075. package/types/tsconfig.json +0 -15
  1076. /package/ReactCommon/{cxxreact → react/utils}/MoveWrapper.h +0 -0
@@ -177,9 +177,11 @@ static void computeFlexBasisForChild(
177
177
 
178
178
  // For height in the main axis (column direction): when the
179
179
  // FixFlexBasisFitContent feature is enabled, skip FitContent for
180
- // non-measure container children. This makes the flex basis independent
181
- // of the parent's content-determined height, preventing unnecessary
182
- // re-measurement cascades when a sibling changes size in a ScrollView.
180
+ // non-measure container children inside scroll subtrees. This makes the
181
+ // flex basis independent of content-determined heights, preventing
182
+ // unnecessary re-measurement cascades when a sibling changes size in a
183
+ // ScrollView, while preserving viewport bounds for wrappers outside the
184
+ // scroll subtree.
183
185
  //
184
186
  // We only optimize the height (column) axis because text wrapping depends
185
187
  // on width constraints propagating through container nodes. Removing
@@ -188,8 +190,16 @@ static void computeFlexBasisForChild(
188
190
  bool applyHeightFitContent =
189
191
  isMainAxisRow || node->style().overflow() != Overflow::Scroll;
190
192
  if (fixFlexBasisFitContent) {
193
+ bool nodeHasScrollAncestor = false;
194
+ for (auto owner = node->getOwner(); owner != nullptr;
195
+ owner = owner->getOwner()) {
196
+ if (owner->style().overflow() == Overflow::Scroll) {
197
+ nodeHasScrollAncestor = true;
198
+ break;
199
+ }
200
+ }
191
201
  applyHeightFitContent = isMainAxisRow ||
192
- (child->hasMeasureFunc() &&
202
+ ((child->hasMeasureFunc() || !nodeHasScrollAncestor) &&
193
203
  node->style().overflow() != Overflow::Scroll);
194
204
  }
195
205
  if (applyHeightFitContent && yoga::isUndefined(childHeight) &&
@@ -506,7 +516,9 @@ void zeroOutLayoutRecursively(yoga::Node* const node) {
506
516
  }
507
517
  }
508
518
 
509
- void cleanupContentsNodesRecursively(yoga::Node* const node) {
519
+ void cleanupContentsNodesRecursively(
520
+ yoga::Node* const node,
521
+ bool didPerformLayout) {
510
522
  if (node->hasContentsChildren()) [[unlikely]] {
511
523
  node->cloneContentsChildrenIfNeeded();
512
524
  for (auto child : node->getChildren()) {
@@ -514,11 +526,13 @@ void cleanupContentsNodesRecursively(yoga::Node* const node) {
514
526
  child->getLayout() = {};
515
527
  child->setLayoutDimension(0, Dimension::Width);
516
528
  child->setLayoutDimension(0, Dimension::Height);
517
- child->setHasNewLayout(true);
529
+ if (didPerformLayout) {
530
+ child->setHasNewLayout(true);
531
+ }
518
532
  child->setDirty(false);
519
533
  child->cloneChildrenIfNeeded();
520
534
 
521
- cleanupContentsNodesRecursively(child);
535
+ cleanupContentsNodesRecursively(child, didPerformLayout);
522
536
  }
523
537
  }
524
538
  }
@@ -601,9 +615,18 @@ static float computeFlexBasisForChildren(
601
615
  for (auto child : children) {
602
616
  child->processDimensions();
603
617
  if (child->style().display() == Display::None) {
604
- zeroOutLayoutRecursively(child);
605
- child->setHasNewLayout(true);
606
- child->setDirty(false);
618
+ // Only mutate display: none children during layout passes. Zeroing them
619
+ // out during measure-only passes contributes nothing to the measurement,
620
+ // but sets `hasNewLayout` on nodes the parent's layout pass may never
621
+ // visit (e.g. when its layout is restored from cache, skipping
622
+ // `cloneChildrenIfNeeded()`). Such a leaked flag survives the commit and
623
+ // is copied into lazily-shared clones, later tripping the ownership
624
+ // assertion in `YogaLayoutableShadowNode::layout`.
625
+ if (performLayout) {
626
+ zeroOutLayoutRecursively(child);
627
+ child->setHasNewLayout(true);
628
+ child->setDirty(false);
629
+ }
607
630
  continue;
608
631
  }
609
632
  if (performLayout) {
@@ -643,6 +666,237 @@ static float computeFlexBasisForChildren(
643
666
  return totalOuterFlexBasis;
644
667
  }
645
668
 
669
+ // Returns the min-content size of `node` along `requestedAxis`, used by CSS
670
+ // Flexbox §4.5 automatic minimum sizing.
671
+ //
672
+ // Mirrors RenderCore FlexLayout's `AlgorithmBase::computeMinContentSize` /
673
+ // `measureMinContentMainSize` pair (see `xplat/flexlayout/flexlayout/
674
+ // FlexboxAlgorithm.h`). Unlike FlexLayout, which crosses a JNI/bridge
675
+ // boundary for nested flex containers via thread-local min-content markers,
676
+ // Yoga's flex containers are native nodes — so this function recurses
677
+ // directly into containers rather than going through a measure callback.
678
+ //
679
+ // Algorithm:
680
+ // * Leaf with measure function: invoke it with `AtMost 0` on the
681
+ // requested axis and `Undefined` on the other. Text measure-funcs
682
+ // respond with longest-word width; image/collection-like measures
683
+ // respond with 0 along their scroll axis.
684
+ // * Empty leaf: return 0.
685
+ // * Container: iterate in-flow children. For each, take its
686
+ // min-content along the container's own main axis (sum into
687
+ // `mainTotal`) and along its cross axis (max into `crossMax`),
688
+ // plus the child's margins. Add the container's own padding and
689
+ // border on both ends of each axis. Project onto `requestedAxis`.
690
+ //
691
+ // Container-level recursion does no layout writes (no positions, no
692
+ // alignment, no flex distribution); only the descendant leaf measure
693
+ // callbacks observe state changes (the same ones a normal layout pass
694
+ // would invoke). Roughly equivalent to FlexLayout's dedicated
695
+ // `computeMinContentSize` cost: one measure call per leaf + linear walk
696
+ // per container.
697
+ static float computeMinContentMainSize(
698
+ yoga::Node* const node,
699
+ const FlexDirection requestedAxis,
700
+ const Direction ownerDirection,
701
+ const float ownerWidth,
702
+ const float ownerHeight) {
703
+ const bool wantRow = isRow(requestedAxis);
704
+
705
+ // 1. Static value wins for any node (leaf or container). Short-circuits
706
+ // both the measure callback path AND any container recursion. The most
707
+ // common use is `YGNodeSetMinContentWidth(node, 0)` declaring no
708
+ // contribution per CSS-Images (Image) or CSS-Overflow (scroll
709
+ // containers along their scroll axis).
710
+ const FloatOptional staticMin =
711
+ wantRow ? node->getMinContentWidth() : node->getMinContentHeight();
712
+ if (staticMin.isDefined()) {
713
+ return staticMin.unwrap();
714
+ }
715
+
716
+ if (node->hasMeasureFunc()) {
717
+ // 2. Dynamic min-content callback if set (for Primitives whose
718
+ // min-content depends on state). Otherwise fall back to the regular
719
+ // measure function with `AtMost 0`, which text measurers naturally
720
+ // answer with longest-word width.
721
+ const YGSize size = node->hasMinContentMeasureFunc()
722
+ ? node->measureMinContent(
723
+ wantRow ? 0.0f : YGUndefined,
724
+ wantRow ? MeasureMode::AtMost : MeasureMode::Undefined,
725
+ wantRow ? YGUndefined : 0.0f,
726
+ wantRow ? MeasureMode::Undefined : MeasureMode::AtMost)
727
+ : node->measure(
728
+ wantRow ? 0.0f : YGUndefined,
729
+ wantRow ? MeasureMode::AtMost : MeasureMode::Undefined,
730
+ wantRow ? YGUndefined : 0.0f,
731
+ wantRow ? MeasureMode::Undefined : MeasureMode::AtMost);
732
+ // Add the leaf's own padding and border, like the container branch below.
733
+ const Direction leafDirection = node->resolveDirection(ownerDirection);
734
+ const float paddingAndBorder =
735
+ node->style().computeFlexStartPaddingAndBorder(
736
+ requestedAxis, leafDirection, ownerWidth) +
737
+ node->style().computeFlexEndPaddingAndBorder(
738
+ requestedAxis, leafDirection, ownerWidth);
739
+ return (wantRow ? size.width : size.height) + paddingAndBorder;
740
+ }
741
+
742
+ if (node->getChildCount() == 0) {
743
+ return 0.0f;
744
+ }
745
+
746
+ const Direction direction = node->resolveDirection(ownerDirection);
747
+ const FlexDirection nodeMainAxis =
748
+ resolveDirection(node->style().flexDirection(), direction);
749
+ const FlexDirection nodeCrossAxis =
750
+ resolveCrossDirection(nodeMainAxis, direction);
751
+
752
+ float mainTotal = 0.0f;
753
+ float crossMax = 0.0f;
754
+
755
+ for (size_t i = 0; i < node->getChildCount(); i++) {
756
+ auto* const child = node->getChild(i);
757
+ if (child->style().display() == Display::None ||
758
+ child->style().positionType() == PositionType::Absolute) {
759
+ continue;
760
+ }
761
+
762
+ float childMain = computeMinContentMainSize(
763
+ child, nodeMainAxis, direction, ownerWidth, ownerHeight);
764
+ childMain += child->style().computeMarginForAxis(nodeMainAxis, ownerWidth);
765
+
766
+ float childCross = computeMinContentMainSize(
767
+ child, nodeCrossAxis, direction, ownerWidth, ownerHeight);
768
+ childCross +=
769
+ child->style().computeMarginForAxis(nodeCrossAxis, ownerWidth);
770
+
771
+ mainTotal += childMain;
772
+ crossMax = std::max(crossMax, childCross);
773
+ }
774
+
775
+ mainTotal += node->style().computeFlexStartPaddingAndBorder(
776
+ nodeMainAxis, direction, ownerWidth) +
777
+ node->style().computeFlexEndPaddingAndBorder(
778
+ nodeMainAxis, direction, ownerWidth);
779
+ crossMax += node->style().computeFlexStartPaddingAndBorder(
780
+ nodeCrossAxis, direction, ownerWidth) +
781
+ node->style().computeFlexEndPaddingAndBorder(
782
+ nodeCrossAxis, direction, ownerWidth);
783
+
784
+ const bool nodeMainIsRow = isRow(nodeMainAxis);
785
+ const float widthMin = nodeMainIsRow ? mainTotal : crossMax;
786
+ const float heightMin = nodeMainIsRow ? crossMax : mainTotal;
787
+ return wantRow ? widthMin : heightMin;
788
+ }
789
+
790
+ // Computes the CSS Flexbox §4.5 automatic minimum main-axis size for
791
+ // `child`. Returns Undefined when no auto-min applies (feature off, explicit
792
+ // `min-{w,h}` already set, or `display:none`); 0 when the item's own
793
+ // `overflow != visible` (the spec's per-item escape hatch); or a concrete
794
+ // floor otherwise.
795
+ //
796
+ // Floor = min(content-size, specified-size) capped by max-size, with the
797
+ // transferred (aspect-ratio × cross-size) suggestion replacing the
798
+ // specified-size leg when the item has an aspect ratio but no specified
799
+ // main size. See https://www.w3.org/TR/css-flexbox-1/#min-size-auto.
800
+ static FloatOptional computeAutoMinMainSize(
801
+ yoga::Node* const child,
802
+ const FlexDirection mainAxis,
803
+ const Direction direction,
804
+ const float ownerMainAxisSize,
805
+ const float ownerWidth,
806
+ const float ownerHeight) {
807
+ if (child->hasErrata(Errata::MinSizeUndefinedInsteadOfAuto)) {
808
+ return FloatOptional{};
809
+ }
810
+ if (child->style().display() == Display::None) {
811
+ return FloatOptional{};
812
+ }
813
+ // Explicit `min-{w,h}` (including `0`) wins over auto. This is the
814
+ // CSS-spec opt-out (§4.5).
815
+ if (child->style().minDimension(dimension(mainAxis)).isDefined()) {
816
+ return FloatOptional{};
817
+ }
818
+ // Per CSS §4.5: a flex item whose own `overflow` is not `visible` gets
819
+ // auto-min = 0 (let scroll/clip handle overflow rather than enforce a
820
+ // content-based minimum).
821
+ if (child->style().overflow() != Overflow::Visible) {
822
+ return FloatOptional{0.0f};
823
+ }
824
+
825
+ const Dimension mainDim = dimension(mainAxis);
826
+ const Dimension crossDim =
827
+ isRow(mainAxis) ? Dimension::Height : Dimension::Width;
828
+ const bool isMainAxisRow = isRow(mainAxis);
829
+
830
+ // Specified size suggestion: the resolved main-axis style dimension.
831
+ const FloatOptional specifiedMain = child->getResolvedDimension(
832
+ direction, mainDim, ownerMainAxisSize, ownerWidth);
833
+
834
+ // Transferred size suggestion: cross × aspect-ratio, if both are definite.
835
+ FloatOptional transferredMain;
836
+ const FloatOptional aspectRatio = child->style().aspectRatio();
837
+ if (aspectRatio.isDefined()) {
838
+ const float crossOwner = isMainAxisRow ? ownerHeight : ownerWidth;
839
+ const FloatOptional crossResolved = child->getResolvedDimension(
840
+ direction, crossDim, crossOwner, ownerWidth);
841
+ if (crossResolved.isDefined()) {
842
+ const float ratio = aspectRatio.unwrap();
843
+ const float crossValue = crossResolved.unwrap();
844
+ transferredMain = FloatOptional{
845
+ isMainAxisRow ? crossValue * ratio : crossValue / ratio};
846
+ }
847
+ }
848
+
849
+ // Content size suggestion: probe via min-content recursion.
850
+ const FloatOptional contentMain = FloatOptional{computeMinContentMainSize(
851
+ child, mainAxis, direction, ownerWidth, ownerHeight)};
852
+
853
+ // Combine per §4.5: floor = min(content, specified) when specified is
854
+ // definite; otherwise floor = min(content, transferred) when transferred
855
+ // applies (item has aspect-ratio + definite cross + no specified main);
856
+ // else floor = content.
857
+ FloatOptional floor = contentMain;
858
+ if (specifiedMain.isDefined()) {
859
+ if (floor.isUndefined() || specifiedMain < floor) {
860
+ floor = specifiedMain;
861
+ }
862
+ } else if (transferredMain.isDefined()) {
863
+ if (floor.isUndefined() || transferredMain < floor) {
864
+ floor = transferredMain;
865
+ }
866
+ }
867
+
868
+ // §4.5: cap by the max main size.
869
+ const FloatOptional maxMain = child->style().resolvedMaxDimension(
870
+ direction, mainDim, ownerMainAxisSize, ownerWidth);
871
+ if (maxMain.isDefined() && floor > maxMain) {
872
+ floor = maxMain;
873
+ }
874
+
875
+ if (floor.isUndefined() || floor.unwrap() < 0.0f) {
876
+ floor = FloatOptional{0.0f};
877
+ }
878
+ return floor;
879
+ }
880
+
881
+ // boundAxis with an additional lower bound from `child`'s cached
882
+ // `computedAutoMinMainSize`, applied on the main axis only. Used inside
883
+ // the flex-shrink distribution to honor CSS §4.5 auto-min while preserving
884
+ // the existing min/max/padding-and-border clamping.
885
+ static float boundAxisWithAutoMin(
886
+ const yoga::Node* const child,
887
+ const FlexDirection axis,
888
+ const Direction direction,
889
+ const float value,
890
+ const float axisSize,
891
+ const float widthSize) {
892
+ float bounded = boundAxis(child, axis, direction, value, axisSize, widthSize);
893
+ const FloatOptional autoMin = child->getLayout().computedAutoMinMainSize;
894
+ if (autoMin.isDefined() && bounded < autoMin.unwrap()) {
895
+ bounded = autoMin.unwrap();
896
+ }
897
+ return bounded;
898
+ }
899
+
646
900
  // It distributes the free space to the flexible items and ensures that the size
647
901
  // of the flex items abide the min and max constraints. At the end of this
648
902
  // function the child nodes would have proper size. Prior using this function
@@ -701,7 +955,7 @@ static float distributeFreeSpaceSecondPass(
701
955
  flexShrinkScaledFactor;
702
956
  }
703
957
 
704
- updatedMainSize = boundAxis(
958
+ updatedMainSize = boundAxisWithAutoMin(
705
959
  currentLineChild,
706
960
  mainAxis,
707
961
  direction,
@@ -716,7 +970,7 @@ static float distributeFreeSpaceSecondPass(
716
970
 
717
971
  // Is this child able to grow?
718
972
  if (!std::isnan(flexGrowFactor) && flexGrowFactor != 0) {
719
- updatedMainSize = boundAxis(
973
+ updatedMainSize = boundAxisWithAutoMin(
720
974
  currentLineChild,
721
975
  mainAxis,
722
976
  direction,
@@ -881,7 +1135,7 @@ static void distributeFreeSpaceFirstPass(
881
1135
  flexLine.layout.remainingFreeSpace /
882
1136
  flexLine.layout.totalFlexShrinkScaledFactors *
883
1137
  flexShrinkScaledFactor;
884
- boundMainSize = boundAxis(
1138
+ boundMainSize = boundAxisWithAutoMin(
885
1139
  currentLineChild,
886
1140
  mainAxis,
887
1141
  direction,
@@ -974,6 +1228,29 @@ static void resolveFlexibleLength(
974
1228
  const uint32_t depth,
975
1229
  const uint32_t generationCount) {
976
1230
  const float originalFreeSpace = flexLine.layout.remainingFreeSpace;
1231
+
1232
+ // CSS Flexbox §4.5: compute each item's automatic minimum main-axis size
1233
+ // up front so the bounding helpers below can floor shrunk values.
1234
+ // computeAutoMinMainSize returns Undefined when the feature is off or an
1235
+ // explicit `min-{w,h}` already pins the floor, in which case the cached
1236
+ // value is also Undefined and `boundAxisWithAutoMin` reduces to `boundAxis`.
1237
+ if (!node->hasErrata(Errata::MinSizeUndefinedInsteadOfAuto)) {
1238
+ for (auto currentLineChild : flexLine.itemsInFlow) {
1239
+ currentLineChild->getLayout().computedAutoMinMainSize =
1240
+ computeAutoMinMainSize(
1241
+ currentLineChild,
1242
+ mainAxis,
1243
+ direction,
1244
+ mainAxisOwnerSize,
1245
+ availableInnerWidth,
1246
+ availableInnerHeight);
1247
+ }
1248
+ } else {
1249
+ for (auto currentLineChild : flexLine.itemsInFlow) {
1250
+ currentLineChild->getLayout().computedAutoMinMainSize = FloatOptional{};
1251
+ }
1252
+ }
1253
+
977
1254
  // First pass: detect the flex items whose min/max constraints trigger
978
1255
  distributeFreeSpaceFirstPass(
979
1256
  flexLine,
@@ -1360,7 +1637,7 @@ static void calculateLayoutImpl(
1360
1637
 
1361
1638
  // Clean and update all display: contents nodes with a direct path to the
1362
1639
  // current node as they will not be traversed
1363
- cleanupContentsNodesRecursively(node);
1640
+ cleanupContentsNodesRecursively(node, performLayout);
1364
1641
  return;
1365
1642
  }
1366
1643
 
@@ -1378,7 +1655,7 @@ static void calculateLayoutImpl(
1378
1655
 
1379
1656
  // Clean and update all display: contents nodes with a direct path to the
1380
1657
  // current node as they will not be traversed
1381
- cleanupContentsNodesRecursively(node);
1658
+ cleanupContentsNodesRecursively(node, performLayout);
1382
1659
  return;
1383
1660
  }
1384
1661
 
@@ -1396,7 +1673,7 @@ static void calculateLayoutImpl(
1396
1673
  ownerHeight)) {
1397
1674
  // Clean and update all display: contents nodes with a direct path to the
1398
1675
  // current node as they will not be traversed
1399
- cleanupContentsNodesRecursively(node);
1676
+ cleanupContentsNodesRecursively(node, /* didPerformLayout */ false);
1400
1677
  return;
1401
1678
  }
1402
1679
 
@@ -1408,7 +1685,7 @@ static void calculateLayoutImpl(
1408
1685
 
1409
1686
  // Clean and update all display: contents nodes with a direct path to the
1410
1687
  // current node as they will not be traversed
1411
- cleanupContentsNodesRecursively(node);
1688
+ cleanupContentsNodesRecursively(node, performLayout);
1412
1689
 
1413
1690
  // STEP 1: CALCULATE VALUES FOR REMAINDER OF ALGORITHM
1414
1691
  const FlexDirection mainAxis =
@@ -55,6 +55,6 @@ float calculateAvailableInnerDimension(
55
55
 
56
56
  void zeroOutLayoutRecursively(yoga::Node* const node);
57
57
 
58
- void cleanupContentsNodesRecursively(yoga::Node* const node);
58
+ void cleanupContentsNodesRecursively(yoga::Node* node, bool didPerformLayout);
59
59
 
60
60
  } // namespace facebook::yoga
@@ -76,7 +76,7 @@ class YG_EXPORT Config : public ::YGConfig {
76
76
 
77
77
  uint32_t version_ = 0;
78
78
  ExperimentalFeatureSet experimentalFeatures_{};
79
- Errata errata_ = Errata::None;
79
+ Errata errata_ = Errata::MinSizeUndefinedInsteadOfAuto;
80
80
  float pointScaleFactor_ = 1.0f;
81
81
  void* context_ = nullptr;
82
82
  };
@@ -20,6 +20,7 @@ enum class Errata : uint32_t {
20
20
  StretchFlexBasis = YGErrataStretchFlexBasis,
21
21
  AbsolutePositionWithoutInsetsExcludesPadding = YGErrataAbsolutePositionWithoutInsetsExcludesPadding,
22
22
  AbsolutePercentAgainstInnerSize = YGErrataAbsolutePercentAgainstInnerSize,
23
+ MinSizeUndefinedInsteadOfAuto = YGErrataMinSizeUndefinedInsteadOfAuto,
23
24
  All = YGErrataAll,
24
25
  Classic = YGErrataClassic,
25
26
  };
@@ -27,6 +27,14 @@ struct LayoutResults {
27
27
  uint32_t computedFlexBasisGeneration = 0;
28
28
  FloatOptional computedFlexBasis = {};
29
29
 
30
+ // Per-flex-item floor along the main axis derived from CSS Flexbox §4.5
31
+ // automatic minimum sizing. Set by `resolveFlexibleLength` when the parent's
32
+ // config does NOT carry the `MinSizeUndefinedInsteadOfAuto` errata and the
33
+ // item has no explicit main-axis `min-{width,height}`. Read by the
34
+ // shrink/bound machinery to keep items at least this large. `Undefined`
35
+ // means "no auto-min applies."
36
+ FloatOptional computedAutoMinMainSize = {};
37
+
30
38
  // Instead of recomputing the entire layout every single time, we cache some
31
39
  // information to break early when nothing changed
32
40
  uint32_t generationCount = 0;
@@ -36,6 +36,9 @@ Node::Node(Node&& node) noexcept
36
36
  nodeType_(node.nodeType_),
37
37
  context_(node.context_),
38
38
  measureFunc_(node.measureFunc_),
39
+ minContentMeasureFunc_(node.minContentMeasureFunc_),
40
+ minContentWidth_(node.minContentWidth_),
41
+ minContentHeight_(node.minContentHeight_),
39
42
  baselineFunc_(node.baselineFunc_),
40
43
  dirtiedFunc_(node.dirtiedFunc_),
41
44
  style_(std::move(node.style_)),
@@ -79,6 +82,35 @@ YGSize Node::measure(
79
82
  return size;
80
83
  }
81
84
 
85
+ YGSize Node::measureMinContent(
86
+ float availableWidth,
87
+ MeasureMode widthMode,
88
+ float availableHeight,
89
+ MeasureMode heightMode) {
90
+ auto size = minContentMeasureFunc_(
91
+ this,
92
+ availableWidth,
93
+ unscopedEnum(widthMode),
94
+ availableHeight,
95
+ unscopedEnum(heightMode));
96
+
97
+ if (yoga::isUndefined(size.height) || size.height < 0 ||
98
+ yoga::isUndefined(size.width) || size.width < 0) {
99
+ // NOLINTNEXTLINE(cppcoreguidelines-pro-type-vararg)
100
+ yoga::log(
101
+ this,
102
+ LogLevel::Warn,
103
+ "Min-content measure function returned an invalid dimension to Yoga: [width=%f, height=%f]",
104
+ size.width,
105
+ size.height);
106
+ size = {
107
+ .width = maxOrDefined(0.0f, size.width),
108
+ .height = maxOrDefined(0.0f, size.height)};
109
+ }
110
+
111
+ return size;
112
+ }
113
+
82
114
  float Node::baseline(float width, float height) const {
83
115
  return baselineFunc_(this, width, height);
84
116
  }
@@ -73,6 +73,24 @@ class YG_EXPORT Node : public ::YGNode {
73
73
  float availableHeight,
74
74
  MeasureMode heightMode);
75
75
 
76
+ bool hasMinContentMeasureFunc() const noexcept {
77
+ return minContentMeasureFunc_ != nullptr;
78
+ }
79
+
80
+ YGSize measureMinContent(
81
+ float availableWidth,
82
+ MeasureMode widthMode,
83
+ float availableHeight,
84
+ MeasureMode heightMode);
85
+
86
+ FloatOptional getMinContentWidth() const noexcept {
87
+ return minContentWidth_;
88
+ }
89
+
90
+ FloatOptional getMinContentHeight() const noexcept {
91
+ return minContentHeight_;
92
+ }
93
+
76
94
  bool hasBaselineFunc() const noexcept {
77
95
  return baselineFunc_ != nullptr;
78
96
  }
@@ -220,6 +238,18 @@ class YG_EXPORT Node : public ::YGNode {
220
238
 
221
239
  void setMeasureFunc(YGMeasureFunc measureFunc);
222
240
 
241
+ void setMinContentMeasureFunc(YGMinContentMeasureFunc minContentMeasureFunc) {
242
+ minContentMeasureFunc_ = minContentMeasureFunc;
243
+ }
244
+
245
+ void setMinContentWidth(FloatOptional minContentWidth) noexcept {
246
+ minContentWidth_ = minContentWidth;
247
+ }
248
+
249
+ void setMinContentHeight(FloatOptional minContentHeight) noexcept {
250
+ minContentHeight_ = minContentHeight;
251
+ }
252
+
223
253
  void setBaselineFunc(YGBaselineFunc baseLineFunc) {
224
254
  baselineFunc_ = baseLineFunc;
225
255
  }
@@ -315,6 +345,9 @@ class YG_EXPORT Node : public ::YGNode {
315
345
  NodeType nodeType_ : bitCount<NodeType>() = NodeType::Default;
316
346
  void* context_ = nullptr;
317
347
  YGMeasureFunc measureFunc_ = nullptr;
348
+ YGMinContentMeasureFunc minContentMeasureFunc_ = nullptr;
349
+ FloatOptional minContentWidth_{};
350
+ FloatOptional minContentHeight_{};
318
351
  YGBaselineFunc baselineFunc_ = nullptr;
319
352
  YGDirtiedFunc dirtiedFunc_ = nullptr;
320
353
  Style style_;