react-native-tvos 0.85.3-1 → 0.86.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 (667) hide show
  1. package/Libraries/Animated/AnimatedImplementation.js +6 -6
  2. package/Libraries/Animated/NativeAnimatedAllowlist.js +21 -0
  3. package/Libraries/Animated/components/AnimatedImage.js +3 -3
  4. package/Libraries/Animated/components/AnimatedText.js +3 -3
  5. package/Libraries/Animated/createAnimatedComponent.js +7 -7
  6. package/Libraries/Animated/nodes/AnimatedAddition.js +1 -1
  7. package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
  8. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +1 -1
  9. package/Libraries/Animated/nodes/AnimatedDivision.js +1 -1
  10. package/Libraries/Animated/nodes/AnimatedInterpolation.js +22 -24
  11. package/Libraries/Animated/nodes/AnimatedModulo.js +1 -1
  12. package/Libraries/Animated/nodes/AnimatedMultiplication.js +1 -1
  13. package/Libraries/Animated/nodes/AnimatedStyle.js +2 -2
  14. package/Libraries/Animated/nodes/AnimatedSubtraction.js +1 -1
  15. package/Libraries/Animated/nodes/AnimatedTracking.js +1 -1
  16. package/Libraries/Animated/nodes/AnimatedValue.js +2 -2
  17. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +4 -0
  18. package/Libraries/AppDelegate/RCTRootViewFactory.h +5 -5
  19. package/Libraries/AppDelegate/RCTRootViewFactory.mm +2 -2
  20. package/Libraries/AppState/AppState.js +1 -1
  21. package/Libraries/BatchedBridge/NativeModules.js +1 -1
  22. package/Libraries/Blob/RCTBlobCollector.h +1 -1
  23. package/Libraries/Blob/RCTBlobCollector.mm +14 -26
  24. package/Libraries/Blob/RCTBlobManager.mm +11 -3
  25. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +29 -23
  26. package/Libraries/Components/Keyboard/Keyboard.js +4 -2
  27. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  28. package/Libraries/Components/LayoutConformance/LayoutConformance.js +1 -27
  29. package/Libraries/Components/Pressable/Pressable.d.ts +1 -0
  30. package/Libraries/Components/Pressable/Pressable.js +2 -2
  31. package/Libraries/Components/Pressable/useAndroidRippleForView.js +7 -8
  32. package/Libraries/Components/ScrollView/ScrollView.js +3 -3
  33. package/Libraries/Components/ScrollView/ScrollViewCommands.js +2 -2
  34. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +2 -2
  35. package/Libraries/Components/Switch/Switch.js +1 -1
  36. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +25 -1
  37. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +1 -1
  38. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +2 -2
  39. package/Libraries/Components/TextInput/TextInput.d.ts +24 -0
  40. package/Libraries/Components/TextInput/TextInput.flow.js +24 -0
  41. package/Libraries/Components/TextInput/TextInput.js +5 -5
  42. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +5 -5
  43. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
  44. package/Libraries/Components/Touchable/PooledClass.js +4 -4
  45. package/Libraries/Components/Touchable/Touchable.js +1 -1
  46. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +6 -10
  47. package/Libraries/Components/View/ReactNativeStyleAttributes.js +10 -2
  48. package/Libraries/Components/View/View.js +100 -95
  49. package/Libraries/Components/View/ViewPropTypes.js +3 -1
  50. package/Libraries/Core/Devtools/loadBundleFromServer.js +8 -0
  51. package/Libraries/Core/ExceptionsManager.js +2 -8
  52. package/Libraries/Core/InitializeCore.js +0 -13
  53. package/Libraries/Core/ReactFiberErrorDialog.js +3 -3
  54. package/Libraries/Core/ReactNativeVersion.js +3 -3
  55. package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
  56. package/Libraries/Core/Timers/JSTimers.js +2 -2
  57. package/Libraries/Core/Timers/immediateShim.js +1 -1
  58. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  59. package/Libraries/Core/setUpSegmentFetcher.js +1 -1
  60. package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
  61. package/Libraries/EventEmitter/NativeEventEmitter.js +9 -5
  62. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -2
  63. package/Libraries/Image/Image.android.js +15 -35
  64. package/Libraries/Image/RCTImageLoader.mm +4 -2
  65. package/Libraries/Image/RelativeImageStub.js +2 -2
  66. package/Libraries/LayoutAnimation/LayoutAnimation.js +12 -12
  67. package/Libraries/Linking/Linking.js +1 -1
  68. package/Libraries/Lists/FlatList.js +1 -1
  69. package/Libraries/LogBox/LogBox.js +2 -2
  70. package/Libraries/LogBox/LogBoxInspectorContainer.js +24 -2
  71. package/Libraries/LogBox/LogBoxNotificationContainer.js +27 -4
  72. package/Libraries/LogBox/UI/LogBoxButton.js +47 -33
  73. package/Libraries/LogBox/UI/LogBoxInspector.js +61 -1
  74. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +6 -0
  75. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +3 -1
  76. package/Libraries/LogBox/UI/LogBoxNotification.js +2 -0
  77. package/Libraries/Modal/Modal.js +12 -7
  78. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +0 -2
  79. package/Libraries/NativeComponent/BaseViewConfig.android.js +15 -0
  80. package/Libraries/NativeComponent/BaseViewConfig.ios.js +17 -0
  81. package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
  82. package/Libraries/NativeComponent/ViewConfigIgnore.js +4 -2
  83. package/Libraries/Network/RCTNetworking.android.js +1 -1
  84. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  85. package/Libraries/Network/RCTNetworking.js.flow +1 -1
  86. package/Libraries/Network/RCTNetworking.mm +1 -2
  87. package/Libraries/Network/XMLHttpRequest.js +29 -12
  88. package/Libraries/Pressability/Pressability.js +2 -2
  89. package/Libraries/ReactNative/AppContainer-dev.js +2 -3
  90. package/Libraries/ReactNative/AppContainer-prod.js +1 -2
  91. package/Libraries/ReactNative/AppContainer.js +0 -1
  92. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  93. package/Libraries/ReactNative/AppRegistry.flow.js +1 -2
  94. package/Libraries/ReactNative/AppRegistryImpl.js +16 -16
  95. package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
  96. package/Libraries/ReactNative/FabricUIManager.js +6 -0
  97. package/Libraries/{Utilities → ReactNative}/IPerformanceLogger.d.ts +8 -5
  98. package/Libraries/{Utilities/IPerformanceLogger.js → ReactNative/IPerformanceLogger.flow.js} +12 -9
  99. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +14 -14
  100. package/Libraries/ReactNative/RendererImplementation.js +26 -143
  101. package/Libraries/ReactNative/RendererProxy.js +4 -15
  102. package/Libraries/ReactNative/renderApplication.js +33 -59
  103. package/Libraries/ReactNative/requireNativeComponent.js +3 -3
  104. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -0
  105. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -32
  106. package/Libraries/Settings/Settings.ios.js +1 -1
  107. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
  108. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +3 -3
  109. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  110. package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
  111. package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
  112. package/Libraries/StyleSheet/StyleSheetExports.js.flow +1 -1
  113. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +6 -8
  114. package/Libraries/StyleSheet/StyleSheetTypes.js +11 -11
  115. package/Libraries/StyleSheet/flattenStyle.js +1 -1
  116. package/Libraries/StyleSheet/private/_TransformStyle.js +1 -1
  117. package/Libraries/StyleSheet/processBackgroundImage.js +19 -9
  118. package/Libraries/StyleSheet/processBackgroundSize.js +7 -12
  119. package/Libraries/StyleSheet/processBoxShadow.js +9 -47
  120. package/Libraries/StyleSheet/processFilter.js +16 -8
  121. package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
  122. package/Libraries/Text/Text.js +4 -4
  123. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +16 -2
  124. package/Libraries/Text/TextNativeComponent.js +4 -4
  125. package/Libraries/TurboModule/RCTExport.js +1 -1
  126. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
  127. package/Libraries/Types/CodegenTypes.js +7 -4
  128. package/Libraries/Types/ReactDevToolsTypes.js +1 -1
  129. package/Libraries/Utilities/BackHandler.android.js +11 -3
  130. package/Libraries/Utilities/BackHandler.d.ts +11 -1
  131. package/Libraries/Utilities/BackHandler.ios.js +3 -1
  132. package/Libraries/Utilities/BackHandler.js.flow +6 -1
  133. package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
  134. package/Libraries/Utilities/ReactNativeTestTools.js +4 -4
  135. package/Libraries/Utilities/binaryToBase64.js +1 -1
  136. package/Libraries/Utilities/codegenNativeCommands.js +2 -2
  137. package/Libraries/Utilities/codegenNativeComponent.js +4 -4
  138. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +2 -2
  139. package/Libraries/Utilities/stringifySafe.js +1 -1
  140. package/Libraries/promiseRejectionTrackingOptions.js +1 -1
  141. package/Libraries/vendor/core/ErrorUtils.js +4 -4
  142. package/Libraries/vendor/emitter/EventEmitter.js +27 -13
  143. package/React/Base/RCTBundleURLProvider.h +19 -1
  144. package/React/Base/RCTBundleURLProvider.mm +82 -0
  145. package/React/Base/RCTDefines.h +1 -1
  146. package/React/Base/RCTMultipartDataTask.h +1 -1
  147. package/React/Base/RCTMultipartDataTask.m +0 -3
  148. package/React/Base/RCTRootView.h +4 -0
  149. package/React/Base/RCTRootViewDelegate.h +5 -2
  150. package/React/Base/RCTVersion.m +3 -3
  151. package/React/Base/Surface/RCTSurface.h +3 -0
  152. package/React/Base/Surface/RCTSurfaceDelegate.h +7 -3
  153. package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
  154. package/React/Base/Surface/RCTSurfaceView.mm +2 -1
  155. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +2 -0
  156. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +0 -3
  157. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +3 -1
  158. package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
  159. package/React/CoreModules/RCTRedBox2AnsiParser.mm +1 -1
  160. package/React/CoreModules/RCTWebSocketModule.mm +45 -6
  161. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -1
  162. package/React/DevSupport/RCTInspectorDevServerHelper.mm +4 -0
  163. package/React/DevSupport/RCTPackagerConnection.mm +13 -11
  164. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +108 -43
  165. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  166. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  167. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +1 -1
  168. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
  169. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +70 -8
  170. package/React/Fabric/RCTConversions.h +14 -0
  171. package/React/Fabric/RCTScheduler.mm +18 -0
  172. package/React/Fabric/RCTSurfacePointerHandler.mm +8 -2
  173. package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -0
  174. package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
  175. package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
  176. package/React/Modules/RCTUIManager.mm +1 -1
  177. package/React/Profiler/RCTProfile.h +5 -0
  178. package/React/Profiler/RCTProfile.m +2 -1
  179. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  180. package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
  181. package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
  182. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  183. package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
  184. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +5 -5
  185. package/React/Views/RCTLayout.m +4 -3
  186. package/React/Views/ScrollView/RCTScrollView.h +6 -2
  187. package/ReactAndroid/api/ReactAndroid.api +37 -27
  188. package/ReactAndroid/build.gradle.kts +28 -21
  189. package/ReactAndroid/gradle.properties +1 -1
  190. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
  191. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +1 -3
  192. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
  193. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +40 -110
  194. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +32 -87
  195. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -0
  196. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +9 -99
  197. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +7 -28
  198. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +2 -19
  199. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
  200. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +36 -0
  201. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
  202. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
  203. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
  204. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
  205. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
  206. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +2 -0
  207. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
  208. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
  209. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +9 -34
  210. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +9 -10
  211. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
  212. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +10 -10
  213. package/ReactAndroid/src/main/java/com/facebook/react/fabric/AnimationBackendChoreographer.kt +15 -13
  214. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
  215. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +139 -43
  216. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +223 -0
  217. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
  218. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +34 -1
  219. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +104 -65
  220. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +9 -1
  221. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +172 -36
  222. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +1 -1
  223. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
  224. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +41 -29
  225. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +71 -51
  226. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +15 -11
  227. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +16 -12
  228. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +79 -57
  229. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -3
  230. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -4
  231. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +15 -11
  232. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +5 -9
  233. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
  234. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
  235. package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +1 -1
  236. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +3 -0
  237. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +10 -5
  238. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
  239. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
  240. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
  241. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
  242. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
  243. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +59 -62
  244. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +8 -0
  245. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +45 -36
  246. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +3 -3
  247. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +5 -2
  248. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
  249. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +18 -5
  250. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +8 -1
  251. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +21 -19
  252. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +4 -0
  253. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  254. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +77 -72
  255. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +7 -16
  256. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
  257. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +3 -0
  258. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
  259. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +25 -0
  260. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +2 -2
  261. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
  262. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
  263. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +18 -0
  264. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +20 -12
  265. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +18 -24
  266. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
  267. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +4 -0
  268. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +11 -71
  269. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -17
  270. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +29 -30
  271. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
  272. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
  273. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +1 -0
  274. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +1 -0
  275. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +30 -0
  276. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
  277. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -9
  278. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +27 -3
  279. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +4 -0
  280. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
  281. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
  282. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +18 -20
  283. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.java +20 -21
  284. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +19 -20
  285. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +14 -5
  286. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
  287. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +5 -162
  288. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +1 -1
  289. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +71 -97
  290. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +1 -4
  291. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/DrawCommandSpan.kt +1 -1
  292. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +7 -13
  293. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +40 -2
  294. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
  295. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +84 -20
  296. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +41 -65
  297. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +85 -13
  298. package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
  299. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +5 -1
  300. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
  301. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +3 -1
  302. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +3 -1
  303. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.java +39 -0
  304. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +20 -12
  305. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +101 -0
  306. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
  307. package/ReactAndroid/src/main/jni/CMakeLists.txt +10 -1
  308. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
  309. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +0 -2
  310. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
  311. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
  312. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +47 -0
  313. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +20 -6
  314. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +24 -1
  315. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +6 -0
  316. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
  317. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
  318. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
  319. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
  320. package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
  321. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +97 -69
  322. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +21 -15
  323. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
  324. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
  325. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -1
  326. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
  327. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
  328. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
  329. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  330. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +10 -0
  331. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +7 -0
  332. package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
  333. package/ReactCommon/React-Fabric.podspec +7 -0
  334. package/ReactCommon/React-FabricComponents.podspec +1 -1
  335. package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
  336. package/ReactCommon/jsc/JSCRuntime.cpp +9 -0
  337. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +1 -0
  338. package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
  339. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
  340. package/ReactCommon/jsi/jsi/decorator.h +93 -0
  341. package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
  342. package/ReactCommon/jsi/jsi/jsi.cpp +208 -27
  343. package/ReactCommon/jsi/jsi/jsi.h +553 -224
  344. package/ReactCommon/jsi/jsi/test/testlib.cpp +453 -0
  345. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +1 -1
  346. package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
  347. package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
  348. package/ReactCommon/jsinspector-modern/HostAgent.cpp +10 -1
  349. package/ReactCommon/jsinspector-modern/HostTarget.h +25 -0
  350. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +6 -2
  351. package/ReactCommon/jsinspector-modern/InspectorFlags.h +5 -2
  352. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +19 -2
  353. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +3 -0
  354. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +10 -0
  355. package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +0 -1
  356. package/ReactCommon/logger/react_native_log.cpp +0 -1
  357. package/ReactCommon/react/bridging/Array.h +1 -1
  358. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +29 -21
  359. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +35 -25
  360. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +168 -132
  361. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +18 -14
  362. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +28 -20
  363. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +61 -43
  364. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +3 -3
  365. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +9 -7
  366. package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
  367. package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
  368. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +3 -9
  369. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +0 -1
  370. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +1 -0
  371. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +7 -0
  372. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +1 -0
  373. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +2 -2
  374. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +35 -25
  375. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +15 -11
  376. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +3 -2
  377. package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
  378. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
  379. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
  380. package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
  381. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
  382. package/ReactCommon/react/networking/NetworkReporter.h +0 -1
  383. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
  384. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
  385. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
  386. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +24 -12
  387. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +1 -1
  388. package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +3 -0
  389. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +10 -3
  390. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +1 -0
  391. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +4 -0
  392. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +1 -1
  393. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +0 -1
  394. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
  395. package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
  396. package/ReactCommon/react/renderer/animations/utils.h +12 -1
  397. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
  398. package/ReactCommon/react/renderer/attributedstring/conversions.h +104 -3
  399. package/ReactCommon/react/renderer/components/image/conversions.h +2 -3
  400. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  401. package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
  402. package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
  403. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +531 -21
  404. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +9 -0
  405. package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -2
  406. package/ReactCommon/react/renderer/components/view/BaseTouch.h +7 -0
  407. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +8 -0
  408. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
  409. package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
  410. package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
  411. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
  412. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
  413. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +5 -0
  414. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +33 -28
  415. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
  416. package/ReactCommon/react/renderer/components/view/conversions.h +44 -28
  417. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +53 -5
  418. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
  419. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
  420. package/ReactCommon/react/renderer/{graphics/DoubleConversions.h → components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h} +2 -4
  421. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
  422. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
  423. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
  424. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
  425. package/ReactCommon/react/renderer/components/view/propsConversions.h +8 -2
  426. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +86 -0
  427. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +34 -0
  428. package/ReactCommon/react/renderer/core/EventEmitter.cpp +67 -2
  429. package/ReactCommon/react/renderer/core/EventEmitter.h +25 -0
  430. package/ReactCommon/react/renderer/core/EventPipe.h +3 -1
  431. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +18 -10
  432. package/ReactCommon/react/renderer/core/EventTarget.cpp +8 -5
  433. package/ReactCommon/react/renderer/core/LayoutContext.h +9 -2
  434. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
  435. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
  436. package/ReactCommon/react/renderer/core/Props.cpp +20 -0
  437. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  438. package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
  439. package/ReactCommon/react/renderer/core/ShadowNode.h +2 -2
  440. package/ReactCommon/react/renderer/core/conversions.h +4 -0
  441. package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
  442. package/ReactCommon/react/renderer/core/propsConversions.h +1 -1
  443. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
  444. package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
  445. package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +1 -1
  446. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
  447. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
  448. package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
  449. package/ReactCommon/react/renderer/graphics/BlendMode.h +5 -0
  450. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
  451. package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
  452. package/ReactCommon/react/renderer/graphics/LinearGradient.h +3 -0
  453. package/ReactCommon/react/renderer/graphics/RadialGradient.h +4 -0
  454. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -0
  455. package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
  456. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +0 -5
  457. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +2 -2
  458. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +0 -4
  459. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +5 -1
  460. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +12 -4
  461. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
  462. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +307 -4
  463. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +27 -2
  464. package/ReactCommon/react/renderer/mounting/internal/LongestIncreasingSubsequence.h +95 -0
  465. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +212 -0
  466. package/ReactCommon/react/renderer/mounting/tests/LongestIncreasingSubsequenceTest.cpp +154 -0
  467. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +314 -18
  468. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +38 -20
  469. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +20 -22
  470. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +1 -0
  471. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +76 -3
  472. package/ReactCommon/react/renderer/scheduler/Scheduler.h +12 -0
  473. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +5 -0
  474. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +0 -7
  475. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +2 -1
  476. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +16 -1
  477. package/ReactCommon/react/renderer/uimanager/UIManager.h +8 -0
  478. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
  479. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +347 -5
  480. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +5 -3
  481. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +5 -0
  482. package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
  483. package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
  484. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +520 -0
  485. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +161 -0
  486. package/ReactCommon/react/runtime/TimerManager.cpp +4 -2
  487. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +37 -0
  488. package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
  489. package/ReactCommon/react/timing/React-timing.podspec +2 -0
  490. package/ReactCommon/react/timing/primitives.h +33 -1
  491. package/ReactCommon/yoga/yoga/YGEnums.cpp +32 -0
  492. package/ReactCommon/yoga/yoga/YGEnums.h +20 -4
  493. package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
  494. package/ReactCommon/yoga/yoga/YGNode.h +1 -1
  495. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
  496. package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
  497. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +40 -9
  498. package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
  499. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +106 -14
  500. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
  501. package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
  502. package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
  503. package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
  504. package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
  505. package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
  506. package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
  507. package/ReactCommon/yoga/yoga/event/event.h +1 -0
  508. package/ReactCommon/yoga/yoga/node/Node.cpp +6 -1
  509. package/ReactCommon/yoga/yoga/node/Node.h +4 -4
  510. package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
  511. package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
  512. package/ReactCommon/yoga/yoga/style/Style.h +261 -71
  513. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -1
  514. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  515. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
  516. package/cli.js +1 -1
  517. package/flow/HermesInternalType.js +1 -1
  518. package/flow/bom.js.flow +95 -3
  519. package/flow/dom.js.flow +89 -89
  520. package/gradle/libs.versions.toml +3 -1
  521. package/index.js +30 -3
  522. package/index.js.flow +23 -1
  523. package/package.json +11 -11
  524. package/react-native.config.js +3 -3
  525. package/scripts/cocoapods/rncore.rb +65 -11
  526. package/scripts/cocoapods/rndependencies.rb +65 -11
  527. package/scripts/cocoapods/utils.rb +52 -0
  528. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +1 -1
  529. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +13 -4
  530. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +1 -1
  531. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +1 -1
  532. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +17 -6
  533. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +1 -1
  534. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +1 -1
  535. package/scripts/codegen/generate-artifacts-executor/index.js +2 -0
  536. package/scripts/codegen/generate-artifacts-executor/utils.js +1 -1
  537. package/scripts/codegen/generate-specs-cli-executor.js +1 -1
  538. package/scripts/generate-codegen-artifacts.js +20 -2
  539. package/scripts/generate-provider-cli.js +1 -1
  540. package/scripts/react_native_pods.rb +25 -2
  541. package/scripts/react_native_pods_utils/script_phases.rb +9 -3
  542. package/scripts/replace-rncore-version.js +20 -0
  543. package/scripts/xcode/with-environment.sh +7 -1
  544. package/sdks/.hermesv1version +1 -1
  545. package/sdks/.hermesversion +1 -1
  546. package/sdks/hermes-engine/hermes-utils.rb +92 -5
  547. package/sdks/hermes-engine/version.properties +2 -2
  548. package/src/private/animated/NativeAnimatedValidation.js +1 -1
  549. package/src/private/animated/createAnimatedPropsHook.js +2 -2
  550. package/src/private/components/virtualcollection/FlingConstants.js +21 -0
  551. package/src/private/components/virtualcollection/Virtual.js +62 -0
  552. package/src/private/components/virtualcollection/VirtualCollectionView.js +238 -0
  553. package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
  554. package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
  555. package/src/private/components/virtualcollection/debug/FlingItemOverlay.js +13 -0
  556. package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
  557. package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
  558. package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
  559. package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
  560. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
  561. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +1 -1
  562. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +1 -1
  563. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +2 -2
  564. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +2 -2
  565. package/src/private/featureflags/ReactNativeFeatureFlags.js +41 -37
  566. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
  567. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +9 -7
  568. package/src/private/renderer/errorhandling/ErrorHandlers.js +3 -3
  569. package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
  570. package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
  571. package/src/private/renderer/events/ReactNativeResponder.js +687 -0
  572. package/src/private/renderer/events/ResponderEvent.js +40 -0
  573. package/src/private/renderer/events/ResponderTouchHistoryStore.js +258 -0
  574. package/src/private/renderer/events/dispatchNativeEvent.js +83 -0
  575. package/src/private/setup/setUpDOM.js +20 -0
  576. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +2 -2
  577. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +2 -2
  578. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  579. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  580. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +2 -2
  581. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +2 -2
  582. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +2 -2
  583. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +2 -2
  584. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +2 -2
  585. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +2 -2
  586. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +2 -2
  587. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +2 -2
  588. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +2 -2
  589. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +1 -1
  590. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
  591. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +1 -1
  592. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +1 -1
  593. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +1 -1
  594. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +1 -1
  595. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +1 -1
  596. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +1 -1
  597. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -1
  598. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +1 -1
  599. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +1 -1
  600. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +1 -1
  601. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +2 -2
  602. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +1 -1
  603. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +1 -1
  604. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +1 -1
  605. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +2 -2
  606. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +1 -1
  607. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +1 -1
  608. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +2 -2
  609. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +2 -2
  610. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +1 -1
  611. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +1 -1
  612. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +1 -1
  613. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +1 -1
  614. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +1 -1
  615. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +1 -1
  616. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +1 -1
  617. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +1 -1
  618. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +1 -1
  619. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +2 -2
  620. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +2 -2
  621. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +2 -2
  622. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +1 -1
  623. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +2 -2
  624. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +1 -1
  625. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +2 -2
  626. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +1 -1
  627. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +1 -1
  628. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +1 -1
  629. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +1 -1
  630. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +1 -1
  631. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +1 -1
  632. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +2 -2
  633. package/src/private/styles/composeStyles.js +1 -1
  634. package/src/private/types/HostComponent.js +1 -1
  635. package/src/private/utilities/toExtendedError.js +1 -1
  636. package/src/private/viewtransition/specs/NativeViewTransition.js +33 -0
  637. package/src/private/webapis/dom/events/Event.js +10 -1
  638. package/src/private/webapis/dom/events/EventTarget.js +60 -18
  639. package/src/private/webapis/dom/events/internals/EventInternals.js +18 -1
  640. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +12 -0
  641. package/src/private/webapis/dom/nodes/ReactNativeElement.js +24 -0
  642. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +4 -6
  643. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +70 -1
  644. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
  645. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +1 -1
  646. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +2 -2
  647. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +5 -9
  648. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +2 -2
  649. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +2 -2
  650. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +2 -2
  651. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
  652. package/src/private/webapis/performance/specs/NativePerformance.js +1 -1
  653. package/src/private/webapis/structuredClone/structuredClone.js +1 -1
  654. package/src/private/webapis/webidl/PlatformObjects.js +4 -4
  655. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19669
  656. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11129
  657. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12930
  658. package/Libraries/Renderer/shims/ReactNative.js +0 -27
  659. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
  660. package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
  661. package/Libraries/Utilities/createPerformanceLogger.js +0 -329
  662. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -442
  663. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
  664. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
  665. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
  666. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
  667. package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
