react-native-tvos 0.71.13-1 → 0.72.4-0rc1

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 (1289) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +1 -1
  2. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  3. package/Libraries/Alert/Alert.d.ts +4 -4
  4. package/Libraries/Animated/Animated.d.ts +17 -6
  5. package/Libraries/Animated/NativeAnimatedHelper.js +18 -6
  6. package/Libraries/Animated/bezier.js +1 -1
  7. package/Libraries/Animated/components/AnimatedFlatList.js +8 -3
  8. package/Libraries/Animated/components/AnimatedScrollView.js +4 -1
  9. package/Libraries/Animated/components/AnimatedSectionList.js +12 -3
  10. package/Libraries/Animated/createAnimatedComponent.js +26 -239
  11. package/Libraries/Animated/nodes/AnimatedColor.js +47 -80
  12. package/Libraries/Animated/nodes/AnimatedInterpolation.js +167 -121
  13. package/Libraries/Animated/nodes/AnimatedNode.js +3 -5
  14. package/Libraries/Animated/nodes/AnimatedProps.js +7 -6
  15. package/Libraries/Animated/nodes/AnimatedStyle.js +42 -8
  16. package/Libraries/Animated/nodes/AnimatedTransform.js +1 -1
  17. package/Libraries/Animated/nodes/AnimatedValue.js +8 -12
  18. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  19. package/Libraries/Animated/useAnimatedProps.js +7 -10
  20. package/Libraries/AppDelegate/RCTAppDelegate.h +6 -8
  21. package/Libraries/AppDelegate/RCTAppDelegate.mm +77 -33
  22. package/{React/AppSetup → Libraries/AppDelegate}/RCTAppSetupUtils.h +14 -2
  23. package/{React/AppSetup → Libraries/AppDelegate}/RCTAppSetupUtils.mm +38 -7
  24. package/{React/Base/RCTWeakProxy.h → Libraries/AppDelegate/RCTLegacyInteropComponents.h} +5 -3
  25. package/{React/Views/RCTSliderManager.h → Libraries/AppDelegate/RCTLegacyInteropComponents.mm} +7 -2
  26. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +43 -5
  27. package/Libraries/BatchedBridge/MessageQueue.js +2 -1
  28. package/Libraries/BatchedBridge/NativeModules.d.ts +1 -1
  29. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  30. package/Libraries/Blob/Blob.js +4 -0
  31. package/Libraries/Blob/FileReader.js +30 -2
  32. package/Libraries/Blob/React-RCTBlob.podspec +15 -2
  33. package/Libraries/Blob/URL.js +3 -1
  34. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +2 -2
  35. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +2 -3
  36. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +6 -4
  37. package/Libraries/Components/Button.js +3 -2
  38. package/Libraries/Components/Clipboard/Clipboard.js +1 -1
  39. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -0
  40. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -0
  41. package/Libraries/Components/Pressable/Pressable.d.ts +1 -1
  42. package/Libraries/Components/Pressable/Pressable.js +1 -1
  43. package/Libraries/Components/RefreshControl/RefreshControl.js +1 -0
  44. package/Libraries/Components/SafeAreaView/SafeAreaView.js +1 -2
  45. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +12 -6
  46. package/Libraries/Components/ScrollView/ScrollView.d.ts +9 -2
  47. package/Libraries/Components/ScrollView/ScrollView.js +157 -91
  48. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +18 -6
  49. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -0
  50. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +5 -7
  51. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +3 -1
  52. package/Libraries/Components/StatusBar/StatusBar.js +3 -0
  53. package/Libraries/Components/Switch/Switch.js +3 -1
  54. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +21 -12
  55. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +1 -1
  56. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +11 -5
  57. package/Libraries/Components/TextInput/TextInput.d.ts +30 -5
  58. package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
  59. package/Libraries/Components/TextInput/TextInput.js +99 -107
  60. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  61. package/Libraries/Components/Touchable/Touchable.flow.js +30 -4
  62. package/Libraries/Components/Touchable/Touchable.js +6 -3
  63. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  64. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -2
  65. package/Libraries/Components/Touchable/TouchableOpacity.js +3 -0
  66. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +1 -1
  67. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -2
  68. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +179 -0
  69. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +43 -0
  70. package/Libraries/Components/View/ReactNativeStyleAttributes.js +19 -0
  71. package/Libraries/Components/View/View.js +1 -0
  72. package/Libraries/Components/View/ViewAccessibility.d.ts +6 -6
  73. package/Libraries/Components/View/ViewAccessibility.js +10 -1
  74. package/Libraries/Components/View/ViewNativeComponent.js +32 -8
  75. package/Libraries/Components/View/ViewPropTypes.d.ts +1 -1
  76. package/Libraries/Components/View/ViewPropTypes.js +1 -1
  77. package/Libraries/Core/Devtools/openFileInEditor.js +1 -0
  78. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -0
  79. package/Libraries/Core/Devtools/parseErrorStack.js +2 -2
  80. package/Libraries/Core/Devtools/parseHermesStack.js +54 -34
  81. package/Libraries/Core/ExceptionsManager.js +2 -2
  82. package/Libraries/Core/InitializeCore.js +2 -1
  83. package/Libraries/Core/ReactNativeVersion.js +3 -3
  84. package/Libraries/Core/ReactNativeVersionCheck.js +4 -8
  85. package/Libraries/Core/Timers/JSTimers.js +1 -1
  86. package/Libraries/Core/Timers/immediateShim.js +1 -0
  87. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  88. package/Libraries/Core/setUpAlert.js +1 -1
  89. package/Libraries/Core/setUpDOM.js +18 -0
  90. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  91. package/Libraries/Core/setUpGlobals.js +5 -2
  92. package/Libraries/Core/setUpNavigator.js +6 -5
  93. package/Libraries/Core/setUpPerformance.js +23 -13
  94. package/Libraries/Core/setUpReactDevTools.js +2 -0
  95. package/Libraries/Core/setUpSegmentFetcher.js +0 -41
  96. package/Libraries/Core/setUpTimers.js +2 -2
  97. package/Libraries/DOM/Geometry/DOMRect.js +82 -0
  98. package/Libraries/DOM/Geometry/DOMRectReadOnly.js +188 -0
  99. package/Libraries/DOM/Nodes/ReactNativeElement.js +75 -0
  100. package/Libraries/DOM/Nodes/ReadOnlyElement.js +89 -0
  101. package/Libraries/DOM/Nodes/ReadOnlyNode.js +167 -0
  102. package/Libraries/DOM/OldStyleCollections/ArrayLikeUtils.js +46 -0
  103. package/Libraries/DOM/OldStyleCollections/DOMRectList.js +76 -0
  104. package/Libraries/DOM/OldStyleCollections/DOMRectList.js.flow +27 -0
  105. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js +82 -0
  106. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js.flow +27 -0
  107. package/Libraries/DOM/OldStyleCollections/NodeList.js +104 -0
  108. package/Libraries/DOM/OldStyleCollections/NodeList.js.flow +31 -0
  109. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +35 -0
  110. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +20 -0
  111. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +49 -0
  112. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +24 -0
  113. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +1 -2
  114. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +1 -2
  115. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -1
  116. package/Libraries/Events/EventPolyfill.js +1 -1
  117. package/Libraries/FBLazyVector/BUCK +2 -2
  118. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  119. package/Libraries/Image/AssetRegistry.js +1 -1
  120. package/Libraries/Image/AssetSourceResolver.js +3 -3
  121. package/Libraries/Image/Image.android.js +3 -0
  122. package/Libraries/Image/Image.d.ts +63 -2
  123. package/Libraries/Image/Image.ios.js +3 -0
  124. package/Libraries/Image/ImageBackground.js +1 -0
  125. package/Libraries/Image/ImageProps.js +1 -1
  126. package/Libraries/Image/ImageViewNativeComponent.js +4 -4
  127. package/Libraries/Image/ImageViewNativeComponent.js.flow +1 -4
  128. package/Libraries/Image/RCTImageCache.h +1 -1
  129. package/Libraries/Image/RCTImageCache.m +4 -4
  130. package/Libraries/Image/RCTImageView.mm +1 -1
  131. package/Libraries/Image/React-RCTImage.podspec +15 -2
  132. package/Libraries/Image/RelativeImageStub.js +1 -1
  133. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  134. package/Libraries/Image/resolveAssetSource.js +1 -1
  135. package/Libraries/Inspector/DevtoolsOverlay.js +26 -19
  136. package/Libraries/Inspector/ElementBox.js +4 -1
  137. package/Libraries/Inspector/Inspector.js +5 -6
  138. package/Libraries/Inspector/InspectorOverlay.js +3 -3
  139. package/Libraries/Inspector/NetworkOverlay.js +1 -1
  140. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
  141. package/Libraries/Interaction/PanResponder.js +5 -6
  142. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -1
  143. package/Libraries/Linking/Linking.js +1 -4
  144. package/Libraries/LinkingIOS/React-RCTLinking.podspec +18 -2
  145. package/Libraries/Lists/FillRateHelper.js +4 -238
  146. package/Libraries/Lists/FlatList.d.ts +15 -22
  147. package/Libraries/Lists/FlatList.js +9 -6
  148. package/Libraries/Lists/FlatList.js.flow +4 -3
  149. package/Libraries/Lists/SectionList.d.ts +10 -6
  150. package/Libraries/Lists/SectionList.js +5 -3
  151. package/Libraries/Lists/SectionListModern.js +3 -3
  152. package/Libraries/Lists/ViewabilityHelper.js +8 -344
  153. package/Libraries/Lists/VirtualizeUtils.js +4 -244
  154. package/Libraries/Lists/VirtualizedList.js +339 -129
  155. package/Libraries/Lists/VirtualizedListContext.js +6 -104
  156. package/Libraries/Lists/VirtualizedSectionList.js +9 -602
  157. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -0
  158. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  159. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  160. package/Libraries/LogBox/Data/parseLogBoxLog.js +21 -51
  161. package/Libraries/LogBox/LogBox.js +1 -1
  162. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -3
  163. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  164. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -2
  165. package/Libraries/LogBox/UI/LogBoxMessage.js +87 -5
  166. package/Libraries/LogBox/UI/LogBoxNotification.js +5 -7
  167. package/Libraries/Modal/Modal.js +2 -2
  168. package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +3 -2
  169. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.h +14 -0
  170. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.m +108 -102
  171. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +1 -1
  172. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +6 -1
  173. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.h +1 -1
  174. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m +5 -0
  175. package/Libraries/NativeAnimation/RCTAnimationUtils.h +16 -11
  176. package/Libraries/NativeAnimation/RCTAnimationUtils.m +24 -6
  177. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +15 -2
  178. package/Libraries/NativeComponent/BaseViewConfig.android.js +24 -12
  179. package/Libraries/NativeComponent/BaseViewConfig.ios.js +35 -19
  180. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +4 -1
  181. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  182. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -4
  183. package/Libraries/Network/RCTNetworking.android.js +2 -2
  184. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  185. package/Libraries/Network/RCTNetworking.mm +3 -2
  186. package/Libraries/Network/React-RCTNetwork.podspec +19 -2
  187. package/Libraries/Network/XMLHttpRequest.js +1 -1
  188. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +0 -2
  189. package/Libraries/Pressability/Pressability.js +10 -4
  190. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +15 -2
  191. package/Libraries/RCTRequired/BUCK +3 -2
  192. package/Libraries/RCTRequired/RCTRequired.podspec +1 -1
  193. package/Libraries/ReactNative/AppContainer.js +8 -1
  194. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  195. package/Libraries/ReactNative/AppRegistry.js +10 -13
  196. package/Libraries/ReactNative/FabricUIManager.js +24 -8
  197. package/Libraries/ReactNative/NativeUIManager.js +5 -5
  198. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +10 -10
  199. package/Libraries/ReactNative/UIManager.js +168 -1
  200. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +5 -5
  201. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  202. package/Libraries/ReactNative/requireNativeComponent.d.ts +1 -1
  203. package/Libraries/ReactNative/requireNativeComponent.js +1 -1
  204. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -0
  205. package/Libraries/Renderer/REVISION +1 -1
  206. package/Libraries/Renderer/implementations/ReactFabric-dev.js +26 -3
  207. package/Libraries/Renderer/implementations/ReactFabric-prod.js +13 -1
  208. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +13 -1
  209. package/Libraries/Renderer/public/ReactFabricPublicInstanceUtils.js +38 -0
  210. package/Libraries/Renderer/shims/ReactNativeTypes.js +6 -6
  211. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -7
  212. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  213. package/Libraries/Settings/React-RCTSettings.podspec +18 -2
  214. package/Libraries/Share/Share.js +1 -1
  215. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  216. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  217. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +96 -76
  218. package/Libraries/StyleSheet/StyleSheetTypes.js +114 -33
  219. package/Libraries/StyleSheet/flattenStyle.js +2 -0
  220. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  221. package/Libraries/StyleSheet/processColor.js +1 -1
  222. package/Libraries/Text/React-RCTText.podspec +1 -1
  223. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +3 -3
  224. package/Libraries/Text/Text/RCTTextView.m +4 -4
  225. package/Libraries/Text/Text.d.ts +12 -2
  226. package/Libraries/Text/Text.js +1 -0
  227. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +1 -1
  228. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +12 -6
  229. package/Libraries/Text/TextProps.js +3 -4
  230. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  231. package/Libraries/TypeSafety/RCTConvertHelpers.h +1 -1
  232. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  233. package/Libraries/Types/CodegenTypes.js +1 -0
  234. package/Libraries/UTFSequence.js +3 -1
  235. package/Libraries/Utilities/Appearance.d.ts +10 -0
  236. package/Libraries/Utilities/Appearance.js +13 -0
  237. package/Libraries/Utilities/Dimensions.js +1 -1
  238. package/Libraries/Utilities/GlobalPerformanceLogger.js +12 -1
  239. package/Libraries/Utilities/HMRClient.js +16 -10
  240. package/Libraries/Utilities/{createPerformanceLogger.d.ts → IPerformanceLogger.d.ts} +4 -4
  241. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  242. package/Libraries/Utilities/LoadingView.android.js +28 -11
  243. package/Libraries/Utilities/NativeAppearance.js +1 -0
  244. package/Libraries/Utilities/PixelRatio.js +2 -2
  245. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  246. package/Libraries/Utilities/__mocks__/PixelRatio.js +1 -1
  247. package/Libraries/Utilities/codegenNativeCommands.js +2 -0
  248. package/Libraries/Utilities/createPerformanceLogger.js +55 -43
  249. package/Libraries/Utilities/stringifySafe.js +2 -7
  250. package/Libraries/Utilities/useWindowDimensions.js +3 -3
  251. package/Libraries/Vibration/React-RCTVibration.podspec +17 -2
  252. package/Libraries/WebPerformance/EventCounts.js +78 -0
  253. package/Libraries/WebPerformance/MemoryInfo.js +54 -0
  254. package/Libraries/WebPerformance/NativePerformance.cpp +74 -0
  255. package/Libraries/WebPerformance/NativePerformance.h +76 -0
  256. package/Libraries/WebPerformance/NativePerformance.js +38 -0
  257. package/Libraries/WebPerformance/NativePerformanceObserver.cpp +69 -11
  258. package/Libraries/WebPerformance/NativePerformanceObserver.h +38 -7
  259. package/Libraries/WebPerformance/NativePerformanceObserver.js +22 -7
  260. package/Libraries/WebPerformance/Performance.js +312 -0
  261. package/Libraries/WebPerformance/PerformanceEntry.js +45 -0
  262. package/Libraries/WebPerformance/PerformanceEntryReporter.cpp +408 -0
  263. package/Libraries/WebPerformance/PerformanceEntryReporter.h +219 -0
  264. package/Libraries/WebPerformance/PerformanceEventTiming.js +38 -0
  265. package/Libraries/WebPerformance/PerformanceObserver.js +196 -101
  266. package/Libraries/WebPerformance/RawPerformanceEntry.js +87 -0
  267. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +65 -0
  268. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +65 -0
  269. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +101 -0
  270. package/Libraries/WebSocket/RCTReconnectingWebSocket.m +10 -10
  271. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  272. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  273. package/Libraries/vendor/emitter/EventEmitter.d.ts +2 -2
  274. package/Libraries/vendor/emitter/EventEmitter.js +9 -1
  275. package/README.md +34 -42
  276. package/React/Base/RCTBridge+Private.h +1 -1
  277. package/React/Base/RCTBridge.h +2 -11
  278. package/React/Base/RCTBridge.m +0 -34
  279. package/React/Base/RCTBridgeModuleDecorator.h +1 -1
  280. package/React/Base/RCTBundleURLProvider.h +2 -33
  281. package/React/Base/RCTBundleURLProvider.mm +19 -78
  282. package/React/Base/RCTConvert.h +2 -1
  283. package/React/Base/RCTConvert.m +28 -15
  284. package/React/Base/RCTDefines.h +37 -8
  285. package/React/Base/RCTDisplayLink.m +7 -0
  286. package/React/Base/RCTJSScriptLoaderModule.h +5 -1
  287. package/React/Base/RCTRootContentView.h +1 -1
  288. package/React/Base/RCTRootContentView.m +1 -1
  289. package/React/Base/RCTRootView.m +1 -1
  290. package/React/{Fabric/Mounting/ComponentViews/Slider/RCTSliderComponentView.h → Base/RCTRuntimeExecutorFromBridge.h} +6 -8
  291. package/React/Base/RCTRuntimeExecutorFromBridge.mm +56 -0
  292. package/React/Base/RCTVersion.m +3 -3
  293. package/React/Base/Surface/RCTSurfaceRootShadowViewDelegate.h +1 -1
  294. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +3 -3
  295. package/React/CoreModules/BUCK +3 -6
  296. package/React/CoreModules/RCTAccessibilityManager+Internal.h +1 -1
  297. package/React/CoreModules/RCTAlertManager.mm +0 -14
  298. package/React/CoreModules/RCTAppearance.h +1 -0
  299. package/React/CoreModules/RCTAppearance.mm +12 -0
  300. package/React/CoreModules/RCTDevLoadingView.h +0 -1
  301. package/React/CoreModules/RCTDevMenu.mm +5 -5
  302. package/React/CoreModules/RCTDevSettings.mm +16 -2
  303. package/React/CoreModules/RCTDevSplitBundleLoader.mm +6 -4
  304. package/React/CoreModules/RCTExceptionsManager.mm +13 -6
  305. package/React/CoreModules/RCTFPSGraph.m +8 -3
  306. package/React/CoreModules/RCTPlatform.mm +2 -2
  307. package/React/CoreModules/RCTTiming.h +8 -4
  308. package/React/CoreModules/RCTWebSocketExecutor.mm +10 -10
  309. package/React/CoreModules/RCTWebSocketModule.mm +13 -13
  310. package/React/CoreModules/React-CoreModules.podspec +16 -2
  311. package/React/CxxBridge/RCTCxxBridge.mm +3 -2
  312. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +1 -10
  313. package/React/CxxModule/RCTNativeModule.mm +3 -2
  314. package/React/CxxUtils/RCTFollyConvert.mm +1 -0
  315. package/React/DevSupport/RCTInspectorDevServerHelper.h +1 -1
  316. package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -1
  317. package/React/DevSupport/RCTPackagerConnection.mm +1 -1
  318. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +1 -1
  319. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +15 -1
  320. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +3 -1
  321. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -2
  322. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
  323. package/React/{Views/RCTDatePicker.h → Fabric/Mounting/ComponentViews/ScrollView/RCTCustomPullToRefreshViewProtocol.h} +4 -1
  324. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.h +2 -1
  325. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +2 -2
  326. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +95 -1
  327. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +14 -24
  328. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +9 -5
  329. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +0 -2
  330. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +0 -2
  331. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +0 -6
  332. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +1 -2
  333. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +38 -20
  334. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +4 -3
  335. package/React/Fabric/Mounting/RCTMountingManager.h +2 -1
  336. package/React/Fabric/Mounting/RCTMountingManager.mm +12 -14
  337. package/React/Fabric/RCTConversions.h +0 -1
  338. package/React/Fabric/RCTScheduler.h +1 -1
  339. package/React/Fabric/RCTScheduler.mm +2 -11
  340. package/React/Fabric/RCTSurfacePointerHandler.h +28 -0
  341. package/React/Fabric/RCTSurfacePointerHandler.mm +903 -0
  342. package/React/Fabric/RCTSurfacePresenter.h +1 -1
  343. package/React/Fabric/RCTSurfacePresenter.mm +20 -6
  344. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +0 -3
  345. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -37
  346. package/React/Fabric/RCTSurfaceRegistry.mm +5 -6
  347. package/React/Fabric/RCTSurfaceTouchHandler.mm +27 -624
  348. package/React/Fabric/Utils/RCTIdentifierPool.h +44 -0
  349. package/React/Fabric/Utils/RCTReactTaggedView.h +1 -1
  350. package/React/Inspector/RCTInspector.h +1 -1
  351. package/React/Inspector/RCTInspector.mm +1 -2
  352. package/React/Inspector/RCTInspectorPackagerConnection.h +1 -1
  353. package/React/Inspector/RCTInspectorPackagerConnection.m +11 -11
  354. package/React/Modules/RCTEventEmitter.m +14 -11
  355. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  356. package/React/React-RCTFabric.podspec +44 -4
  357. package/React/Views/RCTComponentData.m +3 -15
  358. package/React/Views/RCTConvert+Transform.m +1 -1
  359. package/React/Views/RCTFont.mm +1 -5
  360. package/React/Views/RCTView.h +11 -0
  361. package/React/Views/RCTView.m +40 -18
  362. package/React/Views/RCTViewManager.m +17 -1
  363. package/React/Views/RefreshControl/RCTRefreshControl.h +1 -1
  364. package/React/Views/RefreshControl/RCTRefreshControl.m +7 -0
  365. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +1 -1
  366. package/React/Views/ScrollView/RCTScrollView.h +1 -0
  367. package/React/Views/ScrollView/RCTScrollView.m +29 -7
  368. package/React/Views/ScrollView/RCTScrollViewManager.m +1 -0
  369. package/React/Views/ScrollView/RCTScrollableProtocol.h +5 -1
  370. package/React-Core.podspec +21 -8
  371. package/React.podspec +1 -1
  372. package/ReactAndroid/build.gradle +86 -13
  373. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +16 -1
  374. package/ReactAndroid/gradle.properties +6 -6
  375. package/ReactAndroid/hermes-engine/build.gradle +22 -6
  376. package/ReactAndroid/libs/BUCK +1 -1
  377. package/ReactAndroid/proguard-rules.pro +7 -0
  378. package/ReactAndroid/publish.gradle +1 -1
  379. package/ReactAndroid/src/main/java/com/facebook/BUCK +1 -3
  380. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +15 -14
  381. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +54 -2
  382. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +7 -35
  383. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +12 -11
  384. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +98 -0
  385. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.java +40 -1
  386. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +22 -7
  387. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +19 -8
  388. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +11 -1
  389. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +9 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +111 -14
  391. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +54 -49
  392. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimationDriver.java +1 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +5 -8
  394. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java +143 -88
  395. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +19 -22
  396. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +7 -16
  397. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java +3 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java +8 -1
  399. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java +1 -2
  400. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +14 -19
  401. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +1 -1
  402. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +11 -0
  403. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DimensionPropConverter.java +33 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.java +110 -0
  405. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +1 -1
  406. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +2 -2
  407. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +59 -2
  408. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +3 -3
  409. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +13 -0
  410. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java +11 -27
  411. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +0 -12
  412. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManagerListener.java +25 -2
  413. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.java +56 -0
  414. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +4 -7
  415. package/ReactAndroid/src/main/java/com/facebook/react/common/JavascriptException.java +2 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +0 -1
  417. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +18 -2
  418. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  419. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +5 -0
  420. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +47 -25
  421. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +30 -7
  422. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +20 -16
  423. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +6 -9
  424. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +18 -2
  425. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{DevLoadingViewController.java → DefaultDevLoadingViewImplementation.java} +10 -33
  426. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +15 -7
  427. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +64 -20
  428. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -1
  429. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +4 -4
  430. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +1 -8
  431. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +1 -6
  432. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerftestDevSupportManager.java +56 -0
  433. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.java +21 -0
  434. package/ReactAndroid/src/main/java/com/facebook/react/fabric/.clang-tidy +1 -0
  435. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +10 -13
  436. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +3 -24
  437. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +22 -3
  438. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +1 -14
  439. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +64 -47
  440. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +2 -5
  441. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/InteropEvent.java +41 -0
  442. package/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/InteropEventEmitter.java +65 -0
  443. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +13 -0
  444. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +0 -4
  445. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +9 -7
  446. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +0 -11
  447. package/ReactAndroid/src/main/java/com/facebook/react/modules/.clang-tidy +1 -0
  448. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +12 -23
  449. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.java +11 -9
  450. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +3 -14
  452. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +5 -8
  453. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java +1 -1
  454. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +1 -8
  455. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.java +1 -7
  456. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -3
  457. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/NativeDevSplitBundleLoaderModule.java +1 -9
  458. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.java +1 -7
  459. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.java +1 -8
  460. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java +3 -12
  461. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.java +1 -8
  462. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.java +1 -8
  463. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java +1 -1
  464. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +1 -8
  465. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +1 -8
  466. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.java +2 -12
  467. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java +1 -8
  468. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +5 -15
  469. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/BUCK +25 -0
  470. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java +67 -0
  471. package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/BUCK +25 -0
  472. package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/DevToolsSettingsManagerModule.java +53 -0
  473. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +2 -8
  474. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +2 -13
  475. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +0 -2
  476. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +6 -9
  477. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.java +29 -11
  478. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +5 -8
  479. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +1 -9
  480. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +1 -9
  481. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +48 -14
  482. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +5 -8
  483. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +66 -63
  484. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.java +16 -2
  485. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.java +26 -25
  486. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.java +1 -7
  487. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.java +1 -7
  488. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +0 -2
  489. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.java +1 -8
  490. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +4 -7
  491. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +1 -6
  492. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.java +2 -1
  493. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +1 -7
  494. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  495. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.java +1 -7
  496. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.java +1 -8
  497. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +2 -14
  498. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +2 -1
  499. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +47 -26
  500. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +8 -10
  501. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +188 -4
  502. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +0 -1
  503. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/.clang-tidy +1 -0
  504. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +57 -63
  505. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +7 -14
  506. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +12 -14
  507. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IViewGroupManager.java +26 -0
  508. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IViewManagerWithChildren.java +1 -1
  509. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +95 -53
  510. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +36 -20
  511. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +10 -1
  512. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +355 -2
  513. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.java +21 -3
  514. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.java +1 -0
  515. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +9 -11
  516. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +3 -3
  517. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +16 -1
  518. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -55
  519. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.java +37 -0
  520. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +5 -11
  521. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +1 -1
  522. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +15 -6
  523. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +16 -0
  524. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +4 -7
  525. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +1 -1
  526. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +3 -0
  527. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +23 -11
  528. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +12 -38
  529. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +4 -4
  530. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/ReactFindViewUtil.java +0 -5
  531. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +5 -8
  532. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +7 -8
  533. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.java +30 -0
  534. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +11 -5
  535. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +10 -15
  536. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java +10 -11
  537. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +4 -3
  538. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +2 -4
  539. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +15 -12
  540. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java +6 -4
  542. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +4 -7
  543. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +200 -0
  544. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +77 -9
  545. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +12 -2
  546. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +77 -13
  547. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +9 -3
  548. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +29 -6
  549. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +5 -7
  550. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +5 -8
  551. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +5 -8
  552. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +0 -1
  553. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomLineHeightSpan.java +4 -0
  554. package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.java +1 -2
  555. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.java +3 -1
  556. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +13 -35
  557. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +7 -6
  558. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +11 -1
  559. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.java +3 -47
  560. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +4 -1
  561. package/ReactAndroid/src/main/java/com/facebook/react/views/text/SetSpanOperation.java +52 -0
  562. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +8 -5
  563. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +5 -3
  564. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +35 -49
  565. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +30 -50
  566. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +1 -0
  567. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +6 -5
  568. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +73 -0
  569. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +23 -15
  570. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +5 -34
  571. package/ReactAndroid/src/main/java/com/facebook/react/views/{slider → traceupdateoverlay}/BUCK +7 -7
  572. package/ReactAndroid/src/main/java/com/facebook/react/views/traceupdateoverlay/TraceUpdateOverlay.java +70 -0
  573. package/ReactAndroid/src/main/java/com/facebook/react/views/traceupdateoverlay/TraceUpdateOverlayManager.java +83 -0
  574. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +5 -8
  575. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +6 -9
  576. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +2 -10
  577. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +17 -5
  578. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +147 -29
  579. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +18 -6
  580. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManagerWrapper.kt +5 -5
  581. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java +0 -8
  582. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.java +0 -11
  583. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +5 -1
  584. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +1 -1
  585. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogger.java +1 -1
  586. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +1 -2
  587. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +1 -8
  588. package/ReactAndroid/src/main/java/com/facebook/yoga/annotations/DoNotStrip.java +18 -0
  589. package/ReactAndroid/src/main/jni/CMakeLists.txt +111 -3
  590. package/ReactAndroid/src/main/jni/CircularDepsValidator.cmake +32 -0
  591. package/ReactAndroid/src/main/jni/first-party/.clang-tidy +1 -0
  592. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +3 -0
  593. package/ReactAndroid/src/main/jni/first-party/yogajni/BUCK +1 -1
  594. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNI.h +0 -1
  595. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +0 -15
  596. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +4 -4
  597. package/ReactAndroid/src/main/jni/react/fabric/BUCK +0 -2
  598. package/ReactAndroid/src/main/jni/react/fabric/Binding.cpp +22 -48
  599. package/ReactAndroid/src/main/jni/react/fabric/Binding.h +5 -10
  600. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -2
  601. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.h +1 -7
  602. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +2 -3
  603. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +3 -2
  604. package/ReactAndroid/src/main/jni/react/fabric/FabricMountItem.h +1 -2
  605. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +32 -66
  606. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +2 -6
  607. package/ReactAndroid/src/main/jni/react/fabric/JBackgroundExecutor.h +1 -3
  608. package/ReactAndroid/src/main/jni/react/fabric/JFabricUIManager.h +2 -3
  609. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
  610. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +3 -7
  611. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +2 -2
  612. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +3 -1
  613. package/ReactAndroid/src/main/jni/react/fabric/viewPropConversions.h +10 -2
  614. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/BUCK +1 -1
  615. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +1 -0
  616. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -5
  617. package/ReactAndroid/src/main/jni/react/jni/.clang-tidy +1 -0
  618. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -4
  619. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +15 -11
  620. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.cpp +2 -0
  621. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.h +4 -8
  622. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +9 -2
  623. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +1 -0
  624. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +2 -2
  625. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +2 -2
  626. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +2 -2
  627. package/ReactAndroid/src/main/jni/react/jni/NativeArray.cpp +1 -3
  628. package/ReactAndroid/src/main/jni/react/jni/NativeArray.h +13 -3
  629. package/ReactAndroid/src/main/jni/react/jni/NativeMap.cpp +2 -2
  630. package/ReactAndroid/src/main/jni/react/jni/NativeMap.h +10 -4
  631. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +6 -0
  632. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.cpp +0 -6
  633. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.h +4 -1
  634. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +11 -7
  635. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.h +2 -2
  636. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +1 -5
  637. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +9 -43
  638. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +2 -9
  639. package/ReactAndroid/src/main/libraries/fbcore/src/main/java/com/facebook/common/logging/BUCK +1 -1
  640. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +15 -15
  641. package/ReactAndroid/src/main/res/devsupport/values-af/strings.xml +0 -1
  642. package/ReactAndroid/src/main/res/devsupport/values-ar/strings.xml +0 -1
  643. package/ReactAndroid/src/main/res/devsupport/values-as/strings.xml +0 -1
  644. package/ReactAndroid/src/main/res/devsupport/values-az/strings.xml +0 -1
  645. package/ReactAndroid/src/main/res/devsupport/values-be/strings.xml +6 -0
  646. package/ReactAndroid/src/main/res/devsupport/values-bg/strings.xml +0 -1
  647. package/ReactAndroid/src/main/res/devsupport/values-bn/strings.xml +0 -1
  648. package/ReactAndroid/src/main/res/devsupport/values-bs/strings.xml +0 -1
  649. package/ReactAndroid/src/main/res/devsupport/values-ca/strings.xml +0 -1
  650. package/ReactAndroid/src/main/res/devsupport/values-cb/strings.xml +0 -1
  651. package/ReactAndroid/src/main/res/devsupport/values-cs/strings.xml +0 -1
  652. package/ReactAndroid/src/main/res/devsupport/values-da/strings.xml +0 -1
  653. package/ReactAndroid/src/main/res/devsupport/values-de/strings.xml +0 -1
  654. package/ReactAndroid/src/main/res/devsupport/values-el/strings.xml +0 -1
  655. package/ReactAndroid/src/main/res/devsupport/values-en-rGB/strings.xml +0 -1
  656. package/ReactAndroid/src/main/res/devsupport/values-es/strings.xml +0 -1
  657. package/ReactAndroid/src/main/res/devsupport/values-es-rES/strings.xml +0 -1
  658. package/ReactAndroid/src/main/res/devsupport/values-et/strings.xml +0 -1
  659. package/ReactAndroid/src/main/res/devsupport/values-fa/strings.xml +0 -1
  660. package/ReactAndroid/src/main/res/devsupport/values-fb/strings.xml +0 -1
  661. package/ReactAndroid/src/main/res/devsupport/values-fb-rLS/strings.xml +0 -1
  662. package/ReactAndroid/src/main/res/devsupport/values-fi/strings.xml +0 -1
  663. package/ReactAndroid/src/main/res/devsupport/values-fr/strings.xml +0 -1
  664. package/ReactAndroid/src/main/res/devsupport/values-fr-rCA/strings.xml +0 -1
  665. package/ReactAndroid/src/main/res/devsupport/values-gu/strings.xml +0 -1
  666. package/ReactAndroid/src/main/res/devsupport/values-ha/strings.xml +6 -0
  667. package/ReactAndroid/src/main/res/devsupport/values-hi/strings.xml +0 -1
  668. package/ReactAndroid/src/main/res/devsupport/values-hr/strings.xml +0 -1
  669. package/ReactAndroid/src/main/res/devsupport/values-hu/strings.xml +0 -1
  670. package/ReactAndroid/src/main/res/devsupport/values-hy/strings.xml +6 -0
  671. package/ReactAndroid/src/main/res/devsupport/values-in/strings.xml +0 -1
  672. package/ReactAndroid/src/main/res/devsupport/values-is/strings.xml +0 -1
  673. package/ReactAndroid/src/main/res/devsupport/values-it/strings.xml +0 -1
  674. package/ReactAndroid/src/main/res/devsupport/values-iw/strings.xml +0 -1
  675. package/ReactAndroid/src/main/res/devsupport/values-ja/strings.xml +0 -1
  676. package/ReactAndroid/src/main/res/devsupport/values-jv/strings.xml +6 -0
  677. package/ReactAndroid/src/main/res/devsupport/values-ka/strings.xml +0 -1
  678. package/ReactAndroid/src/main/res/devsupport/values-kk/strings.xml +6 -0
  679. package/ReactAndroid/src/main/res/devsupport/values-km/strings.xml +0 -1
  680. package/ReactAndroid/src/main/res/devsupport/values-kn/strings.xml +0 -1
  681. package/ReactAndroid/src/main/res/devsupport/values-ko/strings.xml +0 -1
  682. package/ReactAndroid/src/main/res/devsupport/values-ku/strings.xml +6 -0
  683. package/ReactAndroid/src/main/res/devsupport/values-ky/strings.xml +6 -0
  684. package/ReactAndroid/src/main/res/devsupport/values-lo/strings.xml +0 -1
  685. package/ReactAndroid/src/main/res/devsupport/values-lt/strings.xml +0 -1
  686. package/ReactAndroid/src/main/res/devsupport/values-lv/strings.xml +0 -1
  687. package/ReactAndroid/src/main/res/devsupport/values-mk/strings.xml +0 -1
  688. package/ReactAndroid/src/main/res/devsupport/values-ml/strings.xml +0 -1
  689. package/ReactAndroid/src/main/res/devsupport/values-mn/strings.xml +0 -1
  690. package/ReactAndroid/src/main/res/devsupport/values-mr/strings.xml +0 -1
  691. package/ReactAndroid/src/main/res/devsupport/values-ms/strings.xml +0 -1
  692. package/ReactAndroid/src/main/res/devsupport/values-my/strings.xml +0 -1
  693. package/ReactAndroid/src/main/res/devsupport/values-nb/strings.xml +0 -1
  694. package/ReactAndroid/src/main/res/devsupport/values-ne/strings.xml +0 -1
  695. package/ReactAndroid/src/main/res/devsupport/values-nl/strings.xml +0 -1
  696. package/ReactAndroid/src/main/res/devsupport/values-pa/strings.xml +0 -1
  697. package/ReactAndroid/src/main/res/devsupport/values-pl/strings.xml +0 -1
  698. package/ReactAndroid/src/main/res/devsupport/values-ps/strings.xml +6 -0
  699. package/ReactAndroid/src/main/res/devsupport/values-pt/strings.xml +0 -1
  700. package/ReactAndroid/src/main/res/devsupport/values-pt-rPT/strings.xml +0 -1
  701. package/ReactAndroid/src/main/res/devsupport/values-qz/strings.xml +0 -1
  702. package/ReactAndroid/src/main/res/devsupport/values-ro/strings.xml +0 -1
  703. package/ReactAndroid/src/main/res/devsupport/values-ru/strings.xml +0 -1
  704. package/ReactAndroid/src/main/res/devsupport/values-si/strings.xml +0 -1
  705. package/ReactAndroid/src/main/res/devsupport/values-sk/strings.xml +0 -1
  706. package/ReactAndroid/src/main/res/devsupport/values-sl/strings.xml +0 -1
  707. package/ReactAndroid/src/main/res/devsupport/values-sn/strings.xml +0 -1
  708. package/ReactAndroid/src/main/res/devsupport/values-so/strings.xml +6 -0
  709. package/ReactAndroid/src/main/res/devsupport/values-sq/strings.xml +0 -1
  710. package/ReactAndroid/src/main/res/devsupport/values-sr/strings.xml +0 -1
  711. package/ReactAndroid/src/main/res/devsupport/values-sv/strings.xml +0 -1
  712. package/ReactAndroid/src/main/res/devsupport/values-sw/strings.xml +0 -1
  713. package/ReactAndroid/src/main/res/devsupport/values-ta/strings.xml +0 -1
  714. package/ReactAndroid/src/main/res/devsupport/values-te/strings.xml +0 -1
  715. package/ReactAndroid/src/main/res/devsupport/values-tg/strings.xml +6 -0
  716. package/ReactAndroid/src/main/res/devsupport/values-th/strings.xml +0 -1
  717. package/ReactAndroid/src/main/res/devsupport/values-tk/strings.xml +6 -0
  718. package/ReactAndroid/src/main/res/devsupport/values-tl/strings.xml +0 -1
  719. package/ReactAndroid/src/main/res/devsupport/values-tr/strings.xml +0 -1
  720. package/ReactAndroid/src/main/res/devsupport/values-uk/strings.xml +0 -1
  721. package/ReactAndroid/src/main/res/devsupport/values-ur/strings.xml +0 -1
  722. package/ReactAndroid/src/main/res/devsupport/values-uz/strings.xml +6 -0
  723. package/ReactAndroid/src/main/res/devsupport/values-vi/strings.xml +0 -1
  724. package/ReactAndroid/src/main/res/devsupport/values-wo/strings.xml +0 -1
  725. package/ReactAndroid/src/main/res/devsupport/values-zh-rCN/strings.xml +0 -1
  726. package/ReactAndroid/src/main/res/devsupport/values-zh-rHK/strings.xml +0 -1
  727. package/ReactAndroid/src/main/res/devsupport/values-zh-rTW/strings.xml +0 -1
  728. package/ReactAndroid/src/main/res/devsupport/values-zu/strings.xml +0 -1
  729. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +4 -1
  730. package/ReactCommon/React-Fabric.podspec +55 -71
  731. package/ReactCommon/React-rncore.podspec +25 -4
  732. package/ReactCommon/ReactCommon.podspec +5 -18
  733. package/ReactCommon/butter/BUCK +1 -9
  734. package/ReactCommon/butter/function.h +51 -0
  735. package/ReactCommon/butter/map.h +3 -3
  736. package/ReactCommon/callinvoker/.clang-tidy +1 -0
  737. package/ReactCommon/callinvoker/BUCK +0 -1
  738. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  739. package/ReactCommon/callinvoker/ReactCommon/CallInvoker.h +11 -2
  740. package/ReactCommon/{butter/mutex.h → callinvoker/ReactCommon/SchedulerPriority.h} +10 -6
  741. package/ReactCommon/cxxreact/.clang-tidy +1 -0
  742. package/ReactCommon/cxxreact/BUCK +3 -1
  743. package/ReactCommon/cxxreact/CMakeLists.txt +3 -1
  744. package/ReactCommon/cxxreact/Instance.cpp +25 -19
  745. package/ReactCommon/cxxreact/Instance.h +2 -2
  746. package/ReactCommon/cxxreact/JSBigString.h +5 -5
  747. package/ReactCommon/cxxreact/JSExecutor.cpp +12 -0
  748. package/ReactCommon/cxxreact/JSExecutor.h +2 -0
  749. package/ReactCommon/cxxreact/MethodCall.cpp +3 -3
  750. package/ReactCommon/cxxreact/ModuleRegistry.cpp +5 -6
  751. package/ReactCommon/cxxreact/ModuleRegistry.h +3 -3
  752. package/ReactCommon/cxxreact/NativeModule.h +2 -2
  753. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -2
  754. package/ReactCommon/cxxreact/ReactMarker.cpp +55 -2
  755. package/ReactCommon/cxxreact/ReactMarker.h +36 -2
  756. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  757. package/ReactCommon/hermes/.clang-tidy +1 -0
  758. package/ReactCommon/hermes/React-hermes.podspec +3 -2
  759. package/ReactCommon/hermes/executor/CMakeLists.txt +8 -1
  760. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +6 -20
  761. package/ReactCommon/hermes/inspector/BUCK +12 -6
  762. package/ReactCommon/hermes/inspector/CMakeLists.txt +9 -1
  763. package/ReactCommon/hermes/inspector/DEFS.bzl +2 -2
  764. package/ReactCommon/hermes/inspector/Inspector.cpp +2 -2
  765. package/ReactCommon/hermes/inspector/Inspector.h +7 -7
  766. package/ReactCommon/hermes/inspector/InspectorState.h +5 -5
  767. package/ReactCommon/hermes/inspector/README.md +7 -7
  768. package/ReactCommon/hermes/inspector/RuntimeAdapter.h +1 -1
  769. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +12 -12
  770. package/ReactCommon/hermes/inspector/chrome/MessageConverters.h +3 -3
  771. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +96 -97
  772. package/ReactCommon/hermes/inspector/chrome/MessageTypesInlines.h +4 -3
  773. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +39 -38
  774. package/ReactCommon/hermes/inspector/chrome/tests/MessageTests.cpp +67 -64
  775. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.cpp +3 -3
  776. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.h +3 -3
  777. package/ReactCommon/hermes/inspector/detail/SerialExecutor.h +1 -1
  778. package/ReactCommon/hermes/inspector/tools/format +1 -1
  779. package/ReactCommon/hermes/inspector/tools/sandcastle/build_and_test.sh +4 -4
  780. package/ReactCommon/jsc/CMakeLists.txt +4 -0
  781. package/ReactCommon/jsc/JSCRuntime.cpp +11 -9
  782. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  783. package/ReactCommon/jsengineinstance/.clang-tidy +1 -0
  784. package/ReactCommon/jserrorhandler/BUCK +1 -1
  785. package/ReactCommon/jsi/.clang-tidy +1 -0
  786. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  787. package/ReactCommon/jsi/jsi/decorator.h +16 -10
  788. package/ReactCommon/jsi/jsi/jsi-inl.h +7 -5
  789. package/ReactCommon/jsi/jsi/jsi.cpp +51 -61
  790. package/ReactCommon/jsi/jsi/jsi.h +25 -19
  791. package/ReactCommon/jsiexecutor/.clang-tidy +1 -0
  792. package/ReactCommon/jsiexecutor/CMakeLists.txt +5 -1
  793. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -2
  794. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +16 -16
  795. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +7 -7
  796. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +7 -7
  797. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.h +3 -3
  798. package/ReactCommon/jsinspector/.clang-tidy +1 -0
  799. package/ReactCommon/jsinspector/CMakeLists.txt +3 -1
  800. package/ReactCommon/jsinspector/React-jsinspector.podspec +2 -1
  801. package/ReactCommon/libraries/fbcore/src/test/java/com/facebook/powermock/BUCK +3 -3
  802. package/ReactCommon/logger/React-logger.podspec +1 -1
  803. package/ReactCommon/react/bridging/BUCK +1 -2
  804. package/ReactCommon/react/bridging/Base.h +3 -3
  805. package/ReactCommon/react/bridging/CallbackWrapper.h +3 -39
  806. package/ReactCommon/react/bridging/Function.h +36 -17
  807. package/ReactCommon/react/bridging/LongLivedObject.cpp +6 -13
  808. package/ReactCommon/react/bridging/LongLivedObject.h +9 -8
  809. package/ReactCommon/react/bridging/Number.h +11 -0
  810. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +16 -1
  811. package/ReactCommon/react/config/.clang-tidy +1 -0
  812. package/ReactCommon/react/config/ReactNativeConfig.cpp +3 -0
  813. package/ReactCommon/react/config/ReactNativeConfig.h +1 -1
  814. package/ReactCommon/react/debug/CMakeLists.txt +4 -0
  815. package/ReactCommon/react/debug/React-debug.podspec +36 -0
  816. package/ReactCommon/react/debug/flags.h +3 -1
  817. package/ReactCommon/react/debug/react_native_assert.h +6 -0
  818. package/ReactCommon/react/debug/react_native_expect.h +41 -0
  819. package/ReactCommon/react/nativemodule/.clang-tidy +1 -0
  820. package/ReactCommon/react/nativemodule/core/BUCK +3 -1
  821. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +6 -1
  822. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +26 -8
  823. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +31 -3
  824. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +39 -44
  825. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +5 -14
  826. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.cpp +2 -2
  827. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +1 -1
  828. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +28 -48
  829. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +3 -9
  830. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +56 -0
  831. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTBlockGuard.h → ReactCommon/RCTBlockGuard.h} +1 -1
  832. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModule.h → ReactCommon/RCTTurboModule.h} +0 -6
  833. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModule.mm → ReactCommon/RCTTurboModule.mm} +24 -51
  834. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModuleManager.h → ReactCommon/RCTTurboModuleManager.h} +5 -1
  835. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModuleManager.mm → ReactCommon/RCTTurboModuleManager.mm} +14 -69
  836. package/ReactCommon/react/nativemodule/samples/BUCK +3 -1
  837. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.cpp +12 -0
  838. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.h +1 -0
  839. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.cpp +4 -0
  840. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.h +1 -0
  841. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +59 -0
  842. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  843. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +15 -0
  844. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.java +8 -0
  845. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTNativeSampleTurboModuleSpec.h → ReactCommon/RCTNativeSampleTurboModuleSpec.h} +1 -0
  846. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTNativeSampleTurboModuleSpec.mm → ReactCommon/RCTNativeSampleTurboModuleSpec.mm} +11 -0
  847. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboModule.mm → ReactCommon/RCTSampleTurboModule.mm} +5 -0
  848. package/ReactCommon/react/nativemodule/samples/platform/ios/{SampleTurboCxxModuleLegacyImpl.cpp → ReactCommon/SampleTurboCxxModuleLegacyImpl.cpp} +10 -0
  849. package/ReactCommon/react/nativemodule/samples/platform/ios/{SampleTurboCxxModuleLegacyImpl.h → ReactCommon/SampleTurboCxxModuleLegacyImpl.h} +1 -0
  850. package/ReactCommon/react/renderer/.clang-tidy +7 -0
  851. package/ReactCommon/react/renderer/animations/BUCK +2 -0
  852. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +41 -65
  853. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +3 -20
  854. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +1 -1
  855. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +1 -1
  856. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +1 -1
  857. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
  858. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -1
  859. package/ReactCommon/react/renderer/attributedstring/conversions.h +48 -49
  860. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +1 -1
  861. package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +1 -1
  862. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +4 -4
  863. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +4 -5
  864. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +5 -5
  865. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +2 -2
  866. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +9 -7
  867. package/ReactCommon/react/renderer/components/image/ImageShadowNode.h +1 -1
  868. package/ReactCommon/react/renderer/components/image/conversions.h +4 -4
  869. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryState.h +1 -2
  870. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +31 -0
  871. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +26 -7
  872. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +8 -1
  873. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +49 -3
  874. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +38 -0
  875. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +1 -2
  876. package/ReactCommon/react/renderer/components/root/RootProps.cpp +4 -4
  877. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +3 -3
  878. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewState.h +1 -1
  879. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  880. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +79 -37
  881. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +6 -0
  882. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +4 -1
  883. package/ReactCommon/react/renderer/components/scrollview/conversions.h +35 -0
  884. package/ReactCommon/react/renderer/components/scrollview/primitives.h +17 -0
  885. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +1 -1
  886. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +0 -1
  887. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +1 -0
  888. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.cpp +84 -0
  889. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.h +71 -0
  890. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +4 -2
  891. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +13 -15
  892. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +2 -6
  893. package/ReactCommon/react/renderer/components/text/ParagraphState.h +8 -11
  894. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +4 -25
  895. package/ReactCommon/react/renderer/components/text/TextProps.h +0 -1
  896. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +5 -23
  897. package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +7 -10
  898. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +55 -53
  899. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -35
  900. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +2 -1
  901. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +3 -0
  902. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputEventEmitter.cpp → react/renderer/components/iostextinput/TextInputEventEmitter.cpp} +31 -1
  903. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputEventEmitter.h → react/renderer/components/iostextinput/TextInputEventEmitter.h} +5 -0
  904. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputProps.cpp → react/renderer/components/iostextinput/TextInputProps.cpp} +1 -1
  905. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputShadowNode.cpp → react/renderer/components/iostextinput/TextInputShadowNode.cpp} +2 -1
  906. package/ReactCommon/react/renderer/components/textinput/iostextinput/{propsConversions.h → react/renderer/components/iostextinput/propsConversions.h} +4 -3
  907. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +1 -1
  908. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +3 -3
  909. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +21 -20
  910. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.cpp +0 -2
  911. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.h +4 -2
  912. package/ReactCommon/react/renderer/components/view/BUCK +1 -0
  913. package/ReactCommon/react/renderer/components/view/PointerEvent.h +1 -1
  914. package/ReactCommon/react/renderer/components/view/Touch.h +1 -1
  915. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +63 -74
  916. package/ReactCommon/react/renderer/components/view/ViewProps.h +0 -1
  917. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.cpp +1 -1
  918. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +186 -91
  919. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +28 -31
  920. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +106 -7
  921. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +29 -1
  922. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +10 -7
  923. package/ReactCommon/react/renderer/components/view/conversions.h +133 -59
  924. package/ReactCommon/react/renderer/components/view/primitives.h +49 -18
  925. package/ReactCommon/react/renderer/components/view/propsConversions.h +65 -8
  926. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +88 -2
  927. package/ReactCommon/react/renderer/components/view/viewPropConversions.h +21 -3
  928. package/ReactCommon/react/renderer/core/BUCK +7 -3
  929. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +1 -1
  930. package/ReactCommon/react/renderer/core/CoreFeatures.cpp +5 -0
  931. package/ReactCommon/react/renderer/core/CoreFeatures.h +24 -1
  932. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +1 -0
  933. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +8 -4
  934. package/ReactCommon/react/renderer/core/EventBeat.h +1 -1
  935. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +10 -4
  936. package/ReactCommon/react/renderer/core/EventDispatcher.h +1 -1
  937. package/ReactCommon/react/renderer/core/EventListener.cpp +3 -3
  938. package/ReactCommon/react/renderer/core/EventListener.h +2 -3
  939. package/ReactCommon/react/renderer/core/EventLogger.cpp +22 -0
  940. package/ReactCommon/react/renderer/core/EventLogger.h +44 -0
  941. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +12 -2
  942. package/ReactCommon/react/renderer/core/LayoutConstraints.h +1 -1
  943. package/ReactCommon/react/renderer/core/LayoutContext.h +0 -1
  944. package/ReactCommon/react/renderer/core/LayoutMetrics.h +2 -1
  945. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +16 -2
  946. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +2 -26
  947. package/ReactCommon/react/renderer/core/PropsMacros.h +21 -7
  948. package/ReactCommon/react/renderer/core/PropsMapBuffer.cpp +2 -3
  949. package/ReactCommon/react/renderer/core/PropsMapBuffer.h +1 -0
  950. package/ReactCommon/react/renderer/core/RawEvent.h +2 -0
  951. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  952. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +1 -1
  953. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -1
  954. package/ReactCommon/react/renderer/core/Sealable.h +2 -2
  955. package/ReactCommon/react/renderer/core/ShadowNode.cpp +27 -3
  956. package/ReactCommon/react/renderer/core/ShadowNode.h +6 -20
  957. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +3 -3
  958. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +9 -2
  959. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +6 -11
  960. package/ReactCommon/react/renderer/core/TraitCast.h +90 -0
  961. package/ReactCommon/react/renderer/core/graphicsConversions.h +260 -0
  962. package/ReactCommon/react/renderer/core/propsConversions.h +1 -2
  963. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +2 -2
  964. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +147 -1
  965. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +1 -1
  966. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +12 -2
  967. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +9 -0
  968. package/ReactCommon/react/renderer/debug/SystraceSection.h +13 -3
  969. package/ReactCommon/react/renderer/element/BUCK +2 -0
  970. package/ReactCommon/react/renderer/element/CMakeLists.txt +29 -0
  971. package/ReactCommon/react/renderer/graphics/BUCK +9 -12
  972. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +4 -8
  973. package/ReactCommon/react/renderer/graphics/{platform/cxx/react/renderer/graphics/Color.cpp → Color.cpp} +1 -1
  974. package/ReactCommon/react/renderer/graphics/{platform/ios/Color.h → Color.h} +12 -16
  975. package/ReactCommon/react/renderer/graphics/Geometry.h +3 -12
  976. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +18 -3
  977. package/ReactCommon/react/renderer/graphics/RectangleEdges.h +11 -1
  978. package/ReactCommon/react/renderer/graphics/Transform.h +5 -2
  979. package/{ReactAndroid/src/main/jni/react/jni/NativeTime.h → ReactCommon/react/renderer/graphics/Vector.h} +8 -1
  980. package/ReactCommon/react/renderer/graphics/conversions.h +18 -252
  981. package/ReactCommon/{yoga/yoga/internal/experiments.h → react/renderer/graphics/platform/android/react/renderer/graphics/Float.h} +8 -12
  982. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +0 -1
  983. package/ReactCommon/react/renderer/graphics/platform/ios/{RCTPlatformColorUtils.mm → react/renderer/graphics/RCTPlatformColorUtils.mm} +1 -2
  984. package/ReactCommon/react/renderer/imagemanager/BUCK +4 -2
  985. package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +11 -10
  986. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +1 -1
  987. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequest.cpp +5 -13
  988. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +69 -0
  989. package/ReactCommon/react/renderer/imagemanager/platform/ios/{ImageManager.mm → react/renderer/imagemanager/ImageManager.mm} +1 -1
  990. package/ReactCommon/react/renderer/imagemanager/platform/ios/{ImageRequest.cpp → react/renderer/imagemanager/ImageRequest.cpp} +8 -22
  991. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManager.h → react/renderer/imagemanager/RCTImageManager.h} +1 -1
  992. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManager.mm → react/renderer/imagemanager/RCTImageManager.mm} +2 -4
  993. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTSyncImageManager.h → react/renderer/imagemanager/RCTSyncImageManager.h} +1 -1
  994. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTSyncImageManager.mm → react/renderer/imagemanager/RCTSyncImageManager.mm} +2 -4
  995. package/ReactCommon/react/renderer/imagemanager/primitives.h +2 -1
  996. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +4 -2
  997. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +1 -1
  998. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +2 -2
  999. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -1
  1000. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +30 -22
  1001. package/ReactCommon/react/renderer/mounting/ShadowTree.h +11 -5
  1002. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +2 -2
  1003. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +11 -6
  1004. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.h +6 -3
  1005. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +1 -0
  1006. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +8 -8
  1007. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +8 -8
  1008. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -2
  1009. package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
  1010. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +66 -0
  1011. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +17 -5
  1012. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +6 -3
  1013. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +5 -4
  1014. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +2 -1
  1015. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +12 -2
  1016. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +6 -4
  1017. package/ReactCommon/react/renderer/runtimescheduler/{SchedulerPriority.h → SchedulerPriorityUtils.h} +3 -28
  1018. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +23 -6
  1019. package/ReactCommon/react/renderer/runtimescheduler/Task.h +13 -7
  1020. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +1 -2
  1021. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +1 -1
  1022. package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +1 -0
  1023. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +42 -10
  1024. package/ReactCommon/react/renderer/scheduler/Scheduler.h +3 -1
  1025. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +3 -5
  1026. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +1 -1
  1027. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +32 -34
  1028. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +4 -3
  1029. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +3 -3
  1030. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +2 -1
  1031. package/ReactCommon/react/renderer/telemetry/tests/TransactionTelemetryTest.cpp +1 -1
  1032. package/ReactCommon/react/renderer/templateprocessor/BUCK +2 -0
  1033. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +4 -2
  1034. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +1 -0
  1035. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +14 -3
  1036. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +7 -1
  1037. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +9 -1
  1038. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +7 -1
  1039. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{NSTextStorage+FontScaling.m → react/renderer/textlayoutmanager/NSTextStorage+FontScaling.m} +3 -3
  1040. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextLayoutManager.h → react/renderer/textlayoutmanager/RCTTextLayoutManager.h} +10 -4
  1041. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextLayoutManager.mm → react/renderer/textlayoutmanager/RCTTextLayoutManager.mm} +140 -96
  1042. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{TextLayoutManager.h → react/renderer/textlayoutmanager/TextLayoutManager.h} +7 -1
  1043. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{TextLayoutManager.mm → react/renderer/textlayoutmanager/TextLayoutManager.mm} +24 -3
  1044. package/ReactCommon/react/renderer/timeline/TimelineController.h +1 -1
  1045. package/ReactCommon/react/renderer/uimanager/BUCK +2 -0
  1046. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +4 -4
  1047. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +2 -2
  1048. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +158 -41
  1049. package/ReactCommon/react/renderer/uimanager/UIManager.h +16 -3
  1050. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +8 -0
  1051. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +86 -4
  1052. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +2 -1
  1053. package/ReactCommon/react/renderer/uimanager/primitives.h +48 -24
  1054. package/ReactCommon/react/utils/.clang-tidy +1 -0
  1055. package/ReactCommon/react/utils/BUCK +6 -2
  1056. package/ReactCommon/react/utils/ContextContainer.h +8 -8
  1057. package/ReactCommon/react/utils/React-utils.podspec +57 -0
  1058. package/ReactCommon/react/utils/SharedFunction.h +10 -10
  1059. package/ReactCommon/reactperflogger/.clang-tidy +1 -0
  1060. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  1061. package/ReactCommon/runtimeexecutor/.clang-tidy +1 -0
  1062. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  1063. package/ReactCommon/yoga/yoga/CMakeLists.txt +41 -0
  1064. package/ReactCommon/yoga/yoga/CompactValue.h +8 -0
  1065. package/ReactCommon/yoga/yoga/Utils.cpp +1 -1
  1066. package/ReactCommon/yoga/yoga/Utils.h +2 -4
  1067. package/ReactCommon/yoga/yoga/YGEnums.cpp +4 -0
  1068. package/ReactCommon/yoga/yoga/YGEnums.h +3 -1
  1069. package/ReactCommon/yoga/yoga/YGLayout.h +1 -26
  1070. package/ReactCommon/yoga/yoga/YGNode.cpp +0 -47
  1071. package/ReactCommon/yoga/yoga/YGNode.h +0 -4
  1072. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +3 -1
  1073. package/ReactCommon/yoga/yoga/Yoga-internal.h +6 -3
  1074. package/ReactCommon/yoga/yoga/Yoga.cpp +55 -127
  1075. package/ReactCommon/yoga/yoga/Yoga.h +0 -5
  1076. package/ReactCommon/yoga/yoga/event/event.h +0 -5
  1077. package/build.gradle.kts +10 -125
  1078. package/flow/global.js +29 -4
  1079. package/flow/jest.js +258 -164
  1080. package/flow/use-sync-external-store.js +1 -0
  1081. package/gradle.properties +1 -12
  1082. package/index.js +56 -42
  1083. package/interface.js +1 -1
  1084. package/jest/local-setup.js +33 -0
  1085. package/jest/mockComponent.js +4 -2
  1086. package/jest/mockNativeComponent.js +1 -1
  1087. package/jest/mockScrollView.js +2 -1
  1088. package/jest/react-native-env.js +1 -3
  1089. package/jest/setup.js +11 -8
  1090. package/package.json +25 -115
  1091. package/react-native.config.js +2 -2
  1092. package/rn-get-polyfills.js +1 -1
  1093. package/scripts/cocoapods/__tests__/codegen-test.rb +54 -56
  1094. package/scripts/cocoapods/__tests__/codegen_utils-test.rb +105 -51
  1095. package/scripts/cocoapods/__tests__/fabric-test.rb +15 -2
  1096. package/scripts/cocoapods/__tests__/flipper-test.rb +11 -5
  1097. package/scripts/cocoapods/__tests__/jsengine-test.rb +7 -31
  1098. package/scripts/cocoapods/__tests__/local_podspec_patch-test.rb +27 -31
  1099. package/scripts/cocoapods/__tests__/new_architecture-test.rb +19 -6
  1100. package/scripts/cocoapods/__tests__/test_utils/CodegenUtilsMock.rb +1 -1
  1101. package/scripts/cocoapods/__tests__/test_utils/DirMock.rb +1 -13
  1102. package/scripts/cocoapods/__tests__/test_utils/FileMock.rb +2 -21
  1103. package/scripts/cocoapods/__tests__/test_utils/FileUtilsMock.rb +1 -1
  1104. package/scripts/cocoapods/__tests__/test_utils/InstallerMock.rb +11 -2
  1105. package/scripts/cocoapods/__tests__/test_utils/podSpy.rb +2 -1
  1106. package/scripts/cocoapods/__tests__/utils-test.rb +156 -9
  1107. package/scripts/cocoapods/codegen.rb +23 -19
  1108. package/scripts/cocoapods/codegen_utils.rb +79 -37
  1109. package/scripts/cocoapods/fabric.rb +2 -2
  1110. package/scripts/cocoapods/flipper.rb +3 -6
  1111. package/scripts/cocoapods/jsengine.rb +6 -46
  1112. package/scripts/cocoapods/local_podspec_patch.rb +6 -6
  1113. package/scripts/cocoapods/new_architecture.rb +45 -4
  1114. package/scripts/cocoapods/utils.rb +246 -19
  1115. package/scripts/codegen/__test_fixtures__/fixtures.js +132 -0
  1116. package/scripts/codegen/__tests__/generate-artifacts-executor-test.js +500 -0
  1117. package/scripts/codegen/__tests__/generate-specs-cli-executor-test.js +88 -0
  1118. package/scripts/codegen/codegen-utils.js +2 -2
  1119. package/scripts/codegen/generate-artifacts-executor.js +45 -18
  1120. package/scripts/codegen/generate-legacy-interop-components.js +123 -0
  1121. package/scripts/find-node-for-xcode.sh +4 -1
  1122. package/scripts/generate-provider-cli.js +1 -1
  1123. package/scripts/hermes/prepare-hermes-for-build.js +1 -1
  1124. package/scripts/packager.sh +3 -3
  1125. package/scripts/react-native-xcode.sh +3 -4
  1126. package/scripts/react_native_pods.rb +44 -23
  1127. package/scripts/react_native_pods_utils/script_phases.rb +1 -1
  1128. package/scripts/react_native_pods_utils/script_phases.sh +4 -4
  1129. package/scripts/xcode/with-environment.sh +6 -6
  1130. package/sdks/.hermesversion +1 -1
  1131. package/sdks/hermes-engine/hermes-engine.podspec +22 -54
  1132. package/sdks/hermes-engine/hermes-utils.rb +131 -4
  1133. package/sdks/hermes-engine/utils/build-apple-framework.sh +12 -2
  1134. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +7 -0
  1135. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +9 -2
  1136. package/sdks/hermes-engine/utils/copy-hermes-xcode.sh +1 -16
  1137. package/sdks/hermes-engine/utils/create-dummy-hermes-xcframework.sh +30 -0
  1138. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1139. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1140. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1141. package/settings.gradle.kts +12 -15
  1142. package/template/Gemfile +2 -2
  1143. package/template/README.md +79 -0
  1144. package/template/__tests__/{App-test.tsx → App.test.tsx} +3 -0
  1145. package/template/_eslintrc.js +1 -1
  1146. package/template/_gitignore +3 -0
  1147. package/template/_watchmanconfig +1 -1
  1148. package/template/android/app/build.gradle +2 -50
  1149. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +1 -4
  1150. package/template/android/app/src/main/res/drawable/rn_edit_text_material.xml +1 -1
  1151. package/template/android/build.gradle +1 -1
  1152. package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  1153. package/template/android/gradle/wrapper/gradle-wrapper.properties +2 -1
  1154. package/template/android/gradle.properties +1 -1
  1155. package/template/android/gradlew +14 -4
  1156. package/template/android/gradlew.bat +9 -6
  1157. package/template/android/settings.gradle +1 -1
  1158. package/template/app.json +1 -1
  1159. package/template/ios/HelloWorld/AppDelegate.mm +0 -10
  1160. package/template/ios/Podfile +22 -34
  1161. package/template/jest.config.js +3 -0
  1162. package/template/metro.config.js +7 -13
  1163. package/template/package.json +13 -11
  1164. package/template/react-native.config.js +12 -0
  1165. package/third-party-podspecs/hermes-engine.podspec +1 -1
  1166. package/types/experimental.d.ts +101 -0
  1167. package/types/index.d.ts +6 -8
  1168. package/types/modules/Codegen.d.ts +4 -4
  1169. package/types/modules/globals.d.ts +27 -25
  1170. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -20
  1171. package/types/public/ReactNativeRenderer.d.ts +2 -7
  1172. package/types/tslint.json +2 -1
  1173. package/Libraries/Animated/createAnimatedComponentInjection.js +0 -48
  1174. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +0 -48
  1175. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +0 -208
  1176. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +0 -58
  1177. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -47
  1178. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +0 -92
  1179. package/Libraries/Components/DatePicker/DatePickerIOS.flow.android.js +0 -14
  1180. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +0 -113
  1181. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -242
  1182. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  1183. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -26
  1184. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -45
  1185. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +0 -62
  1186. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -75
  1187. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -33
  1188. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +0 -19
  1189. package/Libraries/Components/Slider/Slider.d.ts +0 -132
  1190. package/Libraries/Components/Slider/Slider.js +0 -288
  1191. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -56
  1192. package/Libraries/Interaction/Batchinator.js +0 -76
  1193. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -63
  1194. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  1195. package/Libraries/Interaction/PanResponder.flow.js +0 -257
  1196. package/Libraries/Lists/CellRenderMask.js +0 -155
  1197. package/Libraries/Lists/ChildListCollection.js +0 -72
  1198. package/Libraries/Lists/StateSafePureComponent.js +0 -85
  1199. package/Libraries/Lists/VirtualizedList.d.ts +0 -347
  1200. package/Libraries/Lists/VirtualizedListCellRenderer.js +0 -259
  1201. package/Libraries/Lists/VirtualizedListProps.js +0 -279
  1202. package/Libraries/Performance/PureComponentDebug.js +0 -74
  1203. package/Libraries/Reliability/UserFlow.js +0 -158
  1204. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +0 -149
  1205. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -141
  1206. package/Libraries/Utilities/MatrixMath.js +0 -748
  1207. package/Libraries/Utilities/PixelRatio.js.flow +0 -21
  1208. package/Libraries/Utilities/buildStyleInterpolator.js +0 -209
  1209. package/Libraries/Utilities/clamp.js +0 -23
  1210. package/Libraries/Utilities/deprecatedPropType.js +0 -36
  1211. package/Libraries/Utilities/groupByEveryN.js +0 -51
  1212. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  1213. package/Libraries/Utilities/truncate.js +0 -51
  1214. package/Libraries/WebSocket/RCTSRWebSocket.h +0 -136
  1215. package/Libraries/WebSocket/RCTSRWebSocket.m +0 -1746
  1216. package/React/Base/RCTWeakProxy.m +0 -30
  1217. package/React/Fabric/Mounting/ComponentViews/Slider/RCTSliderComponentView.mm +0 -362
  1218. package/React/Views/RCTDatePicker.m +0 -70
  1219. package/React/Views/RCTDatePickerManager.h +0 -19
  1220. package/React/Views/RCTDatePickerManager.m +0 -105
  1221. package/React/Views/RCTProgressViewManager.h +0 -12
  1222. package/React/Views/RCTProgressViewManager.m +0 -47
  1223. package/React/Views/RCTSlider.h +0 -26
  1224. package/React/Views/RCTSlider.m +0 -104
  1225. package/React/Views/RCTSliderManager.m +0 -91
  1226. package/ReactAndroid/Android-prebuilt.mk +0 -211
  1227. package/ReactAndroid/src/main/AndroidManifest.xml +0 -5
  1228. package/ReactAndroid/src/main/java/com/facebook/react/JSInterpreter.java +0 -18
  1229. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppViewMutationsWrapper.java +0 -47
  1230. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java +0 -116
  1231. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -54
  1232. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +0 -336
  1233. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +0 -54
  1234. package/ReactAndroid/src/main/jni/react/cxxcomponents/BUCK +0 -44
  1235. package/ReactAndroid/src/main/jni/react/cxxcomponents/CMakeLists.txt +0 -22
  1236. package/ReactAndroid/src/main/jni/react/cxxcomponents/Component.h +0 -66
  1237. package/ReactAndroid/src/main/jni/react/cxxcomponents/ComponentManager.h +0 -26
  1238. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.cpp +0 -51
  1239. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.h +0 -47
  1240. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.cpp +0 -73
  1241. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.h +0 -64
  1242. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.cpp +0 -100
  1243. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.h +0 -39
  1244. package/ReactAndroid/src/main/jni/react/jni/NativeTime.cpp +0 -26
  1245. package/ReactCommon/react/renderer/components/slider/BUCK +0 -117
  1246. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +0 -45
  1247. package/ReactCommon/react/renderer/components/slider/SliderComponentDescriptor.h +0 -58
  1248. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.cpp +0 -100
  1249. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.h +0 -77
  1250. package/ReactCommon/react/renderer/components/slider/SliderState.cpp +0 -44
  1251. package/ReactCommon/react/renderer/components/slider/SliderState.h +0 -89
  1252. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.cpp +0 -72
  1253. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.h +0 -40
  1254. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.cpp +0 -23
  1255. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.h +0 -33
  1256. package/ReactCommon/react/renderer/components/slider/tests/SliderTest.cpp +0 -14
  1257. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +0 -80
  1258. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +0 -63
  1259. package/ReactCommon/yoga/yoga/internal/experiments-inl.h +0 -32
  1260. package/ReactCommon/yoga/yoga/internal/experiments.cpp +0 -38
  1261. package/flow/JSITimerInternalType.js +0 -30
  1262. package/flow-typed/npm/ansi-regex_v5.x.x.js +0 -14
  1263. package/react.gradle +0 -500
  1264. package/template/_node-version +0 -1
  1265. package/tvos-types.d.ts +0 -6
  1266. package/types/public/ReactNativeTVTypes.d.ts +0 -192
  1267. /package/ReactCommon/react/nativemodule/core/platform/ios/{RCTBlockGuard.mm → ReactCommon/RCTBlockGuard.mm} +0 -0
  1268. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboCxxModule.h → ReactCommon/RCTSampleTurboCxxModule.h} +0 -0
  1269. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboCxxModule.mm → ReactCommon/RCTSampleTurboCxxModule.mm} +0 -0
  1270. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboModule.h → ReactCommon/RCTSampleTurboModule.h} +0 -0
  1271. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputComponentDescriptor.h → react/renderer/components/iostextinput/TextInputComponentDescriptor.h} +0 -0
  1272. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputProps.h → react/renderer/components/iostextinput/TextInputProps.h} +0 -0
  1273. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputShadowNode.h → react/renderer/components/iostextinput/TextInputShadowNode.h} +0 -0
  1274. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputState.cpp → react/renderer/components/iostextinput/TextInputState.cpp} +0 -0
  1275. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputState.h → react/renderer/components/iostextinput/TextInputState.h} +0 -0
  1276. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{conversions.h → react/renderer/components/iostextinput/conversions.h} +0 -0
  1277. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{primitives.h → react/renderer/components/iostextinput/primitives.h} +0 -0
  1278. /package/ReactCommon/react/renderer/graphics/platform/ios/{Float.h → react/renderer/graphics/Float.h} +0 -0
  1279. /package/ReactCommon/react/renderer/graphics/platform/ios/{PlatformColorParser.h → react/renderer/graphics/PlatformColorParser.h} +0 -0
  1280. /package/ReactCommon/react/renderer/graphics/platform/ios/{RCTPlatformColorUtils.h → react/renderer/graphics/RCTPlatformColorUtils.h} +0 -0
  1281. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManagerProtocol.h → react/renderer/imagemanager/RCTImageManagerProtocol.h} +0 -0
  1282. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImagePrimitivesConversions.h → react/renderer/imagemanager/RCTImagePrimitivesConversions.h} +0 -0
  1283. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{NSTextStorage+FontScaling.h → react/renderer/textlayoutmanager/NSTextStorage+FontScaling.h} +0 -0
  1284. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTAttributedTextUtils.h → react/renderer/textlayoutmanager/RCTAttributedTextUtils.h} +0 -0
  1285. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTAttributedTextUtils.mm → react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm} +0 -0
  1286. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontProperties.h → react/renderer/textlayoutmanager/RCTFontProperties.h} +0 -0
  1287. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontUtils.h → react/renderer/textlayoutmanager/RCTFontUtils.h} +0 -0
  1288. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontUtils.mm → react/renderer/textlayoutmanager/RCTFontUtils.mm} +0 -0
  1289. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextPrimitivesConversions.h → react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h} +0 -0
