react-native 0.71.3 → 0.72.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1263) 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 +1 -8
  21. package/Libraries/AppDelegate/RCTAppDelegate.mm +49 -25
  22. package/{React/AppSetup → Libraries/AppDelegate}/RCTAppSetupUtils.h +7 -1
  23. package/{React/AppSetup → Libraries/AppDelegate}/RCTAppSetupUtils.mm +16 -9
  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 +26 -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 +10 -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 +2 -2
  47. package/Libraries/Components/ScrollView/ScrollView.js +149 -91
  48. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -6
  49. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +5 -7
  50. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +1 -1
  51. package/Libraries/Components/StatusBar/StatusBar.js +3 -0
  52. package/Libraries/Components/Switch/Switch.js +3 -1
  53. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +21 -11
  54. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +1 -1
  55. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +11 -5
  56. package/Libraries/Components/TextInput/TextInput.d.ts +15 -5
  57. package/Libraries/Components/TextInput/TextInput.flow.js +1 -1
  58. package/Libraries/Components/TextInput/TextInput.js +142 -108
  59. package/Libraries/Components/Touchable/Touchable.d.ts +1 -1
  60. package/Libraries/Components/Touchable/Touchable.flow.js +30 -4
  61. package/Libraries/Components/Touchable/Touchable.js +6 -3
  62. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -1
  63. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +2 -2
  64. package/Libraries/Components/Touchable/TouchableOpacity.js +5 -3
  65. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +3 -3
  66. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +5 -5
  67. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlay.js +179 -0
  68. package/Libraries/Components/TraceUpdateOverlay/TraceUpdateOverlayNativeComponent.js +43 -0
  69. package/Libraries/Components/View/ReactNativeStyleAttributes.js +26 -0
  70. package/Libraries/Components/View/View.js +35 -16
  71. package/Libraries/Components/View/ViewAccessibility.d.ts +6 -6
  72. package/Libraries/Components/View/ViewAccessibility.js +10 -1
  73. package/Libraries/Components/View/ViewNativeComponent.js +32 -8
  74. package/Libraries/Components/View/ViewPropTypes.d.ts +1 -1
  75. package/Libraries/Components/View/ViewPropTypes.js +1 -1
  76. package/Libraries/Core/Devtools/openFileInEditor.js +1 -0
  77. package/Libraries/Core/Devtools/openURLInBrowser.js +1 -0
  78. package/Libraries/Core/Devtools/parseErrorStack.js +2 -2
  79. package/Libraries/Core/Devtools/parseHermesStack.js +54 -34
  80. package/Libraries/Core/ExceptionsManager.js +2 -2
  81. package/Libraries/Core/InitializeCore.js +2 -1
  82. package/Libraries/Core/ReactNativeVersion.js +3 -3
  83. package/Libraries/Core/ReactNativeVersionCheck.js +1 -9
  84. package/Libraries/Core/Timers/JSTimers.js +1 -1
  85. package/Libraries/Core/Timers/immediateShim.js +1 -0
  86. package/Libraries/Core/Timers/queueMicrotask.js +1 -1
  87. package/Libraries/Core/setUpAlert.js +1 -1
  88. package/Libraries/Core/setUpDOM.js +18 -0
  89. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  90. package/Libraries/Core/setUpGlobals.js +5 -2
  91. package/Libraries/Core/setUpNavigator.js +6 -5
  92. package/Libraries/Core/setUpPerformance.js +23 -13
  93. package/Libraries/Core/setUpReactDevTools.js +2 -0
  94. package/Libraries/Core/setUpSegmentFetcher.js +0 -41
  95. package/Libraries/Core/setUpTimers.js +2 -2
  96. package/Libraries/DOM/Geometry/DOMRect.js +82 -0
  97. package/Libraries/DOM/Geometry/DOMRectReadOnly.js +188 -0
  98. package/Libraries/DOM/Nodes/ReactNativeElement.js +75 -0
  99. package/Libraries/DOM/Nodes/ReadOnlyElement.js +89 -0
  100. package/Libraries/DOM/Nodes/ReadOnlyNode.js +167 -0
  101. package/Libraries/DOM/OldStyleCollections/ArrayLikeUtils.js +46 -0
  102. package/Libraries/DOM/OldStyleCollections/DOMRectList.js +76 -0
  103. package/Libraries/DOM/OldStyleCollections/DOMRectList.js.flow +27 -0
  104. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js +82 -0
  105. package/Libraries/DOM/OldStyleCollections/HTMLCollection.js.flow +27 -0
  106. package/Libraries/DOM/OldStyleCollections/NodeList.js +104 -0
  107. package/Libraries/DOM/OldStyleCollections/NodeList.js.flow +31 -0
  108. package/Libraries/DevToolsSettings/DevToolsSettingsManager.android.js +35 -0
  109. package/Libraries/DevToolsSettings/DevToolsSettingsManager.d.ts +20 -0
  110. package/Libraries/DevToolsSettings/DevToolsSettingsManager.ios.js +49 -0
  111. package/Libraries/DevToolsSettings/NativeDevToolsSettingsManager.js +24 -0
  112. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +1 -2
  113. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +1 -2
  114. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -1
  115. package/Libraries/Events/EventPolyfill.js +1 -1
  116. package/Libraries/FBLazyVector/BUCK +2 -2
  117. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  118. package/Libraries/Image/AssetRegistry.js +1 -1
  119. package/Libraries/Image/AssetSourceResolver.js +3 -3
  120. package/Libraries/Image/Image.android.js +4 -1
  121. package/Libraries/Image/Image.d.ts +63 -2
  122. package/Libraries/Image/Image.ios.js +3 -0
  123. package/Libraries/Image/ImageBackground.js +1 -0
  124. package/Libraries/Image/ImageProps.js +1 -1
  125. package/Libraries/Image/ImageViewNativeComponent.js +4 -4
  126. package/Libraries/Image/ImageViewNativeComponent.js.flow +1 -4
  127. package/Libraries/Image/RCTImageCache.h +1 -1
  128. package/Libraries/Image/RCTImageCache.m +4 -4
  129. package/Libraries/Image/RCTImageView.mm +1 -1
  130. package/Libraries/Image/React-RCTImage.podspec +15 -2
  131. package/Libraries/Image/RelativeImageStub.js +1 -1
  132. package/Libraries/Image/TextInlineImageNativeComponent.js +1 -1
  133. package/Libraries/Image/resolveAssetSource.js +1 -1
  134. package/Libraries/Inspector/DevtoolsOverlay.js +26 -19
  135. package/Libraries/Inspector/ElementBox.js +4 -1
  136. package/Libraries/Inspector/Inspector.js +5 -6
  137. package/Libraries/Inspector/InspectorOverlay.js +3 -3
  138. package/Libraries/Inspector/NetworkOverlay.js +1 -1
  139. package/Libraries/Interaction/JSEventLoopWatchdog.js +1 -1
  140. package/Libraries/Interaction/PanResponder.js +5 -6
  141. package/Libraries/LayoutAnimation/LayoutAnimation.js +2 -1
  142. package/Libraries/Linking/Linking.js +1 -4
  143. package/Libraries/LinkingIOS/React-RCTLinking.podspec +15 -2
  144. package/Libraries/Lists/FillRateHelper.js +4 -238
  145. package/Libraries/Lists/FlatList.d.ts +20 -27
  146. package/Libraries/Lists/FlatList.js +28 -12
  147. package/Libraries/Lists/FlatList.js.flow +4 -3
  148. package/Libraries/Lists/SectionList.d.ts +10 -6
  149. package/Libraries/Lists/SectionList.js +5 -3
  150. package/Libraries/Lists/SectionListModern.js +3 -3
  151. package/Libraries/Lists/ViewabilityHelper.js +8 -344
  152. package/Libraries/Lists/VirtualizeUtils.js +4 -244
  153. package/Libraries/Lists/VirtualizedList.js +10 -1867
  154. package/Libraries/Lists/VirtualizedListContext.js +6 -104
  155. package/Libraries/Lists/VirtualizedSectionList.js +9 -602
  156. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +1 -0
  157. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  158. package/Libraries/LogBox/Data/LogBoxData.js +1 -1
  159. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  160. package/Libraries/LogBox/LogBox.js +1 -1
  161. package/Libraries/LogBox/UI/LogBoxInspector.js +1 -3
  162. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  163. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +2 -2
  164. package/Libraries/LogBox/UI/LogBoxMessage.js +87 -5
  165. package/Libraries/LogBox/UI/LogBoxNotification.js +5 -7
  166. package/Libraries/Modal/Modal.js +2 -2
  167. package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +3 -2
  168. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.h +14 -0
  169. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.m +108 -102
  170. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +1 -1
  171. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +6 -1
  172. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.h +1 -1
  173. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m +5 -0
  174. package/Libraries/NativeAnimation/RCTAnimationUtils.h +16 -11
  175. package/Libraries/NativeAnimation/RCTAnimationUtils.m +24 -6
  176. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +15 -2
  177. package/Libraries/NativeComponent/BaseViewConfig.android.js +32 -12
  178. package/Libraries/NativeComponent/BaseViewConfig.ios.js +43 -19
  179. package/Libraries/NativeComponent/NativeComponentRegistryUnstable.js +4 -1
  180. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  181. package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -4
  182. package/Libraries/Network/RCTNetworking.android.js +2 -2
  183. package/Libraries/Network/RCTNetworking.ios.js +1 -1
  184. package/Libraries/Network/RCTNetworking.mm +3 -2
  185. package/Libraries/Network/React-RCTNetwork.podspec +15 -2
  186. package/Libraries/Network/XMLHttpRequest.js +1 -1
  187. package/Libraries/Pressability/Pressability.js +10 -4
  188. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +15 -2
  189. package/Libraries/RCTRequired/BUCK +3 -2
  190. package/Libraries/RCTRequired/RCTRequired.podspec +1 -1
  191. package/Libraries/ReactNative/AppContainer.js +7 -1
  192. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  193. package/Libraries/ReactNative/AppRegistry.js +10 -13
  194. package/Libraries/ReactNative/FabricUIManager.js +24 -8
  195. package/Libraries/ReactNative/NativeUIManager.js +5 -5
  196. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +10 -10
  197. package/Libraries/ReactNative/UIManager.js +142 -1
  198. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +5 -5
  199. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  200. package/Libraries/ReactNative/requireNativeComponent.d.ts +1 -1
  201. package/Libraries/ReactNative/requireNativeComponent.js +1 -1
  202. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -0
  203. package/Libraries/Renderer/REVISION +1 -1
  204. package/Libraries/Renderer/public/ReactFabricPublicInstanceUtils.js +38 -0
  205. package/Libraries/Renderer/shims/ReactNativeTypes.js +6 -6
  206. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +7 -7
  207. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  208. package/Libraries/Settings/React-RCTSettings.podspec +15 -2
  209. package/Libraries/Share/Share.js +1 -1
  210. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  211. package/Libraries/StyleSheet/StyleSheet.js +1 -1
  212. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +115 -76
  213. package/Libraries/StyleSheet/StyleSheetTypes.js +188 -33
  214. package/Libraries/StyleSheet/flattenStyle.js +2 -0
  215. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  216. package/Libraries/StyleSheet/processColor.js +1 -1
  217. package/Libraries/Text/React-RCTText.podspec +1 -1
  218. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +3 -3
  219. package/Libraries/Text/Text/RCTTextView.m +4 -4
  220. package/Libraries/Text/Text.d.ts +12 -2
  221. package/Libraries/Text/Text.js +50 -41
  222. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +1 -1
  223. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +12 -6
  224. package/Libraries/Text/TextProps.js +3 -4
  225. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +6 -0
  226. package/Libraries/TypeSafety/RCTConvertHelpers.h +1 -1
  227. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  228. package/Libraries/Types/CodegenTypes.js +1 -0
  229. package/Libraries/UTFSequence.js +3 -1
  230. package/Libraries/Utilities/Appearance.d.ts +10 -0
  231. package/Libraries/Utilities/Appearance.js +13 -0
  232. package/Libraries/Utilities/Dimensions.js +1 -1
  233. package/Libraries/Utilities/GlobalPerformanceLogger.js +12 -1
  234. package/Libraries/Utilities/HMRClient.js +16 -10
  235. package/Libraries/Utilities/{createPerformanceLogger.d.ts → IPerformanceLogger.d.ts} +4 -4
  236. package/Libraries/Utilities/IPerformanceLogger.js +49 -0
  237. package/Libraries/Utilities/LoadingView.android.js +28 -11
  238. package/Libraries/Utilities/NativeAppearance.js +1 -0
  239. package/Libraries/Utilities/PixelRatio.js +2 -2
  240. package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
  241. package/Libraries/Utilities/__mocks__/PixelRatio.js +1 -1
  242. package/Libraries/Utilities/codegenNativeCommands.js +2 -0
  243. package/Libraries/Utilities/createPerformanceLogger.js +55 -43
  244. package/Libraries/Utilities/stringifySafe.js +2 -7
  245. package/Libraries/Utilities/useWindowDimensions.js +3 -3
  246. package/Libraries/Vibration/React-RCTVibration.podspec +15 -2
  247. package/Libraries/WebPerformance/EventCounts.js +78 -0
  248. package/Libraries/WebPerformance/MemoryInfo.js +54 -0
  249. package/Libraries/WebPerformance/NativePerformance.cpp +74 -0
  250. package/Libraries/WebPerformance/NativePerformance.h +76 -0
  251. package/Libraries/WebPerformance/NativePerformance.js +38 -0
  252. package/Libraries/WebPerformance/NativePerformanceObserver.cpp +69 -11
  253. package/Libraries/WebPerformance/NativePerformanceObserver.h +38 -7
  254. package/Libraries/WebPerformance/NativePerformanceObserver.js +22 -7
  255. package/Libraries/WebPerformance/Performance.js +312 -0
  256. package/Libraries/WebPerformance/PerformanceEntry.js +45 -0
  257. package/Libraries/WebPerformance/PerformanceEntryReporter.cpp +408 -0
  258. package/Libraries/WebPerformance/PerformanceEntryReporter.h +219 -0
  259. package/Libraries/WebPerformance/PerformanceEventTiming.js +38 -0
  260. package/Libraries/WebPerformance/PerformanceObserver.js +196 -101
  261. package/Libraries/WebPerformance/RawPerformanceEntry.js +87 -0
  262. package/Libraries/WebPerformance/ReactNativeStartupTiming.js +65 -0
  263. package/Libraries/WebPerformance/__mocks__/NativePerformance.js +65 -0
  264. package/Libraries/WebPerformance/__mocks__/NativePerformanceObserver.js +101 -0
  265. package/Libraries/WebSocket/RCTReconnectingWebSocket.m +10 -10
  266. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -1
  267. package/Libraries/vendor/core/ErrorUtils.js +1 -1
  268. package/Libraries/vendor/emitter/EventEmitter.d.ts +2 -2
  269. package/Libraries/vendor/emitter/EventEmitter.js +9 -1
  270. package/README.md +1 -1
  271. package/React/Base/RCTBridge+Private.h +1 -1
  272. package/React/Base/RCTBridge.h +2 -11
  273. package/React/Base/RCTBridge.m +0 -34
  274. package/React/Base/RCTBridgeModuleDecorator.h +1 -1
  275. package/React/Base/RCTBundleURLProvider.mm +5 -1
  276. package/React/Base/RCTConvert.h +2 -1
  277. package/React/Base/RCTConvert.m +28 -15
  278. package/React/Base/RCTDefines.h +37 -8
  279. package/React/Base/RCTDisplayLink.m +7 -0
  280. package/React/Base/RCTJSScriptLoaderModule.h +5 -1
  281. package/React/Base/RCTRootContentView.h +1 -1
  282. package/React/Base/RCTRootContentView.m +1 -1
  283. package/React/Base/RCTRootView.m +1 -1
  284. package/React/Base/RCTVersion.m +3 -3
  285. package/React/Base/Surface/RCTSurfaceRootShadowViewDelegate.h +1 -1
  286. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +3 -3
  287. package/React/CoreModules/BUCK +3 -6
  288. package/React/CoreModules/RCTAccessibilityManager+Internal.h +1 -1
  289. package/React/CoreModules/RCTAlertManager.mm +0 -14
  290. package/React/CoreModules/RCTAppearance.h +1 -0
  291. package/React/CoreModules/RCTAppearance.mm +12 -0
  292. package/React/CoreModules/RCTDevLoadingView.h +0 -1
  293. package/React/CoreModules/RCTDevMenu.mm +2 -2
  294. package/React/CoreModules/RCTDevSettings.mm +16 -2
  295. package/React/CoreModules/RCTDevSplitBundleLoader.mm +6 -4
  296. package/React/CoreModules/RCTExceptionsManager.mm +13 -6
  297. package/React/CoreModules/RCTFPSGraph.m +8 -3
  298. package/React/CoreModules/RCTPlatform.mm +2 -2
  299. package/React/CoreModules/RCTTiming.h +8 -4
  300. package/React/CoreModules/RCTWebSocketExecutor.mm +10 -10
  301. package/React/CoreModules/RCTWebSocketModule.mm +13 -13
  302. package/React/CoreModules/React-CoreModules.podspec +16 -2
  303. package/React/CxxBridge/RCTCxxBridge.mm +3 -2
  304. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +1 -10
  305. package/React/CxxModule/RCTNativeModule.mm +3 -2
  306. package/React/CxxUtils/RCTFollyConvert.mm +1 -0
  307. package/React/DevSupport/RCTInspectorDevServerHelper.h +1 -1
  308. package/React/DevSupport/RCTInspectorDevServerHelper.mm +1 -1
  309. package/React/DevSupport/RCTPackagerConnection.mm +1 -1
  310. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +1 -1
  311. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -2
  312. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
  313. package/React/{Views/RCTDatePicker.h → Fabric/Mounting/ComponentViews/ScrollView/RCTCustomPullToRefreshViewProtocol.h} +4 -1
  314. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.h +2 -1
  315. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +2 -2
  316. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +91 -1
  317. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +14 -24
  318. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +9 -5
  319. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +0 -2
  320. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +0 -2
  321. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +0 -6
  322. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +1 -2
  323. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +16 -16
  324. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +4 -3
  325. package/React/Fabric/Mounting/RCTMountingManager.h +2 -1
  326. package/React/Fabric/Mounting/RCTMountingManager.mm +12 -14
  327. package/React/Fabric/RCTConversions.h +0 -1
  328. package/React/Fabric/RCTScheduler.h +1 -1
  329. package/React/Fabric/RCTScheduler.mm +2 -11
  330. package/React/Fabric/RCTSurfacePointerHandler.h +28 -0
  331. package/React/Fabric/RCTSurfacePointerHandler.mm +882 -0
  332. package/React/Fabric/RCTSurfacePresenter.h +1 -1
  333. package/React/Fabric/RCTSurfacePresenter.mm +16 -6
  334. package/React/Fabric/RCTSurfaceRegistry.mm +5 -6
  335. package/React/Fabric/RCTSurfaceTouchHandler.mm +27 -600
  336. package/React/Fabric/Utils/RCTIdentifierPool.h +44 -0
  337. package/React/Fabric/Utils/RCTReactTaggedView.h +1 -1
  338. package/React/Inspector/RCTInspector.h +1 -1
  339. package/React/Inspector/RCTInspector.mm +1 -2
  340. package/React/Inspector/RCTInspectorPackagerConnection.h +1 -1
  341. package/React/Inspector/RCTInspectorPackagerConnection.m +11 -11
  342. package/React/Modules/RCTEventEmitter.m +14 -11
  343. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  344. package/React/React-RCTFabric.podspec +31 -4
  345. package/React/Views/RCTComponentData.m +3 -15
  346. package/React/Views/RCTConvert+Transform.m +1 -1
  347. package/React/Views/RCTFont.mm +2 -2
  348. package/React/Views/RCTView.h +11 -0
  349. package/React/Views/RCTView.m +40 -18
  350. package/React/Views/RCTViewManager.m +17 -1
  351. package/React/Views/RefreshControl/RCTRefreshControl.h +1 -1
  352. package/React/Views/RefreshControl/RCTRefreshControl.m +7 -0
  353. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +1 -1
  354. package/React/Views/ScrollView/RCTScrollView.m +17 -7
  355. package/React/Views/ScrollView/RCTScrollableProtocol.h +5 -1
  356. package/React-Core.podspec +15 -4
  357. package/React.podspec +1 -1
  358. package/ReactAndroid/build.gradle +91 -23
  359. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +2 -0
  360. package/ReactAndroid/gradle.properties +6 -9
  361. package/ReactAndroid/hermes-engine/build.gradle +14 -5
  362. package/ReactAndroid/libs/BUCK +1 -1
  363. package/ReactAndroid/proguard-rules.pro +7 -0
  364. package/ReactAndroid/publish.gradle +1 -1
  365. package/ReactAndroid/src/main/java/com/facebook/BUCK +1 -3
  366. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +15 -14
  367. package/ReactAndroid/src/main/java/com/facebook/react/DebugCorePackage.java +54 -2
  368. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.java +7 -35
  369. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +12 -11
  370. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +10 -8
  371. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +11 -1
  372. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +9 -0
  373. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.java +111 -14
  374. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +63 -55
  375. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimationDriver.java +1 -1
  376. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +5 -8
  377. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.java +143 -88
  378. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +9 -22
  379. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +7 -16
  380. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java +3 -1
  381. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java +8 -1
  382. package/ReactAndroid/src/main/java/com/facebook/react/animated/ValueAnimatedNode.java +1 -2
  383. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +14 -19
  384. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +1 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.java +11 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DimensionPropConverter.java +33 -0
  387. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JSONArguments.java +110 -0
  388. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.java +1 -1
  389. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModule.java +2 -2
  390. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +30 -2
  391. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +3 -3
  392. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +13 -0
  393. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeMap.java +49 -63
  394. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +0 -12
  395. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +4 -7
  396. package/ReactAndroid/src/main/java/com/facebook/react/common/JavascriptException.java +2 -0
  397. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +0 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +18 -2
  399. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +1 -1
  400. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +5 -0
  401. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +29 -25
  402. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +29 -7
  403. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +16 -16
  404. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +6 -9
  405. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +18 -2
  406. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{DevLoadingViewController.java → DefaultDevLoadingViewImplementation.java} +10 -33
  407. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +15 -7
  408. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +38 -12
  409. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -1
  410. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorPackagerConnection.java +4 -4
  411. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSCHeapCapture.java +1 -8
  412. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxModule.java +1 -6
  413. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PerftestDevSupportManager.java +56 -0
  414. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.java +21 -0
  415. package/ReactAndroid/src/main/java/com/facebook/react/fabric/.clang-tidy +1 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +10 -13
  417. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +3 -24
  418. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +22 -3
  419. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +1 -14
  420. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +6 -37
  421. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +2 -5
  422. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +4 -0
  423. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +0 -4
  424. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +9 -7
  425. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +0 -11
  426. package/ReactAndroid/src/main/java/com/facebook/react/modules/.clang-tidy +1 -0
  427. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.java +12 -23
  428. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.java +11 -9
  429. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -0
  430. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/AppStateModule.java +3 -14
  431. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +5 -8
  432. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.java +1 -1
  433. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.java +1 -8
  434. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/FileReaderModule.java +1 -7
  435. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -3
  436. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/NativeDevSplitBundleLoaderModule.java +1 -9
  437. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/ImageStoreManager.java +1 -7
  438. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.java +1 -8
  439. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.java +3 -12
  440. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ExceptionsManagerModule.java +1 -8
  441. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/HeadlessJsTaskSupportModule.java +1 -8
  442. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.java +1 -1
  443. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +1 -8
  444. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/AnimationsDebugModule.java +1 -8
  445. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DevSettingsModule.java +2 -12
  446. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/SourceCodeModule.java +1 -8
  447. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +5 -15
  448. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/BUCK +25 -0
  449. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.java +67 -0
  450. package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/BUCK +25 -0
  451. package/ReactAndroid/src/main/java/com/facebook/react/modules/devtoolssettings/DevToolsSettingsManagerModule.java +53 -0
  452. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +2 -8
  453. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/DialogModule.java +2 -13
  454. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +0 -2
  455. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +6 -9
  456. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/FrescoModule.java +29 -11
  457. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +5 -8
  458. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +1 -9
  459. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +1 -9
  460. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +48 -14
  461. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +5 -8
  462. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +66 -63
  463. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ResponseUtil.java +26 -25
  464. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/PermissionsModule.java +1 -7
  465. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/ShareModule.java +1 -7
  466. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +0 -2
  467. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/SoundManagerModule.java +1 -8
  468. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +4 -7
  469. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +1 -6
  470. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.java +2 -1
  471. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +1 -7
  472. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  473. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/ToastModule.java +1 -7
  474. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/VibrationModule.java +1 -8
  475. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +2 -14
  476. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +2 -1
  477. package/ReactAndroid/src/main/java/com/facebook/react/processing/ReactPropertyProcessor.java +47 -26
  478. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +8 -10
  479. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +188 -4
  480. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +0 -1
  481. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/.clang-tidy +1 -0
  482. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +57 -63
  483. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +7 -14
  484. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +12 -14
  485. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IViewGroupManager.java +26 -0
  486. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/IViewManagerWithChildren.java +1 -1
  487. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +95 -53
  488. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +36 -20
  489. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +10 -1
  490. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +355 -2
  491. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/Spacing.java +21 -3
  492. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +9 -11
  493. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.java +3 -3
  494. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +16 -1
  495. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -55
  496. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.java +5 -11
  497. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +1 -1
  498. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagerRegistry.java +15 -6
  499. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +16 -0
  500. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +4 -7
  501. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +1 -1
  502. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventCategoryDef.java +3 -0
  503. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +23 -11
  504. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +12 -38
  505. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.java +4 -4
  506. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/ReactFindViewUtil.java +0 -5
  507. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +5 -8
  508. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +7 -8
  509. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.java +30 -0
  510. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.java +11 -5
  511. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +10 -15
  512. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ImageResizeMode.java +10 -11
  513. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +4 -3
  514. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +2 -4
  515. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +15 -12
  516. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -0
  517. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.java +6 -4
  518. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +4 -7
  519. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.java +181 -0
  520. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +77 -9
  521. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +12 -2
  522. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +72 -13
  523. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +9 -3
  524. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +10 -6
  525. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +5 -7
  526. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +5 -8
  527. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitch.java +5 -8
  528. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +0 -1
  529. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomLineHeightSpan.java +4 -0
  530. package/ReactAndroid/src/main/java/com/facebook/react/views/text/DefaultStyleValuesUtil.java +1 -2
  531. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +8 -5
  532. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +7 -6
  533. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +7 -0
  534. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +9 -7
  535. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +13 -5
  536. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +23 -20
  537. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributes.java +5 -3
  538. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +22 -16
  539. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +17 -17
  540. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +1 -0
  541. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.java +6 -5
  542. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +34 -3
  543. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +28 -15
  544. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +4 -3
  545. package/ReactAndroid/src/main/java/com/facebook/react/views/{slider → traceupdateoverlay}/BUCK +7 -7
  546. package/ReactAndroid/src/main/java/com/facebook/react/views/traceupdateoverlay/TraceUpdateOverlay.java +70 -0
  547. package/ReactAndroid/src/main/java/com/facebook/react/views/traceupdateoverlay/TraceUpdateOverlayManager.java +83 -0
  548. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +5 -8
  549. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +6 -9
  550. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +2 -10
  551. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +17 -5
  552. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +147 -32
  553. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.java +18 -6
  554. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManagerWrapper.kt +5 -5
  555. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.java +0 -8
  556. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.java +0 -11
  557. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +5 -1
  558. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +1 -1
  559. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogger.java +1 -1
  560. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +1 -2
  561. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +1 -8
  562. package/ReactAndroid/src/main/java/com/facebook/yoga/annotations/DoNotStrip.java +18 -0
  563. package/ReactAndroid/src/main/jni/CMakeLists.txt +112 -3
  564. package/ReactAndroid/src/main/jni/CircularDepsValidator.cmake +32 -0
  565. package/ReactAndroid/src/main/jni/first-party/.clang-tidy +1 -0
  566. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +3 -0
  567. package/ReactAndroid/src/main/jni/first-party/yogajni/BUCK +1 -1
  568. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNI.h +0 -1
  569. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +0 -15
  570. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +4 -4
  571. package/ReactAndroid/src/main/jni/react/fabric/BUCK +0 -2
  572. package/ReactAndroid/src/main/jni/react/fabric/Binding.cpp +20 -49
  573. package/ReactAndroid/src/main/jni/react/fabric/Binding.h +5 -10
  574. package/ReactAndroid/src/main/jni/react/fabric/CMakeLists.txt +0 -2
  575. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.h +1 -7
  576. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +2 -3
  577. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +3 -2
  578. package/ReactAndroid/src/main/jni/react/fabric/FabricMountItem.h +1 -2
  579. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +32 -66
  580. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +2 -6
  581. package/ReactAndroid/src/main/jni/react/fabric/JBackgroundExecutor.h +1 -3
  582. package/ReactAndroid/src/main/jni/react/fabric/JFabricUIManager.h +2 -3
  583. package/ReactAndroid/src/main/jni/react/fabric/OnLoad.cpp +0 -2
  584. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.cpp +3 -7
  585. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +2 -2
  586. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.h +3 -1
  587. package/ReactAndroid/src/main/jni/react/fabric/viewPropConversions.h +10 -2
  588. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/BUCK +1 -1
  589. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +1 -0
  590. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/OnLoad.cpp +1 -5
  591. package/ReactAndroid/src/main/jni/react/jni/.clang-tidy +1 -0
  592. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -4
  593. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.cpp +2 -0
  594. package/ReactAndroid/src/main/jni/react/jni/JMessageQueueThread.h +4 -8
  595. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +9 -2
  596. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +1 -0
  597. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +2 -2
  598. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.h +2 -2
  599. package/ReactAndroid/src/main/jni/react/jni/MethodInvoker.cpp +2 -2
  600. package/ReactAndroid/src/main/jni/react/jni/NativeArray.cpp +1 -3
  601. package/ReactAndroid/src/main/jni/react/jni/NativeArray.h +13 -3
  602. package/ReactAndroid/src/main/jni/react/jni/NativeMap.cpp +2 -2
  603. package/ReactAndroid/src/main/jni/react/jni/NativeMap.h +10 -4
  604. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +6 -0
  605. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.cpp +0 -6
  606. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.h +4 -1
  607. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +11 -7
  608. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.h +2 -2
  609. package/ReactAndroid/src/main/jni/react/jscexecutor/OnLoad.cpp +1 -5
  610. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +9 -43
  611. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +2 -9
  612. package/ReactAndroid/src/main/libraries/fbcore/src/main/java/com/facebook/common/logging/BUCK +1 -1
  613. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +15 -15
  614. package/ReactAndroid/src/main/res/devsupport/values-af/strings.xml +0 -1
  615. package/ReactAndroid/src/main/res/devsupport/values-ar/strings.xml +0 -1
  616. package/ReactAndroid/src/main/res/devsupport/values-as/strings.xml +0 -1
  617. package/ReactAndroid/src/main/res/devsupport/values-az/strings.xml +0 -1
  618. package/ReactAndroid/src/main/res/devsupport/values-be/strings.xml +6 -0
  619. package/ReactAndroid/src/main/res/devsupport/values-bg/strings.xml +0 -1
  620. package/ReactAndroid/src/main/res/devsupport/values-bn/strings.xml +0 -1
  621. package/ReactAndroid/src/main/res/devsupport/values-bs/strings.xml +0 -1
  622. package/ReactAndroid/src/main/res/devsupport/values-ca/strings.xml +0 -1
  623. package/ReactAndroid/src/main/res/devsupport/values-cb/strings.xml +0 -1
  624. package/ReactAndroid/src/main/res/devsupport/values-cs/strings.xml +0 -1
  625. package/ReactAndroid/src/main/res/devsupport/values-da/strings.xml +0 -1
  626. package/ReactAndroid/src/main/res/devsupport/values-de/strings.xml +0 -1
  627. package/ReactAndroid/src/main/res/devsupport/values-el/strings.xml +0 -1
  628. package/ReactAndroid/src/main/res/devsupport/values-en-rGB/strings.xml +0 -1
  629. package/ReactAndroid/src/main/res/devsupport/values-es/strings.xml +0 -1
  630. package/ReactAndroid/src/main/res/devsupport/values-es-rES/strings.xml +0 -1
  631. package/ReactAndroid/src/main/res/devsupport/values-et/strings.xml +0 -1
  632. package/ReactAndroid/src/main/res/devsupport/values-fa/strings.xml +0 -1
  633. package/ReactAndroid/src/main/res/devsupport/values-fb/strings.xml +0 -1
  634. package/ReactAndroid/src/main/res/devsupport/values-fb-rLS/strings.xml +0 -1
  635. package/ReactAndroid/src/main/res/devsupport/values-fi/strings.xml +0 -1
  636. package/ReactAndroid/src/main/res/devsupport/values-fr/strings.xml +0 -1
  637. package/ReactAndroid/src/main/res/devsupport/values-fr-rCA/strings.xml +0 -1
  638. package/ReactAndroid/src/main/res/devsupport/values-gu/strings.xml +0 -1
  639. package/ReactAndroid/src/main/res/devsupport/values-ha/strings.xml +6 -0
  640. package/ReactAndroid/src/main/res/devsupport/values-hi/strings.xml +0 -1
  641. package/ReactAndroid/src/main/res/devsupport/values-hr/strings.xml +0 -1
  642. package/ReactAndroid/src/main/res/devsupport/values-hu/strings.xml +0 -1
  643. package/ReactAndroid/src/main/res/devsupport/values-hy/strings.xml +6 -0
  644. package/ReactAndroid/src/main/res/devsupport/values-in/strings.xml +0 -1
  645. package/ReactAndroid/src/main/res/devsupport/values-is/strings.xml +0 -1
  646. package/ReactAndroid/src/main/res/devsupport/values-it/strings.xml +0 -1
  647. package/ReactAndroid/src/main/res/devsupport/values-iw/strings.xml +0 -1
  648. package/ReactAndroid/src/main/res/devsupport/values-ja/strings.xml +0 -1
  649. package/ReactAndroid/src/main/res/devsupport/values-jv/strings.xml +6 -0
  650. package/ReactAndroid/src/main/res/devsupport/values-ka/strings.xml +0 -1
  651. package/ReactAndroid/src/main/res/devsupport/values-kk/strings.xml +6 -0
  652. package/ReactAndroid/src/main/res/devsupport/values-km/strings.xml +0 -1
  653. package/ReactAndroid/src/main/res/devsupport/values-kn/strings.xml +0 -1
  654. package/ReactAndroid/src/main/res/devsupport/values-ko/strings.xml +0 -1
  655. package/ReactAndroid/src/main/res/devsupport/values-ku/strings.xml +6 -0
  656. package/ReactAndroid/src/main/res/devsupport/values-ky/strings.xml +6 -0
  657. package/ReactAndroid/src/main/res/devsupport/values-lo/strings.xml +0 -1
  658. package/ReactAndroid/src/main/res/devsupport/values-lt/strings.xml +0 -1
  659. package/ReactAndroid/src/main/res/devsupport/values-lv/strings.xml +0 -1
  660. package/ReactAndroid/src/main/res/devsupport/values-mk/strings.xml +0 -1
  661. package/ReactAndroid/src/main/res/devsupport/values-ml/strings.xml +0 -1
  662. package/ReactAndroid/src/main/res/devsupport/values-mn/strings.xml +0 -1
  663. package/ReactAndroid/src/main/res/devsupport/values-mr/strings.xml +0 -1
  664. package/ReactAndroid/src/main/res/devsupport/values-ms/strings.xml +0 -1
  665. package/ReactAndroid/src/main/res/devsupport/values-my/strings.xml +0 -1
  666. package/ReactAndroid/src/main/res/devsupport/values-nb/strings.xml +0 -1
  667. package/ReactAndroid/src/main/res/devsupport/values-ne/strings.xml +0 -1
  668. package/ReactAndroid/src/main/res/devsupport/values-nl/strings.xml +0 -1
  669. package/ReactAndroid/src/main/res/devsupport/values-pa/strings.xml +0 -1
  670. package/ReactAndroid/src/main/res/devsupport/values-pl/strings.xml +0 -1
  671. package/ReactAndroid/src/main/res/devsupport/values-ps/strings.xml +6 -0
  672. package/ReactAndroid/src/main/res/devsupport/values-pt/strings.xml +0 -1
  673. package/ReactAndroid/src/main/res/devsupport/values-pt-rPT/strings.xml +0 -1
  674. package/ReactAndroid/src/main/res/devsupport/values-qz/strings.xml +0 -1
  675. package/ReactAndroid/src/main/res/devsupport/values-ro/strings.xml +0 -1
  676. package/ReactAndroid/src/main/res/devsupport/values-ru/strings.xml +0 -1
  677. package/ReactAndroid/src/main/res/devsupport/values-si/strings.xml +0 -1
  678. package/ReactAndroid/src/main/res/devsupport/values-sk/strings.xml +0 -1
  679. package/ReactAndroid/src/main/res/devsupport/values-sl/strings.xml +0 -1
  680. package/ReactAndroid/src/main/res/devsupport/values-sn/strings.xml +0 -1
  681. package/ReactAndroid/src/main/res/devsupport/values-so/strings.xml +6 -0
  682. package/ReactAndroid/src/main/res/devsupport/values-sq/strings.xml +0 -1
  683. package/ReactAndroid/src/main/res/devsupport/values-sr/strings.xml +0 -1
  684. package/ReactAndroid/src/main/res/devsupport/values-sv/strings.xml +0 -1
  685. package/ReactAndroid/src/main/res/devsupport/values-sw/strings.xml +0 -1
  686. package/ReactAndroid/src/main/res/devsupport/values-ta/strings.xml +0 -1
  687. package/ReactAndroid/src/main/res/devsupport/values-te/strings.xml +0 -1
  688. package/ReactAndroid/src/main/res/devsupport/values-tg/strings.xml +6 -0
  689. package/ReactAndroid/src/main/res/devsupport/values-th/strings.xml +0 -1
  690. package/ReactAndroid/src/main/res/devsupport/values-tk/strings.xml +6 -0
  691. package/ReactAndroid/src/main/res/devsupport/values-tl/strings.xml +0 -1
  692. package/ReactAndroid/src/main/res/devsupport/values-tr/strings.xml +0 -1
  693. package/ReactAndroid/src/main/res/devsupport/values-uk/strings.xml +0 -1
  694. package/ReactAndroid/src/main/res/devsupport/values-ur/strings.xml +0 -1
  695. package/ReactAndroid/src/main/res/devsupport/values-uz/strings.xml +6 -0
  696. package/ReactAndroid/src/main/res/devsupport/values-vi/strings.xml +0 -1
  697. package/ReactAndroid/src/main/res/devsupport/values-wo/strings.xml +0 -1
  698. package/ReactAndroid/src/main/res/devsupport/values-zh-rCN/strings.xml +0 -1
  699. package/ReactAndroid/src/main/res/devsupport/values-zh-rHK/strings.xml +0 -1
  700. package/ReactAndroid/src/main/res/devsupport/values-zh-rTW/strings.xml +0 -1
  701. package/ReactAndroid/src/main/res/devsupport/values-zu/strings.xml +0 -1
  702. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +4 -1
  703. package/ReactCommon/React-Fabric.podspec +43 -49
  704. package/ReactCommon/React-rncore.podspec +2 -1
  705. package/ReactCommon/ReactCommon.podspec +8 -17
  706. package/ReactCommon/butter/BUCK +1 -9
  707. package/ReactCommon/butter/function.h +51 -0
  708. package/ReactCommon/butter/map.h +3 -3
  709. package/ReactCommon/callinvoker/.clang-tidy +1 -0
  710. package/ReactCommon/callinvoker/BUCK +0 -1
  711. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  712. package/ReactCommon/callinvoker/ReactCommon/CallInvoker.h +11 -2
  713. package/ReactCommon/{butter/mutex.h → callinvoker/ReactCommon/SchedulerPriority.h} +10 -6
  714. package/ReactCommon/cxxreact/.clang-tidy +1 -0
  715. package/ReactCommon/cxxreact/BUCK +3 -1
  716. package/ReactCommon/cxxreact/CMakeLists.txt +1 -0
  717. package/ReactCommon/cxxreact/Instance.h +2 -2
  718. package/ReactCommon/cxxreact/JSBigString.h +5 -5
  719. package/ReactCommon/cxxreact/JSExecutor.cpp +12 -0
  720. package/ReactCommon/cxxreact/JSExecutor.h +2 -0
  721. package/ReactCommon/cxxreact/MethodCall.cpp +3 -3
  722. package/ReactCommon/cxxreact/ModuleRegistry.cpp +5 -6
  723. package/ReactCommon/cxxreact/ModuleRegistry.h +3 -3
  724. package/ReactCommon/cxxreact/NativeModule.h +2 -2
  725. package/ReactCommon/cxxreact/React-cxxreact.podspec +3 -2
  726. package/ReactCommon/cxxreact/ReactMarker.cpp +55 -2
  727. package/ReactCommon/cxxreact/ReactMarker.h +36 -2
  728. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  729. package/ReactCommon/hermes/.clang-tidy +1 -0
  730. package/ReactCommon/hermes/React-hermes.podspec +3 -2
  731. package/ReactCommon/hermes/executor/CMakeLists.txt +8 -1
  732. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +6 -20
  733. package/ReactCommon/hermes/inspector/BUCK +12 -6
  734. package/ReactCommon/hermes/inspector/CMakeLists.txt +1 -1
  735. package/ReactCommon/hermes/inspector/DEFS.bzl +2 -2
  736. package/ReactCommon/hermes/inspector/Inspector.cpp +2 -2
  737. package/ReactCommon/hermes/inspector/Inspector.h +7 -7
  738. package/ReactCommon/hermes/inspector/InspectorState.h +5 -5
  739. package/ReactCommon/hermes/inspector/README.md +7 -7
  740. package/ReactCommon/hermes/inspector/RuntimeAdapter.h +1 -1
  741. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +12 -12
  742. package/ReactCommon/hermes/inspector/chrome/MessageConverters.h +3 -3
  743. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +96 -97
  744. package/ReactCommon/hermes/inspector/chrome/MessageTypesInlines.h +4 -3
  745. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +39 -38
  746. package/ReactCommon/hermes/inspector/chrome/tests/MessageTests.cpp +67 -64
  747. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.cpp +3 -3
  748. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.h +3 -3
  749. package/ReactCommon/hermes/inspector/detail/SerialExecutor.h +1 -1
  750. package/ReactCommon/hermes/inspector/tools/format +1 -1
  751. package/ReactCommon/hermes/inspector/tools/sandcastle/build_and_test.sh +4 -4
  752. package/ReactCommon/jsc/CMakeLists.txt +4 -0
  753. package/ReactCommon/jsc/JSCRuntime.cpp +11 -9
  754. package/ReactCommon/jsc/React-jsc.podspec +1 -1
  755. package/ReactCommon/jsengineinstance/.clang-tidy +1 -0
  756. package/ReactCommon/jserrorhandler/BUCK +1 -1
  757. package/ReactCommon/jsi/.clang-tidy +1 -0
  758. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  759. package/ReactCommon/jsi/jsi/decorator.h +16 -10
  760. package/ReactCommon/jsi/jsi/jsi-inl.h +7 -5
  761. package/ReactCommon/jsi/jsi/jsi.cpp +51 -61
  762. package/ReactCommon/jsi/jsi/jsi.h +22 -16
  763. package/ReactCommon/jsiexecutor/.clang-tidy +1 -0
  764. package/ReactCommon/jsiexecutor/CMakeLists.txt +5 -1
  765. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -2
  766. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +16 -16
  767. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +7 -7
  768. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +7 -7
  769. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.h +3 -3
  770. package/ReactCommon/jsinspector/.clang-tidy +1 -0
  771. package/ReactCommon/jsinspector/CMakeLists.txt +3 -1
  772. package/ReactCommon/jsinspector/React-jsinspector.podspec +2 -1
  773. package/ReactCommon/libraries/fbcore/src/test/java/com/facebook/powermock/BUCK +3 -3
  774. package/ReactCommon/logger/React-logger.podspec +1 -1
  775. package/ReactCommon/react/bridging/BUCK +1 -2
  776. package/ReactCommon/react/bridging/Base.h +3 -3
  777. package/ReactCommon/react/bridging/CallbackWrapper.h +3 -39
  778. package/ReactCommon/react/bridging/Function.h +36 -17
  779. package/ReactCommon/react/bridging/LongLivedObject.cpp +6 -13
  780. package/ReactCommon/react/bridging/LongLivedObject.h +9 -8
  781. package/ReactCommon/react/bridging/Number.h +11 -0
  782. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +16 -1
  783. package/ReactCommon/react/config/.clang-tidy +1 -0
  784. package/ReactCommon/react/config/ReactNativeConfig.cpp +3 -0
  785. package/ReactCommon/react/config/ReactNativeConfig.h +1 -1
  786. package/ReactCommon/react/debug/CMakeLists.txt +4 -0
  787. package/ReactCommon/react/debug/flags.h +3 -1
  788. package/ReactCommon/react/debug/react_native_assert.h +6 -0
  789. package/ReactCommon/react/debug/react_native_expect.h +41 -0
  790. package/ReactCommon/react/nativemodule/.clang-tidy +1 -0
  791. package/ReactCommon/react/nativemodule/core/BUCK +3 -1
  792. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +6 -1
  793. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +26 -8
  794. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +31 -3
  795. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +39 -44
  796. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +5 -14
  797. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.cpp +2 -2
  798. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +1 -1
  799. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +28 -48
  800. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +3 -9
  801. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +56 -0
  802. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTBlockGuard.h → ReactCommon/RCTBlockGuard.h} +1 -1
  803. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModule.h → ReactCommon/RCTTurboModule.h} +0 -6
  804. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModule.mm → ReactCommon/RCTTurboModule.mm} +24 -51
  805. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModuleManager.h → ReactCommon/RCTTurboModuleManager.h} +5 -1
  806. package/ReactCommon/react/nativemodule/core/platform/ios/{RCTTurboModuleManager.mm → ReactCommon/RCTTurboModuleManager.mm} +14 -69
  807. package/ReactCommon/react/nativemodule/samples/BUCK +3 -1
  808. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.cpp +12 -0
  809. package/ReactCommon/react/nativemodule/samples/ReactCommon/NativeSampleTurboCxxModuleSpecJSI.h +1 -0
  810. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.cpp +4 -0
  811. package/ReactCommon/react/nativemodule/samples/ReactCommon/SampleTurboCxxModule.h +1 -0
  812. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +59 -0
  813. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +3 -0
  814. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +15 -0
  815. package/ReactCommon/react/nativemodule/samples/platform/android/SampleTurboModule.java +8 -0
  816. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTNativeSampleTurboModuleSpec.h → ReactCommon/RCTNativeSampleTurboModuleSpec.h} +1 -0
  817. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTNativeSampleTurboModuleSpec.mm → ReactCommon/RCTNativeSampleTurboModuleSpec.mm} +11 -0
  818. package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboModule.mm → ReactCommon/RCTSampleTurboModule.mm} +5 -0
  819. package/ReactCommon/react/nativemodule/samples/platform/ios/{SampleTurboCxxModuleLegacyImpl.cpp → ReactCommon/SampleTurboCxxModuleLegacyImpl.cpp} +10 -0
  820. package/ReactCommon/react/nativemodule/samples/platform/ios/{SampleTurboCxxModuleLegacyImpl.h → ReactCommon/SampleTurboCxxModuleLegacyImpl.h} +1 -0
  821. package/ReactCommon/react/renderer/.clang-tidy +7 -0
  822. package/ReactCommon/react/renderer/animations/BUCK +2 -0
  823. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +41 -65
  824. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +3 -20
  825. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +1 -1
  826. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +1 -1
  827. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +1 -1
  828. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +1 -1
  829. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +2 -1
  830. package/ReactCommon/react/renderer/attributedstring/conversions.h +48 -49
  831. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringTest.cpp +1 -1
  832. package/ReactCommon/react/renderer/attributedstring/tests/TextAttributesTest.cpp +1 -1
  833. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +4 -4
  834. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +4 -5
  835. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +5 -5
  836. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +2 -2
  837. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +9 -7
  838. package/ReactCommon/react/renderer/components/image/conversions.h +4 -4
  839. package/ReactCommon/react/renderer/components/inputaccessory/InputAccessoryState.h +1 -2
  840. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/CMakeLists.txt +31 -0
  841. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +1 -1
  842. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +38 -0
  843. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +1 -2
  844. package/ReactCommon/react/renderer/components/root/RootProps.cpp +4 -4
  845. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +3 -3
  846. package/ReactCommon/react/renderer/components/safeareaview/SafeAreaViewState.h +1 -1
  847. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  848. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +50 -36
  849. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +4 -0
  850. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +4 -1
  851. package/ReactCommon/react/renderer/components/scrollview/conversions.h +35 -0
  852. package/ReactCommon/react/renderer/components/scrollview/primitives.h +17 -0
  853. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +1 -1
  854. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +0 -1
  855. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +1 -0
  856. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.cpp +59 -0
  857. package/ReactCommon/react/renderer/components/text/ParagraphLayoutManager.h +59 -0
  858. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +4 -2
  859. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +13 -15
  860. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +2 -6
  861. package/ReactCommon/react/renderer/components/text/ParagraphState.h +8 -11
  862. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +4 -25
  863. package/ReactCommon/react/renderer/components/text/TextProps.h +0 -1
  864. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +5 -23
  865. package/ReactCommon/react/renderer/components/text/tests/ParagraphLocalDataTest.cpp +7 -10
  866. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +56 -50
  867. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +0 -1
  868. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +2 -1
  869. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +3 -0
  870. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputEventEmitter.cpp → react/renderer/components/iostextinput/TextInputEventEmitter.cpp} +31 -1
  871. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputEventEmitter.h → react/renderer/components/iostextinput/TextInputEventEmitter.h} +5 -0
  872. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputProps.cpp → react/renderer/components/iostextinput/TextInputProps.cpp} +1 -1
  873. package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputShadowNode.cpp → react/renderer/components/iostextinput/TextInputShadowNode.cpp} +2 -1
  874. package/ReactCommon/react/renderer/components/textinput/iostextinput/{propsConversions.h → react/renderer/components/iostextinput/propsConversions.h} +4 -3
  875. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +1 -1
  876. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +3 -3
  877. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +21 -20
  878. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.cpp +0 -2
  879. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.h +4 -2
  880. package/ReactCommon/react/renderer/components/view/BUCK +1 -0
  881. package/ReactCommon/react/renderer/components/view/PointerEvent.h +1 -1
  882. package/ReactCommon/react/renderer/components/view/Touch.h +1 -1
  883. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +63 -74
  884. package/ReactCommon/react/renderer/components/view/ViewProps.h +0 -1
  885. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.cpp +1 -1
  886. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +207 -91
  887. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +28 -31
  888. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +155 -7
  889. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +38 -1
  890. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +10 -7
  891. package/ReactCommon/react/renderer/components/view/conversions.h +133 -59
  892. package/ReactCommon/react/renderer/components/view/primitives.h +49 -18
  893. package/ReactCommon/react/renderer/components/view/propsConversions.h +65 -8
  894. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +88 -2
  895. package/ReactCommon/react/renderer/components/view/viewPropConversions.h +21 -3
  896. package/ReactCommon/react/renderer/core/BUCK +7 -3
  897. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +1 -1
  898. package/ReactCommon/react/renderer/core/CoreFeatures.cpp +3 -0
  899. package/ReactCommon/react/renderer/core/CoreFeatures.h +15 -1
  900. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +1 -0
  901. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.h +8 -4
  902. package/ReactCommon/react/renderer/core/EventBeat.h +1 -1
  903. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +10 -4
  904. package/ReactCommon/react/renderer/core/EventDispatcher.h +1 -1
  905. package/ReactCommon/react/renderer/core/EventListener.cpp +3 -3
  906. package/ReactCommon/react/renderer/core/EventListener.h +2 -3
  907. package/ReactCommon/react/renderer/core/EventLogger.cpp +22 -0
  908. package/ReactCommon/react/renderer/core/EventLogger.h +44 -0
  909. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +12 -2
  910. package/ReactCommon/react/renderer/core/LayoutConstraints.h +1 -1
  911. package/ReactCommon/react/renderer/core/LayoutContext.h +0 -1
  912. package/ReactCommon/react/renderer/core/LayoutMetrics.h +2 -1
  913. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +16 -2
  914. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +2 -26
  915. package/ReactCommon/react/renderer/core/PropsMacros.h +21 -7
  916. package/ReactCommon/react/renderer/core/PropsMapBuffer.cpp +2 -3
  917. package/ReactCommon/react/renderer/core/PropsMapBuffer.h +1 -0
  918. package/ReactCommon/react/renderer/core/RawEvent.h +2 -0
  919. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  920. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +1 -1
  921. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -1
  922. package/ReactCommon/react/renderer/core/Sealable.h +2 -2
  923. package/ReactCommon/react/renderer/core/ShadowNode.cpp +27 -3
  924. package/ReactCommon/react/renderer/core/ShadowNode.h +6 -20
  925. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +3 -3
  926. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +9 -2
  927. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +6 -11
  928. package/ReactCommon/react/renderer/core/TraitCast.h +90 -0
  929. package/ReactCommon/react/renderer/core/graphicsConversions.h +260 -0
  930. package/ReactCommon/react/renderer/core/propsConversions.h +1 -2
  931. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +2 -2
  932. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +147 -1
  933. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +1 -1
  934. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +12 -2
  935. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +9 -0
  936. package/ReactCommon/react/renderer/debug/SystraceSection.h +13 -3
  937. package/ReactCommon/react/renderer/element/BUCK +2 -0
  938. package/ReactCommon/react/renderer/element/CMakeLists.txt +29 -0
  939. package/ReactCommon/react/renderer/graphics/BUCK +9 -12
  940. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +4 -8
  941. package/ReactCommon/react/renderer/graphics/{platform/cxx/react/renderer/graphics/Color.cpp → Color.cpp} +1 -1
  942. package/ReactCommon/react/renderer/graphics/{platform/ios/Color.h → Color.h} +12 -16
  943. package/ReactCommon/react/renderer/graphics/Geometry.h +3 -12
  944. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +18 -3
  945. package/ReactCommon/react/renderer/graphics/RectangleEdges.h +11 -1
  946. package/ReactCommon/react/renderer/graphics/Transform.h +5 -2
  947. package/{ReactAndroid/src/main/jni/react/jni/NativeTime.h → ReactCommon/react/renderer/graphics/Vector.h} +8 -1
  948. package/ReactCommon/react/renderer/graphics/conversions.h +18 -252
  949. package/ReactCommon/{yoga/yoga/internal/experiments.h → react/renderer/graphics/platform/android/react/renderer/graphics/Float.h} +8 -12
  950. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +0 -1
  951. package/ReactCommon/react/renderer/graphics/platform/ios/{RCTPlatformColorUtils.mm → react/renderer/graphics/RCTPlatformColorUtils.mm} +1 -2
  952. package/ReactCommon/react/renderer/imagemanager/BUCK +4 -2
  953. package/ReactCommon/react/renderer/imagemanager/ImageRequest.h +1 -1
  954. package/ReactCommon/react/renderer/imagemanager/platform/ios/React-ImageManager.podspec +64 -0
  955. package/ReactCommon/react/renderer/imagemanager/platform/ios/{ImageManager.mm → react/renderer/imagemanager/ImageManager.mm} +1 -1
  956. package/ReactCommon/react/renderer/imagemanager/platform/ios/{ImageRequest.cpp → react/renderer/imagemanager/ImageRequest.cpp} +1 -1
  957. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManager.h → react/renderer/imagemanager/RCTImageManager.h} +1 -1
  958. package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTSyncImageManager.h → react/renderer/imagemanager/RCTSyncImageManager.h} +1 -1
  959. package/ReactCommon/react/renderer/imagemanager/primitives.h +2 -1
  960. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +4 -2
  961. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +1 -1
  962. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +2 -2
  963. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -1
  964. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +21 -17
  965. package/ReactCommon/react/renderer/mounting/ShadowTree.h +11 -5
  966. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +2 -2
  967. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +11 -6
  968. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.h +6 -3
  969. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +1 -0
  970. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +8 -8
  971. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +8 -8
  972. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +2 -2
  973. package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
  974. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +17 -5
  975. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +6 -3
  976. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +3 -3
  977. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +11 -2
  978. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +4 -3
  979. package/ReactCommon/react/renderer/runtimescheduler/{SchedulerPriority.h → SchedulerPriorityUtils.h} +3 -28
  980. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +23 -6
  981. package/ReactCommon/react/renderer/runtimescheduler/Task.h +13 -7
  982. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +15 -4
  983. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +1 -1
  984. package/ReactCommon/react/renderer/runtimescheduler/tests/SchedulerPriorityTest.cpp +1 -0
  985. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +42 -10
  986. package/ReactCommon/react/renderer/scheduler/Scheduler.h +3 -1
  987. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +3 -5
  988. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +32 -34
  989. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +4 -3
  990. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +3 -3
  991. package/ReactCommon/react/renderer/scheduler/SurfaceManager.h +2 -1
  992. package/ReactCommon/react/renderer/telemetry/tests/TransactionTelemetryTest.cpp +1 -1
  993. package/ReactCommon/react/renderer/templateprocessor/BUCK +2 -0
  994. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +4 -2
  995. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +1 -0
  996. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +9 -2
  997. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +7 -1
  998. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +9 -1
  999. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +7 -1
  1000. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{NSTextStorage+FontScaling.m → react/renderer/textlayoutmanager/NSTextStorage+FontScaling.m} +3 -3
  1001. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextLayoutManager.h → react/renderer/textlayoutmanager/RCTTextLayoutManager.h} +10 -4
  1002. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextLayoutManager.mm → react/renderer/textlayoutmanager/RCTTextLayoutManager.mm} +38 -23
  1003. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{TextLayoutManager.h → react/renderer/textlayoutmanager/TextLayoutManager.h} +7 -1
  1004. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{TextLayoutManager.mm → react/renderer/textlayoutmanager/TextLayoutManager.mm} +24 -3
  1005. package/ReactCommon/react/renderer/timeline/TimelineController.h +1 -1
  1006. package/ReactCommon/react/renderer/uimanager/BUCK +2 -0
  1007. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.cpp +4 -4
  1008. package/ReactCommon/react/renderer/uimanager/SurfaceRegistryBinding.h +2 -2
  1009. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +158 -41
  1010. package/ReactCommon/react/renderer/uimanager/UIManager.h +16 -3
  1011. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +8 -0
  1012. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +86 -4
  1013. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +2 -1
  1014. package/ReactCommon/react/renderer/uimanager/primitives.h +48 -24
  1015. package/ReactCommon/react/utils/.clang-tidy +1 -0
  1016. package/ReactCommon/react/utils/BUCK +6 -2
  1017. package/ReactCommon/react/utils/ContextContainer.h +8 -8
  1018. package/ReactCommon/react/utils/SharedFunction.h +4 -6
  1019. package/ReactCommon/reactperflogger/.clang-tidy +1 -0
  1020. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  1021. package/ReactCommon/runtimeexecutor/.clang-tidy +1 -0
  1022. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  1023. package/ReactCommon/yoga/yoga/CMakeLists.txt +41 -0
  1024. package/ReactCommon/yoga/yoga/CompactValue.h +8 -0
  1025. package/ReactCommon/yoga/yoga/Utils.cpp +1 -1
  1026. package/ReactCommon/yoga/yoga/Utils.h +2 -4
  1027. package/ReactCommon/yoga/yoga/YGEnums.cpp +4 -0
  1028. package/ReactCommon/yoga/yoga/YGEnums.h +3 -1
  1029. package/ReactCommon/yoga/yoga/YGLayout.h +1 -26
  1030. package/ReactCommon/yoga/yoga/YGNode.cpp +0 -47
  1031. package/ReactCommon/yoga/yoga/YGNode.h +0 -4
  1032. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +3 -1
  1033. package/ReactCommon/yoga/yoga/Yoga-internal.h +6 -3
  1034. package/ReactCommon/yoga/yoga/Yoga.cpp +55 -127
  1035. package/ReactCommon/yoga/yoga/Yoga.h +0 -5
  1036. package/ReactCommon/yoga/yoga/event/event.h +0 -5
  1037. package/build.gradle.kts +1 -0
  1038. package/flow/global.js +29 -4
  1039. package/flow/jest.js +258 -164
  1040. package/flow/use-sync-external-store.js +1 -0
  1041. package/gradle.properties +0 -0
  1042. package/index.js +56 -42
  1043. package/interface.js +1 -1
  1044. package/jest/local-setup.js +33 -0
  1045. package/jest/mockComponent.js +4 -2
  1046. package/jest/mockNativeComponent.js +1 -1
  1047. package/jest/mockScrollView.js +2 -1
  1048. package/jest/react-native-env.js +1 -3
  1049. package/jest/setup.js +11 -8
  1050. package/local-cli/cli.js +0 -0
  1051. package/package.json +26 -101
  1052. package/react-native.config.js +2 -2
  1053. package/rn-get-polyfills.js +1 -1
  1054. package/scripts/cocoapods/__tests__/codegen-test.rb +242 -0
  1055. package/scripts/cocoapods/__tests__/codegen_utils-test.rb +589 -0
  1056. package/scripts/cocoapods/__tests__/fabric-test.rb +68 -0
  1057. package/scripts/cocoapods/__tests__/flipper-test.rb +153 -0
  1058. package/scripts/cocoapods/__tests__/jsengine-test.rb +126 -0
  1059. package/scripts/cocoapods/__tests__/local_podspec_patch-test.rb +167 -0
  1060. package/scripts/cocoapods/__tests__/new_architecture-test.rb +297 -0
  1061. package/scripts/cocoapods/__tests__/test_utils/CodegenScriptPhaseExtractorMock.rb +21 -0
  1062. package/scripts/cocoapods/__tests__/test_utils/CodegenUtilsMock.rb +108 -0
  1063. package/scripts/cocoapods/__tests__/test_utils/DirMock.rb +72 -0
  1064. package/scripts/cocoapods/__tests__/test_utils/EnvironmentMock.rb +21 -0
  1065. package/scripts/cocoapods/__tests__/test_utils/FileMock.rb +113 -0
  1066. package/scripts/cocoapods/__tests__/test_utils/FileUtilsMock.rb +40 -0
  1067. package/scripts/cocoapods/__tests__/test_utils/FinderMock.rb +28 -0
  1068. package/scripts/cocoapods/__tests__/test_utils/InstallerMock.rb +222 -0
  1069. package/scripts/cocoapods/__tests__/test_utils/LocalPodspecPatchMock.rb +14 -0
  1070. package/scripts/cocoapods/__tests__/test_utils/Open3Mock.rb +43 -0
  1071. package/scripts/cocoapods/__tests__/test_utils/PathnameMock.rb +42 -0
  1072. package/scripts/cocoapods/__tests__/test_utils/PodMock.rb +144 -0
  1073. package/scripts/cocoapods/__tests__/test_utils/SpecMock.rb +30 -0
  1074. package/scripts/cocoapods/__tests__/test_utils/SysctlCheckerMock.rb +21 -0
  1075. package/scripts/cocoapods/__tests__/test_utils/TargetDefinitionMock.rb +12 -0
  1076. package/scripts/cocoapods/__tests__/test_utils/podSpy.rb +38 -0
  1077. package/scripts/cocoapods/__tests__/test_utils/systemUtils.rb +14 -0
  1078. package/scripts/cocoapods/__tests__/utils-test.rb +780 -0
  1079. package/scripts/cocoapods/codegen.rb +23 -19
  1080. package/scripts/cocoapods/codegen_utils.rb +73 -37
  1081. package/scripts/cocoapods/fabric.rb +2 -2
  1082. package/scripts/cocoapods/flipper.rb +1 -4
  1083. package/scripts/cocoapods/jsengine.rb +1 -46
  1084. package/scripts/cocoapods/local_podspec_patch.rb +6 -6
  1085. package/scripts/cocoapods/new_architecture.rb +32 -4
  1086. package/scripts/cocoapods/utils.rb +253 -19
  1087. package/scripts/codegen/__test_fixtures__/fixtures.js +132 -0
  1088. package/scripts/codegen/__tests__/generate-artifacts-executor-test.js +500 -0
  1089. package/scripts/codegen/__tests__/generate-specs-cli-executor-test.js +88 -0
  1090. package/scripts/codegen/codegen-utils.js +2 -2
  1091. package/scripts/codegen/generate-artifacts-executor.js +45 -18
  1092. package/scripts/codegen/generate-legacy-interop-components.js +123 -0
  1093. package/scripts/find-node-for-xcode.sh +4 -1
  1094. package/scripts/generate-provider-cli.js +1 -1
  1095. package/scripts/hermes/prepare-hermes-for-build.js +1 -1
  1096. package/scripts/packager.sh +3 -3
  1097. package/scripts/react-native-xcode.sh +2 -3
  1098. package/scripts/react_native_pods.rb +42 -21
  1099. package/scripts/react_native_pods_utils/script_phases.rb +1 -1
  1100. package/scripts/react_native_pods_utils/script_phases.sh +4 -4
  1101. package/scripts/xcode/with-environment.sh +6 -6
  1102. package/sdks/.hermesversion +1 -1
  1103. package/sdks/hermes-engine/hermes-engine.podspec +21 -50
  1104. package/sdks/hermes-engine/hermes-utils.rb +122 -4
  1105. package/sdks/hermes-engine/utils/build-apple-framework.sh +12 -2
  1106. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +7 -0
  1107. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +9 -2
  1108. package/sdks/hermes-engine/utils/copy-hermes-xcode.sh +1 -16
  1109. package/sdks/hermes-engine/utils/create-dummy-hermes-xcframework.sh +30 -0
  1110. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1111. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1112. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1113. package/settings.gradle.kts +1 -0
  1114. package/template/Gemfile +2 -2
  1115. package/template/__tests__/{App-test.tsx → App.test.tsx} +3 -0
  1116. package/template/_eslintrc.js +1 -1
  1117. package/template/_gitignore +3 -0
  1118. package/template/_watchmanconfig +1 -1
  1119. package/template/android/app/build.gradle +2 -47
  1120. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +1 -4
  1121. package/template/android/app/src/main/res/drawable/rn_edit_text_material.xml +1 -1
  1122. package/template/android/build.gradle +1 -1
  1123. package/template/android/gradle/wrapper/gradle-wrapper.jar +0 -0
  1124. package/template/android/gradle/wrapper/gradle-wrapper.properties +2 -1
  1125. package/template/android/gradle.properties +1 -1
  1126. package/template/android/gradlew +14 -4
  1127. package/template/android/gradlew.bat +9 -6
  1128. package/template/android/settings.gradle +1 -1
  1129. package/template/app.json +1 -1
  1130. package/template/ios/HelloWorld/AppDelegate.mm +0 -10
  1131. package/template/ios/Podfile +8 -6
  1132. package/template/jest.config.js +3 -0
  1133. package/template/package.json +6 -7
  1134. package/types/index.d.ts +2 -6
  1135. package/types/modules/Codegen.d.ts +4 -4
  1136. package/types/modules/globals.d.ts +27 -25
  1137. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -20
  1138. package/types/public/ReactNativeRenderer.d.ts +2 -7
  1139. package/types/tslint.json +2 -1
  1140. package/CHANGELOG.md +0 -4860
  1141. package/Libraries/.npmignore +0 -1
  1142. package/Libraries/Animated/createAnimatedComponentInjection.js +0 -48
  1143. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +0 -48
  1144. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +0 -208
  1145. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +0 -58
  1146. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +0 -47
  1147. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +0 -92
  1148. package/Libraries/Components/DatePicker/DatePickerIOS.flow.android.js +0 -14
  1149. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +0 -113
  1150. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +0 -242
  1151. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +0 -60
  1152. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +0 -26
  1153. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +0 -45
  1154. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +0 -62
  1155. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +0 -75
  1156. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +0 -33
  1157. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +0 -19
  1158. package/Libraries/Components/Slider/Slider.d.ts +0 -132
  1159. package/Libraries/Components/Slider/Slider.js +0 -282
  1160. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -56
  1161. package/Libraries/Interaction/Batchinator.js +0 -76
  1162. package/Libraries/Interaction/BridgeSpyStallHandler.js +0 -63
  1163. package/Libraries/Interaction/InteractionStallDebugger.js +0 -23
  1164. package/Libraries/Interaction/PanResponder.flow.js +0 -257
  1165. package/Libraries/Lists/CellRenderMask.js +0 -155
  1166. package/Libraries/Lists/ChildListCollection.js +0 -72
  1167. package/Libraries/Lists/StateSafePureComponent.js +0 -85
  1168. package/Libraries/Lists/VirtualizedList.d.ts +0 -347
  1169. package/Libraries/Lists/VirtualizedListCellRenderer.js +0 -259
  1170. package/Libraries/Lists/VirtualizedListProps.js +0 -279
  1171. package/Libraries/Performance/PureComponentDebug.js +0 -74
  1172. package/Libraries/Reliability/UserFlow.js +0 -158
  1173. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +0 -149
  1174. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +0 -141
  1175. package/Libraries/Utilities/MatrixMath.js +0 -748
  1176. package/Libraries/Utilities/PixelRatio.js.flow +0 -21
  1177. package/Libraries/Utilities/buildStyleInterpolator.js +0 -209
  1178. package/Libraries/Utilities/clamp.js +0 -23
  1179. package/Libraries/Utilities/deprecatedPropType.js +0 -36
  1180. package/Libraries/Utilities/groupByEveryN.js +0 -51
  1181. package/Libraries/Utilities/mergeIntoFast.js +0 -26
  1182. package/Libraries/Utilities/setAndForwardRef.js +0 -71
  1183. package/Libraries/Utilities/truncate.js +0 -51
  1184. package/Libraries/WebSocket/RCTSRWebSocket.h +0 -136
  1185. package/Libraries/WebSocket/RCTSRWebSocket.m +0 -1746
  1186. package/React/Base/RCTWeakProxy.m +0 -30
  1187. package/React/Fabric/Mounting/ComponentViews/Slider/RCTSliderComponentView.h +0 -21
  1188. package/React/Fabric/Mounting/ComponentViews/Slider/RCTSliderComponentView.mm +0 -352
  1189. package/React/Views/RCTDatePicker.m +0 -70
  1190. package/React/Views/RCTDatePickerManager.h +0 -19
  1191. package/React/Views/RCTDatePickerManager.m +0 -105
  1192. package/React/Views/RCTProgressViewManager.h +0 -12
  1193. package/React/Views/RCTProgressViewManager.m +0 -45
  1194. package/React/Views/RCTSlider.h +0 -26
  1195. package/React/Views/RCTSlider.m +0 -104
  1196. package/React/Views/RCTSliderManager.m +0 -91
  1197. package/ReactAndroid/.npmignore +0 -10
  1198. package/ReactAndroid/Android-prebuilt.mk +0 -211
  1199. package/ReactAndroid/external-artifacts/.npmignore +0 -3
  1200. package/ReactAndroid/hermes-engine/.npmignore +0 -3
  1201. package/ReactAndroid/src/main/AndroidManifest.xml +0 -5
  1202. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppViewMutationsWrapper.java +0 -47
  1203. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlider.java +0 -116
  1204. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -54
  1205. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +0 -336
  1206. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +0 -54
  1207. package/ReactAndroid/src/main/jni/react/cxxcomponents/BUCK +0 -44
  1208. package/ReactAndroid/src/main/jni/react/cxxcomponents/CMakeLists.txt +0 -22
  1209. package/ReactAndroid/src/main/jni/react/cxxcomponents/Component.h +0 -66
  1210. package/ReactAndroid/src/main/jni/react/cxxcomponents/ComponentManager.h +0 -26
  1211. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.cpp +0 -51
  1212. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.h +0 -47
  1213. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.cpp +0 -73
  1214. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.h +0 -64
  1215. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.cpp +0 -100
  1216. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.h +0 -39
  1217. package/ReactAndroid/src/main/jni/react/jni/NativeTime.cpp +0 -26
  1218. package/ReactCommon/react/renderer/components/slider/BUCK +0 -117
  1219. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +0 -45
  1220. package/ReactCommon/react/renderer/components/slider/SliderComponentDescriptor.h +0 -58
  1221. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.cpp +0 -100
  1222. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.h +0 -77
  1223. package/ReactCommon/react/renderer/components/slider/SliderState.cpp +0 -44
  1224. package/ReactCommon/react/renderer/components/slider/SliderState.h +0 -89
  1225. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.cpp +0 -72
  1226. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.h +0 -40
  1227. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.cpp +0 -23
  1228. package/ReactCommon/react/renderer/components/slider/platform/ios/SliderMeasurementsManager.h +0 -33
  1229. package/ReactCommon/react/renderer/components/slider/tests/SliderTest.cpp +0 -14
  1230. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +0 -80
  1231. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +0 -63
  1232. package/ReactCommon/yoga/yoga/internal/experiments-inl.h +0 -32
  1233. package/ReactCommon/yoga/yoga/internal/experiments.cpp +0 -38
  1234. package/flow/JSITimerInternalType.js +0 -30
  1235. package/react.gradle +0 -486
  1236. package/template/_node-version +0 -1
  1237. package/template/_ruby-version +0 -1
  1238. package/types/.npmignore +0 -1
  1239. /package/ReactCommon/react/nativemodule/core/platform/ios/{RCTBlockGuard.mm → ReactCommon/RCTBlockGuard.mm} +0 -0
  1240. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboCxxModule.h → ReactCommon/RCTSampleTurboCxxModule.h} +0 -0
  1241. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboCxxModule.mm → ReactCommon/RCTSampleTurboCxxModule.mm} +0 -0
  1242. /package/ReactCommon/react/nativemodule/samples/platform/ios/{RCTSampleTurboModule.h → ReactCommon/RCTSampleTurboModule.h} +0 -0
  1243. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputComponentDescriptor.h → react/renderer/components/iostextinput/TextInputComponentDescriptor.h} +0 -0
  1244. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputProps.h → react/renderer/components/iostextinput/TextInputProps.h} +0 -0
  1245. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputShadowNode.h → react/renderer/components/iostextinput/TextInputShadowNode.h} +0 -0
  1246. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputState.cpp → react/renderer/components/iostextinput/TextInputState.cpp} +0 -0
  1247. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{TextInputState.h → react/renderer/components/iostextinput/TextInputState.h} +0 -0
  1248. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{conversions.h → react/renderer/components/iostextinput/conversions.h} +0 -0
  1249. /package/ReactCommon/react/renderer/components/textinput/iostextinput/{primitives.h → react/renderer/components/iostextinput/primitives.h} +0 -0
  1250. /package/ReactCommon/react/renderer/graphics/platform/ios/{Float.h → react/renderer/graphics/Float.h} +0 -0
  1251. /package/ReactCommon/react/renderer/graphics/platform/ios/{PlatformColorParser.h → react/renderer/graphics/PlatformColorParser.h} +0 -0
  1252. /package/ReactCommon/react/renderer/graphics/platform/ios/{RCTPlatformColorUtils.h → react/renderer/graphics/RCTPlatformColorUtils.h} +0 -0
  1253. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManager.mm → react/renderer/imagemanager/RCTImageManager.mm} +0 -0
  1254. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImageManagerProtocol.h → react/renderer/imagemanager/RCTImageManagerProtocol.h} +0 -0
  1255. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTImagePrimitivesConversions.h → react/renderer/imagemanager/RCTImagePrimitivesConversions.h} +0 -0
  1256. /package/ReactCommon/react/renderer/imagemanager/platform/ios/{RCTSyncImageManager.mm → react/renderer/imagemanager/RCTSyncImageManager.mm} +0 -0
  1257. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{NSTextStorage+FontScaling.h → react/renderer/textlayoutmanager/NSTextStorage+FontScaling.h} +0 -0
  1258. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTAttributedTextUtils.h → react/renderer/textlayoutmanager/RCTAttributedTextUtils.h} +0 -0
  1259. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTAttributedTextUtils.mm → react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm} +0 -0
  1260. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontProperties.h → react/renderer/textlayoutmanager/RCTFontProperties.h} +0 -0
  1261. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontUtils.h → react/renderer/textlayoutmanager/RCTFontUtils.h} +0 -0
  1262. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTFontUtils.mm → react/renderer/textlayoutmanager/RCTFontUtils.mm} +0 -0
  1263. /package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/{RCTTextPrimitivesConversions.h → react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h} +0 -0