@@ -141,6 +141,43 @@ class RCTHostHostTargetDelegate : public facebook::react::jsinspector_modern::Ho
141
141
  [networkHelper_ loadNetworkResourceWithParams:params executor:executor];
142
142
  }
143
143
 
144
+ #if TARGET_OS_IPHONE
145
+ bool onSetEmulatedMedia(const SetEmulatedMediaRequest &request) override
146
+ {
147
+ RCTAssertMainQueue();
148
+ UIWindow *keyWindow = nil;
149
+ for (UIScene *scene in RCTSharedApplication().connectedScenes) {
150
+ if (scene.activationState == UISceneActivationStateForegroundActive &&
151
+ [scene isKindOfClass:[UIWindowScene class]]) {
152
+ auto *windowScene = (UIWindowScene *)scene;
153
+ for (UIWindow *win in windowScene.windows) {
154
+ if (win.isKeyWindow) {
155
+ keyWindow = win;
156
+ break;
157
+ }
158
+ }
159
+ }
160
+ if (keyWindow != nil) {
161
+ break;
162
+ }
163
+ }
164
+
165
+ if (keyWindow == nil) {
166
+ return false;
167
+ }
168
+
169
+ UIUserInterfaceStyle style = UIUserInterfaceStyleUnspecified;
170
+ if (request.colorScheme == "dark") {
171
+ style = UIUserInterfaceStyleDark;
172
+ } else if (request.colorScheme == "light") {
173
+ style = UIUserInterfaceStyleLight;
174
+ }
175
+
176
+ keyWindow.overrideUserInterfaceStyle = style;
177
+ return true;
178
+ }
179
+ #endif
180
+
144
181
  #if TARGET_OS_IPHONE && defined(REACT_NATIVE_DEBUGGER_ENABLED)