@@ -12,9 +12,9 @@
12
12
  #include <react/renderer/components/view/conversions.h>
13
13
  #include <react/renderer/components/view/propsConversions.h>
14
14
  #include <react/renderer/core/CoreFeatures.h>
15
+ #include <react/renderer/core/graphicsConversions.h>
15
16
  #include <react/renderer/core/propsConversions.h>
16
17
  #include <react/renderer/debug/debugStringConvertibleUtils.h>
17
- #include <react/renderer/graphics/conversions.h>
18
18
 
19
19
  namespace facebook::react {
20
20
 
@@ -369,17 +369,19 @@ ViewProps::ViewProps(
369
369
  sourceProps.trapFocusRight,
370
370
  false))
371
371
  #endif
372
- {};
372
+ {
373
+ }
373
374
 
374
- #define VIEW_EVENT_CASE(eventType, eventString) \
375
- case CONSTEXPR_RAW_PROPS_KEY_HASH(eventString): { \
376
- ViewEvents defaultViewEvents{}; \
377
- bool res = defaultViewEvents[eventType]; \
378
- if (value.hasValue()) { \
379
- fromRawValue(context, value, res); \
380
- } \
381
- events[eventType] = res; \
382
- return; \
375
+ #define VIEW_EVENT_CASE(eventType) \
376
+ case CONSTEXPR_RAW_PROPS_KEY_HASH("on" #eventType): { \
377
+ const auto offset = ViewEvents::Offset::eventType; \
378
+ ViewEvents defaultViewEvents{}; \
379
+ bool res = defaultViewEvents[offset]; \
380
+ if (value.hasValue()) { \
381
+ fromRawValue(context, value, res); \
382
+ } \
383
+ events[offset] = res; \
384
+ return; \
383
385
  }
384
386
 
385
387
  void ViewProps::setProp(
@@ -393,72 +395,59 @@ void ViewProps::setProp(
393
395
  YogaStylableProps::setProp(context, hash, propName, value);
394
396
  AccessibilityProps::setProp(context, hash, propName, value);
395
397
 
398
+ static auto defaults = ViewProps{};
399
+
396
400
  switch (hash) {
397
- RAW_SET_PROP_SWITCH_CASE_BASIC(opacity, (Float)1.0);
398
- RAW_SET_PROP_SWITCH_CASE_BASIC(foregroundColor, {});
399
- RAW_SET_PROP_SWITCH_CASE_BASIC(backgroundColor, {});
400
- RAW_SET_PROP_SWITCH_CASE_BASIC(shadowColor, {});
401
- RAW_SET_PROP_SWITCH_CASE_BASIC(shadowOffset, {});
402
- RAW_SET_PROP_SWITCH_CASE_BASIC(shadowOpacity, {});
403
- RAW_SET_PROP_SWITCH_CASE_BASIC(shadowRadius, {});
404
- RAW_SET_PROP_SWITCH_CASE_BASIC(transform, {});
405
- RAW_SET_PROP_SWITCH_CASE_BASIC(backfaceVisibility, {});
406
- RAW_SET_PROP_SWITCH_CASE_BASIC(shouldRasterize, {});
407
- RAW_SET_PROP_SWITCH_CASE_BASIC(zIndex, {});
408
- RAW_SET_PROP_SWITCH_CASE_BASIC(pointerEvents, {});
409
- RAW_SET_PROP_SWITCH_CASE_BASIC(hitSlop, {});
410
- RAW_SET_PROP_SWITCH_CASE_BASIC(onLayout, {});
411
- RAW_SET_PROP_SWITCH_CASE_BASIC(collapsable, true);
412
- RAW_SET_PROP_SWITCH_CASE_BASIC(removeClippedSubviews, false);
401
+ RAW_SET_PROP_SWITCH_CASE_BASIC(opacity);
402
+ RAW_SET_PROP_SWITCH_CASE_BASIC(foregroundColor);
403
+ RAW_SET_PROP_SWITCH_CASE_BASIC(backgroundColor);
404
+ RAW_SET_PROP_SWITCH_CASE_BASIC(shadowColor);
405
+ RAW_SET_PROP_SWITCH_CASE_BASIC(shadowOffset);
406
+ RAW_SET_PROP_SWITCH_CASE_BASIC(shadowOpacity);
407
+ RAW_SET_PROP_SWITCH_CASE_BASIC(shadowRadius);
408
+ RAW_SET_PROP_SWITCH_CASE_BASIC(transform);
409
+ RAW_SET_PROP_SWITCH_CASE_BASIC(backfaceVisibility);
410
+ RAW_SET_PROP_SWITCH_CASE_BASIC(shouldRasterize);
411
+ RAW_SET_PROP_SWITCH_CASE_BASIC(zIndex);
412
+ RAW_SET_PROP_SWITCH_CASE_BASIC(pointerEvents);
413
+ RAW_SET_PROP_SWITCH_CASE_BASIC(hitSlop);
414
+ RAW_SET_PROP_SWITCH_CASE_BASIC(onLayout);
415
+ RAW_SET_PROP_SWITCH_CASE_BASIC(collapsable);
416
+ RAW_SET_PROP_SWITCH_CASE_BASIC(removeClippedSubviews);
413
417
  // events field
414
- VIEW_EVENT_CASE(ViewEvents::Offset::PointerEnter, "onPointerEnter");
415
- VIEW_EVENT_CASE(
416
- ViewEvents::Offset::PointerEnterCapture, "onPointerEnterCapture");
417
- VIEW_EVENT_CASE(ViewEvents::Offset::PointerMove, "onPointerMove");
418
- VIEW_EVENT_CASE(
419
- ViewEvents::Offset::PointerMoveCapture, "onPointerMoveCapture");
420
- VIEW_EVENT_CASE(ViewEvents::Offset::PointerLeave, "onPointerLeave");
421
- VIEW_EVENT_CASE(
422
- ViewEvents::Offset::PointerLeaveCapture, "onPointerLeaveCapture");
423
- VIEW_EVENT_CASE(ViewEvents::Offset::PointerOver, "onPointerOver");
424
- VIEW_EVENT_CASE(ViewEvents::Offset::PointerOut, "onPointerOut");
425
- VIEW_EVENT_CASE(
426
- ViewEvents::Offset::MoveShouldSetResponder, "onMoveShouldSetResponder");
427
- VIEW_EVENT_CASE(
428
- ViewEvents::Offset::MoveShouldSetResponderCapture,
429
- "onMoveShouldSetResponderCapture");
430
- VIEW_EVENT_CASE(
431
- ViewEvents::Offset::StartShouldSetResponder,
432
- "onStartShouldSetResponder");
433
- VIEW_EVENT_CASE(
434
- ViewEvents::Offset::StartShouldSetResponderCapture,
435
- "onStartShouldSetResponderCapture");
436
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderGrant, "onResponderGrant");
437
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderReject, "onResponderReject");
438
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderStart, "onResponderStart");
439
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderEnd, "onResponderEnd");
440
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderRelease, "onResponderRelease");
441
- VIEW_EVENT_CASE(ViewEvents::Offset::ResponderMove, "ResponderMove");
442
- VIEW_EVENT_CASE(
443
- ViewEvents::Offset::ResponderTerminate, "onResponderTerminate");
444
- VIEW_EVENT_CASE(
445
- ViewEvents::Offset::ResponderTerminationRequest,
446
- "onResponderTerminationRequest");
447
- VIEW_EVENT_CASE(
448
- ViewEvents::Offset::ShouldBlockNativeResponder,
449
- "onShouldBlockNativeResponder");
450
- VIEW_EVENT_CASE(ViewEvents::Offset::TouchStart, "onTouchStart");
451
- VIEW_EVENT_CASE(ViewEvents::Offset::TouchMove, "onTouchMove");
452
- VIEW_EVENT_CASE(ViewEvents::Offset::TouchEnd, "onTouchEnd");
453
- VIEW_EVENT_CASE(ViewEvents::Offset::TouchCancel, "onTouchCancel");
418
+ VIEW_EVENT_CASE(PointerEnter);
419
+ VIEW_EVENT_CASE(PointerEnterCapture);
420
+ VIEW_EVENT_CASE(PointerMove);
421
+ VIEW_EVENT_CASE(PointerMoveCapture);
422
+ VIEW_EVENT_CASE(PointerLeave);
423
+ VIEW_EVENT_CASE(PointerLeaveCapture);
424
+ VIEW_EVENT_CASE(PointerOver);
425
+ VIEW_EVENT_CASE(PointerOut);
426
+ VIEW_EVENT_CASE(MoveShouldSetResponder);
427
+ VIEW_EVENT_CASE(MoveShouldSetResponderCapture);
428
+ VIEW_EVENT_CASE(StartShouldSetResponder);
429
+ VIEW_EVENT_CASE(StartShouldSetResponderCapture);
430
+ VIEW_EVENT_CASE(ResponderGrant);
431
+ VIEW_EVENT_CASE(ResponderReject);
432
+ VIEW_EVENT_CASE(ResponderStart);
433
+ VIEW_EVENT_CASE(ResponderEnd);
434
+ VIEW_EVENT_CASE(ResponderRelease);
435
+ VIEW_EVENT_CASE(ResponderMove);
436
+ VIEW_EVENT_CASE(ResponderTerminate);
437
+ VIEW_EVENT_CASE(ResponderTerminationRequest);
438
+ VIEW_EVENT_CASE(ShouldBlockNativeResponder);
439
+ VIEW_EVENT_CASE(TouchStart);
440
+ VIEW_EVENT_CASE(TouchMove);
441
+ VIEW_EVENT_CASE(TouchEnd);
442
+ VIEW_EVENT_CASE(TouchCancel);
454
443
  #ifdef ANDROID