@@ -21,17 +21,28 @@ const fs = require('fs');
21
21
  const os = require('os');
22
22
  const path = require('path');
23
23
 
24
- const RN_ROOT = path.join(__dirname, '../..');
25
-
26
- const CODEGEN_REPO_PATH = `${RN_ROOT}/packages/react-native-codegen`;
27
- const CODEGEN_NPM_PATH = `${RN_ROOT}/../react-native-codegen`;
28
- const CORE_LIBRARIES = new Set(['rncore', 'FBReactNativeSpec']);
24
+ const REACT_NATIVE_REPOSITORY_ROOT = path.join(
25
+ __dirname,
26
+ '..',
27
+ '..',
28
+ '..',
29
+ '..',
30
+ );
31
+ const REACT_NATIVE_PACKAGE_ROOT_FOLDER = path.join(__dirname, '..', '..');
32
+
33
+ const CODEGEN_DEPENDENCY_NAME = '@react-native/codegen';
34
+ const CODEGEN_REPO_PATH = `${REACT_NATIVE_REPOSITORY_ROOT}/packages/react-native-codegen`;
35
+ const CODEGEN_NPM_PATH = `${REACT_NATIVE_PACKAGE_ROOT_FOLDER}/../${CODEGEN_DEPENDENCY_NAME}`;
36
+ const CORE_LIBRARIES_WITH_OUTPUT_FOLDER = {
37
+ rncore: path.join(REACT_NATIVE_PACKAGE_ROOT_FOLDER, 'ReactCommon'),
38
+ FBReactNativeSpec: null,
39
+ };
29
40
  const REACT_NATIVE_DEPENDENCY_NAME = 'react-native';