145
182
  std::optional<std::string> captureScreenshot(const PageCaptureScreenshotRequest &request) override
146
183
  {
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>NSPrivacyAccessedAPITypes</key>
6
+ <array>
7
+ <dict>
8
+ <key>NSPrivacyAccessedAPIType</key>
9
+ <string>NSPrivacyAccessedAPICategorySystemBootTime</string>
10
+ <key>NSPrivacyAccessedAPITypeReasons</key>
11
+ <array>
12
+ <string>35F9.1</string>
13
+ </array>
14
+ </dict>
15
+ </array>
16
+ <key>NSPrivacyCollectedDataTypes</key>
17
+ <array/>
18
+ <key>NSPrivacyTracking</key>
19
+ <false/>
20
+ </dict>
21
+ </plist>
@@ -40,4 +40,6 @@ Pod::Spec.new do |s|
40
40
  resolve_use_frameworks(s, header_mappings_dir: "./", module_name: "React_timing")
41
41
 
42
42
  add_dependency(s, "React-debug")
43
+
44
+ s.resource_bundles = {'React-timing_privacy' => 'PrivacyInfo.xcprivacy'}
43
45
  end
@@ -11,6 +11,10 @@
11
11
  #include <chrono>
12
12
  #include <functional>
13
13
 
14
+ #ifdef __APPLE__
15
+ #include <mach/mach_time.h>
16
+ #endif
17
+
14
18
  namespace facebook::react {
15
19
 
16
20
  class HighResDuration;
@@ -312,6 +316,23 @@ class HighResTimeStamp {
312
316
  return HighResDuration(systemNow.time_since_epoch() - steadyNow.time_since_epoch());
313
317
  }
314
318
 
319
+ #ifdef __APPLE__
320
+ static double getMachTimebaseConversionFactor()
321
+ {
322
+ mach_timebase_info_data_t info;
323
+ mach_timebase_info(&info);
324
+ return static_cast<double>(info.numer) / info.denom;
325
+ }
326
+
327
+ static std::chrono::steady_clock::time_point machAbsoluteTimeToSteadyClockTimePoint()
328
+ {
329
+ static double conversionFactor = getMachTimebaseConversionFactor();
330
+ uint64_t machTime = mach_absolute_time();
331
+ auto nanoseconds = static_cast<int64_t>(static_cast<double>(machTime) * conversionFactor);
332
+ return std::chrono::steady_clock::time_point(std::chrono::nanoseconds(nanoseconds));
333
+ }
334
+ #endif
335
+
315
336
  #ifdef REACT_NATIVE_DEBUG
316
337
  static std::function<std::chrono::steady_clock::time_point()> &getTimeStampProvider()
317
338
  {
@@ -322,12 +343,23 @@ class HighResTimeStamp {
322
343
  static std::chrono::steady_clock::time_point chronoNow()
323
344
  {
324
345
  auto &timeStampProvider = getTimeStampProvider();
325
- return timeStampProvider != nullptr ? timeStampProvider() : std::chrono::steady_clock::now();
346
+ if (timeStampProvider != nullptr) {
347
+ return timeStampProvider();
348
+ }
349
+ #ifdef __APPLE__
350
+ return machAbsoluteTimeToSteadyClockTimePoint();
351
+ #else
352
+ return std::chrono::steady_clock::now();
353
+ #endif
326
354
  }
327
355
  #else
328
356
  inline static std::chrono::steady_clock::time_point chronoNow()
329
357
  {
358
+ #ifdef __APPLE__
359
+ return machAbsoluteTimeToSteadyClockTimePoint();
360
+ #else
330
361
  return std::chrono::steady_clock::now();
362
+ #endif
331
363
  }
332
364
  #endif
333
365
  };
@@ -29,6 +29,10 @@ const char* YGAlignToString(const YGAlign value) {
29
29
  return "space-around";
30
30
  case YGAlignSpaceEvenly:
31
31
  return "space-evenly";
32
+ case YGAlignStart:
33
+ return "start";
34
+ case YGAlignEnd:
35
+ return "end";
32
36
  }
33
37
  return "unknown";
34
38
  }
@@ -73,6 +77,8 @@ const char* YGDisplayToString(const YGDisplay value) {
73
77
  return "none";
74
78
  case YGDisplayContents:
75
79
  return "contents";
80
+ case YGDisplayGrid:
81
+ return "grid";
76
82
  }
77
83
  return "unknown";
78
84
  }
@@ -123,6 +129,8 @@ const char* YGExperimentalFeatureToString(const YGExperimentalFeature value) {
123
129
  switch (value) {
124
130
  case YGExperimentalFeatureWebFlexBasis:
125
131
  return "web-flex-basis";
132
+ case YGExperimentalFeatureFixFlexBasisFitContent:
133
+ return "fix-flex-basis-fit-content";
126
134
  }
127
135
  return "unknown";
128
136
  }
@@ -141,6 +149,22 @@ const char* YGFlexDirectionToString(const YGFlexDirection value) {
141
149
  return "unknown";
142
150
  }
143
151
 
152
+ const char* YGGridTrackTypeToString(const YGGridTrackType value) {
153
+ switch (value) {
154
+ case YGGridTrackTypeAuto:
155
+ return "auto";
156
+ case YGGridTrackTypePoints:
157
+ return "points";
158
+ case YGGridTrackTypePercent:
159
+ return "percent";
160
+ case YGGridTrackTypeFr:
161
+ return "fr";
162
+ case YGGridTrackTypeMinmax:
163
+ return "minmax";
164
+ }
165
+ return "unknown";
166
+ }
167
+
144
168
  const char* YGGutterToString(const YGGutter value) {
145
169
  switch (value) {
146
170
  case YGGutterColumn:
@@ -155,6 +179,8 @@ const char* YGGutterToString(const YGGutter value) {
155
179
 
156
180
  const char* YGJustifyToString(const YGJustify value) {
157
181
  switch (value) {
182
+ case YGJustifyAuto:
183
+ return "auto";
158
184
  case YGJustifyFlexStart:
159
185
  return "flex-start";
160
186
  case YGJustifyCenter:
@@ -167,6 +193,12 @@ const char* YGJustifyToString(const YGJustify value) {
167
193
  return "space-around";
168
194
  case YGJustifySpaceEvenly:
169
195
  return "space-evenly";
196
+ case YGJustifyStretch:
197
+ return "stretch";
198
+ case YGJustifyStart:
199
+ return "start";
200
+ case YGJustifyEnd:
201
+ return "end";
170
202
  }
171
203
  return "unknown";
172
204
  }
@@ -22,7 +22,9 @@ YG_ENUM_DECL(
22
22
  YGAlignBaseline,
23
23
  YGAlignSpaceBetween,
24
24
  YGAlignSpaceAround,
25
- YGAlignSpaceEvenly)
25
+ YGAlignSpaceEvenly,
26
+ YGAlignStart,
27
+ YGAlignEnd)
26
28
 
27
29
  YG_ENUM_DECL(
28
30
  YGBoxSizing,
@@ -44,7 +46,8 @@ YG_ENUM_DECL(
44
46
  YGDisplay,
45
47
  YGDisplayFlex,
46
48
  YGDisplayNone,
47
- YGDisplayContents)
49
+ YGDisplayContents,
50
+ YGDisplayGrid)
48
51
 
49
52
  YG_ENUM_DECL(
50
53
  YGEdge,
@@ -70,7 +73,8 @@ YG_DEFINE_ENUM_FLAG_OPERATORS(YGErrata)
70
73
 
71
74
  YG_ENUM_DECL(
72
75
  YGExperimentalFeature,
73
- YGExperimentalFeatureWebFlexBasis)
76
+ YGExperimentalFeatureWebFlexBasis,
77
+ YGExperimentalFeatureFixFlexBasisFitContent)
74
78
 
75
79
  YG_ENUM_DECL(
76
80
  YGFlexDirection,
@@ -79,6 +83,14 @@ YG_ENUM_DECL(
79
83
  YGFlexDirectionRow,
80
84
  YGFlexDirectionRowReverse)
81
85
 
86
+ YG_ENUM_DECL(
87
+ YGGridTrackType,
88
+ YGGridTrackTypeAuto,
89
+ YGGridTrackTypePoints,
90
+ YGGridTrackTypePercent,
91
+ YGGridTrackTypeFr,
92
+ YGGridTrackTypeMinmax)
93
+
82
94
  YG_ENUM_DECL(
83
95
  YGGutter,
84
96
  YGGutterColumn,
@@ -87,12 +99,16 @@ YG_ENUM_DECL(
87
99
 
88
100
  YG_ENUM_DECL(
89
101
  YGJustify,
102
+ YGJustifyAuto,
90
103
  YGJustifyFlexStart,
91
104
  YGJustifyCenter,
92
105
  YGJustifyFlexEnd,
93
106
  YGJustifySpaceBetween,
94
107
  YGJustifySpaceAround,
95
- YGJustifySpaceEvenly)
108
+ YGJustifySpaceEvenly,
109
+ YGJustifyStretch,
110
+ YGJustifyStart,
111
+ YGJustifyEnd)
96
112
 
97
113
  YG_ENUM_DECL(
98
114
  YGLogLevel,
@@ -29,6 +29,8 @@
29
29
 
30
30
  #ifdef _WINDLL
31
31
  #define YG_EXPORT __declspec(dllexport)
32
+ #elif defined(__EMSCRIPTEN__)
33
+ #define YG_EXPORT __attribute__((visibility("default"), used))
32
34
  #elif !defined(_MSC_VER)
33
35
  #define YG_EXPORT __attribute__((visibility("default")))
34
36
  #else
@@ -257,7 +257,7 @@ YG_EXPORT bool YGNodeIsReferenceBaseline(YGNodeConstRef node);
257
257
  YG_EXPORT void YGNodeSetNodeType(YGNodeRef node, YGNodeType nodeType);
258
258
 
259
259
  /**
260
- * Wwhether a leaf node's layout results may be truncated during layout
260
+ * Whether a leaf node's layout results may be truncated during layout
261
261
  * rounding.
262
262
  */
263
263
  YG_EXPORT YGNodeType YGNodeGetNodeType(YGNodeConstRef node);
@@ -8,6 +8,7 @@
8
8
  #include <yoga/Yoga.h>
9
9
  #include <yoga/debug/AssertFatal.h>
10
10
  #include <yoga/node/Node.h>
11
+ #include <yoga/style/GridTrack.h>
11
12
 
12
13
  using namespace facebook;
13
14
  using namespace facebook::yoga;
@@ -74,6 +75,24 @@ YGJustify YGNodeStyleGetJustifyContent(const YGNodeConstRef node) {
74
75
  return unscopedEnum(resolveRef(node)->style().justifyContent());
75
76
  }
76
77
 
78
+ void YGNodeStyleSetJustifyItems(YGNodeRef node, const YGJustify justifyItems) {
79
+ updateStyle<&Style::justifyItems, &Style::setJustifyItems>(
80
+ node, scopedEnum(justifyItems));
81
+ }
82
+
83
+ YGJustify YGNodeStyleGetJustifyItems(const YGNodeConstRef node) {
84
+ return unscopedEnum(resolveRef(node)->style().justifyItems());
85
+ }
86
+
87
+ void YGNodeStyleSetJustifySelf(YGNodeRef node, const YGJustify justifySelf) {
88
+ updateStyle<&Style::justifySelf, &Style::setJustifySelf>(
89
+ node, scopedEnum(justifySelf));
90
+ }
91
+
92
+ YGJustify YGNodeStyleGetJustifySelf(const YGNodeConstRef node) {
93
+ return unscopedEnum(resolveRef(node)->style().justifySelf());
94
+ }
95
+
77
96
  void YGNodeStyleSetAlignContent(
78
97
  const YGNodeRef node,
79
98
  const YGAlign alignContent) {
@@ -503,3 +522,253 @@ void YGNodeStyleSetMaxHeightStretch(const YGNodeRef node) {
503
522
  YGValue YGNodeStyleGetMaxHeight(const YGNodeConstRef node) {
504
523
  return (YGValue)resolveRef(node)->style().maxDimension(Dimension::Height);
505
524
  }
525
+
526
+ // Grid Item Placement Properties
527
+
528
+ void YGNodeStyleSetGridColumnStart(YGNodeRef node, int32_t gridColumnStart) {
529
+ updateStyle<&Style::gridColumnStart, &Style::setGridColumnStart>(
530
+ node, GridLine::fromInteger(gridColumnStart));
531
+ }
532
+
533
+ void YGNodeStyleSetGridColumnStartAuto(YGNodeRef node) {
534
+ updateStyle<&Style::gridColumnStart, &Style::setGridColumnStart>(
535
+ node, GridLine::auto_());
536
+ }
537
+
538
+ void YGNodeStyleSetGridColumnStartSpan(YGNodeRef node, int32_t span) {
539
+ updateStyle<&Style::gridColumnStart, &Style::setGridColumnStart>(
540
+ node, GridLine::span(span));
541
+ }
542
+
543
+ int32_t YGNodeStyleGetGridColumnStart(YGNodeConstRef node) {
544
+ const auto& gridLine = resolveRef(node)->style().gridColumnStart();
545
+ return gridLine.isInteger() ? gridLine.integer : 0;
546
+ }
547
+
548
+ void YGNodeStyleSetGridColumnEnd(YGNodeRef node, int32_t gridColumnEnd) {
549
+ updateStyle<&Style::gridColumnEnd, &Style::setGridColumnEnd>(
550
+ node, GridLine::fromInteger(gridColumnEnd));
551
+ }
552
+
553
+ void YGNodeStyleSetGridColumnEndAuto(YGNodeRef node) {
554
+ updateStyle<&Style::gridColumnEnd, &Style::setGridColumnEnd>(
555
+ node, GridLine::auto_());
556
+ }
557
+
558
+ void YGNodeStyleSetGridColumnEndSpan(YGNodeRef node, int32_t span) {
559
+ updateStyle<&Style::gridColumnEnd, &Style::setGridColumnEnd>(
560
+ node, GridLine::span(span));
561
+ }
562
+
563
+ int32_t YGNodeStyleGetGridColumnEnd(YGNodeConstRef node) {
564
+ const auto& gridLine = resolveRef(node)->style().gridColumnEnd();
565
+ return gridLine.isInteger() ? gridLine.integer : 0;
566
+ }
567
+
568
+ void YGNodeStyleSetGridRowStart(YGNodeRef node, int32_t gridRowStart) {
569
+ updateStyle<&Style::gridRowStart, &Style::setGridRowStart>(
570
+ node, GridLine::fromInteger(gridRowStart));
571
+ }
572
+
573
+ void YGNodeStyleSetGridRowStartAuto(YGNodeRef node) {
574
+ updateStyle<&Style::gridRowStart, &Style::setGridRowStart>(
575
+ node, GridLine::auto_());
576
+ }
577
+
578
+ void YGNodeStyleSetGridRowStartSpan(YGNodeRef node, int32_t span) {
579
+ updateStyle<&Style::gridRowStart, &Style::setGridRowStart>(
580
+ node, GridLine::span(span));
581
+ }
582
+
583
+ int32_t YGNodeStyleGetGridRowStart(YGNodeConstRef node) {
584
+ const auto& gridLine = resolveRef(node)->style().gridRowStart();
585
+ return gridLine.isInteger() ? gridLine.integer : 0;
586
+ }
587
+
588
+ void YGNodeStyleSetGridRowEnd(YGNodeRef node, int32_t gridRowEnd) {
589
+ updateStyle<&Style::gridRowEnd, &Style::setGridRowEnd>(
590
+ node, GridLine::fromInteger(gridRowEnd));
591
+ }
592
+
593
+ void YGNodeStyleSetGridRowEndAuto(YGNodeRef node) {
594
+ updateStyle<&Style::gridRowEnd, &Style::setGridRowEnd>(
595
+ node, GridLine::auto_());
596
+ }
597
+
598
+ void YGNodeStyleSetGridRowEndSpan(YGNodeRef node, int32_t span) {
599
+ updateStyle<&Style::gridRowEnd, &Style::setGridRowEnd>(
600
+ node, GridLine::span(span));
601
+ }
602
+
603
+ int32_t YGNodeStyleGetGridRowEnd(YGNodeConstRef node) {
604
+ const auto& gridLine = resolveRef(node)->style().gridRowEnd();
605
+ return gridLine.isInteger() ? gridLine.integer : 0;
606
+ }
607
+
608
+ // Grid Container Properties
609
+
610
+ namespace {
611
+
612
+ GridTrackSize gridTrackSizeFromTypeAndValue(YGGridTrackType type, float value) {
613
+ switch (type) {
614
+ case YGGridTrackTypePoints:
615
+ return GridTrackSize::length(value);
616
+ case YGGridTrackTypePercent:
617
+ return GridTrackSize::percent(value);
618
+ case YGGridTrackTypeFr:
619
+ return GridTrackSize::fr(value);
620
+ case YGGridTrackTypeAuto:
621
+ return GridTrackSize::auto_();
622
+ case YGGridTrackTypeMinmax:
623
+ return GridTrackSize::auto_();
624
+ }
625
+ fatalWithMessage("Unknown YGGridTrackType");
626
+ }
627
+
628
+ StyleSizeLength styleSizeLengthFromTypeAndValue(
629
+ YGGridTrackType type,
630
+ float value) {
631
+ switch (type) {
632
+ case YGGridTrackTypePoints:
633
+ return StyleSizeLength::points(value);
634
+ case YGGridTrackTypePercent:
635
+ return StyleSizeLength::percent(value);
636
+ case YGGridTrackTypeFr:
637
+ return StyleSizeLength::stretch(value);
638
+ case YGGridTrackTypeAuto:
639
+ return StyleSizeLength::ofAuto();
640
+ case YGGridTrackTypeMinmax:
641
+ return StyleSizeLength::ofAuto();
642
+ }
643
+ fatalWithMessage("Unknown YGGridTrackType");
644
+ }
645
+
646
+ } // namespace
647
+
648
+ // GridTemplateColumns
649
+
650
+ void YGNodeStyleSetGridTemplateColumnsCount(YGNodeRef node, size_t count) {
651
+ resolveRef(node)->style().resizeGridTemplateColumns(count);
652
+ resolveRef(node)->markDirtyAndPropagate();
653
+ }
654
+
655
+ void YGNodeStyleSetGridTemplateColumn(
656
+ YGNodeRef node,
657
+ size_t index,
658
+ YGGridTrackType type,
659
+ float value) {
660
+ resolveRef(node)->style().setGridTemplateColumnAt(
661
+ index, gridTrackSizeFromTypeAndValue(type, value));
662
+ resolveRef(node)->markDirtyAndPropagate();
663
+ }
664
+
665
+ void YGNodeStyleSetGridTemplateColumnMinMax(
666
+ YGNodeRef node,
667
+ size_t index,
668
+ YGGridTrackType minType,
669
+ float minValue,
670
+ YGGridTrackType maxType,
671
+ float maxValue) {
672
+ resolveRef(node)->style().setGridTemplateColumnAt(
673
+ index,
674
+ GridTrackSize::minmax(
675
+ styleSizeLengthFromTypeAndValue(minType, minValue),
676
+ styleSizeLengthFromTypeAndValue(maxType, maxValue)));
677
+ resolveRef(node)->markDirtyAndPropagate();
678
+ }
679
+
680
+ // GridTemplateRows
681
+
682
+ void YGNodeStyleSetGridTemplateRowsCount(YGNodeRef node, size_t count) {
683
+ resolveRef(node)->style().resizeGridTemplateRows(count);
684
+ resolveRef(node)->markDirtyAndPropagate();
685
+ }
686
+
687
+ void YGNodeStyleSetGridTemplateRow(
688
+ YGNodeRef node,
689
+ size_t index,
690
+ YGGridTrackType type,
691
+ float value) {
692
+ resolveRef(node)->style().setGridTemplateRowAt(
693
+ index, gridTrackSizeFromTypeAndValue(type, value));
694
+ resolveRef(node)->markDirtyAndPropagate();
695
+ }
696
+
697
+ void YGNodeStyleSetGridTemplateRowMinMax(
698
+ YGNodeRef node,
699
+ size_t index,
700
+ YGGridTrackType minType,
701
+ float minValue,
702
+ YGGridTrackType maxType,
703
+ float maxValue) {
704
+ resolveRef(node)->style().setGridTemplateRowAt(
705
+ index,
706
+ GridTrackSize::minmax(
707
+ styleSizeLengthFromTypeAndValue(minType, minValue),
708
+ styleSizeLengthFromTypeAndValue(maxType, maxValue)));
709
+ resolveRef(node)->markDirtyAndPropagate();
710
+ }
711
+
712
+ // GridAutoColumns
713
+
714
+ void YGNodeStyleSetGridAutoColumnsCount(YGNodeRef node, size_t count) {
715
+ resolveRef(node)->style().resizeGridAutoColumns(count);
716
+ resolveRef(node)->markDirtyAndPropagate();
717
+ }
718
+
719
+ void YGNodeStyleSetGridAutoColumn(
720
+ YGNodeRef node,
721
+ size_t index,
722
+ YGGridTrackType type,
723
+ float value) {
724
+ resolveRef(node)->style().setGridAutoColumnAt(
725
+ index, gridTrackSizeFromTypeAndValue(type, value));
726
+ resolveRef(node)->markDirtyAndPropagate();
727
+ }
728
+
729
+ void YGNodeStyleSetGridAutoColumnMinMax(
730
+ YGNodeRef node,
731
+ size_t index,
732
+ YGGridTrackType minType,
733
+ float minValue,
734
+ YGGridTrackType maxType,
735
+ float maxValue) {
736
+ resolveRef(node)->style().setGridAutoColumnAt(
737
+ index,
738
+ GridTrackSize::minmax(
739
+ styleSizeLengthFromTypeAndValue(minType, minValue),
740
+ styleSizeLengthFromTypeAndValue(maxType, maxValue)));
741
+ resolveRef(node)->markDirtyAndPropagate();
742
+ }
743
+
744
+ // GridAutoRows
745
+
746
+ void YGNodeStyleSetGridAutoRowsCount(YGNodeRef node, size_t count) {
747
+ resolveRef(node)->style().resizeGridAutoRows(count);
748
+ resolveRef(node)->markDirtyAndPropagate();
749
+ }
750
+
751
+ void YGNodeStyleSetGridAutoRow(
752
+ YGNodeRef node,
753
+ size_t index,
754
+ YGGridTrackType type,
755
+ float value) {
756
+ resolveRef(node)->style().setGridAutoRowAt(
757
+ index, gridTrackSizeFromTypeAndValue(type, value));
758
+ resolveRef(node)->markDirtyAndPropagate();
759
+ }
760
+
761
+ void YGNodeStyleSetGridAutoRowMinMax(
762
+ YGNodeRef node,
763
+ size_t index,
764
+ YGGridTrackType minType,
765
+ float minValue,
766
+ YGGridTrackType maxType,
767
+ float maxValue) {
768
+ resolveRef(node)->style().setGridAutoRowAt(
769
+ index,
770
+ GridTrackSize::minmax(
771
+ styleSizeLengthFromTypeAndValue(minType, minValue),
772
+ styleSizeLengthFromTypeAndValue(maxType, maxValue)));
773
+ resolveRef(node)->markDirtyAndPropagate();
774
+ }
@@ -8,7 +8,7 @@
8
8
  #pragma once
9
9
 
10
10
  #include <stddef.h>
11
-
11
+ #include <yoga/YGEnums.h>
12
12
  #include <yoga/YGNode.h>
13
13
  #include <yoga/YGValue.h>
14
14
 
@@ -29,6 +29,14 @@ YG_EXPORT void YGNodeStyleSetJustifyContent(
29
29
  YGJustify justifyContent);
30
30
  YG_EXPORT YGJustify YGNodeStyleGetJustifyContent(YGNodeConstRef node);
31
31
 
32
+ YG_EXPORT void YGNodeStyleSetJustifyItems(
33
+ YGNodeRef node,
34
+ YGJustify justifyItems);
35
+ YG_EXPORT YGJustify YGNodeStyleGetJustifyItems(YGNodeConstRef node);
36
+
37
+ YG_EXPORT void YGNodeStyleSetJustifySelf(YGNodeRef node, YGJustify justifySelf);
38
+ YG_EXPORT YGJustify YGNodeStyleGetJustifySelf(YGNodeConstRef node);
39
+
32
40
  YG_EXPORT void YGNodeStyleSetAlignContent(YGNodeRef node, YGAlign alignContent);
33
41
  YG_EXPORT YGAlign YGNodeStyleGetAlignContent(YGNodeConstRef node);
34
42
 
@@ -148,4 +156,88 @@ YG_EXPORT YGValue YGNodeStyleGetMaxHeight(YGNodeConstRef node);
148
156
  YG_EXPORT void YGNodeStyleSetAspectRatio(YGNodeRef node, float aspectRatio);
149
157
  YG_EXPORT float YGNodeStyleGetAspectRatio(YGNodeConstRef node);
150
158
 
159
+ // Grid Item Properties
160
+ YG_EXPORT void YGNodeStyleSetGridColumnStart(
161
+ YGNodeRef node,
162
+ int gridColumnStart);
163
+ YG_EXPORT void YGNodeStyleSetGridColumnStartAuto(YGNodeRef node);
164
+ YG_EXPORT void YGNodeStyleSetGridColumnStartSpan(YGNodeRef node, int span);
165
+ YG_EXPORT int YGNodeStyleGetGridColumnStart(YGNodeConstRef node);
166
+
167
+ YG_EXPORT void YGNodeStyleSetGridColumnEnd(YGNodeRef node, int gridColumnEnd);
168
+ YG_EXPORT void YGNodeStyleSetGridColumnEndAuto(YGNodeRef node);
169
+ YG_EXPORT void YGNodeStyleSetGridColumnEndSpan(YGNodeRef node, int span);
170
+ YG_EXPORT int YGNodeStyleGetGridColumnEnd(YGNodeConstRef node);
171
+
172
+ YG_EXPORT void YGNodeStyleSetGridRowStart(YGNodeRef node, int gridRowStart);
173
+ YG_EXPORT void YGNodeStyleSetGridRowStartAuto(YGNodeRef node);
174
+ YG_EXPORT void YGNodeStyleSetGridRowStartSpan(YGNodeRef node, int span);
175
+ YG_EXPORT int YGNodeStyleGetGridRowStart(YGNodeConstRef node);
176
+
177
+ YG_EXPORT void YGNodeStyleSetGridRowEnd(YGNodeRef node, int gridRowEnd);
178
+ YG_EXPORT void YGNodeStyleSetGridRowEndAuto(YGNodeRef node);
179
+ YG_EXPORT void YGNodeStyleSetGridRowEndSpan(YGNodeRef node, int span);
180
+ YG_EXPORT int YGNodeStyleGetGridRowEnd(YGNodeConstRef node);
181
+
182
+ // Grid Container Properties
183
+ YG_EXPORT void YGNodeStyleSetGridTemplateColumnsCount(
184
+ YGNodeRef node,
185
+ size_t count);
186
+ YG_EXPORT void YGNodeStyleSetGridTemplateColumn(
187
+ YGNodeRef node,
188
+ size_t index,
189
+ YGGridTrackType type,
190
+ float value);
191
+ YG_EXPORT void YGNodeStyleSetGridTemplateColumnMinMax(
192
+ YGNodeRef node,
193
+ size_t index,
194
+ YGGridTrackType minType,
195
+ float minValue,
196
+ YGGridTrackType maxType,
197
+ float maxValue);
198
+
199
+ YG_EXPORT void YGNodeStyleSetGridTemplateRowsCount(
200
+ YGNodeRef node,
201
+ size_t count);
202
+ YG_EXPORT void YGNodeStyleSetGridTemplateRow(
203
+ YGNodeRef node,
204
+ size_t index,
205
+ YGGridTrackType type,
206
+ float value);
207
+ YG_EXPORT void YGNodeStyleSetGridTemplateRowMinMax(
208
+ YGNodeRef node,
209
+ size_t index,
210
+ YGGridTrackType minType,
211
+ float minValue,
212
+ YGGridTrackType maxType,
213
+ float maxValue);
214
+
215
+ YG_EXPORT void YGNodeStyleSetGridAutoColumnsCount(YGNodeRef node, size_t count);
216
+ YG_EXPORT void YGNodeStyleSetGridAutoColumn(
217
+ YGNodeRef node,
218
+ size_t index,
219
+ YGGridTrackType type,
220
+ float value);
221
+ YG_EXPORT void YGNodeStyleSetGridAutoColumnMinMax(
222
+ YGNodeRef node,
223
+ size_t index,
224
+ YGGridTrackType minType,
225
+ float minValue,
226
+ YGGridTrackType maxType,
227
+ float maxValue);
228
+
229
+ YG_EXPORT void YGNodeStyleSetGridAutoRowsCount(YGNodeRef node, size_t count);
230
+ YG_EXPORT void YGNodeStyleSetGridAutoRow(
231
+ YGNodeRef node,
232
+ size_t index,
233
+ YGGridTrackType type,
234
+ float value);
235
+ YG_EXPORT void YGNodeStyleSetGridAutoRowMinMax(
236
+ YGNodeRef node,
237
+ size_t index,
238
+ YGGridTrackType minType,
239
+ float minValue,
240
+ YGGridTrackType maxType,
241
+ float maxValue);
242
+
151
243
  YG_EXTERN_C_END