455
- RAW_SET_PROP_SWITCH_CASE_BASIC(elevation, {});
456
- RAW_SET_PROP_SWITCH_CASE(nativeBackground, "nativeBackgroundAndroid", {});
457
- RAW_SET_PROP_SWITCH_CASE(nativeForeground, "nativeForegroundAndroid", {});
458
- RAW_SET_PROP_SWITCH_CASE_BASIC(focusable, false);
459
- RAW_SET_PROP_SWITCH_CASE_BASIC(hasTVPreferredFocus, false);
460
- RAW_SET_PROP_SWITCH_CASE_BASIC(needsOffscreenAlphaCompositing, false);
461
- RAW_SET_PROP_SWITCH_CASE_BASIC(renderToHardwareTextureAndroid, false);
444
+ RAW_SET_PROP_SWITCH_CASE_BASIC(elevation);
445
+ RAW_SET_PROP_SWITCH_CASE(nativeBackground, "nativeBackgroundAndroid");
446
+ RAW_SET_PROP_SWITCH_CASE(nativeForeground, "nativeForegroundAndroid");
447
+ RAW_SET_PROP_SWITCH_CASE_BASIC(focusable);
448
+ RAW_SET_PROP_SWITCH_CASE_BASIC(hasTVPreferredFocus);
449
+ RAW_SET_PROP_SWITCH_CASE_BASIC(needsOffscreenAlphaCompositing);
450
+ RAW_SET_PROP_SWITCH_CASE_BASIC(renderToHardwareTextureAndroid);
462
451
  #endif