30
41
 
31
42
  // HELPERS
32
43
 
33
44
  function isReactNativeCoreLibrary(libraryName) {
34
- return CORE_LIBRARIES.has(libraryName);
45
+ return libraryName in CORE_LIBRARIES_WITH_OUTPUT_FOLDER;
35
46
  }
36
47
 
37
48
  function executeNodeScript(node, script) {
@@ -118,7 +129,7 @@ function extractLibrariesFromJSON(
118
129
  var isBlocking = false;
119
130
  if (dependency == null) {
120
131
  dependency = REACT_NATIVE_DEPENDENCY_NAME;
121
- dependencyPath = RN_ROOT;
132
+ dependencyPath = REACT_NATIVE_PACKAGE_ROOT_FOLDER;
122
133
  // If we are exploring the ReactNative libraries, we want to raise an error
123
134
  // if the codegen is not properly configured.
124
135
  isBlocking = true;
@@ -159,7 +170,10 @@ function handleReactNativeCodeLibraries(
159
170
  // Handle react-native core libraries.
160
171
  // This is required when react-native is outside of node_modules.
161
172
  console.log('[Codegen] Processing react-native core libraries');
162
- const reactNativePkgJson = path.join(RN_ROOT, codegenConfigFilename);
173
+ const reactNativePkgJson = path.join(
174
+ REACT_NATIVE_PACKAGE_ROOT_FOLDER,
175
+ codegenConfigFilename,
176
+ );
163
177
  if (!fs.existsSync(reactNativePkgJson)) {
164
178
  throw '[Codegen] Error: Could not find config file for react-native.';
165
179
  }
@@ -175,7 +189,9 @@ function handleThirdPartyLibraries(
175
189
  codegenConfigKey,
176
190
  ) {
177
191
  // Determine which of these are codegen-enabled libraries
178
- const configDir = baseCodegenConfigFileDir || path.join(RN_ROOT, '..');
192
+ const configDir =
193
+ baseCodegenConfigFileDir ||
194
+ path.join(REACT_NATIVE_PACKAGE_ROOT_FOLDER, '..');
179
195
  console.log(
180
196
  `\n\n[Codegen] >>>>> Searching for codegen-enabled libraries in ${configDir}`,
181
197
  );
@@ -273,7 +289,6 @@ function handleInAppLibraries(
273
289
  }
274
290
 
275
291
  // CodeGen
276
-
277
292
  function getCodeGenCliPath() {
278
293
  let codegenCliPath;
279
294
  if (fs.existsSync(CODEGEN_REPO_PATH)) {
@@ -293,7 +308,7 @@ function getCodeGenCliPath() {
293
308
  } else if (fs.existsSync(CODEGEN_NPM_PATH)) {
294
309
  codegenCliPath = CODEGEN_NPM_PATH;
295
310
  } else {
296
- throw "error: Could not determine react-native-codegen location. Try running 'yarn install' or 'npm install' in your project root.";
311
+ throw `error: Could not determine ${CODEGEN_DEPENDENCY_NAME} location. Try running 'yarn install' or 'npm install' in your project root.`;
297
312
  }
298
313
  return codegenCliPath;
299
314
  }
@@ -336,7 +351,11 @@ function generateCode(iosOutputDir, library, tmpDir, node, pathToSchema) {
336
351
 
337
352
  executeNodeScript(
338
353
  node,
339
- `${path.join(RN_ROOT, 'scripts', 'generate-specs-cli.js')} \
354
+ `${path.join(
355
+ REACT_NATIVE_PACKAGE_ROOT_FOLDER,
356
+ 'scripts',
357
+ 'generate-specs-cli.js',
358
+ )} \
340
359
  --platform ios \
341
360
  --schemaPath ${pathToSchema} \
342
361
  --outputDir ${tmpOutputDir} \
@@ -345,8 +364,10 @@ function generateCode(iosOutputDir, library, tmpDir, node, pathToSchema) {
345
364
  );
346
365
 
347
366
  // Finally, copy artifacts to the final output directory.
348
- fs.mkdirSync(iosOutputDir, {recursive: true});
349
- execSync(`cp -R ${tmpOutputDir}/* ${iosOutputDir}`);
367
+ const outputDir =
368
+ CORE_LIBRARIES_WITH_OUTPUT_FOLDER[library.config.name] ?? iosOutputDir;
369
+ fs.mkdirSync(outputDir, {recursive: true});
370
+ execSync(`cp -R ${tmpOutputDir}/* ${outputDir}`);
350
371
  console.log(`[Codegen] Generated artifacts: ${iosOutputDir}`);
351
372
  }
352
373
 
@@ -397,17 +418,23 @@ function createComponentProvider(
397
418
  fs.closeSync(fd);
398
419
  console.log(`Generated schema list: ${schemaListTmpPath}`);
399
420
 
421
+ const outputDir = path.join(
422
+ REACT_NATIVE_PACKAGE_ROOT_FOLDER,
423
+ 'React',
424
+ 'Fabric',
425
+ );
426
+
400
427
  // Generate FabricComponentProvider.
401
428
  // Only for iOS at this moment.
402
429
  executeNodeScript(
403
430
  node,
404
431
  `${path.join(
405
- RN_ROOT,
432
+ REACT_NATIVE_PACKAGE_ROOT_FOLDER,
406
433
  'scripts',
407
434
  'generate-provider-cli.js',
408
- )} --platform ios --schemaListPath "${schemaListTmpPath}" --outputDir ${iosOutputDir}`,
435
+ )} --platform ios --schemaListPath "${schemaListTmpPath}" --outputDir ${outputDir}`,
409
436
  );
410
- console.log(`Generated provider in: ${iosOutputDir}`);
437
+ console.log(`Generated provider in: ${outputDir}`);
411
438
  }
412
439
  }
413
440
 
@@ -449,7 +476,7 @@ function findCodegenEnabledLibraries(
449
476
  //
450
477
  // This function is needed since, after aligning the codegen between
451
478
  // iOS and Android, we have to create empty folders in advance and
452
- // we don't know wheter they will be populated up until the end of the process.
479
+ // we don't know whether they will be populated up until the end of the process.
453
480
  //
454
481
  // @parameter filepath: the root path from which we want to remove the empty files and folders.
455
482
  function cleanupEmptyFilesAndFolders(filepath) {
@@ -0,0 +1,123 @@
1
+ /**
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ *
7
+ * @format
8
+ */
9
+
10
+ 'use strict';
11
+
12
+ const yargs = require('yargs');
13
+ const fs = require('fs');
14
+
15
+ const CONFIG_FILE_NAME = 'react-native.config.js';
16
+ const PROJECT_FIELD = 'project';
17
+ const IOS_FIELD = 'ios';
18
+ const LEGACY_COMPONENTS_FIELD = 'unstable_reactLegacyComponentNames';
19
+ const OUTPUT_FILE_NAME = 'RCTLegacyInteropComponents.mm';
20
+
21
+ const argv = yargs
22
+ .option('p', {
23
+ alias: 'path',
24
+ description: 'Path to React Native application',
25
+ })
26
+ .option('o', {
27
+ alias: 'outputPath',
28
+ description: 'Path where generated artifacts will be output to',
29
+ })
30
+ .usage('Usage: $0 -p [path to app]')
31
+ .demandOption(['p']).argv;
32
+
33
+ const appRoot = argv.path;
34
+ const outputPath = argv.outputPath;
35
+
36
+ function fileBody(components) {
37
+ // eslint-disable duplicate-license-header
38
+ return `
39
+ /*
40
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
41
+ *
42
+ * This source code is licensed under the MIT license found in the
43
+ * LICENSE file in the root directory of this source tree.
44
+ */
45
+
46
+ #import "RCTLegacyInteropComponents.h"
47
+
48
+ @implementation RCTLegacyInteropComponents
49
+
50
+ + (NSArray<NSString *> *)legacyInteropComponents
51
+ {
52
+ return @[
53
+ ${components}
54
+ ];
55
+ }
56
+
57
+ @end
58
+ `;
59
+ // eslint-enable duplicate-license-header
60
+ }
61
+
62
+ function extractComponentsNames(reactNativeConfig) {
63
+ if (!reactNativeConfig) {
64
+ console.log('No reactNativeConfig in the react-native.config.js file');
65
+ return null;
66
+ }
67
+
68
+ const project = reactNativeConfig[PROJECT_FIELD];
69
+
70
+ if (!project) {
71
+ console.log(`No ${PROJECT_FIELD} in the react-native config`);
72
+ return null;
73
+ }
74
+
75
+ const ios = project[IOS_FIELD];
76
+
77
+ if (!ios) {
78
+ console.log(
79
+ `No ${IOS_FIELD} in the ${PROJECT_FIELD} object of the config file`,
80
+ );
81
+ return null;
82
+ }
83
+
84
+ const componentNames = ios[LEGACY_COMPONENTS_FIELD];
85
+
86
+ if (!componentNames) {
87
+ console.log(
88
+ `No '${LEGACY_COMPONENTS_FIELD}' field in the ${PROJECT_FIELD}.${IOS_FIELD} object`,
89
+ );
90
+ return null;
91
+ }
92
+ return componentNames;
93
+ }
94
+
95
+ function generateRCTLegacyInteropComponents() {
96
+ const configFilePath = `${appRoot}/${CONFIG_FILE_NAME}`;
97
+ let reactNativeConfig = null;
98
+ try {
99
+ reactNativeConfig = require(configFilePath);
100
+ } catch (error) {
101
+ console.log(`No ${configFilePath}. Skip LegacyInterop generation`);
102
+ return;
103
+ }
104
+
105
+ const componentNames = extractComponentsNames(reactNativeConfig);
106
+ if (!componentNames) {
107
+ console.log('Skip LegacyInterop generation');
108
+ return;
109
+ }
110
+
111
+ let componentsArray = componentNames.map(name => `\t\t\t@"${name}",`);
112
+ // Remove the last comma
113
+ if (componentsArray.length > 0) {
114
+ componentsArray[componentsArray.length - 1] = componentsArray[
115
+ componentsArray.length - 1
116
+ ].slice(0, -1);
117
+ }
118
+
119
+ const filePath = `${outputPath}/${OUTPUT_FILE_NAME}`;
120
+ fs.writeFileSync(filePath, fileBody(componentsArray.join('\n')));
121
+ }
122
+
123
+ generateRCTLegacyInteropComponents();
@@ -58,7 +58,10 @@ if [[ ! -x node && -d ${HOME}/.anyenv/bin ]]; then
58
58
  fi
59
59
 
60
60
  # Set up asdf-vm if present
61
- if [[ -f "$HOME/.asdf/asdf.sh" ]]; then
61
+ if [[ -f "$ASDF_DIR/asdf.sh" ]]; then
62
+ # shellcheck source=/dev/null
63
+ . "$ASDF_DIR/asdf.sh"
64
+ elif [[ -f "$HOME/.asdf/asdf.sh" ]]; then
62
65
  # shellcheck source=/dev/null
63
66
  . "$HOME/.asdf/asdf.sh"
64
67
  elif [[ -x "$(command -v brew)" && -f "$(brew --prefix asdf)/asdf.sh" ]]; then
@@ -13,7 +13,7 @@ let RNCodegen;
13
13
  try {
14
14
  RNCodegen = require('../packages/react-native-codegen/lib/generators/RNCodegen.js');
15
15
  } catch (e) {
16
- RNCodegen = require('react-native-codegen/lib/generators/RNCodegen.js');
16
+ RNCodegen = require('@react-native/codegen/lib/generators/RNCodegen.js');
17
17
  if (!RNCodegen) {
18
18
  throw 'RNCodegen not found.';
19
19
  }
@@ -39,7 +39,7 @@ async function main(isInCI) {
39
39
  }
40
40
  }
41
41
 
42
- const isInCI = process.env.REACT_NATIVE_CI === 'true';
42
+ const isInCI = process.env.CI === 'true';
43
43
 
44
44
  main(isInCI).then(() => {
45
45
  process.exit(0);
@@ -8,16 +8,16 @@
8
8
  THIS_DIR=$(cd -P "$(dirname "$(readlink "${BASH_SOURCE[0]}" || echo "${BASH_SOURCE[0]}")")" && pwd)
9
9
  REACT_NATIVE_ROOT="$THIS_DIR/.."
10
10
  # Application root directory - General use case: react-native is a dependency
11
- PROJECT_ROOT="$THIS_DIR/../../.."
11
+ PROJECT_ROOT=${PROJECT_ROOT:-"$THIS_DIR/../../.."}
12
12
 
13
13
  # check and assign NODE_BINARY env
14
14
  # shellcheck disable=SC1090
15
15
  source "${THIS_DIR}/node-binary.sh"
16
16
 
17
17
  # When running react-native tests, react-native doesn't live in node_modules but in the PROJECT_ROOT
18
- if [ ! -d "$PROJECT_ROOT/node_modules/react-native" ];
18
+ if [ ! -d "$THIS_DIR/../../../node_modules/react-native" ];
19
19
  then
20
- PROJECT_ROOT="$THIS_DIR/.."
20
+ PROJECT_ROOT="$THIS_DIR/../../.."
21
21
  fi
22
22
  # Start packager from PROJECT_ROOT
23
23
  cd "$PROJECT_ROOT" || exit
@@ -58,9 +58,8 @@ esac
58
58
 
59
59
  # Path to react-native folder inside node_modules
60
60
  REACT_NATIVE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
61
- # The project should be located next to where react-native is installed
62
- # in node_modules.
63
- PROJECT_ROOT=${PROJECT_ROOT:-"$REACT_NATIVE_DIR/../.."}
61
+ # Most projects have their project root, one level up from their Xcode project dir (the "ios" directory)
62
+ PROJECT_ROOT=${PROJECT_ROOT:-"$PROJECT_DIR/.."}
64
63
 
65
64
  cd "$PROJECT_ROOT" || exit
66
65
 
@@ -23,8 +23,19 @@ $FOLLY_VERSION = '2021.07.22.00'
23
23
 
24
24
  $START_TIME = Time.now.to_i
25
25
 
26
+ # `@react-native-community/cli-platform-ios/native_modules` defines
27
+ # use_native_modules. We use node to resolve its path to allow for
28
+ # different packager and workspace setups. This is reliant on
29
+ # `@react-native-community/cli-platform-ios` being a direct dependency
30
+ # of `react-native`.
31
+ require Pod::Executable.execute_command('node', ['-p',
32
+ 'require.resolve(
33
+ "@react-native-community/cli-platform-ios/native_modules.rb",
34
+ {paths: [process.argv[1]]},
35
+ )', __dir__]).strip
36
+
26
37
  # This function returns the min iOS version supported by React Native
27
- # By using this function, you won't have to manualy change your Podfile
38
+ # By using this function, you won't have to manually change your Podfile
28
39
  # when we change the minimum version supported by the framework.
29
40
  def min_ios_version_supported
30
41
  return '12.4'
@@ -64,16 +75,21 @@ def use_react_native! (
64
75
  ios_folder: 'ios'
65
76
  )
66
77
 
78
+ # Set the app_path as env variable so the podspecs can access it.
79
+ ENV['APP_PATH'] = app_path
80
+ ENV['REACT_NATIVE_PATH'] = path
81
+
67
82
  # Current target definition is provided by Cocoapods and it refers to the target
68
83
  # that has invoked the `use_react_native!` function.
69
84
  ReactNativePodsUtils.detect_use_frameworks(current_target_definition)
70
85
 
71
- CodegenUtils.clean_up_build_folder(app_path, ios_folder, $CODEGEN_OUTPUT_DIR)
86
+ CodegenUtils.clean_up_build_folder(path, app_path, ios_folder, $CODEGEN_OUTPUT_DIR)
72
87
 
73
88
  # We are relying on this flag also in third parties libraries to proper install dependencies.
74
89
  # Better to rely and enable this environment flag if the new architecture is turned on using flags.
75
90
  ENV['RCT_NEW_ARCH_ENABLED'] = new_arch_enabled ? "1" : "0"
76
91
  fabric_enabled = fabric_enabled || new_arch_enabled
92
+ ENV['RCT_FABRIC_ENABLED'] = fabric_enabled ? "1" : "0"
77
93
  ENV['USE_HERMES'] = hermes_enabled ? "1" : "0"
78
94
 
79
95
  prefix = path
@@ -82,7 +98,7 @@ def use_react_native! (
82
98
 
83
99
  # The Pods which should be included in all projects
84
100
  pod 'FBLazyVector', :path => "#{prefix}/Libraries/FBLazyVector"
85
- pod 'FBReactNativeSpec', :path => "#{prefix}/React/FBReactNativeSpec"
101
+ pod 'FBReactNativeSpec', :path => "#{prefix}/React/FBReactNativeSpec" if !new_arch_enabled
86
102
  pod 'RCTRequired', :path => "#{prefix}/Libraries/RCTRequired"
87
103
  pod 'RCTTypeSafety', :path => "#{prefix}/Libraries/TypeSafety", :modular_headers => true
88
104
  pod 'React', :path => "#{prefix}/"
@@ -99,7 +115,7 @@ def use_react_native! (
99
115
  pod 'React-RCTText', :path => "#{prefix}/Libraries/Text"
100
116
  pod 'React-RCTVibration', :path => "#{prefix}/Libraries/Vibration"
101
117
  pod 'React-Core/RCTWebSocket', :path => "#{prefix}/"
102
-
118
+ pod 'React-rncore', :path => "#{prefix}/ReactCommon"
103
119
  pod 'React-cxxreact', :path => "#{prefix}/ReactCommon/cxxreact"
104
120
 
105
121
  if hermes_enabled
@@ -116,6 +132,7 @@ def use_react_native! (
116
132
  pod 'React-perflogger', :path => "#{prefix}/ReactCommon/reactperflogger"
117
133
  pod 'React-logger', :path => "#{prefix}/ReactCommon/logger"
118
134
  pod 'ReactCommon/turbomodule/core', :path => "#{prefix}/ReactCommon", :modular_headers => true
135
+ pod 'React-NativeModulesApple', :path => "#{prefix}/ReactCommon/react/nativemodule/core/platform/ios", :modular_headers => true
119
136
  pod 'Yoga', :path => "#{prefix}/ReactCommon/yoga", :modular_headers => true
120
137
 
121
138
  pod 'DoubleConversion', :podspec => "#{prefix}/third-party-podspecs/DoubleConversion.podspec"
@@ -139,8 +156,11 @@ def use_react_native! (
139
156
  pod 'React-Codegen', :path => $CODEGEN_OUTPUT_DIR, :modular_headers => true
140
157
 
141
158
  if fabric_enabled
142
- checkAndGenerateEmptyThirdPartyProvider!(prefix, new_arch_enabled, $CODEGEN_OUTPUT_DIR)
143
- setup_fabric!(:react_native_path => prefix)
159
+ checkAndGenerateEmptyThirdPartyProvider!(prefix, new_arch_enabled)
160
+ setup_fabric!(:react_native_path => prefix, new_arch_enabled: new_arch_enabled)
161
+ else
162
+ relative_installation_root = Pod::Config.instance.installation_root.relative_path_from(Pathname.pwd)
163
+ build_codegen!(prefix, relative_installation_root)
144
164
  end
145
165
 
146
166
  # CocoaPods `configurations` option ensures that the target is copied only for the specified configurations,
@@ -200,7 +220,13 @@ end
200
220
  # - installer: the Cocoapod object that allows to customize the project.
201
221
  # - react_native_path: path to React Native.
202
222
  # - mac_catalyst_enabled: whether we are running the Pod on a Mac Catalyst project or not.
203
- def react_native_post_install(installer, react_native_path = "../node_modules/react-native", mac_catalyst_enabled: false)
223
+ # - enable_hermes_profiler: whether the hermes profiler should be turned on in Release mode
224
+ def react_native_post_install(
225
+ installer, react_native_path = "../node_modules/react-native",
226
+ mac_catalyst_enabled: false,
227
+ enable_hermes_profiler: false
228
+ )
229
+ enable_hermes_profiler = enable_hermes_profiler || ENV["ENABLE_HERMES_PROFILER"] == "1"
204
230
  ReactNativePodsUtils.turn_off_resource_bundle_react_core(installer)
205
231
 
206
232
  ReactNativePodsUtils.apply_mac_catalyst_patches(installer) if mac_catalyst_enabled
@@ -209,25 +235,20 @@ def react_native_post_install(installer, react_native_path = "../node_modules/re
209
235
  flipper_post_install(installer)
210
236
  end
211
237
 
212
- package_path = File.join(Pod::Config.instance.installation_root, react_native_path, "package.json")
213
- package = JSON.parse(File.read(package_path))
214
- version = package['version']
215
-
216
- if ReactNativePodsUtils.has_pod(installer, 'hermes-engine') && is_building_hermes_from_source(version, react_native_path)
217
- add_copy_hermes_framework_script_phase(installer, react_native_path)
218
- else
219
- remove_copy_hermes_framework_script_phase(installer, react_native_path)
220
- remove_hermesc_build_dir(react_native_path)
221
- end
238
+ fabric_enabled = ReactNativePodsUtils.has_pod(installer, 'React-Fabric')
222
239
 
223
240
  ReactNativePodsUtils.exclude_i386_architecture_while_using_hermes(installer)
224
241
  ReactNativePodsUtils.fix_library_search_paths(installer)
242
+ ReactNativePodsUtils.update_search_paths(installer)
225
243
  ReactNativePodsUtils.set_node_modules_user_settings(installer, react_native_path)
244
+ ReactNativePodsUtils.apply_flags_for_fabric(installer, fabric_enabled: fabric_enabled)
245
+ ReactNativePodsUtils.enable_hermes_profiler(installer, enable_hermes_profiler: enable_hermes_profiler)
226
246
 
227
247
  NewArchitectureHelper.set_clang_cxx_language_standard_if_needed(installer)
228
248
  is_new_arch_enabled = ENV['RCT_NEW_ARCH_ENABLED'] == "1"
229
249
  NewArchitectureHelper.modify_flags_for_new_architecture(installer, is_new_arch_enabled)
230
250
 
251
+
231
252
  Pod::UI.puts "Pod install took #{Time.now.to_i - $START_TIME} [s] to run".green
232
253
  end
233
254
 
@@ -239,7 +260,7 @@ def use_react_native_codegen!(spec, options={})
239
260
  # TODO: Once the new codegen approach is ready for use, we should output a warning here to let folks know to migrate.
240
261
 
241
262
  # The prefix to react-native
242
- react_native_path = options[:react_native_path] ||= "../.."
263
+ react_native_path = options[:react_native_path] ||= ".."
243
264
 
244
265
  # Library name (e.g. FBReactNativeSpec)
245
266
  library_name = options[:library_name] ||= "#{spec.name.gsub('_','-').split('-').collect(&:capitalize).join}Spec"
@@ -318,9 +339,9 @@ def use_react_native_codegen!(spec, options={})
318
339
  # The final generated files will be created when this script is invoked at Xcode build time.
319
340
  :script => get_script_phases_no_codegen_discovery(
320
341
  react_native_path: react_native_path,
321
- codegen_output_dir: $CODEGEN_OUTPUT_DIR,
322
- codegen_module_dir: $CODEGEN_MODULE_DIR,
323
- codegen_component_dir: $CODEGEN_COMPONENT_DIR,
342
+ codegen_output_dir: output_dir,
343
+ codegen_module_dir: output_dir_module,
344
+ codegen_component_dir: output_dir_component,
324
345
  library_name: library_name,
325
346
  library_type: library_type,
326
347
  js_srcs_pattern: js_srcs_pattern,
@@ -48,6 +48,6 @@ def get_script_template(react_native_path, export_vars={})
48
48
  WITH_ENVIRONMENT="$RCT_SCRIPT_RN_DIR/scripts/xcode/with-environment.sh"
49
49
  /bin/sh -c "$WITH_ENVIRONMENT $SCRIPT_PHASES_SCRIPT"
50
50
  EOS
51
- result = ERB.new(template, 0, '->').result(binding)
51
+ result = ERB.new(template, trim_mode: '->').result(binding)
52
52
  return result
53
53
  end
@@ -31,9 +31,9 @@ find_node () {
31
31
  }
32
32
 
33
33
  find_codegen () {
34
- CODEGEN_CLI_PATH=$("$NODE_BINARY" --print "require('path').dirname(require.resolve('react-native-codegen/package.json'))")
34
+ CODEGEN_CLI_PATH=$("$NODE_BINARY" --print "require('path').dirname(require.resolve('@react-native/codegen/package.json'))")
35
35
  if ! [ -d "$CODEGEN_CLI_PATH" ]; then
36
- error "error: Could not determine react-native-codegen location, using node module resolution. Try running 'yarn install' or 'npm install' in your project root."
36
+ error "error: Could not determine @react-native/codegen location, using node module resolution. Try running 'yarn install' or 'npm install' in your project root."
37
37
  fi
38
38
  }
39
39
 
@@ -109,7 +109,7 @@ moveOutputs () {
109
109
  ls -1 "$RCT_SCRIPT_OUTPUT_DIR" >> "${SCRIPT_OUTPUT_FILE_0}" 2>&1
110
110
  }
111
111
 
112
- withCodgenDiscovery () {
112
+ withCodegenDiscovery () {
113
113
  setup_dirs
114
114
  find_node
115
115
  find_codegen
@@ -127,7 +127,7 @@ noCodegenDiscovery () {
127
127
  }
128
128
 
129
129
  if [ "$RCT_SCRIPT_TYPE" = "withCodegenDiscovery" ]; then
130
- withCodgenDiscovery "$@"
130
+ withCodegenDiscovery "$@"
131
131
  else
132
132
  noCodegenDiscovery "$@"
133
133
  fi
@@ -32,12 +32,12 @@ fi
32
32
  if [ -n "$NODE_BINARY" ]; then
33
33
  echo "Node found at: ${NODE_BINARY}"
34
34
  else
35
- echo "[Warning] You need to configure your node path in the `'.xcode.env' file` environment. " \
36
- "You can set it up quickly by running: " \
37
- "echo 'export NODE_BINARY=$(command -v node)' > .xcode.env " \
38
- "in the ios folder. This is needed by React Native to work correctly. " \
39
- "We fallback to the DEPRECATED behavior of finding `node`. This will be REMOVED in a future version. " \
40
- "You can read more about this here: https://reactnative.dev/docs/environment-setup#optional-configuring-your-environment" >&2
35
+ echo '[Warning] You need to configure your node path in the `".xcode.env" file` environment. ' \
36
+ 'You can set it up quickly by running: ' \
37
+ '`echo export NODE_BINARY=$(command -v node) > .xcode.env` ' \
38
+ 'in the ios folder. This is needed by React Native to work correctly. ' \
39
+ 'We fallback to the DEPRECATED behavior of finding `node`. This will be REMOVED in a future version. ' \
40
+ 'You can read more about this here: https://reactnative.dev/docs/environment-setup#optional-configuring-your-environment' >&2
41
41
  source "${REACT_NATIVE_PATH}/scripts/find-node-for-xcode.sh"
42
42
  fi
43
43
 
@@ -1 +1 @@
1
- hermes-2022-11-30-RNv0.71.0-1eb8f7ea3059a338205c302cea0f5a3057f93049
1
+ hermes-2023-03-20-RNv0.72.0-49794cfc7c81fb8f69fd60c3bbf85a7480cc5a77
@@ -17,42 +17,13 @@ version = package['version']
17
17
 
18
18
  # sdks/.hermesversion
19
19
  hermestag_file = File.join(react_native_path, "sdks", ".hermesversion")
20
- isInCI = ENV['REACT_NATIVE_CI'] === 'true'
20
+ build_from_source = ENV['BUILD_FROM_SOURCE'] === 'true'
21
21
 
22
- source = {}
23
22
  git = "https://github.com/facebook/hermes.git"
24
23
 
25
- isInMain = version.include?('1000.0.0')
26
- isNightly = version.start_with?('0.0.0-')
24
+ abort_if_invalid_tarball_provided!
27
25
 
28
- if ENV.has_key?('HERMES_ENGINE_TARBALL_PATH')
29
- if !File.exist?(ENV['HERMES_ENGINE_TARBALL_PATH'])
30
- abort "[Hermes] HERMES_ENGINE_TARBALL_PATH is set, but points to a non-existing file: \"#{ENV['HERMES_ENGINE_TARBALL_PATH']}\"\nIf you don't want to use tarball, run `unset HERMES_ENGINE_TARBALL_PATH`"
31
- end
32
- end
33
-
34
- if ENV.has_key?('HERMES_ENGINE_TARBALL_PATH')
35
- Pod::UI.puts "[Hermes] Using pre-built Hermes binaries from local path: #{ENV['HERMES_ENGINE_TARBALL_PATH']}".yellow if Object.const_defined?("Pod::UI")
36
- source[:http] = "file://#{ENV['HERMES_ENGINE_TARBALL_PATH']}"
37
- elsif isInMain
38
- Pod::UI.puts '[Hermes] Installing hermes-engine may take slightly longer, building Hermes compiler from source...'.yellow if Object.const_defined?("Pod::UI")
39
- source[:git] = git
40
- source[:commit] = `git ls-remote https://github.com/facebook/hermes main | cut -f 1`.strip
41
- elsif isNightly
42
- Pod::UI.puts '[Hermes] Nightly version, download pre-built for Hermes'.yellow if Object.const_defined?("Pod::UI")
43
- destination_path = download_nightly_hermes(react_native_path, version)
44
- # set tarball as hermes engine
45
- source[:http] = "file://#{destination_path}"
46
- elsif File.exist?(hermestag_file) && isInCI
47
- Pod::UI.puts '[Hermes] Detected that you are on a React Native release branch, building Hermes from source but fetched from tag...'.yellow if Object.const_defined?("Pod::UI")
48
- hermestag = File.read(hermestag_file).strip
49
- source[:git] = git
50
- source[:tag] = hermestag
51
- else
52
- # Sample url from Maven:
53
- # https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/0.71.0/react-native-artifacts-0.71.0-hermes-ios-debug.tar.gz
54
- source[:http] = "https://repo1.maven.org/maven2/com/facebook/react/react-native-artifacts/#{version}/react-native-artifacts-#{version}-hermes-ios-#{build_type.to_s}.tar.gz"
55
- end
26
+ source = compute_hermes_source(build_from_source, hermestag_file, git, version, build_type, react_native_path)
56
27
 
57
28
  Pod::Spec.new do |spec|
58
29
  spec.name = "hermes-engine"
@@ -68,11 +39,14 @@ Pod::Spec.new do |spec|
68
39
  spec.preserve_paths = '**/*.*'
69
40
  spec.source_files = ''
70
41
 
71
- spec.xcconfig = {
42
+ spec.pod_target_xcconfig = {
72
43
  "CLANG_CXX_LANGUAGE_STANDARD" => "c++17",
73
44
  "CLANG_CXX_LIBRARY" => "compiler-default"
74
45
  }.merge!(build_type == :debug ? { "GCC_PREPROCESSOR_DEFINITIONS" => "HERMES_ENABLE_DEBUGGER=1" } : {})
75
46
 
47
+ spec.ios.vendored_frameworks = "destroot/Library/Frameworks/ios/hermes.framework"
48
+ spec.osx.vendored_frameworks = "destroot/Library/Frameworks/macosx/hermes.framework"
49
+
76
50
  if source[:http] then
77
51
 
78
52
  spec.subspec 'Pre-built' do |ss|
@@ -104,39 +78,36 @@ Pod::Spec.new do |spec|
104
78
  ss.header_dir = 'hermes/Public'
105
79
  end
106
80
 
107
- hermesc_path = ""
81
+ hermesc_path = "${PODS_ROOT}/hermes-engine/build_host_hermesc"
108
82
 
109
83
  if ENV.has_key?('HERMES_OVERRIDE_HERMESC_PATH') && File.exist?(ENV['HERMES_OVERRIDE_HERMESC_PATH']) then
110
84
  hermesc_path = ENV['HERMES_OVERRIDE_HERMESC_PATH']
111
- else
112
- # Keep hermesc_path synchronized with .gitignore entry.
113
- ENV['REACT_NATIVE_PATH'] = react_native_path
114
- hermesc_path = "${REACT_NATIVE_PATH}/sdks/hermes-engine/build_host_hermesc"
115
- # NOTE: Prepare command is not run if the pod is not downloaded.
116
- spec.prepare_command = ". #{react_native_path}/sdks/hermes-engine/utils/build-hermesc-xcode.sh #{hermesc_path}"
117
85
  end
118
86
 
119
87
  spec.user_target_xcconfig = {
120
- 'FRAMEWORK_SEARCH_PATHS' => '"$(PODS_ROOT)/hermes-engine/destroot/Library/Frameworks/iphoneos" ' +
121
- '"$(PODS_ROOT)/hermes-engine/destroot/Library/Frameworks/iphonesimulator" ' +
122
- '"$(PODS_ROOT)/hermes-engine/destroot/Library/Frameworks/macosx" ' +
123
- '"$(PODS_ROOT)/hermes-engine/destroot/Library/Frameworks/catalyst"',
124
- 'OTHER_LDFLAGS' => '-framework "hermes"',
125
88
  'HERMES_CLI_PATH' => "#{hermesc_path}/bin/hermesc"
126
89
  }
127
90
 
91
+ spec.prepare_command = ". #{react_native_path}/sdks/hermes-engine/utils/create-dummy-hermes-xcframework.sh"
92
+
93
+ CMAKE_BINARY = %x(command -v cmake | tr -d '\n')
94
+ # NOTE: Script phases are sorted alphabetically inside Xcode project
128
95
  spec.script_phases = [
129
96
  {
130
- :name => 'Build Hermes',
97
+ :name => '[RN] [1] Build Hermesc',
131
98
  :script => <<-EOS
132
99
  . ${PODS_ROOT}/../.xcode.env
133
- export CMAKE_BINARY=${CMAKE_BINARY:-#{%x(command -v cmake | tr -d '\n')}}
134
- . ${REACT_NATIVE_PATH}/sdks/hermes-engine/utils/build-hermes-xcode.sh #{version} #{hermesc_path}/ImportHermesc.cmake
100
+ export CMAKE_BINARY=${CMAKE_BINARY:-#{CMAKE_BINARY}}
101
+ . ${REACT_NATIVE_PATH}/sdks/hermes-engine/utils/build-hermesc-xcode.sh #{hermesc_path}
135
102
  EOS
136
103
  },
137
104
  {
138
- :name => 'Copy Hermes Framework',
139
- :script => ". ${REACT_NATIVE_PATH}/sdks/hermes-engine/utils/copy-hermes-xcode.sh"
105
+ :name => '[RN] [2] Build Hermes',
106
+ :script => <<-EOS
107
+ . ${PODS_ROOT}/../.xcode.env
108
+ export CMAKE_BINARY=${CMAKE_BINARY:-#{CMAKE_BINARY}}
109
+ . ${REACT_NATIVE_PATH}/sdks/hermes-engine/utils/build-hermes-xcode.sh #{version} #{hermesc_path}/ImportHermesc.cmake
110
+ EOS
140
111
  }
141
112
  ]
142
113
  end