463
452
  // BorderRadii
464
453
  SET_CASCADED_RECTANGLE_CORNERS(borderRadii, "border", "Radius", value);
@@ -14,7 +14,6 @@
14
14
  #include <react/renderer/core/Props.h>
15
15
  #include <react/renderer/core/PropsParserContext.h>
16
16
  #include <react/renderer/graphics/Color.h>
17
- #include <react/renderer/graphics/Geometry.h>
18
17
  #include <react/renderer/graphics/Transform.h>
19
18
 
20
19
  #include <optional>
@@ -12,7 +12,7 @@
12
12
 
13
13
  #include "viewPropConversions.h"
14
14
 
15
- #include <react/renderer/graphics/conversions.h>
15
+ #include <react/renderer/core/graphicsConversions.h>
16
16
  #include <react/renderer/mapbuffer/MapBufferBuilder.h>
17
17
 
18
18
  namespace facebook {
@@ -10,9 +10,11 @@
10
10
  #include <react/debug/flags.h>
11
11
  #include <react/debug/react_native_assert.h>
12
12
  #include <react/renderer/components/view/ViewProps.h>
13
+ #include <react/renderer/components/view/ViewShadowNode.h>
13
14
  #include <react/renderer/components/view/conversions.h>
14
15
  #include <react/renderer/core/LayoutConstraints.h>
15
16
  #include <react/renderer/core/LayoutContext.h>
17
+ #include <react/renderer/core/TraitCast.h>
16
18
  #include <react/renderer/debug/DebugStringConvertibleItem.h>
17
19
  #include <react/renderer/debug/SystraceSection.h>
18
20
  #include <yoga/Yoga.h>
@@ -61,10 +63,14 @@ thread_local LayoutContext threadLocalLayoutContext;
61
63
 
62
64
  ShadowNodeTraits YogaLayoutableShadowNode::BaseTraits() {
63
65
  auto traits = LayoutableShadowNode::BaseTraits();
64
- traits.set(ShadowNodeTraits::Trait::YogaLayoutableKind);
66
+ traits.set(IdentifierTrait());
65
67
  return traits;
66
68
  }
67
69
 
70
+ ShadowNodeTraits::Trait YogaLayoutableShadowNode::IdentifierTrait() {
71
+ return ShadowNodeTraits::Trait::YogaLayoutableKind;
72
+ }
73
+
68
74
  YogaLayoutableShadowNode::YogaLayoutableShadowNode(
69
75
  ShadowNodeFragment const &fragment,
70
76
  ShadowNodeFamily::Shared const &family,
@@ -74,7 +80,7 @@ YogaLayoutableShadowNode::YogaLayoutableShadowNode(
74
80
  yogaNode_(&initializeYogaConfig(yogaConfig_)) {
75
81
  yogaNode_.setContext(this);
76
82
 
77
- // Newly created node must be `dirty` just becasue it is new.
83
+ // Newly created node must be `dirty` just because it is new.
78
84
  // This is not a default for `YGNode`.
79
85
  yogaNode_.setDirty(true);
80
86
 
@@ -110,6 +116,12 @@ YogaLayoutableShadowNode::YogaLayoutableShadowNode(
110
116
  .yogaNode_.isDirty() == yogaNode_.isDirty() &&
111
117
  "Yoga node must inherit dirty flag.");
112
118
 
119
+ for (auto &child : getChildren()) {
120
+ if (auto layoutableChild = traitCast<YogaLayoutableShadowNode>(child)) {
121
+ yogaLayoutableChildren_.push_back(layoutableChild);
122
+ }
123
+ }
124
+
113
125
  yogaNode_.setContext(this);
114
126
  yogaNode_.setOwner(nullptr);
115
127
  updateYogaChildrenOwnersIfNeeded();
@@ -154,17 +166,17 @@ void YogaLayoutableShadowNode::enableMeasurement() {
154
166
  YogaLayoutableShadowNode::yogaNodeMeasureCallbackConnector);
155
167
  }
156
168
 
157
- void YogaLayoutableShadowNode::appendYogaChild(ShadowNode const &childNode) {
169
+ void YogaLayoutableShadowNode::appendYogaChild(
170
+ YogaLayoutableShadowNode::Shared const &childNode) {
158
171
  // The caller must check this before calling this method.
159
172
  react_native_assert(
160
173
  !getTraits().check(ShadowNodeTraits::Trait::LeafYogaNode));
161
174
 
162
175
  ensureYogaChildrenLookFine();
163
176
 
164
- auto &layoutableChildNode =
165
- traitCast<YogaLayoutableShadowNode const &>(childNode);
177
+ yogaLayoutableChildren_.push_back(childNode);
166
178
  yogaNode_.insertChild(
167
- &layoutableChildNode.yogaNode_,
179
+ &childNode->yogaNode_,
168
180
  static_cast<uint32_t>(yogaNode_.getChildren().size()));
169
181
 
170
182
  ensureYogaChildrenLookFine();
@@ -178,47 +190,21 @@ void YogaLayoutableShadowNode::adoptYogaChild(size_t index) {
178
190
  react_native_assert(
179
191
  !getTraits().check(ShadowNodeTraits::Trait::LeafYogaNode));
180
192
 
181
- auto &children = getChildren();
182
-
183
- // Overflow checks.
184
- react_native_assert(children.size() > index);
185
- react_native_assert(children.size() >= yogaNode_.getChildren().size());
186
-
187
- auto &childNode = *children.at(index);
188
-
189
- auto &layoutableChildNode =
190
- traitCast<YogaLayoutableShadowNode const &>(childNode);
193
+ auto &childNode =
194
+ traitCast<YogaLayoutableShadowNode const &>(*getChildren().at(index));
191
195
 
192
- // Note, the following (commented out) assert is conceptually valid but still
193
- // might produce false-positive signals because of the ABA problem (different
194
- // objects with non-interleaving life-times being allocated on the same
195
- // address). react_native_assert(layoutableChildNode.yogaNode_.getOwner() !=
196
- // &yogaNode_);
197
-
198
- if (layoutableChildNode.yogaNode_.getOwner() == nullptr) {
196
+ if (childNode.yogaNode_.getOwner() == nullptr) {
199
197
  // The child node is not owned.
200
- layoutableChildNode.yogaNode_.setOwner(&yogaNode_);
198
+ childNode.yogaNode_.setOwner(&yogaNode_);
201
199
  // At this point the child yoga node must be already inserted by the caller.
202
200
  // react_native_assert(layoutableChildNode.yogaNode_.isDirty());
203
201
  } else {
204
202
  // The child is owned by some other node, we need to clone that.
203
+ // TODO: At this point, React has wrong reference to the node. (T138668036)
205
204
  auto clonedChildNode = childNode.clone({});
206
- auto &layoutableClonedChildNode =
207
- traitCast<YogaLayoutableShadowNode const &>(*clonedChildNode);
208
-
209
- // The owner must be nullptr for a newly cloned node.
210
- react_native_assert(
211
- layoutableClonedChildNode.yogaNode_.getOwner() == nullptr);
212
-
213
- // Establishing ownership.
214
- layoutableClonedChildNode.yogaNode_.setOwner(&yogaNode_);
215
205
 
216
206
  // Replace the child node with a newly cloned one in the children list.
217
207
  replaceChild(childNode, clonedChildNode, static_cast<int>(index));
218
-
219
- // Replace the Yoga node inside the Yoga node children list.
220
- yogaNode_.replaceChild(
221
- &layoutableClonedChildNode.yogaNode_, static_cast<int>(index));
222
208
  }
223
209
 
224
210
  ensureYogaChildrenLookFine();
@@ -229,7 +215,7 @@ void YogaLayoutableShadowNode::appendChild(
229
215
  ensureUnsealed();
230
216
  ensureConsistency();
231
217
 
232
- // Calling the base class (`ShadowNode`) mehtod.
218
+ // Calling the base class (`ShadowNode`) method.
233
219
  LayoutableShadowNode::appendChild(childNode);
234
220
 
235
221
  if (getTraits().check(ShadowNodeTraits::Trait::LeafYogaNode)) {
@@ -237,33 +223,79 @@ void YogaLayoutableShadowNode::appendChild(
237
223
  return;
238
224
  }
239
225
 
240
- // Here we don't have information about the previous structure of the node (if
241
- // it that existed before), so we don't have anything to compare the Yoga node
242
- // with (like a previous version of this node). Therefore we must dirty the
243
- // node.
244
- yogaNode_.setDirty(true);
226
+ if (auto yogaLayoutableChild =
227
+ traitCast<YogaLayoutableShadowNode>(childNode)) {
228
+ // Here we don't have information about the previous structure of the node
229
+ // (if it that existed before), so we don't have anything to compare the
230
+ // Yoga node with (like a previous version of this node). Therefore we must
231
+ // dirty the node.
232
+ yogaNode_.setDirty(true);
245
233
 
246
- // All children of a non-leaf `YogaLayoutableShadowNode` must be a
247
- // `YogaLayoutableShadowNode`s to be appended. This happens when invalid
248
- // string/numeric child is passed which is not YogaLayoutableShadowNode
249
- // (e.g. RCTRawText). This used to throw an error, but we are ignoring it
250
- // because we want core library components to be fault-tolerant and degrade
251
- // gracefully. A soft error will be emitted from JavaScript.
252
- if (traitCast<YogaLayoutableShadowNode const *>(childNode.get()) != nullptr) {
253
234
  // Appending the Yoga node.
254
- appendYogaChild(*childNode);
235
+ appendYogaChild(yogaLayoutableChild);
255
236
 
256
237
  ensureYogaChildrenLookFine();
257
- ensureYogaChildrenAlighment();
238
+ ensureYogaChildrenAlignment();
258
239
 
259
240
  // Adopting the Yoga node.
260
241
  adoptYogaChild(getChildren().size() - 1);
261
242
 
262
243
  ensureConsistency();
244
+ }
245
+ }
246
+
247
+ void YogaLayoutableShadowNode::replaceChild(
248
+ ShadowNode const &oldChild,
249
+ ShadowNode::Shared const &newChild,
250
+ size_t suggestedIndex) {
251
+ LayoutableShadowNode::replaceChild(oldChild, newChild, suggestedIndex);
252
+
253
+ ensureUnsealed();
254
+ ensureYogaChildrenLookFine();
255
+
256
+ auto layoutableOldChild =
257
+ traitCast<YogaLayoutableShadowNode const *>(&oldChild);
258
+ auto layoutableNewChild = traitCast<YogaLayoutableShadowNode>(newChild);
259
+
260
+ if (layoutableOldChild == nullptr && layoutableNewChild == nullptr) {
261
+ // No need to mutate yogaLayoutableChildren_
262
+ return;
263
+ }
264
+
265
+ bool suggestedIndexAccurate = suggestedIndex >= 0 &&
266
+ suggestedIndex < yogaLayoutableChildren_.size() &&
267
+ yogaLayoutableChildren_[suggestedIndex].get() == layoutableOldChild;
268
+
269
+ auto oldChildIter = suggestedIndexAccurate
270
+ ? yogaLayoutableChildren_.begin() + suggestedIndex
271
+ : std::find_if(
272
+ yogaLayoutableChildren_.begin(),
273
+ yogaLayoutableChildren_.end(),
274
+ [&](YogaLayoutableShadowNode::Shared const &layoutableChild) {
275
+ return layoutableChild.get() == layoutableOldChild;
276
+ });
277
+ auto oldChildIndex =
278
+ static_cast<int32_t>(oldChildIter - yogaLayoutableChildren_.begin());
279
+
280
+ if (oldChildIter == yogaLayoutableChildren_.end()) {
281
+ // oldChild does not exist as part of our node
282
+ return;
283
+ }
284
+
285
+ if (layoutableNewChild) {
286
+ // Both children are layoutable, replace the old one with the new one
287
+ react_native_assert(layoutableNewChild->yogaNode_.getOwner() == nullptr);
288
+ layoutableNewChild->yogaNode_.setOwner(&yogaNode_);
289
+ *oldChildIter = layoutableNewChild;
290
+ yogaNode_.replaceChild(&layoutableNewChild->yogaNode_, oldChildIndex);
263
291
  } else {
264
- react_native_log_error(
265
- "Text strings must be rendered within a <Text> component.");
292
+ // Layoutable child replaced with non layoutable child. Remove the previous
293
+ // child from the layoutable children list.
294
+ yogaLayoutableChildren_.erase(oldChildIter);
295
+ yogaNode_.removeChild(oldChildIndex);
266
296
  }
297
+
298
+ ensureYogaChildrenLookFine();
267
299
  }
268
300
 
269
301
  bool YogaLayoutableShadowNode::doesOwn(
@@ -291,23 +323,28 @@ void YogaLayoutableShadowNode::updateYogaChildren() {
291
323
 
292
324
  auto oldYogaChildren = isClean ? yogaNode_.getChildren() : YGVector{};
293
325
  yogaNode_.setChildren({});
326
+ yogaLayoutableChildren_.clear();
294
327
 
295
328
  for (size_t i = 0; i < getChildren().size(); i++) {
296
- appendYogaChild(*getChildren().at(i));
297
- adoptYogaChild(i);
298
-
299
- if (isClean) {
300
- auto &oldYogaChildNode = *oldYogaChildren[i];
301
- auto &newYogaChildNode =
302
- traitCast<YogaLayoutableShadowNode const &>(*getChildren().at(i))
303
- .yogaNode_;
304
-
305
- isClean = isClean && !newYogaChildNode.isDirty() &&
306
- (newYogaChildNode.getStyle() == oldYogaChildNode.getStyle());
329
+ if (auto yogaLayoutableChild =
330
+ traitCast<YogaLayoutableShadowNode>(getChildren()[i])) {
331
+ appendYogaChild(yogaLayoutableChild);
332
+ adoptYogaChild(i);
333
+
334
+ if (isClean) {
335
+ auto yogaChildIndex = yogaLayoutableChildren_.size() - 1;
336
+ auto &oldYogaChildNode = *oldYogaChildren.at(yogaChildIndex);
337
+ auto &newYogaChildNode =
338
+ yogaLayoutableChildren_.at(yogaChildIndex)->yogaNode_;
339
+
340
+ isClean = isClean && !newYogaChildNode.isDirty() &&
341
+ (newYogaChildNode.getStyle() == oldYogaChildNode.getStyle());
342
+ }
307
343
  }
308
344
  }
309
345
 
310
- react_native_assert(getChildren().size() == yogaNode_.getChildren().size());
346
+ react_native_assert(
347
+ yogaLayoutableChildren_.size() == yogaNode_.getChildren().size());
311
348
 
312
349
  yogaNode_.setDirty(!isClean);
313
350
  }
@@ -316,13 +353,62 @@ void YogaLayoutableShadowNode::updateYogaProps() {
316
353
  ensureUnsealed();
317
354
 
318
355
  auto props = static_cast<YogaStylableProps const &>(*props_);
356
+ auto styleResult = applyAliasedProps(props.yogaStyle, props);
319
357
 
320
358
  // Resetting `dirty` flag only if `yogaStyle` portion of `Props` was changed.
321
- if (!yogaNode_.isDirty() && (props.yogaStyle != yogaNode_.getStyle())) {
359
+ if (!yogaNode_.isDirty() && (styleResult != yogaNode_.getStyle())) {
322
360
  yogaNode_.setDirty(true);
323
361
  }
324
362
 
325
- yogaNode_.setStyle(props.yogaStyle);
363
+ yogaNode_.setStyle(styleResult);
364
+ }
365
+
366
+ /*static*/ YGStyle YogaLayoutableShadowNode::applyAliasedProps(
367
+ const YGStyle &baseStyle,
368
+ const YogaStylableProps &props) {
369
+ YGStyle result{baseStyle};
370
+
371
+ // Aliases with precedence
372
+ if (!props.marginInline.isUndefined()) {
373
+ result.margin()[YGEdgeHorizontal] = props.marginInline;
374
+ }
375
+ if (!props.marginInlineStart.isUndefined()) {
376
+ result.margin()[YGEdgeStart] = props.marginInlineStart;
377
+ }
378
+ if (!props.marginInlineEnd.isUndefined()) {
379
+ result.margin()[YGEdgeEnd] = props.marginInlineEnd;
380
+ }
381
+ if (!props.marginBlock.isUndefined()) {
382
+ result.margin()[YGEdgeVertical] = props.marginBlock;
383
+ }
384
+ if (!props.paddingInline.isUndefined()) {
385
+ result.padding()[YGEdgeHorizontal] = props.paddingInline;
386
+ }
387
+ if (!props.paddingInlineStart.isUndefined()) {
388
+ result.padding()[YGEdgeStart] = props.paddingInlineStart;
389
+ }
390
+ if (!props.paddingInlineEnd.isUndefined()) {
391
+ result.padding()[YGEdgeEnd] = props.paddingInlineEnd;
392
+ }
393
+ if (!props.paddingBlock.isUndefined()) {
394
+ result.padding()[YGEdgeVertical] = props.paddingBlock;
395
+ }
396
+
397
+ // Aliases without precedence
398
+ if (CompactValue(result.margin()[YGEdgeTop]).isUndefined()) {
399
+ result.margin()[YGEdgeTop] = props.marginBlockStart;
400
+ }
401
+ if (CompactValue(result.margin()[YGEdgeBottom]).isUndefined()) {
402
+ result.margin()[YGEdgeBottom] = props.marginBlockEnd;
403
+ }
404
+ if (CompactValue(result.padding()[YGEdgeTop]).isUndefined()) {
405
+ result.padding()[YGEdgeTop] = props.paddingBlockStart;
406
+ }
407
+ if (CompactValue(result.padding()[YGEdgeBottom]).isUndefined()) {
408
+ result.padding()[YGEdgeBottom] = props.paddingBlockEnd;
409
+ }
410
+
411
+ return result;
326
412
  }
327
413
 
328
414
  void YogaLayoutableShadowNode::setSize(Size size) const {
@@ -398,7 +484,7 @@ void YogaLayoutableShadowNode::layoutTree(
398
484
  react_native_assert(minimumSize.height >= 0);
399
485
  react_native_assert(maximumSize.width >= 0);
400
486
  react_native_assert(maximumSize.height >= 0);
401
- // Mimimum size cannot be infinity.
487
+ // Minimum size cannot be infinity.
402
488
  react_native_assert(!std::isinf(minimumSize.width));
403
489
  react_native_assert(!std::isinf(minimumSize.height));
404
490
 
@@ -479,8 +565,7 @@ void YogaLayoutableShadowNode::layout(LayoutContext layoutContext) {
479
565
 
480
566
  auto contentFrame = Rect{};
481
567
  for (auto childYogaNode : yogaNode_.getChildren()) {
482
- auto &childNode =
483
- *static_cast<YogaLayoutableShadowNode *>(childYogaNode->getContext());
568
+ auto &childNode = shadowNodeFromContext(childYogaNode);
484
569
 
485
570
  // Verifying that the Yoga node belongs to the ShadowNode.
486
571
  react_native_assert(&childNode.yogaNode_ == childYogaNode);
@@ -519,12 +604,19 @@ void YogaLayoutableShadowNode::layout(LayoutContext layoutContext) {
519
604
 
520
605
  auto layoutMetricsWithOverflowInset = childNode.getLayoutMetrics();
521
606
  if (layoutMetricsWithOverflowInset.displayType != DisplayType::None) {
607
+ auto viewChildNode = traitCast<ViewShadowNode const *>(&childNode);
608
+ auto hitSlop = viewChildNode != nullptr
609
+ ? viewChildNode->getConcreteProps().hitSlop
610
+ : EdgeInsets{};
611
+
522
612
  // The contentFrame should always union with existing child node layout +
523
613
  // overflowInset. The transform may in a deferred animation and not
524
614
  // applied yet.
525
615
  contentFrame.unionInPlace(insetBy(
526
616
  layoutMetricsWithOverflowInset.frame,
527
617
  layoutMetricsWithOverflowInset.overflowInset));
618
+ contentFrame.unionInPlace(
619
+ outsetBy(layoutMetricsWithOverflowInset.frame, hitSlop));
528
620
 
529
621
  auto childTransform = childNode.getTransform();
530
622
  if (childTransform != Transform::Identity()) {
@@ -534,6 +626,8 @@ void YogaLayoutableShadowNode::layout(LayoutContext layoutContext) {
534
626
  contentFrame.unionInPlace(insetBy(
535
627
  layoutMetricsWithOverflowInset.frame * childTransform,
536
628
  layoutMetricsWithOverflowInset.overflowInset * childTransform));
629
+ contentFrame.unionInPlace(outsetBy(
630
+ layoutMetricsWithOverflowInset.frame * childTransform, hitSlop));
537
631
  }
538
632
  }
539
633
  }
@@ -564,17 +658,15 @@ YGNode *YogaLayoutableShadowNode::yogaNodeCloneCallbackConnector(
564
658
 
565
659
  // At this point it is guaranteed that all shadow nodes associated with yoga
566
660
  // nodes are `YogaLayoutableShadowNode` subclasses.
567
- auto parentNode =
568
- static_cast<YogaLayoutableShadowNode *>(parentYogaNode->getContext());
569
- auto oldNode =
570
- static_cast<YogaLayoutableShadowNode *>(oldYogaNode->getContext());
661
+ auto &parentNode = shadowNodeFromContext(parentYogaNode);
662
+ auto &oldNode = shadowNodeFromContext(oldYogaNode);
571
663
 
572
- auto clonedNode = oldNode->clone(
664
+ auto clonedNode = oldNode.clone(
573
665
  {ShadowNodeFragment::propsPlaceholder(),
574
666
  ShadowNodeFragment::childrenPlaceholder(),
575
- oldNode->getState()});
576
- parentNode->replaceChild(*oldNode, clonedNode, childIndex);
577
- return &static_cast<YogaLayoutableShadowNode &>(*clonedNode).yogaNode_;
667
+ oldNode.getState()});
668
+ parentNode.replaceChild(oldNode, clonedNode, childIndex);
669
+ return &traitCast<YogaLayoutableShadowNode &>(*clonedNode).yogaNode_;
578
670
  }
579
671
 
580
672
  YGSize YogaLayoutableShadowNode::yogaNodeMeasureCallbackConnector(
@@ -586,8 +678,7 @@ YGSize YogaLayoutableShadowNode::yogaNodeMeasureCallbackConnector(
586
678
  SystraceSection s(
587
679
  "YogaLayoutableShadowNode::yogaNodeMeasureCallbackConnector");
588
680
 
589
- auto shadowNodeRawPtr =
590
- static_cast<YogaLayoutableShadowNode *>(yogaNode->getContext());
681
+ auto &shadowNode = shadowNodeFromContext(yogaNode);
591
682
 
592
683
  auto minimumSize = Size{0, 0};
593
684
  auto maximumSize = Size{
@@ -618,13 +709,19 @@ YGSize YogaLayoutableShadowNode::yogaNodeMeasureCallbackConnector(
618
709
  break;
619
710
  }
620
711
 
621
- auto size = shadowNodeRawPtr->measureContent(
712
+ auto size = shadowNode.measureContent(
622
713
  threadLocalLayoutContext, {minimumSize, maximumSize});
623
714
 
624
715
  return YGSize{
625
716
  yogaFloatFromFloat(size.width), yogaFloatFromFloat(size.height)};
626
717
  }
627
718
 
719
+ YogaLayoutableShadowNode &YogaLayoutableShadowNode::shadowNodeFromContext(
720
+ YGNode *yogaNode) {
721
+ return traitCast<YogaLayoutableShadowNode &>(
722
+ *static_cast<ShadowNode *>(yogaNode->getContext()));
723
+ }
724
+
628
725
  YGConfig &YogaLayoutableShadowNode::initializeYogaConfig(YGConfig &config) {
629
726
  config.setCloneNodeCallback(
630
727
  YogaLayoutableShadowNode::yogaNodeCloneCallbackConnector);
@@ -642,12 +739,9 @@ void YogaLayoutableShadowNode::swapLeftAndRightInTree(
642
739
  swapLeftAndRightInYogaStyleProps(shadowNode);
643
740
  swapLeftAndRightInViewProps(shadowNode);
644
741
 
645
- for (auto &child : shadowNode.getChildren()) {
646
- auto const yogaLayoutableChild =
647
- traitCast<YogaLayoutableShadowNode const *>(child.get());
648
- if ((yogaLayoutableChild != nullptr) &&
649
- !yogaLayoutableChild->doesOwn(shadowNode)) {
650
- swapLeftAndRightInTree(*yogaLayoutableChild);
742
+ for (auto &child : shadowNode.yogaLayoutableChildren_) {
743
+ if (!child->doesOwn(shadowNode)) {
744
+ swapLeftAndRightInTree(*child);
651
745
  }
652
746
  }
653
747
  }
@@ -701,6 +795,7 @@ void YogaLayoutableShadowNode::swapLeftAndRightInViewProps(
701
795
  auto &props = const_cast<ViewProps &>(typedCasting);
702
796
 
703
797
  // Swap border node values, borderRadii, borderColors and borderStyles.
798
+
704
799
  if (props.borderRadii.topLeft.has_value()) {
705
800
  props.borderRadii.topStart = props.borderRadii.topLeft;
706
801
  props.borderRadii.topLeft.reset();
@@ -758,7 +853,7 @@ void YogaLayoutableShadowNode::swapLeftAndRightInViewProps(
758
853
 
759
854
  void YogaLayoutableShadowNode::ensureConsistency() const {
760
855
  ensureYogaChildrenLookFine();
761
- ensureYogaChildrenAlighment();
856
+ ensureYogaChildrenAlignment();
762
857
  ensureYogaChildrenOwnersConsistency();
763
858
  }
764
859
 
@@ -795,7 +890,7 @@ void YogaLayoutableShadowNode::ensureYogaChildrenLookFine() const {
795
890
  #endif
796
891
  }
797
892
 
798
- void YogaLayoutableShadowNode::ensureYogaChildrenAlighment() const {
893
+ void YogaLayoutableShadowNode::ensureYogaChildrenAlignment() const {
799
894
  #ifdef REACT_NATIVE_DEBUG
800
895
  // If the node is not a leaf node, checking that:
801
896
  // - All children are `YogaLayoutableShadowNode` subclasses.
@@ -803,7 +898,7 @@ void YogaLayoutableShadowNode::ensureYogaChildrenAlighment() const {
803
898
  // this node.
804
899
 
805
900
  auto &yogaChildren = yogaNode_.getChildren();
806
- auto &children = getChildren();
901
+ auto &children = yogaLayoutableChildren_;
807
902
 
808
903
  if (getTraits().check(ShadowNodeTraits::Trait::LeafYogaNode)) {
809
904
  react_native_assert(yogaChildren.empty());