not-react-native-macos 0.83.0-rc.1 → 0.87.1-rc.2

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 (2860) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +22 -27
  2. package/Libraries/Alert/Alert.js +38 -120
  3. package/Libraries/Alert/RCTAlertManager.macos.js +12 -7
  4. package/Libraries/Animated/Animated.d.ts +8 -1
  5. package/Libraries/Animated/AnimatedEvent.js +7 -7
  6. package/Libraries/Animated/AnimatedExports.js +22 -0
  7. package/Libraries/Animated/AnimatedExports.js.flow +1 -1
  8. package/Libraries/Animated/AnimatedImplementation.js +134 -13
  9. package/Libraries/Animated/AnimatedMock.js +1 -7
  10. package/Libraries/Animated/Easing.js +4 -3
  11. package/Libraries/Animated/NativeAnimatedAllowlist.js +58 -0
  12. package/Libraries/Animated/__tests__/Animated-benchmark-itest.js +133 -0
  13. package/Libraries/Animated/__tests__/Animated-itest.js +1010 -0
  14. package/Libraries/Animated/__tests__/Animated-test.js +1257 -0
  15. package/Libraries/Animated/__tests__/Animated-web-test.js +199 -0
  16. package/Libraries/Animated/__tests__/AnimatedBackend-benchmark-itest.js +198 -0
  17. package/Libraries/Animated/__tests__/AnimatedBackend-itest.js +733 -0
  18. package/Libraries/Animated/__tests__/AnimatedBackendSuspense-itest.js +592 -0
  19. package/Libraries/Animated/__tests__/AnimatedMock-itest.js +49 -0
  20. package/Libraries/Animated/__tests__/AnimatedObject-itest.js +90 -0
  21. package/Libraries/Animated/__tests__/AnimatedValue-itest.js +248 -0
  22. package/Libraries/Animated/__tests__/Easing-itest.js +249 -0
  23. package/Libraries/Animated/__tests__/Interpolation-itest.js +601 -0
  24. package/Libraries/Animated/__tests__/NativeAnimatedAllowlist-test.js +86 -0
  25. package/Libraries/Animated/__tests__/TimingAnimation-itest.js +40 -0
  26. package/Libraries/Animated/__tests__/bezier-itest.js +149 -0
  27. package/Libraries/Animated/animations/Animation.js +18 -11
  28. package/Libraries/Animated/animations/DecayAnimation.js +5 -4
  29. package/Libraries/Animated/animations/SpringAnimation.js +6 -5
  30. package/Libraries/Animated/animations/TimingAnimation.js +14 -5
  31. package/Libraries/Animated/components/AnimatedImage.js +3 -3
  32. package/Libraries/Animated/components/AnimatedText.js +3 -3
  33. package/Libraries/Animated/createAnimatedComponent.js +21 -18
  34. package/Libraries/Animated/nodes/AnimatedAddition.js +1 -1
  35. package/Libraries/Animated/nodes/AnimatedColor.js +18 -18
  36. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +1 -1
  37. package/Libraries/Animated/nodes/AnimatedDivision.js +1 -1
  38. package/Libraries/Animated/nodes/AnimatedInterpolation.js +167 -27
  39. package/Libraries/Animated/nodes/AnimatedModulo.js +1 -1
  40. package/Libraries/Animated/nodes/AnimatedMultiplication.js +1 -1
  41. package/Libraries/Animated/nodes/AnimatedNode.js +6 -6
  42. package/Libraries/Animated/nodes/AnimatedObject.js +18 -13
  43. package/Libraries/Animated/nodes/AnimatedProps.js +73 -18
  44. package/Libraries/Animated/nodes/AnimatedStyle.js +19 -19
  45. package/Libraries/Animated/nodes/AnimatedSubtraction.js +1 -1
  46. package/Libraries/Animated/nodes/AnimatedTracking.js +1 -1
  47. package/Libraries/Animated/nodes/AnimatedTransform.js +13 -13
  48. package/Libraries/Animated/nodes/AnimatedValue.js +17 -6
  49. package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -4
  50. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -1
  51. package/Libraries/Animated/useAnimatedColor.d.ts +15 -0
  52. package/Libraries/Animated/useAnimatedColor.js +25 -0
  53. package/Libraries/Animated/useAnimatedValueXY.d.ts +15 -0
  54. package/Libraries/Animated/useAnimatedValueXY.js +26 -0
  55. package/Libraries/AppDelegate/RCTAppDelegate.h +8 -16
  56. package/Libraries/AppDelegate/RCTAppDelegate.mm +4 -60
  57. package/Libraries/AppDelegate/RCTAppSetupUtils.h +0 -18
  58. package/Libraries/AppDelegate/RCTAppSetupUtils.mm +0 -80
  59. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.h +1 -5
  60. package/Libraries/AppDelegate/RCTDefaultReactNativeFactoryDelegate.mm +23 -22
  61. package/Libraries/AppDelegate/RCTReactNativeFactory.h +12 -45
  62. package/Libraries/AppDelegate/RCTReactNativeFactory.mm +22 -108
  63. package/Libraries/AppDelegate/RCTRootViewFactory.h +26 -17
  64. package/Libraries/AppDelegate/RCTRootViewFactory.mm +35 -134
  65. package/Libraries/AppDelegate/RCTUIConfiguratorProtocol.h +2 -2
  66. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +1 -0
  67. package/Libraries/AppState/AppState.d.ts +4 -1
  68. package/Libraries/AppState/AppState.js +35 -22
  69. package/Libraries/BatchedBridge/MessageQueue.js +69 -76
  70. package/Libraries/BatchedBridge/NativeModules.js +20 -11
  71. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestConfig.js +37 -0
  72. package/Libraries/BatchedBridge/__mocks__/MessageQueueTestModule.js +24 -0
  73. package/Libraries/BatchedBridge/__tests__/MessageQueue-itest.js +183 -0
  74. package/Libraries/BatchedBridge/__tests__/NativeModules-test.js +253 -0
  75. package/Libraries/Blob/Blob.js +7 -1
  76. package/Libraries/Blob/FileReader.js +6 -0
  77. package/Libraries/Blob/RCTBlobCollector.h +1 -1
  78. package/Libraries/Blob/RCTBlobCollector.mm +14 -26
  79. package/Libraries/Blob/RCTBlobManager.mm +11 -3
  80. package/Libraries/Blob/RCTBlobPlugins.mm +14 -14
  81. package/Libraries/Blob/URL.js +34 -3
  82. package/Libraries/Blob/URLSearchParams.js +1 -0
  83. package/Libraries/Blob/URLSearchParams.js.flow +1 -1
  84. package/Libraries/Blob/__mocks__/BlobModule.js +16 -0
  85. package/Libraries/Blob/__mocks__/FileReaderModule.js +20 -0
  86. package/Libraries/Blob/__tests__/Blob-test.js +135 -0
  87. package/Libraries/Blob/__tests__/BlobManager-test.js +32 -0
  88. package/Libraries/Blob/__tests__/BlobRegistry-itest.js +49 -0
  89. package/Libraries/Blob/__tests__/File-test.js +89 -0
  90. package/Libraries/Blob/__tests__/FileReader-test.js +87 -0
  91. package/Libraries/Blob/__tests__/URL-itest.js +168 -0
  92. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +29 -19
  93. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +118 -156
  94. package/Libraries/Components/AccessibilityInfo/__tests__/AccessibilityInfo-test.js +822 -0
  95. package/Libraries/Components/AccessibilityInfo/legacySendAccessibilityEvent.macos.js +14 -7
  96. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +61 -51
  97. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -2
  98. package/Libraries/Components/ActivityIndicator/__tests__/ActivityIndicator-itest.js +195 -0
  99. package/Libraries/Components/Button.js +104 -248
  100. package/Libraries/Components/Clipboard/Clipboard.js +5 -0
  101. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +2 -2
  102. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +9 -70
  103. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +10 -1
  104. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.ios.js +2 -0
  105. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.macos.js +23 -0
  106. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +32 -37
  107. package/Libraries/Components/DrawerAndroid/__tests__/DrawerAndroid-test.js +38 -0
  108. package/Libraries/Components/DrawerAndroid/__tests__/__snapshots__/DrawerAndroid-test.js.snap +107 -0
  109. package/Libraries/Components/Keyboard/Keyboard.js +34 -71
  110. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +17 -9
  111. package/Libraries/Components/Keyboard/__tests__/Keyboard-test.js +83 -0
  112. package/Libraries/Components/LayoutConformance/LayoutConformance.js +2 -28
  113. package/Libraries/Components/LayoutConformance/LayoutConformanceNativeComponent.js +1 -1
  114. package/Libraries/Components/Pressable/Pressable.d.ts +6 -0
  115. package/Libraries/Components/Pressable/Pressable.js +53 -172
  116. package/Libraries/Components/Pressable/__tests__/Pressable-itest.js +323 -0
  117. package/Libraries/Components/Pressable/useAndroidRippleForView.js +11 -12
  118. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +5 -6
  119. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.js +5 -5
  120. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  121. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidTypes.js +20 -3
  122. package/Libraries/Components/ProgressBarAndroid/__tests__/ProgressBarAndroid-itest.js +31 -0
  123. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +2 -2
  124. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +2 -2
  125. package/Libraries/Components/RefreshControl/RefreshControl.js +44 -54
  126. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +2 -2
  127. package/Libraries/Components/SafeAreaView/SafeAreaView.js +8 -8
  128. package/Libraries/Components/SafeAreaView/__tests__/SafeAreaView-itest.js +38 -0
  129. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -2
  130. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +8 -12
  131. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +1 -5
  132. package/Libraries/Components/ScrollView/ScrollView.d.ts +64 -43
  133. package/Libraries/Components/ScrollView/ScrollView.js +227 -165
  134. package/Libraries/Components/ScrollView/ScrollViewCommands.js +6 -6
  135. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +8 -32
  136. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +4 -3
  137. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +4 -4
  138. package/Libraries/Components/ScrollView/__tests__/ScrollView-itest.js +240 -0
  139. package/Libraries/Components/ScrollView/__tests__/ScrollView-viewCulling-itest.js +2602 -0
  140. package/Libraries/Components/StaticRenderer.js +1 -1
  141. package/Libraries/Components/StatusBar/StatusBar.d.ts +7 -54
  142. package/Libraries/Components/StatusBar/StatusBar.js +93 -169
  143. package/Libraries/Components/StatusBar/__tests__/StatusBar-test.js +79 -0
  144. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +2 -2
  145. package/Libraries/Components/Switch/Switch.js +80 -79
  146. package/Libraries/Components/Switch/SwitchNativeComponent.js +2 -2
  147. package/Libraries/Components/Switch/__tests__/Switch-itest.js +47 -0
  148. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +58 -49
  149. package/Libraries/Components/TextInput/InputAccessoryView.js +14 -62
  150. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +2 -2
  151. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +2 -2
  152. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -3
  153. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +6 -41
  154. package/Libraries/Components/TextInput/TextInput.d.ts +33 -127
  155. package/Libraries/Components/TextInput/TextInput.flow.js +79 -205
  156. package/Libraries/Components/TextInput/TextInput.js +163 -246
  157. package/Libraries/Components/TextInput/TextInputNativeCommands.js +4 -16
  158. package/Libraries/Components/TextInput/TextInputState.js +3 -7
  159. package/Libraries/Components/TextInput/__tests__/InputAccessoryView-itest.js +33 -0
  160. package/Libraries/Components/TextInput/__tests__/TextInput-itest.js +633 -0
  161. package/Libraries/Components/ToastAndroid/ToastAndroid.android.js +30 -24
  162. package/Libraries/Components/ToastAndroid/ToastAndroid.macos.js +23 -0
  163. package/Libraries/Components/ToastAndroid/ToastAndroidFallback.js +5 -5
  164. package/Libraries/Components/Touchable/PooledClass.js +6 -6
  165. package/Libraries/Components/Touchable/Touchable.js +95 -101
  166. package/Libraries/Components/Touchable/TouchableBounce.js +12 -32
  167. package/Libraries/Components/Touchable/TouchableHighlight.js +53 -139
  168. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +27 -43
  169. package/Libraries/Components/Touchable/TouchableOpacity.js +20 -116
  170. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +15 -49
  171. package/Libraries/Components/Touchable/__tests__/TouchableHighlight-itest.js +483 -0
  172. package/Libraries/Components/Touchable/__tests__/TouchableNativeFeedback-itest.js +160 -0
  173. package/Libraries/Components/Touchable/__tests__/TouchableOpacity-itest.js +235 -0
  174. package/Libraries/Components/Touchable/__tests__/TouchableWithoutFeedback-itest.js +170 -0
  175. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +2 -2
  176. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  177. package/Libraries/Components/View/ReactNativeStyleAttributes.js +79 -33
  178. package/Libraries/Components/View/View.js +21 -72
  179. package/Libraries/Components/View/ViewAccessibility.d.ts +11 -1
  180. package/Libraries/Components/View/ViewAccessibility.js +23 -13
  181. package/Libraries/Components/View/ViewNativeComponent.js +4 -6
  182. package/Libraries/Components/View/ViewPropTypes.d.ts +0 -26
  183. package/Libraries/Components/View/ViewPropTypes.js +98 -170
  184. package/Libraries/Components/View/__tests__/FantomEventHandlers-itest.js +80 -0
  185. package/Libraries/Components/View/__tests__/View-benchmark-itest.js +270 -0
  186. package/Libraries/Components/View/__tests__/View-flexBasisFitContent-itest.js +87 -0
  187. package/Libraries/Components/View/__tests__/View-itest.js +1138 -0
  188. package/Libraries/Components/View/__tests__/View-vs-ViewNativeComponent-benchmark-itest.js +60 -0
  189. package/Libraries/Components/View/__tests__/View-yogaNodeOwnerAssertion-itest.js +120 -0
  190. package/Libraries/Components/View/__tests__/ViewProps-benchmark-itest.js +172 -0
  191. package/Libraries/Components/__tests__/Button-itest.js +290 -0
  192. package/Libraries/Core/Devtools/__tests__/loadBundleFromServer-test.js +269 -0
  193. package/Libraries/Core/Devtools/__tests__/parseErrorStack-itest.js +45 -0
  194. package/Libraries/Core/Devtools/__tests__/parseHermesStack-itest.js +241 -0
  195. package/Libraries/Core/Devtools/loadBundleFromServer.js +14 -3
  196. package/Libraries/Core/Devtools/parseHermesStack.js +8 -8
  197. package/Libraries/Core/Devtools/symbolicateStackTrace.js +3 -3
  198. package/Libraries/Core/ExceptionsManager.js +5 -11
  199. package/Libraries/Core/ExtendedError.js +3 -3
  200. package/Libraries/Core/InitializeCore.js +9 -14
  201. package/Libraries/Core/RawEventEmitter.js +2 -2
  202. package/Libraries/Core/ReactFiberErrorDialog.js +6 -6
  203. package/Libraries/Core/ReactNativeVersion.js +3 -3
  204. package/Libraries/Core/ReactNativeVersionCheck.js +1 -1
  205. package/Libraries/Core/Timers/JSTimers.js +56 -54
  206. package/Libraries/Core/Timers/__tests__/JSTimers-test.js +427 -0
  207. package/Libraries/Core/Timers/immediateShim.js +1 -1
  208. package/Libraries/Core/__mocks__/NativeExceptionsManager.js +18 -0
  209. package/Libraries/Core/__tests__/ExceptionsManager-test.js +1102 -0
  210. package/Libraries/Core/__tests__/ReactNativeVersionCheck-itest.js +135 -0
  211. package/Libraries/Core/setUpAlert.js +0 -1
  212. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  213. package/Libraries/Core/setUpDeveloperTools.js +1 -1
  214. package/Libraries/Core/setUpErrorHandling.js +5 -3
  215. package/Libraries/Core/setUpGlobals.js +9 -4
  216. package/Libraries/Core/setUpNavigator.js +6 -1
  217. package/Libraries/Core/setUpReactDevTools.js +0 -101
  218. package/Libraries/Core/setUpSegmentFetcher.js +2 -2
  219. package/Libraries/Core/setUpXHR.js +6 -2
  220. package/Libraries/Debugging/DebuggingOverlay.js +4 -4
  221. package/Libraries/Debugging/DebuggingOverlayNativeComponent.js +2 -2
  222. package/Libraries/Debugging/DebuggingOverlayRegistry.js +1 -1
  223. package/Libraries/EventEmitter/NativeEventEmitter.js +41 -11
  224. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +9 -9
  225. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.js +3 -0
  226. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +51 -0
  227. package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +0 -6
  228. package/Libraries/Image/AssetSourceResolver.js +18 -27
  229. package/Libraries/Image/Image.android.js +170 -313
  230. package/Libraries/Image/Image.d.ts +0 -5
  231. package/Libraries/Image/Image.ios.js +5 -5
  232. package/Libraries/Image/Image.macos.js +15 -7
  233. package/Libraries/Image/ImageBackground.js +30 -18
  234. package/Libraries/Image/ImageProps.js +126 -134
  235. package/Libraries/Image/ImageSource.d.ts +1 -1
  236. package/Libraries/Image/ImageSource.js +11 -11
  237. package/Libraries/Image/ImageSourceUtils.js +14 -7
  238. package/Libraries/Image/ImageTypes.flow.js +6 -4
  239. package/Libraries/Image/ImageViewNativeComponent.js +8 -17
  240. package/Libraries/Image/RCTAnimatedImage.h +4 -8
  241. package/Libraries/Image/RCTAnimatedImage.mm +1 -12
  242. package/Libraries/Image/RCTBundleAssetImageLoader.mm +1 -1
  243. package/Libraries/Image/RCTDisplayWeakRefreshable.h +2 -4
  244. package/Libraries/Image/RCTDisplayWeakRefreshable.mm +3 -3
  245. package/Libraries/Image/RCTImageBlurUtils.h +2 -2
  246. package/Libraries/Image/RCTImageBlurUtils.mm +7 -20
  247. package/Libraries/Image/RCTImageCache.h +4 -4
  248. package/Libraries/Image/RCTImageCache.mm +3 -7
  249. package/Libraries/Image/RCTImageDataDecoder.h +1 -1
  250. package/Libraries/Image/RCTImageEditingManager.mm +4 -4
  251. package/Libraries/Image/RCTImageLoader.h +1 -2
  252. package/Libraries/Image/RCTImageLoader.mm +91 -144
  253. package/Libraries/Image/RCTImageLoaderProtocol.h +2 -1
  254. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +2 -2
  255. package/Libraries/Image/RCTImagePlugins.h +1 -0
  256. package/Libraries/Image/RCTImagePlugins.mm +30 -17
  257. package/Libraries/Image/RCTImageStoreManager.h +5 -7
  258. package/Libraries/Image/RCTImageStoreManager.mm +6 -8
  259. package/Libraries/Image/RCTImageURLLoader.h +4 -4
  260. package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +1 -1
  261. package/Libraries/Image/RCTImageUtils.h +5 -10
  262. package/Libraries/Image/RCTImageUtils.mm +44 -48
  263. package/Libraries/Image/RCTLocalAssetImageLoader.mm +1 -1
  264. package/Libraries/Image/RCTResizeMode.h +2 -13
  265. package/Libraries/Image/RCTUIImageViewAnimated.h +2 -1
  266. package/Libraries/Image/RCTUIImageViewAnimated.mm +24 -30
  267. package/Libraries/Image/React-RCTImage.podspec +1 -5
  268. package/Libraries/Image/RelativeImageStub.js +3 -3
  269. package/Libraries/Image/__tests__/AssetUtils-itest.js +50 -0
  270. package/Libraries/Image/__tests__/Image-benchmark-itest.js +80 -0
  271. package/Libraries/Image/__tests__/Image-itest.js +1085 -0
  272. package/Libraries/Image/__tests__/ImageBackground-itest.js +154 -0
  273. package/Libraries/Image/__tests__/ImageSourceUtils-itest.js +301 -0
  274. package/Libraries/Image/__tests__/assetRelativePathInSnapshot-itest.js +41 -0
  275. package/Libraries/Image/__tests__/img/img1.png +0 -0
  276. package/Libraries/Image/__tests__/img/img2.png +0 -0
  277. package/Libraries/Image/__tests__/resolveAssetSource-test.js +459 -0
  278. package/Libraries/Image/nativeImageSource.js +1 -3
  279. package/Libraries/Image/resolveAssetSource.js +1 -1
  280. package/Libraries/Interaction/PanResponder.js +104 -99
  281. package/Libraries/LayoutAnimation/LayoutAnimation.js +37 -21
  282. package/Libraries/Linking/Linking.js +27 -30
  283. package/Libraries/LinkingIOS/RCTLinkingManager.h +1 -8
  284. package/Libraries/LinkingIOS/RCTLinkingManager.mm +0 -3
  285. package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +10 -13
  286. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -8
  287. package/Libraries/Lists/FillRateHelper.js +2 -2
  288. package/Libraries/Lists/FlatList.d.ts +7 -18
  289. package/Libraries/Lists/FlatList.js +16 -55
  290. package/Libraries/Lists/SectionList.d.ts +1 -1
  291. package/Libraries/Lists/SectionList.js +10 -3
  292. package/Libraries/Lists/SectionListModern.js +4 -4
  293. package/Libraries/Lists/ViewabilityHelper.js +2 -2
  294. package/Libraries/Lists/VirtualizeUtils.js +1 -1
  295. package/Libraries/Lists/VirtualizedList.js +5 -2
  296. package/Libraries/Lists/VirtualizedListContext.js +1 -1
  297. package/Libraries/Lists/VirtualizedSectionList.js +6 -2
  298. package/Libraries/Lists/__flowtests__/FlatList-flowtest.js +118 -0
  299. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +130 -0
  300. package/Libraries/Lists/__tests__/FlatList-itest.js +1160 -0
  301. package/Libraries/Lists/__tests__/SectionList-itest.js +728 -0
  302. package/Libraries/Lists/__tests__/VirtualizedList-stickyHeaders-benchmark-itest.js +85 -0
  303. package/Libraries/LogBox/Data/LogBoxData.js +69 -28
  304. package/Libraries/LogBox/Data/LogBoxLog.js +45 -114
  305. package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
  306. package/Libraries/LogBox/Data/__tests__/LogBoxData-test.js +867 -0
  307. package/Libraries/LogBox/Data/__tests__/LogBoxLog-test.js +600 -0
  308. package/Libraries/LogBox/Data/__tests__/LogBoxSymbolication-test.js +60 -0
  309. package/Libraries/LogBox/Data/__tests__/parseLogBoxLog-itest.js +776 -0
  310. package/Libraries/LogBox/Data/__tests__/parseLogBoxLog-test.js +365 -0
  311. package/Libraries/LogBox/Data/parseLogBoxLog.js +23 -119
  312. package/Libraries/LogBox/LogBox.js +53 -30
  313. package/Libraries/LogBox/LogBoxInspectorContainer.js +26 -4
  314. package/Libraries/LogBox/LogBoxNotificationContainer.js +29 -6
  315. package/Libraries/LogBox/UI/AnsiHighlight.js +2 -1
  316. package/Libraries/LogBox/UI/LogBoxButton.js +55 -34
  317. package/Libraries/LogBox/UI/LogBoxInspector.js +63 -3
  318. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +10 -25
  319. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +11 -2
  320. package/Libraries/LogBox/UI/LogBoxInspectorFooterButton.js +4 -2
  321. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +9 -4
  322. package/Libraries/LogBox/UI/LogBoxInspectorHeaderButton.js +1 -1
  323. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +18 -16
  324. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +32 -24
  325. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +7 -7
  326. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +11 -11
  327. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +8 -8
  328. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +20 -30
  329. package/Libraries/LogBox/UI/LogBoxMessage.js +43 -39
  330. package/Libraries/LogBox/UI/LogBoxNotification.js +3 -1
  331. package/Libraries/LogBox/UI/LogBoxNotificationCountBadge.js +4 -1
  332. package/Libraries/LogBox/UI/LogBoxNotificationMessage.js +1 -0
  333. package/Libraries/LogBox/UI/LogBoxStyle.js +0 -4
  334. package/Libraries/LogBox/UI/__tests__/LogBoxButton-itest.js +54 -0
  335. package/Libraries/LogBox/UI/__tests__/LogBoxInspector-itest.js +106 -0
  336. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorCodeFrame-itest.js +140 -0
  337. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorFooter-itest.js +81 -0
  338. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorHeader-itest.js +81 -0
  339. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorMessageHeader-itest.js +134 -0
  340. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorReactFrames-itest.js +196 -0
  341. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorSection-itest.js +46 -0
  342. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorSourceMapStatus-itest.js +50 -0
  343. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorStackFrame-itest.js +77 -0
  344. package/Libraries/LogBox/UI/__tests__/LogBoxInspectorStackFrames-itest.js +110 -0
  345. package/Libraries/LogBox/UI/__tests__/LogBoxMessage-itest.js +266 -0
  346. package/Libraries/LogBox/UI/__tests__/LogBoxNotification-itest.js +47 -0
  347. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxButton-itest.js.snap +38 -0
  348. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspector-itest.js.snap +367 -0
  349. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorCodeFrame-itest.js.snap +924 -0
  350. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorFooter-itest.js.snap +203 -0
  351. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorHeader-itest.js.snap +177 -0
  352. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorMessageHeader-itest.js.snap +289 -0
  353. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorReactFrames-itest.js.snap +475 -0
  354. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorSection-itest.js.snap +69 -0
  355. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorSourceMapStatus-itest.js.snap +76 -0
  356. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorStackFrame-itest.js.snap +121 -0
  357. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxInspectorStackFrames-itest.js.snap +100 -0
  358. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxMessage-itest.js.snap +332 -0
  359. package/Libraries/LogBox/UI/__tests__/__snapshots__/LogBoxNotification-itest.js.snap +102 -0
  360. package/Libraries/LogBox/__tests__/LogBox-test.js +464 -0
  361. package/Libraries/LogBox/__tests__/LogBoxInspectorContainer-test.js +168 -0
  362. package/Libraries/LogBox/__tests__/LogBoxNotificationContainer-test.js +362 -0
  363. package/Libraries/LogBox/__tests__/__snapshots__/LogBoxInspectorContainer-test.js.snap +78 -0
  364. package/Libraries/LogBox/__tests__/__snapshots__/LogBoxNotificationContainer-test.js.snap +231 -0
  365. package/Libraries/LogBox/__tests__/fantomHelpers.js +225 -0
  366. package/Libraries/Modal/Modal.d.ts +5 -4
  367. package/Libraries/Modal/Modal.js +87 -48
  368. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +2 -2
  369. package/Libraries/Modal/__tests__/Modal-itest.js +324 -0
  370. package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.mm +1 -1
  371. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.mm +1 -1
  372. package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.mm +1 -1
  373. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.mm +2 -4
  374. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.h +1 -1
  375. package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +14 -14
  376. package/Libraries/NativeAnimation/RCTAnimationUtils.h +2 -2
  377. package/Libraries/NativeAnimation/RCTAnimationUtils.mm +1 -1
  378. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +2 -2
  379. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -2
  380. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.mm +3 -3
  381. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
  382. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +2 -5
  383. package/Libraries/NativeComponent/BaseViewConfig.android.js +72 -52
  384. package/Libraries/NativeComponent/BaseViewConfig.ios.js +36 -21
  385. package/Libraries/NativeComponent/BaseViewConfig.macos.js +12 -89
  386. package/Libraries/NativeComponent/NativeComponentRegistry.js +2 -2
  387. package/Libraries/NativeComponent/StaticViewConfigValidator.js +4 -4
  388. package/Libraries/NativeComponent/ViewConfig.js +3 -3
  389. package/Libraries/NativeComponent/ViewConfigIgnore.js +6 -5
  390. package/Libraries/NativeComponent/__tests__/StaticViewConfigValidator-itest.js +239 -0
  391. package/Libraries/Network/RCTFileRequestHandler.mm +0 -4
  392. package/Libraries/Network/RCTHTTPRequestHandler.h +10 -1
  393. package/Libraries/Network/RCTHTTPRequestHandler.mm +15 -1
  394. package/Libraries/Network/RCTInspectorNetworkReporter.mm +26 -3
  395. package/Libraries/Network/RCTNetworkConversions.h +1 -1
  396. package/Libraries/Network/RCTNetworkPlugins.mm +22 -16
  397. package/Libraries/Network/RCTNetworking.android.js +4 -4
  398. package/Libraries/Network/RCTNetworking.ios.js +3 -3
  399. package/Libraries/Network/RCTNetworking.js.flow +3 -3
  400. package/Libraries/Network/RCTNetworking.macos.js +15 -7
  401. package/Libraries/Network/RCTNetworking.mm +1 -2
  402. package/Libraries/Network/RCTNetworkingEventDefinitions.flow.js +1 -1
  403. package/Libraries/Network/React-RCTNetwork.podspec +1 -4
  404. package/Libraries/Network/XMLHttpRequest.js +30 -13
  405. package/Libraries/Network/__tests__/FormData-itest.js +130 -0
  406. package/Libraries/Network/__tests__/XMLHttpRequest-test.js +288 -0
  407. package/Libraries/Performance/Systrace.js +36 -0
  408. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +4 -2
  409. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +32 -20
  410. package/Libraries/Pressability/HoverState.js +0 -4
  411. package/Libraries/Pressability/Pressability.js +17 -82
  412. package/Libraries/Pressability/PressabilityDebug.js +1 -1
  413. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -1
  414. package/Libraries/Pressability/__tests__/Pressability-itest.js +253 -0
  415. package/Libraries/Pressability/__tests__/Pressability-test.js +989 -0
  416. package/Libraries/Pressability/usePressability.js +3 -14
  417. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +8 -7
  418. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.h +0 -5
  419. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +26 -27
  420. package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +10 -13
  421. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -5
  422. package/Libraries/ReactNative/AppContainer-dev.js +22 -4
  423. package/Libraries/ReactNative/AppContainer-prod.js +1 -2
  424. package/Libraries/ReactNative/AppContainer.js +1 -2
  425. package/Libraries/ReactNative/AppRegistry.d.ts +1 -1
  426. package/Libraries/ReactNative/AppRegistry.flow.js +4 -4
  427. package/Libraries/ReactNative/AppRegistry.js +15 -11
  428. package/Libraries/ReactNative/AppRegistryImpl.js +74 -28
  429. package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
  430. package/Libraries/ReactNative/DeprecatedPerformanceLoggerStub.js +83 -0
  431. package/Libraries/ReactNative/DisplayMode.js +1 -1
  432. package/Libraries/ReactNative/FabricUIManager.js +36 -27
  433. package/Libraries/ReactNative/I18nManager.js +20 -0
  434. package/Libraries/ReactNative/IPerformanceLogger.d.ts +51 -0
  435. package/Libraries/ReactNative/IPerformanceLogger.flow.js +52 -0
  436. package/Libraries/ReactNative/PaperUIManager.js +2 -2
  437. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
  438. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +2 -2
  439. package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +15 -15
  440. package/Libraries/ReactNative/ReactFabricPublicInstance/__tests__/ReactNativeAttributePayload-itest.js +495 -0
  441. package/Libraries/ReactNative/RendererImplementation.js +26 -142
  442. package/Libraries/ReactNative/RendererProxy.js +4 -15
  443. package/Libraries/ReactNative/UIManager.js +53 -0
  444. package/Libraries/ReactNative/UIManagerProperties.js +1 -1
  445. package/Libraries/ReactNative/__tests__/FabricUIManager-test.js +67 -0
  446. package/Libraries/ReactNative/__tests__/StaleEventHandlersFromInterruptedRender-itest.js +126 -0
  447. package/Libraries/ReactNative/__tests__/State-ForcedCloneCommitHook-itest.js +57 -0
  448. package/Libraries/ReactNative/__tests__/SyncOnCommit-itest.js +181 -0
  449. package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
  450. package/Libraries/ReactNative/renderApplication.js +33 -59
  451. package/Libraries/ReactNative/requireNativeComponent.js +3 -3
  452. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +5 -122
  453. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js.flow +5 -41
  454. package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -3
  455. package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
  456. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
  457. package/Libraries/Renderer/shims/ReactNativeTypes.js +36 -66
  458. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +4 -4
  459. package/Libraries/Settings/RCTSettingsManager.mm +1 -32
  460. package/Libraries/Settings/RCTSettingsPlugins.mm +10 -13
  461. package/Libraries/Settings/Settings.ios.js +24 -2
  462. package/Libraries/Settings/Settings.macos.js +25 -7
  463. package/Libraries/Share/Share.js +25 -28
  464. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +4 -4
  465. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +4 -4
  466. package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +10 -2
  467. package/Libraries/StyleSheet/PlatformColorValueTypes.macos.js +11 -159
  468. package/Libraries/StyleSheet/PointPropType.js +1 -1
  469. package/Libraries/StyleSheet/Rect.js +1 -1
  470. package/Libraries/StyleSheet/StyleSheet.d.ts +0 -5
  471. package/Libraries/StyleSheet/StyleSheet.js +42 -2
  472. package/Libraries/StyleSheet/StyleSheet.js.flow +2 -2
  473. package/Libraries/StyleSheet/StyleSheetExports.js +23 -30
  474. package/Libraries/StyleSheet/StyleSheetExports.js.flow +3 -8
  475. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +123 -48
  476. package/Libraries/StyleSheet/StyleSheetTypes.js +79 -95
  477. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +51 -0
  478. package/Libraries/StyleSheet/__tests__/StyleSheet-itest.js +53 -0
  479. package/Libraries/StyleSheet/__tests__/flattenStyle-benchmark-itest.js +72 -0
  480. package/Libraries/StyleSheet/__tests__/flattenStyle-itest.js +190 -0
  481. package/Libraries/StyleSheet/__tests__/normalizeColor-itest.js +99 -0
  482. package/Libraries/StyleSheet/__tests__/processAspectRatio-itest.js +75 -0
  483. package/Libraries/StyleSheet/__tests__/processBackgroundImage-itest.js +1158 -0
  484. package/Libraries/StyleSheet/__tests__/processBackgroundPosition-itest.js +477 -0
  485. package/Libraries/StyleSheet/__tests__/processBackgroundRepeat-itest.js +242 -0
  486. package/Libraries/StyleSheet/__tests__/processBackgroundSize-itest.js +227 -0
  487. package/Libraries/StyleSheet/__tests__/processBoxShadow-itest.js +353 -0
  488. package/Libraries/StyleSheet/__tests__/processColor-itest.js +125 -0
  489. package/Libraries/StyleSheet/__tests__/processColorArray-itest.js +141 -0
  490. package/Libraries/StyleSheet/__tests__/processFilter-itest.js +416 -0
  491. package/Libraries/StyleSheet/__tests__/processFontVariant-itest.js +50 -0
  492. package/Libraries/StyleSheet/__tests__/processTransform-itest.js +151 -0
  493. package/Libraries/StyleSheet/__tests__/processTransformOrigin-itest.js +117 -0
  494. package/Libraries/StyleSheet/__tests__/setNormalizedColorAlpha-itest.js +35 -0
  495. package/Libraries/StyleSheet/__tests__/splitLayoutProps-itest.js +54 -0
  496. package/Libraries/StyleSheet/flattenStyle.js +29 -14
  497. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +5 -5
  498. package/Libraries/StyleSheet/private/_TransformStyle.js +22 -20
  499. package/Libraries/StyleSheet/processBackgroundImage.js +26 -16
  500. package/Libraries/StyleSheet/processBackgroundPosition.js +4 -4
  501. package/Libraries/StyleSheet/processBackgroundRepeat.js +4 -4
  502. package/Libraries/StyleSheet/processBackgroundSize.js +11 -16
  503. package/Libraries/StyleSheet/processBoxShadow.js +15 -13
  504. package/Libraries/StyleSheet/processColorArray.js +2 -2
  505. package/Libraries/StyleSheet/processFilter.js +19 -11
  506. package/Libraries/StyleSheet/processTransformOrigin.js +10 -3
  507. package/Libraries/Text/RCTConvert+Text.h +0 -16
  508. package/Libraries/Text/RCTConvert+Text.mm +0 -2
  509. package/Libraries/Text/React-RCTText.podspec +1 -6
  510. package/Libraries/Text/Text/NSTextStorage+FontScaling.h +1 -1
  511. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +1 -1
  512. package/Libraries/Text/Text/RCTDynamicTypeRamp.h +0 -2
  513. package/Libraries/Text/Text/RCTDynamicTypeRamp.mm +6 -5
  514. package/Libraries/Text/Text.d.ts +0 -1
  515. package/Libraries/Text/Text.js +307 -626
  516. package/Libraries/Text/TextEffectNativeComponent.js +31 -0
  517. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +38 -62
  518. package/Libraries/Text/TextInput/Multiline/RCTUITextView.mm +18 -337
  519. package/Libraries/Text/TextInput/RCTBackedTextInputDelegate.h +4 -22
  520. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.h +1 -12
  521. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.mm +46 -215
  522. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +5 -53
  523. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +2 -41
  524. package/Libraries/Text/TextInput/Singleline/RCTUITextField.mm +8 -446
  525. package/Libraries/Text/TextNativeComponent.js +18 -12
  526. package/Libraries/Text/TextProps.js +67 -129
  527. package/Libraries/Text/__tests__/Text-benchmark-itest.js +76 -0
  528. package/Libraries/Text/__tests__/Text-itest.js +830 -0
  529. package/Libraries/Text/requireNativeTextEffect.js +28 -0
  530. package/Libraries/TurboModule/RCTExport.js +2 -2
  531. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -3
  532. package/Libraries/TypeSafety/RCTTypedModuleConstants.h +36 -1
  533. package/Libraries/Types/CodegenTypes.js +9 -6
  534. package/Libraries/Types/CoreEventTypes.d.ts +8 -76
  535. package/Libraries/Types/CoreEventTypes.js +78 -125
  536. package/Libraries/Types/ReactDevToolsTypes.js +4 -4
  537. package/Libraries/Types/UIManagerJSInterface.js +2 -2
  538. package/Libraries/Utilities/Appearance.d.ts +32 -17
  539. package/Libraries/Utilities/Appearance.js +39 -17
  540. package/Libraries/Utilities/BackHandler.android.js +24 -33
  541. package/Libraries/Utilities/BackHandler.d.ts +11 -1
  542. package/Libraries/Utilities/BackHandler.ios.js +3 -1
  543. package/Libraries/Utilities/BackHandler.js.flow +22 -1
  544. package/Libraries/Utilities/BackHandler.macos.js +15 -10
  545. package/Libraries/Utilities/DevLoadingView.js +8 -1
  546. package/Libraries/Utilities/DevSettings.js +12 -5
  547. package/Libraries/Utilities/Dimensions.js +19 -13
  548. package/Libraries/Utilities/HMRClient.js +35 -7
  549. package/Libraries/Utilities/HardwareBackPressEvent.js +22 -0
  550. package/Libraries/Utilities/PixelRatio.js +5 -2
  551. package/Libraries/Utilities/Platform.js.flow +4 -0
  552. package/Libraries/Utilities/Platform.macos.js +11 -82
  553. package/Libraries/Utilities/PlatformTypes.js +77 -0
  554. package/Libraries/Utilities/RCTLog.js +3 -3
  555. package/Libraries/Utilities/ReactNativeTestTools.js +6 -7
  556. package/Libraries/Utilities/__mocks__/BackHandler.js +52 -0
  557. package/Libraries/Utilities/__mocks__/PixelRatio.js +24 -0
  558. package/Libraries/Utilities/__tests__/BackHandler-itest.js +144 -0
  559. package/Libraries/Utilities/__tests__/DeviceInfo-itest.js +19 -0
  560. package/Libraries/Utilities/__tests__/Dimensions-itest.js +70 -0
  561. package/Libraries/Utilities/__tests__/HardwareBackPressEvent-itest.js +65 -0
  562. package/Libraries/Utilities/__tests__/PixelRatio-itest.js +53 -0
  563. package/Libraries/Utilities/__tests__/Platform-itest.js +50 -0
  564. package/Libraries/Utilities/__tests__/ReactNativeTestTools-test.js +103 -0
  565. package/Libraries/Utilities/__tests__/binaryToBase64-itest.js +47 -0
  566. package/Libraries/Utilities/__tests__/codegenNativeComponent-test.js +93 -0
  567. package/Libraries/Utilities/__tests__/deepFreezeAndThrowOnMutationInDev-itest.js +165 -0
  568. package/Libraries/Utilities/__tests__/logError-itest.js +58 -0
  569. package/Libraries/Utilities/__tests__/mapWithSeparator-itest.js +70 -0
  570. package/Libraries/Utilities/__tests__/stringifySafe-itest.js +88 -0
  571. package/Libraries/Utilities/__tests__/useColorScheme-itest.js +60 -0
  572. package/Libraries/Utilities/__tests__/useMergeRefs-itest.js +299 -0
  573. package/Libraries/Utilities/__tests__/useRefEffect-itest.js +213 -0
  574. package/Libraries/Utilities/__tests__/warnOnce-itest.js +33 -0
  575. package/Libraries/Utilities/binaryToBase64.js +1 -1
  576. package/Libraries/Utilities/codegenNativeCommands.js +6 -6
  577. package/Libraries/Utilities/codegenNativeComponent.d.ts +2 -0
  578. package/Libraries/Utilities/codegenNativeComponent.js +6 -6
  579. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +3 -3
  580. package/Libraries/Utilities/differ/__tests__/deepDiffer-itest.js +195 -0
  581. package/Libraries/Utilities/differ/__tests__/matricesDiffer-itest.js +45 -0
  582. package/Libraries/Utilities/differ/deepDiffer.js +5 -2
  583. package/Libraries/Utilities/logError.js +1 -1
  584. package/Libraries/Utilities/stringifySafe.js +10 -10
  585. package/Libraries/Utilities/useColorScheme.js +11 -1
  586. package/Libraries/Utilities/useMergeRefs.js +2 -2
  587. package/Libraries/Utilities/useRefEffect.js +1 -1
  588. package/Libraries/Utilities/useWindowDimensions.js +6 -0
  589. package/Libraries/Vibration/RCTVibrationPlugins.mm +10 -13
  590. package/Libraries/Vibration/Vibration.js +14 -11
  591. package/Libraries/WebSocket/RCTReconnectingWebSocket.m +4 -1
  592. package/Libraries/WebSocket/WebSocket.js +1 -3
  593. package/Libraries/WebSocket/WebSocketInterceptor.js +4 -6
  594. package/Libraries/WebSocket/__tests__/WebSocket-itest.js +23 -0
  595. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +30 -0
  596. package/Libraries/promiseRejectionTrackingOptions.js +9 -9
  597. package/Libraries/vendor/core/ErrorUtils.js +10 -10
  598. package/Libraries/vendor/emitter/EventEmitter.js +35 -25
  599. package/Libraries/vendor/emitter/__flowtests__/EventEmitter-flowtest.js +81 -0
  600. package/Libraries/vendor/emitter/__tests__/EventEmitter-itest.js +422 -0
  601. package/README.md +40 -59
  602. package/React/Base/RCTAssert.m +2 -2
  603. package/React/Base/RCTBridge+Private.h +0 -22
  604. package/React/Base/RCTBridge.h +11 -13
  605. package/React/Base/RCTBridge.mm +5 -459
  606. package/React/Base/RCTBridgeDelegate.h +1 -56
  607. package/React/Base/RCTBridgeModule.h +3 -12
  608. package/React/Base/RCTBridgeProxy.h +8 -0
  609. package/React/Base/RCTBridgeProxy.mm +6 -23
  610. package/React/Base/RCTBundleManager.h +58 -9
  611. package/React/Base/RCTBundleManager.m +109 -29
  612. package/React/Base/RCTBundleURLProvider.h +43 -1
  613. package/React/Base/RCTBundleURLProvider.mm +163 -15
  614. package/React/Base/RCTCallableJSModules.m +0 -18
  615. package/React/Base/RCTConstants.h +1 -4
  616. package/React/Base/RCTConstants.m +7 -8
  617. package/React/Base/RCTConvert.h +12 -27
  618. package/React/Base/RCTConvert.mm +48 -458
  619. package/React/Base/RCTDefines.h +1 -9
  620. package/React/Base/RCTDevSupportHttpHeaders.h +24 -0
  621. package/React/Base/RCTDevSupportHttpHeaders.m +65 -0
  622. package/React/Base/RCTDisplayLink.h +3 -1
  623. package/React/Base/RCTDisplayLink.m +5 -10
  624. package/React/Base/RCTEventDispatcherProtocol.h +1 -1
  625. package/React/Base/RCTFrameUpdate.h +3 -2
  626. package/React/Base/RCTFrameUpdate.m +2 -2
  627. package/React/Base/RCTJSThread.h +1 -1
  628. package/React/Base/RCTJavaScriptExecutor.h +0 -69
  629. package/React/Base/RCTJavaScriptLoader.h +2 -1
  630. package/React/Base/RCTJavaScriptLoader.mm +6 -2
  631. package/React/Base/RCTKeyCommands.h +0 -2
  632. package/React/Base/RCTKeyCommands.m +0 -2
  633. package/React/Base/RCTModuleData.mm +2 -483
  634. package/React/Base/RCTModuleRegistry.m +0 -25
  635. package/React/Base/RCTMultipartDataTask.h +9 -0
  636. package/React/Base/RCTMultipartDataTask.m +16 -1
  637. package/React/Base/RCTPlatformDisplayLink.h +19 -31
  638. package/React/Base/RCTRedBoxSetEnabled.m +1 -1
  639. package/React/Base/RCTReloadCommand.m +2 -4
  640. package/React/Base/RCTRootView.h +10 -6
  641. package/React/Base/RCTRootView.m +4 -507
  642. package/React/Base/RCTRootViewDelegate.h +5 -2
  643. package/React/Base/RCTTextView.h +31 -0
  644. package/React/Base/RCTTouchHandler.h +3 -11
  645. package/React/Base/RCTTouchHandler.m +30 -285
  646. package/React/Base/RCTUIKit.h +89 -737
  647. package/React/Base/RCTUIKit.m +29 -0
  648. package/React/Base/RCTUtils.h +13 -24
  649. package/React/Base/RCTUtils.mm +107 -164
  650. package/React/Base/RCTUtilsUIOverride.h +1 -1
  651. package/React/Base/RCTUtilsUIOverride.m +0 -1
  652. package/React/Base/RCTVersion.m +3 -3
  653. package/React/Base/RCTViewRegistry.m +3 -31
  654. package/React/Base/Surface/RCTSurface.h +3 -0
  655. package/React/Base/Surface/RCTSurface.mm +1 -582
  656. package/React/Base/Surface/RCTSurfaceDelegate.h +8 -4
  657. package/React/Base/Surface/RCTSurfaceProtocol.h +1 -1
  658. package/React/Base/Surface/RCTSurfaceRootShadowView.m +0 -89
  659. package/React/Base/Surface/RCTSurfaceRootShadowViewDelegate.h +1 -1
  660. package/React/Base/Surface/RCTSurfaceRootView.h +1 -1
  661. package/React/Base/Surface/RCTSurfaceRootView.mm +1 -1
  662. package/React/Base/Surface/RCTSurfaceStage.h +1 -1
  663. package/React/Base/Surface/RCTSurfaceView+Internal.h +1 -1
  664. package/React/Base/Surface/RCTSurfaceView.h +2 -2
  665. package/React/Base/Surface/RCTSurfaceView.mm +2 -8
  666. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +9 -4
  667. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +32 -7
  668. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.h +3 -17
  669. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +6 -57
  670. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceSizeMeasureMode.h +1 -1
  671. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceSizeMeasureMode.mm +1 -1
  672. package/React/CoreModules/CoreModulesPlugins.mm +98 -39
  673. package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +1 -3
  674. package/React/CoreModules/RCTAccessibilityManager.h +0 -1
  675. package/React/CoreModules/RCTAccessibilityManager.mm +20 -153
  676. package/React/CoreModules/RCTActionSheetManager.h +1 -1
  677. package/React/CoreModules/RCTActionSheetManager.mm +21 -185
  678. package/React/CoreModules/RCTAlertController.h +1 -7
  679. package/React/CoreModules/RCTAlertController.mm +2 -6
  680. package/React/CoreModules/RCTAlertManager.h +1 -1
  681. package/React/CoreModules/RCTAlertManager.mm +1 -115
  682. package/React/CoreModules/RCTAppState.mm +3 -16
  683. package/React/CoreModules/RCTAppearance.h +2 -6
  684. package/React/CoreModules/RCTAppearance.mm +1 -56
  685. package/React/CoreModules/RCTClipboard.mm +7 -12
  686. package/React/CoreModules/RCTDevLoadingView.mm +144 -110
  687. package/React/CoreModules/RCTDevMenu.h +1 -8
  688. package/React/CoreModules/RCTDevMenu.mm +5 -209
  689. package/React/CoreModules/RCTDevMenuConfigurationDecorator.h +2 -2
  690. package/React/CoreModules/RCTDevSettings.h +36 -9
  691. package/React/CoreModules/RCTDevSettings.mm +56 -33
  692. package/React/CoreModules/RCTDeviceInfo.h +2 -2
  693. package/React/CoreModules/RCTDeviceInfo.mm +16 -48
  694. package/React/CoreModules/RCTEventDispatcher.h +1 -1
  695. package/React/CoreModules/RCTEventDispatcher.mm +1 -1
  696. package/React/CoreModules/RCTExceptionsManager.mm +5 -2
  697. package/React/CoreModules/RCTFPSGraph.h +3 -3
  698. package/React/CoreModules/RCTFPSGraph.mm +6 -13
  699. package/React/CoreModules/RCTJscSafeUrl+Internal.h +23 -0
  700. package/React/CoreModules/RCTJscSafeUrl.mm +38 -0
  701. package/React/CoreModules/RCTKeyboardObserver.mm +11 -13
  702. package/React/CoreModules/RCTLogBox.h +1 -1
  703. package/React/CoreModules/RCTLogBox.mm +0 -11
  704. package/React/CoreModules/RCTLogBoxView.h +3 -17
  705. package/React/CoreModules/RCTLogBoxView.mm +5 -85
  706. package/React/CoreModules/RCTPerfMonitor.mm +58 -366
  707. package/React/CoreModules/RCTPlatform.mm +4 -20
  708. package/React/CoreModules/RCTRedBox+Internal.h +42 -0
  709. package/React/CoreModules/RCTRedBox.h +1 -1
  710. package/React/CoreModules/RCTRedBox.mm +35 -780
  711. package/React/CoreModules/RCTRedBox2AnsiParser+Internal.h +22 -0
  712. package/React/CoreModules/RCTRedBox2AnsiParser.mm +55 -0
  713. package/React/CoreModules/RCTRedBox2Controller+Internal.h +34 -0
  714. package/React/CoreModules/RCTRedBox2Controller.mm +764 -0
  715. package/React/CoreModules/RCTRedBox2ErrorParser+Internal.h +46 -0
  716. package/React/CoreModules/RCTRedBox2ErrorParser.mm +57 -0
  717. package/React/CoreModules/RCTRedBoxController+Internal.h +31 -0
  718. package/React/CoreModules/RCTRedBoxController.mm +447 -0
  719. package/React/CoreModules/RCTRedBoxHMRClient+Internal.h +26 -0
  720. package/React/CoreModules/RCTRedBoxHMRClient.mm +125 -0
  721. package/React/CoreModules/RCTStatusBarManager.h +3 -3
  722. package/React/CoreModules/RCTStatusBarManager.mm +1 -42
  723. package/React/CoreModules/RCTTiming.mm +1 -9
  724. package/React/CoreModules/RCTWebSocketModule.h +6 -0
  725. package/React/CoreModules/RCTWebSocketModule.mm +79 -30
  726. package/React/CoreModules/React-CoreModules.podspec +3 -5
  727. package/React/CxxModule/RCTCxxUtils.h +0 -8
  728. package/React/CxxModule/RCTCxxUtils.mm +1 -28
  729. package/React/DevSupport/RCTDevLoadingViewProtocol.h +5 -2
  730. package/React/DevSupport/RCTFrameTimingsObserver.h +24 -0
  731. package/React/DevSupport/RCTFrameTimingsObserver.mm +298 -0
  732. package/React/DevSupport/RCTInspectorDevServerHelper.h +2 -1
  733. package/React/DevSupport/RCTInspectorDevServerHelper.mm +41 -53
  734. package/React/DevSupport/RCTInspectorNetworkHelper.mm +2 -0
  735. package/React/DevSupport/RCTInspectorUtils.mm +9 -3
  736. package/React/DevSupport/RCTPackagerConnection.h +4 -2
  737. package/React/DevSupport/RCTPackagerConnection.mm +43 -44
  738. package/React/DevSupport/RCTPausedInDebuggerOverlayController.mm +8 -86
  739. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +188 -23
  740. package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +162 -40
  741. package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +920 -566
  742. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.cpp +1 -1
  743. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ComponentDescriptors.h +1 -1
  744. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.cpp +71 -71
  745. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +97 -96
  746. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.cpp +357 -363
  747. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +223 -210
  748. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/RCTComponentViewHelpers.h +107 -107
  749. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.cpp +1 -1
  750. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/ShadowNodes.h +11 -11
  751. package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/States.h +2 -2
  752. package/React/Fabric/Mounting/ComponentViews/ActivityIndicator/RCTActivityIndicatorViewComponentView.h +1 -1
  753. package/React/Fabric/Mounting/ComponentViews/ActivityIndicator/RCTActivityIndicatorViewComponentView.mm +2 -3
  754. package/React/Fabric/Mounting/ComponentViews/DebuggingOverlay/RCTDebuggingOverlayComponentView.h +1 -1
  755. package/React/Fabric/Mounting/ComponentViews/Image/RCTImageComponentView.mm +4 -11
  756. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.h +1 -1
  757. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryComponentView.mm +18 -16
  758. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.h +2 -2
  759. package/React/Fabric/Mounting/ComponentViews/InputAccessory/RCTInputAccessoryContentView.mm +3 -3
  760. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.h +6 -2
  761. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +23 -13
  762. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.h +5 -1
  763. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropCoordinatorAdapter.mm +6 -1
  764. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.h +1 -3
  765. package/React/Fabric/Mounting/ComponentViews/Modal/RCTFabricModalHostViewController.mm +14 -12
  766. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.h +1 -4
  767. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +18 -9
  768. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  769. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  770. package/React/Fabric/Mounting/ComponentViews/Root/RCTRootComponentView.h +1 -1
  771. package/React/Fabric/Mounting/ComponentViews/Root/RCTRootComponentView.mm +1 -1
  772. package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.h +1 -1
  773. package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +3 -15
  774. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTCustomPullToRefreshViewProtocol.h +1 -1
  775. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.h +4 -4
  776. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +30 -14
  777. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.h +1 -1
  778. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTPullToRefreshViewComponentView.mm +18 -32
  779. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.h +7 -7
  780. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +56 -97
  781. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewContainerState.mm +16 -30
  782. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTVirtualViewProtocol.h +2 -2
  783. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.h +1 -1
  784. package/React/Fabric/Mounting/ComponentViews/Switch/RCTSwitchComponentView.mm +21 -13
  785. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.h +1 -5
  786. package/React/Fabric/Mounting/ComponentViews/Text/RCTAccessibilityElement.mm +1 -3
  787. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.h +2 -4
  788. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +2 -6
  789. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.h +1 -1
  790. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +56 -40
  791. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.h +1 -1
  792. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +20 -368
  793. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +5 -10
  794. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +6 -27
  795. package/React/Fabric/Mounting/ComponentViews/UnimplementedComponent/RCTUnimplementedNativeComponentView.h +1 -2
  796. package/React/Fabric/Mounting/ComponentViews/UnimplementedComponent/RCTUnimplementedNativeComponentView.mm +4 -10
  797. package/React/Fabric/Mounting/ComponentViews/UnimplementedView/RCTUnimplementedViewComponentView.h +1 -1
  798. package/React/Fabric/Mounting/ComponentViews/UnimplementedView/RCTUnimplementedViewComponentView.mm +4 -10
  799. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +5 -18
  800. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +239 -799
  801. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.h +3 -2
  802. package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +92 -204
  803. package/React/Fabric/Mounting/RCTComponentViewClassDescriptor.h +1 -1
  804. package/React/Fabric/Mounting/RCTComponentViewDescriptor.h +2 -2
  805. package/React/Fabric/Mounting/RCTComponentViewFactory.h +1 -1
  806. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +9 -5
  807. package/React/Fabric/Mounting/RCTComponentViewProtocol.h +3 -6
  808. package/React/Fabric/Mounting/RCTComponentViewRegistry.h +2 -2
  809. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +1 -11
  810. package/React/Fabric/Mounting/RCTMountingManager.h +3 -3
  811. package/React/Fabric/Mounting/RCTMountingManager.mm +17 -20
  812. package/React/Fabric/Mounting/RCTMountingManagerDelegate.h +1 -1
  813. package/React/Fabric/Mounting/RCTMountingTransactionObserving.h +1 -1
  814. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +5 -8
  815. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +5 -23
  816. package/React/Fabric/RCTConversions.h +37 -56
  817. package/React/Fabric/RCTImageResponseDelegate.h +2 -2
  818. package/React/Fabric/RCTImageResponseObserverProxy.mm +1 -1
  819. package/React/Fabric/RCTLocalizationProvider.h +1 -1
  820. package/React/Fabric/RCTScheduler.h +3 -1
  821. package/React/Fabric/RCTScheduler.mm +75 -0
  822. package/React/Fabric/RCTSurfacePointerHandler.h +3 -3
  823. package/React/Fabric/RCTSurfacePointerHandler.mm +65 -209
  824. package/React/Fabric/RCTSurfacePresenter.h +2 -2
  825. package/React/Fabric/RCTSurfacePresenter.mm +94 -6
  826. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +3 -1
  827. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  828. package/React/Fabric/RCTSurfaceTouchHandler.h +3 -3
  829. package/React/Fabric/RCTSurfaceTouchHandler.mm +37 -205
  830. package/React/Fabric/RCTTouchableComponentViewProtocol.h +1 -1
  831. package/React/Fabric/Surface/RCTFabricSurface.mm +8 -3
  832. package/React/Fabric/Utils/RCTBoxShadow.h +1 -1
  833. package/React/Fabric/Utils/RCTBoxShadow.mm +1 -18
  834. package/React/Fabric/Utils/RCTGenericDelegateSplitter.h +1 -1
  835. package/React/Fabric/Utils/RCTGradientUtils.mm +3 -3
  836. package/React/Fabric/Utils/RCTLinearGradient.h +1 -1
  837. package/React/Fabric/Utils/RCTLinearGradient.mm +4 -10
  838. package/React/Fabric/Utils/RCTRadialGradient.h +1 -1
  839. package/React/Fabric/Utils/RCTRadialGradient.mm +0 -1
  840. package/React/Fabric/Utils/RCTReactTaggedView.h +5 -5
  841. package/React/Fabric/Utils/RCTReactTaggedView.mm +3 -5
  842. package/React/I18n/RCTLocalizedString.mm +38 -2
  843. package/React/I18n/strings/pt.lproj/fbt_language_pack.bin +0 -0
  844. package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +11 -3
  845. package/React/Modules/RCTEventEmitter.h +7 -7
  846. package/React/Modules/RCTEventEmitter.m +31 -10
  847. package/React/Modules/RCTI18nUtil.m +4 -2
  848. package/React/Modules/RCTLayoutAnimation.h +1 -1
  849. package/React/Modules/RCTLayoutAnimation.m +8 -54
  850. package/React/Modules/RCTLayoutAnimationGroup.h +1 -1
  851. package/React/Modules/RCTRedBoxExtraDataViewController.h +1 -6
  852. package/React/Modules/RCTRedBoxExtraDataViewController.m +3 -18
  853. package/React/Modules/RCTSurfacePresenterStub.h +1 -1
  854. package/React/Modules/RCTUIManager.h +15 -14
  855. package/React/Modules/RCTUIManager.mm +5 -1561
  856. package/React/Modules/RCTUIManagerObserverCoordinator.h +1 -1
  857. package/React/Modules/RCTUIManagerUtils.h +0 -1
  858. package/React/Profiler/RCTProfile.h +5 -0
  859. package/React/Profiler/RCTProfile.m +19 -27
  860. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  861. package/React/Profiler/RCTProfileTrampoline-arm64.S +1 -1
  862. package/React/Profiler/RCTProfileTrampoline-i386.S +1 -1
  863. package/React/Profiler/RCTProfileTrampoline-x86_64.S +1 -1
  864. package/React/React-RCTFBReactNativeSpec.podspec +1 -1
  865. package/React/React-RCTFabric.podspec +4 -4
  866. package/React/Runtime/React-RCTRuntime.podspec +1 -0
  867. package/React/Tests/Mounting/RCTViewComponentViewTests.mm +186 -0
  868. package/React/Tests/Text/RCTAttributedTextUtilsTest.mm +32 -5
  869. package/React/Views/RCTAnimationType.h +0 -4
  870. package/React/Views/RCTAutoInsetsProtocol.h +1 -1
  871. package/React/Views/RCTBorderDrawing.h +7 -8
  872. package/React/Views/RCTBorderDrawing.m +19 -26
  873. package/React/Views/RCTComponentData.h +3 -3
  874. package/React/Views/RCTComponentData.mm +4 -4
  875. package/React/Views/RCTCursor.h +1 -44
  876. package/React/Views/RCTDebuggingOverlay.h +3 -3
  877. package/React/Views/RCTDebuggingOverlay.m +10 -9
  878. package/React/Views/RCTFont+Private.h +1 -5
  879. package/React/Views/RCTFont.h +1 -1
  880. package/React/Views/RCTFont.mm +0 -17
  881. package/React/Views/RCTLayout.h +1 -1
  882. package/React/Views/RCTLayout.m +4 -3
  883. package/React/Views/RCTModalHostViewController.h +0 -15
  884. package/React/Views/RCTModalHostViewManager.h +0 -26
  885. package/React/Views/RCTShadowView+Layout.h +1 -1
  886. package/React/Views/RCTShadowView.h +2 -4
  887. package/React/Views/RCTShadowView.m +0 -723
  888. package/React/Views/RCTView.h +14 -68
  889. package/React/Views/RCTView.m +54 -813
  890. package/React/Views/RCTViewManager.h +3 -22
  891. package/React/Views/RCTViewManager.m +10 -166
  892. package/React/Views/RCTViewUtils.h +2 -2
  893. package/React/Views/RCTViewUtils.m +1 -3
  894. package/React/Views/RCTWrapperViewController.h +2 -2
  895. package/React/Views/RCTWrapperViewController.m +1 -3
  896. package/React/Views/RefreshControl/RCTRefreshableProtocol.h +1 -1
  897. package/React/Views/ScrollView/RCTScrollEvent.m +1 -1
  898. package/React/Views/ScrollView/RCTScrollView.h +1 -94
  899. package/React/Views/ScrollView/RCTScrollableProtocol.h +4 -10
  900. package/React/Views/UIView+Private.h +4 -4
  901. package/React/Views/UIView+React.h +8 -19
  902. package/React/Views/UIView+React.m +29 -123
  903. package/React-Core-prebuilt.podspec +46 -18
  904. package/React-Core.podspec +11 -2
  905. package/ReactAndroid/api/ReactAndroid.api +280 -521
  906. package/ReactAndroid/build.gradle.kts +65 -42
  907. package/ReactAndroid/external-artifacts/build.gradle.kts +49 -0
  908. package/ReactAndroid/gradle.properties +1 -1
  909. package/ReactAndroid/hermes-engine/build.gradle.kts +118 -51
  910. package/ReactAndroid/src/debug/AndroidManifest.xml +6 -0
  911. package/ReactAndroid/src/debugOptimized/AndroidManifest.xml +22 -0
  912. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/HermesSamplingProfiler.kt +2 -0
  913. package/ReactAndroid/src/main/java/com/facebook/react/BaseReactPackage.kt +3 -7
  914. package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +1 -4
  915. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +3 -0
  916. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +5 -5
  917. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.kt +2 -0
  918. package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +13 -18
  919. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +56 -336
  920. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +2 -12
  921. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.kt +212 -0
  922. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +1 -1
  923. package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +4 -29
  924. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +96 -111
  925. package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.kt +53 -4
  926. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimationDriver.kt +1 -3
  927. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.kt +11 -11
  928. package/ReactAndroid/src/main/java/com/facebook/react/animated/DiffClampAnimatedNode.kt +11 -11
  929. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.kt +1 -26
  930. package/ReactAndroid/src/main/java/com/facebook/react/animated/InterpolationAnimatedNode.kt +12 -0
  931. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.kt +20 -100
  932. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.kt +12 -33
  933. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.kt +13 -25
  934. package/ReactAndroid/src/main/java/com/facebook/react/animated/SpringAnimation.kt +19 -19
  935. package/ReactAndroid/src/main/java/com/facebook/react/animated/TrackingAnimatedNode.kt +5 -1
  936. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Arguments.kt +1 -0
  937. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.kt +287 -0
  938. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +0 -18
  939. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ColorPropConverter.kt +16 -0
  940. package/ReactAndroid/src/main/java/com/facebook/react/bridge/DynamicFromArray.kt +9 -4
  941. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.kt +15 -23
  942. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.kt +8 -6
  943. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +2 -2
  944. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +4 -34
  945. package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +6 -6
  946. package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +6 -6
  947. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +61 -2
  948. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJNISoLoader.kt +2 -0
  949. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNativeJniCommonSoLoader.kt +2 -0
  950. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.kt +4 -0
  951. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -12
  952. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ScrollEndedListener.kt +70 -0
  953. package/ReactAndroid/src/main/java/com/facebook/react/bridge/interop/InteropModuleRegistry.kt +1 -3
  954. package/ReactAndroid/src/main/java/com/facebook/react/common/assets/ReactFontManager.kt +4 -0
  955. package/ReactAndroid/src/main/java/com/facebook/react/common/build/ReactBuildConfig.kt +4 -0
  956. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +50 -2
  957. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +67 -26
  958. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +33 -0
  959. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +4 -12
  960. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +14 -10
  961. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactHost.kt +36 -34
  962. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +6 -6
  963. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultSoLoader.kt +2 -0
  964. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +4 -5
  965. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BundleDownloader.kt +59 -51
  966. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +11 -10
  967. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +101 -17
  968. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +61 -15
  969. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +10 -60
  970. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.kt +15 -15
  971. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +12 -12
  972. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +11 -14
  973. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/FpsView.kt +2 -2
  974. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/InspectorFlags.kt +6 -0
  975. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LocalNetworkPermissionUtil.kt +49 -0
  976. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.kt +15 -2
  977. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/MultipartStreamReader.kt +101 -26
  978. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.kt +10 -19
  979. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxContentView.kt +2 -2
  980. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.kt +1 -0
  981. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/DevSupportHttpClient.kt +49 -0
  982. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +16 -0
  983. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +274 -0
  984. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +2 -13
  985. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkRequestListener.kt +2 -0
  986. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingState.kt +17 -0
  987. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingStateListener.kt +15 -0
  988. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingStateProvider.kt +12 -0
  989. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevBundleDownloadListener.kt +1 -1
  990. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +7 -2
  991. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +2 -2
  992. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +2 -2
  993. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +1 -1
  994. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +31 -6
  995. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +17 -16
  996. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +1 -1
  997. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.kt +4 -1
  998. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +199 -72
  999. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManagerBinding.kt +7 -2
  1000. package/ReactAndroid/src/main/java/com/facebook/react/fabric/LongStreamingStats.kt +2 -2
  1001. package/ReactAndroid/src/main/java/com/facebook/react/fabric/SurfaceHandlerBinding.kt +6 -6
  1002. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ViewTransitionSnapshotManager.kt +227 -0
  1003. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventBeatManager.kt +2 -2
  1004. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.kt +25 -8
  1005. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.kt +26 -22
  1006. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/__docs__/README.md +22 -0
  1007. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/__docs__/life-of-an-event.excalidraw.svg +4 -0
  1008. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.kt +108 -69
  1009. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.kt +10 -14
  1010. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.kt +1395 -0
  1011. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/FabricNameComponentMapping.kt +1 -0
  1012. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.kt +2 -2
  1013. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItemFactory.kt +1 -1
  1014. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.kt +2 -2
  1015. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SynchronousMountItem.kt +12 -8
  1016. package/ReactAndroid/src/main/java/com/facebook/react/interfaces/ExtraWindowEventListener.kt +29 -0
  1017. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +102 -84
  1018. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +196 -166
  1019. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +41 -35
  1020. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +44 -38
  1021. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +227 -194
  1022. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Canary_Android.kt +8 -4
  1023. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +7 -3
  1024. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +1 -6
  1025. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +41 -35
  1026. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlags.kt +0 -24
  1027. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeNewArchitectureFeatureFlagsDefaults.kt +3 -11
  1028. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/__docs__/README.md +12 -0
  1029. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/rewrite_feature_flag_defaults.py +76 -0
  1030. package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/tests/test_rewrite_feature_flag_defaults.py +63 -0
  1031. package/ReactAndroid/src/main/java/com/facebook/react/internal/interop/InteropEventEmitter.kt +1 -15
  1032. package/ReactAndroid/src/main/java/com/facebook/react/internal/tracing/PerformanceTracer.kt +40 -1
  1033. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +5 -43
  1034. package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +0 -3
  1035. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/AccessibilityInfoModule.kt +4 -10
  1036. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +40 -1
  1037. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobModule.kt +11 -6
  1038. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.kt +1 -2
  1039. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/ClipboardModule.kt +3 -0
  1040. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/DeviceEventManagerModule.kt +2 -1
  1041. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.kt +4 -2
  1042. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/ReactChoreographer.kt +21 -20
  1043. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.kt +3 -0
  1044. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +3 -27
  1045. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.kt +63 -3
  1046. package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +7 -2
  1047. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.kt +4 -1
  1048. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.kt +108 -61
  1049. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.kt +7 -3
  1050. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +116 -54
  1051. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +26 -14
  1052. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressRequestBody.kt +2 -0
  1053. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/RequestBodyUtil.kt +2 -0
  1054. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.kt +46 -112
  1055. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoHelpers.kt +1 -1
  1056. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +9 -4
  1057. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.kt +10 -8
  1058. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/JSPackagerClient.kt +2 -1
  1059. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +28 -8
  1060. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.kt +2 -8
  1061. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessAtomicRef.kt +2 -0
  1062. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +10 -13
  1063. package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessReactContext.kt +16 -11
  1064. package/ReactAndroid/src/main/java/com/facebook/react/runtime/CoreReactPackage.kt +4 -0
  1065. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +108 -36
  1066. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +11 -4
  1067. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +13 -19
  1068. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactInstance.kt +10 -8
  1069. package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +78 -24
  1070. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.kt +18 -6
  1071. package/ReactAndroid/src/main/java/com/facebook/react/soloader/OpenSourceMergedSoMapping.kt +4 -0
  1072. package/ReactAndroid/src/main/java/com/facebook/react/touch/ReactInterceptingViewGroup.kt +4 -4
  1073. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +139 -31
  1074. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +78 -37
  1075. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BlendModeHelper.kt +3 -2
  1076. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.kt +11 -53
  1077. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/FilterHelper.kt +3 -1
  1078. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/GuardedFrameCallback.kt +17 -0
  1079. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/HasChildPressedStateDelay.kt +29 -0
  1080. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSKeyDispatcher.kt +65 -0
  1081. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.kt +796 -0
  1082. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +3 -6
  1083. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.kt +751 -0
  1084. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.kt +184 -0
  1085. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.kt +18 -0
  1086. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +3 -3
  1087. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +47 -0
  1088. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRootViewTagGenerator.kt +3 -2
  1089. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.kt +486 -0
  1090. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +19 -62
  1091. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/RootViewUtil.kt +17 -7
  1092. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ShadowNodeRegistry.kt +2 -2
  1093. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/SkewMatrixHelper.kt +200 -0
  1094. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ThemedReactContext.kt +25 -0
  1095. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.kt +27 -17
  1096. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +20 -32
  1097. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIBlock.kt +7 -1
  1098. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIConstantsProviderBinding.kt +2 -0
  1099. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.kt +25 -109
  1100. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.kt +645 -0
  1101. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelper.kt +2 -3
  1102. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.kt +142 -0
  1103. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupManager.kt +0 -10
  1104. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +3 -3
  1105. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.kt +527 -0
  1106. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.kt +3 -1
  1107. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/UIManagerType.kt +22 -0
  1108. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/ViewUtil.kt +44 -30
  1109. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/BackgroundImageDrawable.kt +5 -3
  1110. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/InsetBoxShadowDrawable.kt +12 -13
  1111. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +1 -1
  1112. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +5 -42
  1113. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyDownEvent.kt +23 -0
  1114. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyEvent.kt +156 -0
  1115. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyUpEvent.kt +24 -0
  1116. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +30 -4
  1117. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTEventEmitter.kt +2 -9
  1118. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.kt +42 -1
  1119. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/SynchronousEventReceiver.kt +28 -0
  1120. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.kt +1 -16
  1121. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.kt +9 -42
  1122. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundImageLayer.kt +27 -0
  1123. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundPosition.kt +20 -0
  1124. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundRepeat.kt +27 -0
  1125. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BackgroundSize.kt +50 -0
  1126. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderColors.kt +33 -0
  1127. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderInsets.kt +25 -1
  1128. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderRadiusStyle.kt +52 -8
  1129. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BorderStyle.kt +14 -0
  1130. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/BoxShadow.kt +23 -1
  1131. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ColorStop.kt +51 -7
  1132. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/ComputedBorderRadius.kt +40 -2
  1133. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/CornerRadii.kt +21 -1
  1134. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Gradient.kt +16 -0
  1135. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LinearGradient.kt +34 -0
  1136. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/LogicalEdge.kt +33 -1
  1137. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/OutlineStyle.kt +17 -0
  1138. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/Overflow.kt +15 -0
  1139. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/style/RadialGradient.kt +42 -0
  1140. package/ReactAndroid/src/main/java/com/facebook/react/util/AndroidVersion.kt +34 -3
  1141. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.kt +8 -1
  1142. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayoutManager.kt +1 -2
  1143. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +19 -17
  1144. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostManager.kt +1 -4
  1145. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +7 -1
  1146. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ReactProgressBarViewManager.kt +10 -9
  1147. package/ReactAndroid/src/main/java/com/facebook/react/views/safeareaview/ReactSafeAreaView.kt +2 -0
  1148. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/MaintainVisibleScrollPositionHelper.kt +1 -14
  1149. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerViewManager.kt +1 -22
  1150. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.kt +1640 -0
  1151. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.kt +11 -6
  1152. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollView.kt +1317 -0
  1153. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactNestedScrollViewManager.kt +466 -0
  1154. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.kt +1309 -0
  1155. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.kt +16 -14
  1156. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.kt +11 -6
  1157. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainer.kt +20 -67
  1158. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateClassic.kt +15 -36
  1159. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +30 -44
  1160. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/generate-nested-scroll-view.js +263 -0
  1161. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.kt +8 -2
  1162. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/SwipeRefreshLayoutManager.kt +1 -1
  1163. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchManager.kt +7 -7
  1164. package/ReactAndroid/src/main/java/com/facebook/react/views/text/FontMetricsUtil.kt +2 -3
  1165. package/ReactAndroid/src/main/java/com/facebook/react/views/text/MutableSpannableLayout.kt +107 -0
  1166. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayout.kt +2 -0
  1167. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextView.kt +154 -20
  1168. package/ReactAndroid/src/main/java/com/facebook/react/views/text/PreparedLayoutTextViewManager.kt +4 -3
  1169. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextUpdate.kt +4 -65
  1170. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +150 -267
  1171. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +37 -15
  1172. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.kt +247 -21
  1173. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.kt +42 -2
  1174. package/ReactAndroid/src/main/java/com/facebook/react/views/text/SelectableTextViewManager.kt +29 -0
  1175. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.kt +49 -4
  1176. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextDecorationStyle.kt +200 -0
  1177. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectRegistry.kt +45 -0
  1178. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextEffectSpanFactory.kt +17 -0
  1179. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +542 -150
  1180. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/AnimatedEffectSpan.kt +37 -0
  1181. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CanvasEffectSpan.kt +26 -0
  1182. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/CustomStyleSpan.kt +24 -7
  1183. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactClickableSpan.kt +1 -1
  1184. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactLinkSpan.kt +10 -3
  1185. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactStrikethroughSpan.kt +30 -3
  1186. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/ReactUnderlineSpan.kt +25 -3
  1187. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/SetSpanOperation.kt +1 -1
  1188. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/StatefulSpan.kt +21 -0
  1189. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextEffectSpan.kt +19 -0
  1190. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TouchableSpan.kt +29 -0
  1191. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.kt +90 -97
  1192. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextChangedEvent.kt +8 -0
  1193. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextContentSizeWatcher.kt +1 -1
  1194. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.kt +49 -40
  1195. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputTextWatcher.kt +3 -2
  1196. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextScrollWatcher.kt +1 -1
  1197. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextSelectionWatcher.kt +1 -1
  1198. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ImportantForInteractionHelper.kt +55 -0
  1199. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactDrawableHelper.kt +59 -20
  1200. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +95 -77
  1201. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManager.kt +52 -69
  1202. package/ReactAndroid/src/main/java/com/facebook/react/views/view/WindowUtil.kt +87 -13
  1203. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/VirtualViewRenderState.kt +1 -1
  1204. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +153 -308
  1205. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualViewManager.kt +11 -13
  1206. package/ReactAndroid/src/main/java/com/facebook/soloader/annotation/SoLoaderLibrary.kt +17 -0
  1207. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.kt +45 -0
  1208. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.kt +27 -0
  1209. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfig.kt +17 -2
  1210. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.kt +70 -0
  1211. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.kt +30 -0
  1212. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.kt +27 -0
  1213. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.kt +29 -0
  1214. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.kt +31 -0
  1215. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.kt +41 -0
  1216. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.kt +37 -0
  1217. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.kt +27 -0
  1218. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.kt +31 -0
  1219. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGridTrackType.kt +33 -0
  1220. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.kt +29 -0
  1221. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.kt +43 -0
  1222. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.kt +39 -0
  1223. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.kt +29 -0
  1224. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.kt +17 -1
  1225. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.kt +254 -0
  1226. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.kt +762 -0
  1227. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.kt +33 -0
  1228. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.kt +27 -0
  1229. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.kt +29 -0
  1230. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.kt +29 -0
  1231. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.kt +205 -0
  1232. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.kt +37 -0
  1233. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.kt +29 -0
  1234. package/ReactAndroid/src/main/jni/CMakeLists.txt +36 -3
  1235. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +94 -0
  1236. package/ReactAndroid/src/main/jni/react/devsupport/CMakeLists.txt +7 -0
  1237. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionDelegateImpl.cpp +3 -0
  1238. package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
  1239. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.cpp +22 -0
  1240. package/ReactAndroid/src/main/jni/react/devsupport/JInspectorFlags.h +2 -0
  1241. package/ReactAndroid/src/main/jni/react/fabric/AndroidAnimationChoreographer.h +38 -0
  1242. package/ReactAndroid/src/main/jni/react/fabric/ComponentFactory.cpp +0 -1
  1243. package/ReactAndroid/src/main/jni/react/fabric/CoreComponentsRegistry.cpp +7 -6
  1244. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.cpp +26 -6
  1245. package/ReactAndroid/src/main/jni/react/fabric/EventEmitterWrapper.h +3 -3
  1246. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +152 -3
  1247. package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.h +22 -6
  1248. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +132 -28
  1249. package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.h +15 -0
  1250. package/ReactAndroid/src/main/jni/react/fabric/FocusOrderingHelper.cpp +0 -1
  1251. package/ReactAndroid/src/main/jni/react/fabric/StateWrapperImpl.h +2 -1
  1252. package/ReactAndroid/src/main/jni/react/fabric/SurfaceHandlerBinding.cpp +1 -0
  1253. package/ReactAndroid/src/main/jni/react/fabric/test/FabricMountingManagerTest.cpp +159 -0
  1254. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.cpp +85 -0
  1255. package/ReactAndroid/src/main/jni/react/fabric/test_helper/FabricMountingManagerTestHelper.h +46 -0
  1256. package/ReactAndroid/src/main/jni/react/fabric/test_helper/OnLoad.cpp +16 -0
  1257. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +255 -213
  1258. package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +50 -41
  1259. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/HermesSamplingProfiler.cpp +1 -1
  1260. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +0 -4
  1261. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -4
  1262. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +0 -24
  1263. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.cpp +10 -24
  1264. package/ReactAndroid/src/main/jni/react/jni/JReactMarker.h +0 -2
  1265. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  1266. package/ReactAndroid/src/main/jni/react/jni/JSLoader.h +2 -1
  1267. package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +1 -2
  1268. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +1 -29
  1269. package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +1 -2
  1270. package/ReactAndroid/src/main/jni/react/jni/OnLoad-common.cpp +0 -2
  1271. package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +2 -12
  1272. package/ReactAndroid/src/main/jni/react/mapbuffer/react/common/mapbuffer/JWritableMapBuffer.cpp +13 -0
  1273. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.cpp +37 -30
  1274. package/ReactAndroid/src/main/jni/react/reactnativeblob/BlobCollector.h +11 -8
  1275. package/ReactAndroid/src/main/jni/react/reactnativeblob/CMakeLists.txt +2 -1
  1276. package/ReactAndroid/src/main/jni/react/reactnativeblob/OnLoad.cpp +1 -1
  1277. package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +0 -4
  1278. package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -4
  1279. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +167 -51
  1280. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +205 -26
  1281. package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +6 -2
  1282. package/ReactAndroid/src/main/jni/react/tracing/CMakeLists.txt +28 -0
  1283. package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.cpp +1 -1
  1284. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +79 -65
  1285. package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +10 -7
  1286. package/ReactAndroid/src/main/jni/react/uimanager/StateWrapper.h +19 -0
  1287. package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +1 -0
  1288. package/ReactAndroid/src/main/res/devsupport/drawable/ic_perf_issue.xml +10 -0
  1289. package/ReactAndroid/src/main/res/devsupport/layout/dev_loading_view.xml +41 -15
  1290. package/ReactAndroid/src/main/res/devsupport/layout/fps_view.xml +1 -1
  1291. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +1 -0
  1292. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +8 -0
  1293. package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +18 -0
  1294. package/ReactAndroid/src/main/res/views/uimanager/values-zu/strings.xml +3 -0
  1295. package/ReactAndroid/src/test/java/com/facebook/react/ReactActivityDelegateTest.kt +64 -0
  1296. package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.kt +194 -0
  1297. package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedInterpolationTest.kt +171 -0
  1298. package/ReactAndroid/src/test/java/com/facebook/react/animated/NativeAnimatedNodeTraversalTest.kt +1418 -0
  1299. package/ReactAndroid/src/test/java/com/facebook/react/bridge/DimensionPropConverterTest.kt +45 -0
  1300. package/ReactAndroid/src/test/java/com/facebook/react/bridge/DynamicFromMapTest.kt +64 -0
  1301. package/ReactAndroid/src/test/java/com/facebook/react/bridge/JavaOnlyArrayTest.kt +37 -0
  1302. package/ReactAndroid/src/test/java/com/facebook/react/bridge/JavaOnlyMapTest.kt +56 -0
  1303. package/ReactAndroid/src/test/java/com/facebook/react/bridge/JavaScriptModuleRegistryTest.kt +30 -0
  1304. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.kt +75 -0
  1305. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReadableArrayBuilderTest.kt +71 -0
  1306. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReadableMapBuilderTest.kt +87 -0
  1307. package/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/InteropModuleRegistryTest.kt +84 -0
  1308. package/ReactAndroid/src/test/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPointTest.kt +115 -0
  1309. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/CxxInspectorPackagerConnectionTest.kt +28 -0
  1310. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/MultipartStreamReaderTest.kt +237 -0
  1311. package/ReactAndroid/src/test/java/com/facebook/react/devsupport/StackTraceHelperTest.kt +134 -0
  1312. package/ReactAndroid/src/test/java/com/facebook/react/fabric/FabricMountingManagerInstrumentationTest.kt +261 -0
  1313. package/ReactAndroid/src/test/java/com/facebook/react/fabric/FabricMountingManagerTestHelper.kt +48 -0
  1314. package/ReactAndroid/src/test/java/com/facebook/react/fabric/FabricUIManagerTest.kt +64 -0
  1315. package/ReactAndroid/src/test/java/com/facebook/react/fabric/MountingManagerTest.kt +81 -0
  1316. package/ReactAndroid/src/test/java/com/facebook/react/fabric/SurfaceMountingManagerEventOrderingTest.kt +353 -0
  1317. package/ReactAndroid/src/test/java/com/facebook/react/fabric/SurfaceMountingManagerSynchronousMountPropsTest.kt +273 -0
  1318. package/ReactAndroid/src/test/java/com/facebook/react/fabric/SurfaceMountingManagerTest.kt +195 -0
  1319. package/ReactAndroid/src/test/java/com/facebook/react/fabric/events/TouchEventDispatchTest.kt +690 -0
  1320. package/ReactAndroid/src/test/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListenerTest.kt +131 -0
  1321. package/ReactAndroid/src/test/java/com/facebook/react/interfaces/ExtraWindowEventListenerTest.kt +124 -0
  1322. package/ReactAndroid/src/test/java/com/facebook/react/internal/interop/InteropEventEmitterTest.kt +61 -0
  1323. package/ReactAndroid/src/test/java/com/facebook/react/modules/appstate/AppStateModuleTest.kt +127 -0
  1324. package/ReactAndroid/src/test/java/com/facebook/react/modules/blob/BlobModuleTest.kt +227 -0
  1325. package/ReactAndroid/src/test/java/com/facebook/react/modules/camera/ImageStoreManagerTest.kt +85 -0
  1326. package/ReactAndroid/src/test/java/com/facebook/react/modules/clipboard/ClipboardModuleTest.kt +62 -0
  1327. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.kt +261 -0
  1328. package/ReactAndroid/src/test/java/com/facebook/react/modules/dialog/DialogModuleTest.kt +205 -0
  1329. package/ReactAndroid/src/test/java/com/facebook/react/modules/fresco/ReactOkHttpNetworkFetcherTest.kt +139 -0
  1330. package/ReactAndroid/src/test/java/com/facebook/react/modules/image/ImageLoaderModuleTest.kt +274 -0
  1331. package/ReactAndroid/src/test/java/com/facebook/react/modules/intent/IntentModuleTest.kt +143 -0
  1332. package/ReactAndroid/src/test/java/com/facebook/react/modules/model/ReactModuleInfoTest.kt +50 -0
  1333. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/HeaderUtilTest.kt +48 -0
  1334. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkEventUtilTest.kt +454 -0
  1335. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/NetworkingModuleTest.kt +666 -0
  1336. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/OkHttpClientProviderTest.kt +135 -0
  1337. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/ProgressResponseBodyTest.kt +165 -0
  1338. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/ProgressiveStringDecoderTest.kt +137 -0
  1339. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/ReactCookieJarContainerTest.kt +59 -0
  1340. package/ReactAndroid/src/test/java/com/facebook/react/modules/network/RequestBodyUtilTest.kt +152 -0
  1341. package/ReactAndroid/src/test/java/com/facebook/react/modules/share/ShareModuleTest.kt +160 -0
  1342. package/ReactAndroid/src/test/java/com/facebook/react/modules/timing/TimingModuleTest.kt +307 -0
  1343. package/ReactAndroid/src/test/java/com/facebook/react/packagerconnection/JSPackagerClientTest.kt +157 -0
  1344. package/ReactAndroid/src/test/java/com/facebook/react/runtime/BridgelessReactContextTest.kt +99 -0
  1345. package/ReactAndroid/src/test/java/com/facebook/react/runtime/ReactHostDelegateTest.kt +49 -0
  1346. package/ReactAndroid/src/test/java/com/facebook/react/runtime/ReactHostTest.kt +171 -0
  1347. package/ReactAndroid/src/test/java/com/facebook/react/runtime/ReactSurfaceTest.kt +162 -0
  1348. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BaseViewManagerTest.kt +133 -0
  1349. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/BorderRadiusStyleTest.kt +208 -0
  1350. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/DisplayMetricsHolderTest.kt +167 -0
  1351. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/JSPointerDispatcherTest.kt +87 -0
  1352. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/MatrixMathHelperTest.kt +775 -0
  1353. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/OnLayoutEventTest.kt +63 -0
  1354. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/PixelUtilTest.kt +189 -0
  1355. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactAccessibilityDelegateTest.kt +376 -0
  1356. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropAnnotationSetterSpecTest.kt +120 -0
  1357. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropAnnotationSetterTest.kt +435 -0
  1358. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropConstantsTest.kt +142 -0
  1359. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSetterTest.kt +177 -0
  1360. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ReactPropForShadowNodeSpecTest.kt +153 -0
  1361. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/SimpleViewPropertyTest.kt +93 -0
  1362. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/SkewMatrixHelperTest.kt +221 -0
  1363. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/ThemedReactContextTest.kt +84 -0
  1364. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/TouchTargetHelperTest.kt +169 -0
  1365. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/UIManagerModuleConstantsHelperTest.kt +82 -0
  1366. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/UIManagerModuleConstantsTest.kt +235 -0
  1367. package/ReactAndroid/src/test/java/com/facebook/react/uimanager/style/ColorStopTest.kt +186 -0
  1368. package/ReactAndroid/src/test/java/com/facebook/react/util/JSStackTraceTest.kt +109 -0
  1369. package/ReactAndroid/src/test/java/com/facebook/react/views/image/ImageResizeModeTest.kt +52 -0
  1370. package/ReactAndroid/src/test/java/com/facebook/react/views/image/ReactImagePropertyTest.kt +235 -0
  1371. package/ReactAndroid/src/test/java/com/facebook/react/views/text/ReactTextViewTest.kt +154 -0
  1372. package/ReactAndroid/src/test/java/com/facebook/react/views/text/TextAttributePropsTest.kt +37 -0
  1373. package/ReactAndroid/src/test/java/com/facebook/react/views/text/TextDecorationStyleTest.kt +53 -0
  1374. package/ReactAndroid/src/test/java/com/facebook/react/views/text/TextLayoutManagerAbsoluteLayoutWithFractionalPixelTest.kt +131 -0
  1375. package/ReactAndroid/src/test/java/com/facebook/react/views/text/TextLayoutManagerFontWeightAdjustmentTest.kt +70 -0
  1376. package/ReactAndroid/src/test/java/com/facebook/react/views/text/TextTransformTest.kt +34 -0
  1377. package/ReactAndroid/src/test/java/com/facebook/react/views/text/internal/span/CustomLineHeightSpanTest.kt +99 -0
  1378. package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.kt +530 -0
  1379. package/ReactAndroid/src/test/java/com/facebook/react/views/view/ColorUtilTest.kt +23 -0
  1380. package/ReactAndroid/src/test/java/com/facebook/react/views/view/ReactViewGroupTest.kt +79 -0
  1381. package/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeBatchEventDispatchedListener.kt +17 -0
  1382. package/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeEventDispatcher.kt +41 -0
  1383. package/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeUIManager.kt +125 -0
  1384. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowArguments.kt +35 -0
  1385. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowNativeArray.kt +24 -0
  1386. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowNativeLoader.kt +21 -0
  1387. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowNativeMap.kt +46 -0
  1388. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowReadableNativeArray.kt +45 -0
  1389. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowReadableNativeMap.kt +53 -0
  1390. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowSoLoader.kt +24 -0
  1391. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowWritableNativeArray.kt +36 -0
  1392. package/ReactAndroid/src/test/java/com/facebook/testutils/shadows/ShadowWritableNativeMap.kt +45 -0
  1393. package/ReactAndroid/src/test/java/org/mockito/configuration/MockitoConfiguration.kt +17 -0
  1394. package/ReactAndroid/src/test/resources/mockito-extensions/org.mockito.plugins.MockMaker +1 -0
  1395. package/ReactAndroid/src/test/resources/robolectric.properties +2 -0
  1396. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.h +2 -0
  1397. package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +45 -5
  1398. package/ReactApple/RCTAnimatedModuleProvider/React-RCTAnimatedModuleProvider.podspec +63 -0
  1399. package/ReactApple/RCTSwiftUI/RCTSwiftUI.podspec +12 -1
  1400. package/ReactApple/RCTSwiftUI/RCTSwiftUIContainerView.swift +9 -41
  1401. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIContainerViewWrapper.h +0 -17
  1402. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIContainerViewWrapper.m +73 -11
  1403. package/ReactApple/RCTSwiftUIWrapper/RCTSwiftUIWrapper.podspec +1 -2
  1404. package/ReactCommon/React-Fabric.podspec +28 -9
  1405. package/ReactCommon/React-FabricComponents.podspec +7 -9
  1406. package/ReactCommon/ReactCommon.podspec +2 -12
  1407. package/ReactCommon/cmake-utils/react-native-flags.cmake +1 -0
  1408. package/ReactCommon/cxxreact/CMakeLists.txt +1 -0
  1409. package/ReactCommon/cxxreact/ErrorUtils.h +2 -32
  1410. package/ReactCommon/cxxreact/Instance.cpp +1 -26
  1411. package/ReactCommon/cxxreact/Instance.h +0 -2
  1412. package/ReactCommon/cxxreact/JSBigString.h +14 -5
  1413. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +3 -2
  1414. package/ReactCommon/cxxreact/RAMBundleRegistry.cpp +0 -12
  1415. package/ReactCommon/cxxreact/RAMBundleRegistry.h +0 -5
  1416. package/ReactCommon/cxxreact/React-cxxreact.podspec +3 -1
  1417. package/ReactCommon/cxxreact/ReactMarker.cpp +4 -31
  1418. package/ReactCommon/cxxreact/ReactMarker.h +38 -21
  1419. package/ReactCommon/cxxreact/ReactNativeVersion.h +10 -8
  1420. package/ReactCommon/cxxreact/TraceSection.h +1 -1
  1421. package/ReactCommon/cxxreact/tests/methodcall.cpp +4 -0
  1422. package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +1 -1
  1423. package/ReactCommon/hermes/React-hermes.podspec +1 -0
  1424. package/ReactCommon/hermes/executor/CMakeLists.txt +0 -4
  1425. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +9 -80
  1426. package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +0 -4
  1427. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.cpp +25 -16
  1428. package/ReactCommon/hermes/inspector-modern/chrome/HermesRuntimeTargetDelegate.h +1 -1
  1429. package/ReactCommon/jsc/JSCRuntime.cpp +10 -31
  1430. package/ReactCommon/jsc/JSCRuntime.h +0 -9
  1431. package/ReactCommon/jserrorhandler/ErrorUtils.cpp +42 -0
  1432. package/ReactCommon/jserrorhandler/ErrorUtils.h +16 -0
  1433. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +2 -1
  1434. package/ReactCommon/jserrorhandler/JsErrorHandler.h +1 -1
  1435. package/ReactCommon/jserrorhandler/React-jserrorhandler.podspec +2 -3
  1436. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +1 -0
  1437. package/ReactCommon/jsi/jsi/decorator.h +93 -0
  1438. package/ReactCommon/jsi/jsi/hermes-interfaces.h +242 -0
  1439. package/ReactCommon/jsi/jsi/jsi-inl.h +97 -68
  1440. package/ReactCommon/jsi/jsi/jsi.cpp +214 -28
  1441. package/ReactCommon/jsi/jsi/jsi.h +621 -219
  1442. package/ReactCommon/jsi/jsi/test/testlib.cpp +455 -2
  1443. package/ReactCommon/jsiexecutor/CMakeLists.txt +3 -1
  1444. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +6 -1
  1445. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +5 -57
  1446. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +3 -8
  1447. package/ReactCommon/jsiexecutor/jsireact/JSINativeModules.cpp +5 -14
  1448. package/ReactCommon/jsinspector-modern/ConsoleTask.cpp +27 -0
  1449. package/ReactCommon/jsinspector-modern/ConsoleTask.h +38 -0
  1450. package/ReactCommon/jsinspector-modern/ConsoleTaskContext.cpp +46 -0
  1451. package/ReactCommon/jsinspector-modern/ConsoleTaskContext.h +102 -0
  1452. package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.cpp +55 -0
  1453. package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.h +48 -0
  1454. package/ReactCommon/jsinspector-modern/EmulationAgent.cpp +108 -0
  1455. package/ReactCommon/jsinspector-modern/EmulationAgent.h +47 -0
  1456. package/ReactCommon/jsinspector-modern/HostAgent.cpp +137 -26
  1457. package/ReactCommon/jsinspector-modern/HostAgent.h +6 -7
  1458. package/ReactCommon/jsinspector-modern/HostTarget.cpp +40 -33
  1459. package/ReactCommon/jsinspector-modern/HostTarget.h +136 -32
  1460. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +42 -8
  1461. package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +42 -5
  1462. package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +54 -21
  1463. package/ReactCommon/jsinspector-modern/HostTargetTracing.h +89 -0
  1464. package/ReactCommon/jsinspector-modern/InspectorFlags.cpp +24 -2
  1465. package/ReactCommon/jsinspector-modern/InspectorFlags.h +24 -2
  1466. package/ReactCommon/jsinspector-modern/InspectorInterfaces.cpp +39 -2
  1467. package/ReactCommon/jsinspector-modern/InspectorInterfaces.h +12 -2
  1468. package/ReactCommon/jsinspector-modern/InspectorPackagerConnection.cpp +186 -56
  1469. package/ReactCommon/jsinspector-modern/InspectorPackagerConnectionImpl.h +42 -4
  1470. package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +2 -11
  1471. package/ReactCommon/jsinspector-modern/InstanceTarget.h +2 -2
  1472. package/ReactCommon/jsinspector-modern/NetworkIOAgent.cpp +13 -4
  1473. package/ReactCommon/jsinspector-modern/NetworkIOAgent.h +13 -0
  1474. package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +9 -1
  1475. package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +4 -1
  1476. package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +34 -1
  1477. package/ReactCommon/jsinspector-modern/RuntimeAgent.h +8 -1
  1478. package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +99 -18
  1479. package/ReactCommon/jsinspector-modern/RuntimeTarget.h +57 -13
  1480. package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +106 -1
  1481. package/ReactCommon/jsinspector-modern/RuntimeTargetDebuggerSessionObserver.cpp +6 -95
  1482. package/ReactCommon/jsinspector-modern/RuntimeTargetGlobalStateObserver.cpp +122 -0
  1483. package/ReactCommon/jsinspector-modern/RuntimeTargetGlobalStateObserver.h +42 -0
  1484. package/ReactCommon/jsinspector-modern/RuntimeTargetTracingStateObserver.cpp +27 -0
  1485. package/ReactCommon/jsinspector-modern/RuntimeTargetTracingStateObserver.h +27 -0
  1486. package/ReactCommon/jsinspector-modern/SessionState.h +31 -0
  1487. package/ReactCommon/jsinspector-modern/TracingAgent.cpp +48 -54
  1488. package/ReactCommon/jsinspector-modern/TracingAgent.h +1 -11
  1489. package/ReactCommon/jsinspector-modern/UniqueMonostate.h +0 -4
  1490. package/ReactCommon/jsinspector-modern/WeakList.h +60 -1
  1491. package/ReactCommon/jsinspector-modern/__docs__/InspectorPackagerConnection.md +70 -0
  1492. package/ReactCommon/jsinspector-modern/__docs__/consoleTimeStamp.md +96 -0
  1493. package/ReactCommon/jsinspector-modern/network/NetworkHandler.cpp +25 -21
  1494. package/ReactCommon/jsinspector-modern/network/NetworkHandler.h +21 -15
  1495. package/ReactCommon/jsinspector-modern/tests/ConsoleCreateTaskTest.cpp +131 -0
  1496. package/ReactCommon/jsinspector-modern/tests/GmockHelpers.h +1 -1
  1497. package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +121 -3
  1498. package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +23 -2
  1499. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionMultiSessionTest.cpp +692 -0
  1500. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.cpp +10 -123
  1501. package/ReactCommon/jsinspector-modern/tests/InspectorPackagerConnectionTest.h +140 -0
  1502. package/ReactCommon/jsinspector-modern/tests/JsiIntegrationTest.cpp +159 -6
  1503. package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +60 -56
  1504. package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -0
  1505. package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +335 -0
  1506. package/ReactCommon/jsinspector-modern/tests/TracingTest.h +95 -0
  1507. package/ReactCommon/jsinspector-modern/tests/WeakListTest.cpp +31 -1
  1508. package/ReactCommon/jsinspector-modern/tests/engines/JsiIntegrationTestHermesEngineAdapter.cpp +1 -1
  1509. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.cpp +10 -0
  1510. package/ReactCommon/jsinspector-modern/tests/utils/InspectorFlagOverridesGuard.h +3 -1
  1511. package/ReactCommon/jsinspector-modern/tracing/CMakeLists.txt +1 -0
  1512. package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +61 -0
  1513. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +56 -0
  1514. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +165 -0
  1515. package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.h +50 -0
  1516. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +67 -16
  1517. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +21 -2
  1518. package/ReactCommon/jsinspector-modern/tracing/PerformanceTracerSection.h +113 -0
  1519. package/ReactCommon/jsinspector-modern/tracing/React-jsinspectortracing.podspec +5 -0
  1520. package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +5 -0
  1521. package/ReactCommon/jsinspector-modern/tracing/TimeWindowedBuffer.h +158 -0
  1522. package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +2 -1
  1523. package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +100 -0
  1524. package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +60 -0
  1525. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +44 -1
  1526. package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.h +7 -0
  1527. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +29 -7
  1528. package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +138 -0
  1529. package/ReactCommon/jsinspector-modern/tracing/tests/TimeWindowedBufferTest.cpp +352 -0
  1530. package/ReactCommon/jsitooling/React-jsitooling.podspec +5 -0
  1531. package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.cpp +54 -0
  1532. package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.h +20 -0
  1533. package/ReactCommon/logger/react_native_log.cpp +0 -1
  1534. package/ReactCommon/react/bridging/Array.h +1 -1
  1535. package/ReactCommon/react/bridging/ArrayBuffer.h +180 -0
  1536. package/ReactCommon/react/bridging/Bridging.h +1 -0
  1537. package/ReactCommon/react/bridging/Convert.h +12 -0
  1538. package/ReactCommon/react/bridging/React-bridging.podspec +44 -0
  1539. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +185 -11
  1540. package/ReactCommon/react/bridging/tests/ClassTest.cpp +22 -0
  1541. package/ReactCommon/react/cxxstableapi/CMakeLists.txt +18 -0
  1542. package/ReactCommon/react/cxxstableapi/FrameworksGuard.h +35 -0
  1543. package/ReactCommon/react/cxxstableapi/PrivateGuard.h +34 -0
  1544. package/ReactCommon/react/cxxstableapi/React-cxxstableapi.podspec +34 -0
  1545. package/ReactCommon/react/cxxstableapi/UmbrellaGuard.h +53 -0
  1546. package/ReactCommon/react/debug/CMakeLists.txt +2 -1
  1547. package/ReactCommon/react/debug/React-debug.podspec +7 -1
  1548. package/ReactCommon/react/debug/redbox/AnsiParser.cpp +139 -0
  1549. package/ReactCommon/react/debug/redbox/AnsiParser.h +35 -0
  1550. package/ReactCommon/react/debug/redbox/JscSafeUrl.cpp +179 -0
  1551. package/ReactCommon/react/debug/redbox/JscSafeUrl.h +27 -0
  1552. package/ReactCommon/react/debug/redbox/RedBoxErrorParser.cpp +171 -0
  1553. package/ReactCommon/react/debug/redbox/RedBoxErrorParser.h +40 -0
  1554. package/ReactCommon/react/debug/redbox/tests/AnsiParserTest.cpp +97 -0
  1555. package/ReactCommon/react/debug/redbox/tests/JscSafeUrlTest.cpp +173 -0
  1556. package/ReactCommon/react/debug/redbox/tests/RedBoxErrorParserTest.cpp +107 -0
  1557. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +81 -69
  1558. package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +93 -78
  1559. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +309 -255
  1560. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +54 -48
  1561. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +70 -58
  1562. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +151 -124
  1563. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSCanary.h +13 -5
  1564. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +11 -3
  1565. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -12
  1566. package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +27 -24
  1567. package/ReactCommon/react/featureflags/__docs__/README.md +12 -0
  1568. package/ReactCommon/react/featureflags/rewrite_feature_flag_defaults.py +111 -0
  1569. package/ReactCommon/react/featureflags/tests/test_rewrite_feature_flag_defaults.py +60 -0
  1570. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +8 -2
  1571. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +30 -10
  1572. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +17 -6
  1573. package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +49 -1
  1574. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.cpp +4 -0
  1575. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaInteropTurboModule.h +4 -0
  1576. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +1 -1
  1577. package/ReactCommon/react/nativemodule/core/platform/ios/React-NativeModulesApple.podspec +1 -1
  1578. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.h +7 -9
  1579. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +5 -4
  1580. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +0 -4
  1581. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +106 -65
  1582. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.h +0 -9
  1583. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +47 -174
  1584. package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleWithJSIBindings.h +0 -3
  1585. package/ReactCommon/react/nativemodule/defaults/CMakeLists.txt +4 -0
  1586. package/ReactCommon/react/nativemodule/defaults/DefaultTurboModules.cpp +36 -3
  1587. package/ReactCommon/react/nativemodule/defaults/React-defaultsnativemodule.podspec +8 -1
  1588. package/ReactCommon/react/nativemodule/dom/NativeDOM.cpp +10 -4
  1589. package/ReactCommon/react/nativemodule/dom/React-domnativemodule.podspec +1 -0
  1590. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.cpp +33 -1
  1591. package/ReactCommon/react/nativemodule/fantomtestspecificmethods/NativeFantomTestSpecificMethods.h +2 -0
  1592. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +90 -75
  1593. package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +41 -35
  1594. package/ReactCommon/react/nativemodule/featureflags/__docs__/README.md +12 -0
  1595. package/ReactCommon/react/nativemodule/idlecallbacks/React-idlecallbacksnativemodule.podspec +1 -0
  1596. package/ReactCommon/react/nativemodule/intersectionobserver/NativeIntersectionObserver.h +4 -0
  1597. package/ReactCommon/react/nativemodule/intersectionobserver/React-intersectionobservernativemodule.podspec +67 -0
  1598. package/ReactCommon/react/nativemodule/intersectionobserver/__docs__/README.md +13 -0
  1599. package/ReactCommon/react/nativemodule/microtasks/__docs__/README.md +13 -0
  1600. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.cpp +7 -2
  1601. package/ReactCommon/react/nativemodule/mutationobserver/NativeMutationObserver.h +4 -0
  1602. package/ReactCommon/react/nativemodule/mutationobserver/React-mutationobservernativemodule.podspec +67 -0
  1603. package/ReactCommon/react/nativemodule/mutationobserver/__docs__/README.md +13 -0
  1604. package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +2 -5
  1605. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleLegacyModule.h +1 -1
  1606. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.h +1 -1
  1607. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +21 -26
  1608. package/ReactCommon/react/nativemodule/viewtransition/CMakeLists.txt +24 -0
  1609. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.cpp +92 -0
  1610. package/ReactCommon/react/nativemodule/viewtransition/NativeViewTransition.h +37 -0
  1611. package/ReactCommon/react/nativemodule/viewtransition/React-viewtransitionnativemodule.podspec +58 -0
  1612. package/ReactCommon/react/nativemodule/webperformance/NativePerformance.cpp +10 -1
  1613. package/ReactCommon/react/nativemodule/webperformance/React-webperformancenativemodule.podspec +1 -0
  1614. package/ReactCommon/react/networking/CMakeLists.txt +7 -0
  1615. package/ReactCommon/react/networking/NetworkReporter.cpp +26 -22
  1616. package/ReactCommon/react/networking/NetworkReporter.h +0 -1
  1617. package/ReactCommon/react/networking/React-networking.podspec +0 -1
  1618. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.cpp +4 -2
  1619. package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.h +0 -1
  1620. package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
  1621. package/ReactCommon/react/performance/timeline/PerformanceEntry.h +1 -1
  1622. package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +10 -2
  1623. package/ReactCommon/react/performance/timeline/PerformanceObserver.cpp +18 -6
  1624. package/ReactCommon/react/performance/timeline/PerformanceObserver.h +2 -0
  1625. package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
  1626. package/ReactCommon/react/performance/timeline/tests/PerformanceEntryTest.cpp +62 -0
  1627. package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +104 -78
  1628. package/ReactCommon/react/renderer/animated/AnimatedModule.h +10 -2
  1629. package/ReactCommon/react/renderer/animated/CMakeLists.txt +0 -1
  1630. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +281 -178
  1631. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +51 -9
  1632. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +85 -72
  1633. package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.h +0 -1
  1634. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +21 -1
  1635. package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.h +1 -0
  1636. package/ReactCommon/react/renderer/animated/event_drivers/EventAnimationDriver.h +0 -1
  1637. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +1 -1
  1638. package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.h +0 -2
  1639. package/ReactCommon/react/renderer/animated/internal/NativeAnimatedAllowlist.h +2 -2
  1640. package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
  1641. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +169 -9
  1642. package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +21 -0
  1643. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +59 -15
  1644. package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +22 -0
  1645. package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
  1646. package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
  1647. package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
  1648. package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +107 -0
  1649. package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +2 -1
  1650. package/ReactCommon/react/renderer/animated/tests/DecayAnimationDriverTest.cpp +245 -0
  1651. package/ReactCommon/react/renderer/animated/tests/ManagedPropsMountingOverrideTests.cpp +204 -0
  1652. package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +711 -0
  1653. package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +388 -1
  1654. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +191 -2
  1655. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +118 -0
  1656. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +303 -0
  1657. package/ReactCommon/react/renderer/animationbackend/AnimatedPropsSerializer.h +17 -0
  1658. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +225 -113
  1659. package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +54 -27
  1660. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +85 -0
  1661. package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +31 -0
  1662. package/ReactCommon/react/renderer/animationbackend/AnimationChoreographer.h +44 -0
  1663. package/ReactCommon/react/renderer/animationbackend/CMakeLists.txt +0 -1
  1664. package/ReactCommon/react/renderer/animationbackend/__docs__/AnimationBackend.md +88 -0
  1665. package/ReactCommon/react/renderer/animationbackend/__docs__/AnimationBackend.svg +4 -0
  1666. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +8 -3
  1667. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +3 -4
  1668. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +0 -2
  1669. package/ReactCommon/react/renderer/animations/tests/MutationComparatorTest.cpp +273 -0
  1670. package/ReactCommon/react/renderer/animations/utils.h +12 -1
  1671. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
  1672. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +0 -6
  1673. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +3 -1
  1674. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +0 -4
  1675. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +0 -1
  1676. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -3
  1677. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +25 -1
  1678. package/ReactCommon/react/renderer/attributedstring/conversions.h +193 -4
  1679. package/ReactCommon/react/renderer/attributedstring/primitives.h +4 -2
  1680. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +73 -0
  1681. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -0
  1682. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +3 -5
  1683. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +79 -126
  1684. package/ReactCommon/react/renderer/components/image/ImageProps.h +3 -3
  1685. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -2
  1686. package/ReactCommon/react/renderer/components/image/conversions.h +7 -3
  1687. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.cpp +4 -0
  1688. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropShadowNode.h +4 -0
  1689. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.h +4 -0
  1690. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +5 -0
  1691. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +4 -0
  1692. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.cpp +5 -0
  1693. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticComponentDescriptor.h +4 -0
  1694. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.cpp +4 -0
  1695. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerAutomaticShadowNode.h +4 -0
  1696. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/UnstableLegacyViewManagerInteropComponentDescriptor.h +4 -0
  1697. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +39 -0
  1698. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +182 -0
  1699. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.mm +11 -0
  1700. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +48 -0
  1701. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/platform/ios/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +227 -0
  1702. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +1 -1
  1703. package/ReactCommon/react/renderer/components/scrollview/BaseScrollViewProps.cpp +235 -352
  1704. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +0 -1
  1705. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.h +1 -1
  1706. package/ReactCommon/react/renderer/components/scrollview/conversions.h +0 -1
  1707. package/ReactCommon/react/renderer/components/scrollview/platform/android/react/renderer/components/scrollview/HostPlatformScrollViewProps.cpp +30 -46
  1708. package/ReactCommon/react/renderer/components/scrollview/primitives.h +1 -10
  1709. package/ReactCommon/react/renderer/components/scrollview/tests/ScrollViewTest.cpp +83 -3
  1710. package/ReactCommon/react/renderer/components/switch/iosswitch/react/renderer/components/switch/IOSSwitchShadowNode.mm +1 -1
  1711. package/ReactCommon/react/renderer/components/text/BaseParagraphComponentDescriptor.h +49 -0
  1712. package/ReactCommon/react/renderer/components/text/BaseParagraphProps.cpp +17 -27
  1713. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +24 -25
  1714. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +19 -0
  1715. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +3 -28
  1716. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +10 -10
  1717. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +4 -4
  1718. package/ReactCommon/react/renderer/components/text/SelectableParagraphComponentDescriptor.h +24 -0
  1719. package/ReactCommon/react/renderer/components/text/SelectableParagraphShadowNode.h +32 -0
  1720. package/ReactCommon/react/renderer/components/text/TextEffectComponentDescriptor.h +17 -0
  1721. package/ReactCommon/react/renderer/components/text/TextEffectProps.cpp +59 -0
  1722. package/ReactCommon/react/renderer/components/text/TextEffectProps.h +30 -0
  1723. package/ReactCommon/react/renderer/components/text/TextEffectShadowNode.cpp +14 -0
  1724. package/ReactCommon/react/renderer/components/text/TextEffectShadowNode.h +26 -0
  1725. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/HostPlatformParagraphProps.cpp +19 -29
  1726. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.cpp +1 -1
  1727. package/ReactCommon/react/renderer/components/text/platform/android/react/renderer/components/text/ParagraphState.h +2 -2
  1728. package/ReactCommon/react/renderer/components/text/stateConversions.h +0 -1
  1729. package/ReactCommon/react/renderer/components/text/tests/BaseTextShadowNodeTest.cpp +15 -0
  1730. package/ReactCommon/react/renderer/components/textinput/BaseTextInputShadowNode.h +13 -1
  1731. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.cpp +2 -40
  1732. package/ReactCommon/react/renderer/components/textinput/TextInputEventEmitter.h +0 -20
  1733. package/ReactCommon/react/renderer/components/textinput/platform/android/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +42 -50
  1734. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/conversions.h +0 -22
  1735. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/primitives.h +0 -48
  1736. package/ReactCommon/react/renderer/components/textinput/platform/ios/react/renderer/components/iostextinput/propsConversions.h +0 -61
  1737. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +2 -36
  1738. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +149 -225
  1739. package/ReactCommon/react/renderer/components/view/BackgroundImagePropsConversions.cpp +15 -24
  1740. package/ReactCommon/react/renderer/components/view/BaseTouch.cpp +3 -16
  1741. package/ReactCommon/react/renderer/components/view/BaseTouch.h +11 -30
  1742. package/ReactCommon/react/renderer/components/view/BaseViewProps.cpp +256 -312
  1743. package/ReactCommon/react/renderer/components/view/BaseViewProps.h +1 -1
  1744. package/ReactCommon/react/renderer/components/view/ConcreteViewShadowNode.h +0 -3
  1745. package/ReactCommon/react/renderer/components/view/FilterPropsConversions.h +57 -53
  1746. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +2 -0
  1747. package/ReactCommon/react/renderer/components/view/PointerEvent.h +5 -0
  1748. package/ReactCommon/react/renderer/components/view/TouchEvent.h +0 -2
  1749. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +23 -5
  1750. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +1 -0
  1751. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +1 -6
  1752. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +2 -12
  1753. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +78 -27
  1754. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +7 -9
  1755. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +36 -39
  1756. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +0 -1
  1757. package/ReactCommon/react/renderer/components/view/conversions.h +294 -36
  1758. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +110 -201
  1759. package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/NativeDrawable.h +47 -16
  1760. package/ReactCommon/react/renderer/components/view/platform/cxx/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +2 -2
  1761. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformTouch.h +14 -0
  1762. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewEventEmitter.h +14 -0
  1763. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.cpp +38 -0
  1764. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewProps.h +29 -0
  1765. package/ReactCommon/react/renderer/components/view/platform/tvos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +30 -0
  1766. package/ReactCommon/react/renderer/components/view/primitives.h +8 -87
  1767. package/ReactCommon/react/renderer/components/view/propsConversions.h +81 -43
  1768. package/ReactCommon/react/renderer/components/view/tests/ConversionsTest.cpp +301 -0
  1769. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +6 -6
  1770. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +384 -3
  1771. package/ReactCommon/react/renderer/components/virtualview/VirtualViewComponentDescriptor.h +1 -1
  1772. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +59 -14
  1773. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +33 -0
  1774. package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +10 -0
  1775. package/ReactCommon/react/renderer/core/DynamicEventPayload.h +6 -1
  1776. package/ReactCommon/react/renderer/core/DynamicPointerEvent.cpp +30 -0
  1777. package/ReactCommon/react/renderer/core/DynamicPointerEvent.h +29 -0
  1778. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -1
  1779. package/ReactCommon/react/renderer/core/EventEmitter.cpp +99 -21
  1780. package/ReactCommon/react/renderer/core/EventEmitter.h +33 -8
  1781. package/ReactCommon/react/renderer/core/EventPipe.h +4 -2
  1782. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +21 -13
  1783. package/ReactCommon/react/renderer/core/EventTarget.cpp +11 -8
  1784. package/ReactCommon/react/renderer/core/EventTarget.h +7 -7
  1785. package/ReactCommon/react/renderer/core/LayoutConstraints.h +0 -5
  1786. package/ReactCommon/react/renderer/core/LayoutContext.h +9 -7
  1787. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +5 -3
  1788. package/ReactCommon/react/renderer/core/LayoutMetrics.h +3 -2
  1789. package/ReactCommon/react/renderer/core/LayoutPrimitives.h +1 -0
  1790. package/ReactCommon/react/renderer/core/Props.cpp +26 -22
  1791. package/ReactCommon/react/renderer/core/Props.h +69 -17
  1792. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  1793. package/ReactCommon/react/renderer/core/RawEvent.h +6 -6
  1794. package/ReactCommon/react/renderer/core/RawProps.cpp +20 -3
  1795. package/ReactCommon/react/renderer/core/RawProps.h +44 -0
  1796. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +15 -28
  1797. package/ReactCommon/react/renderer/core/RawPropsKeyMap.h +3 -3
  1798. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +5 -13
  1799. package/ReactCommon/react/renderer/core/RawPropsParser.h +5 -9
  1800. package/ReactCommon/react/renderer/core/RawValue.h +1 -2
  1801. package/ReactCommon/react/renderer/core/ShadowNode.cpp +63 -59
  1802. package/ReactCommon/react/renderer/core/ShadowNode.h +21 -31
  1803. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +6 -6
  1804. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +16 -14
  1805. package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +4 -2
  1806. package/ReactCommon/react/renderer/core/ShadowNodeFragment.h +2 -2
  1807. package/ReactCommon/react/renderer/core/StateData.h +4 -4
  1808. package/ReactCommon/react/renderer/core/__docs__/RSNRU.excalidraw.svg +2 -0
  1809. package/ReactCommon/react/renderer/core/__docs__/RSNRU.md +61 -0
  1810. package/ReactCommon/react/renderer/core/__docs__/passChildrenWhenCloning.excalidraw.svg +2 -0
  1811. package/ReactCommon/react/renderer/core/__docs__/passChildrenWhenCloning.md +52 -0
  1812. package/ReactCommon/react/renderer/core/conversions.h +4 -0
  1813. package/ReactCommon/react/renderer/core/graphicsConversions.h +4 -4
  1814. package/ReactCommon/react/renderer/core/propsConversions.h +4 -8
  1815. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +8 -0
  1816. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +52 -3
  1817. package/ReactCommon/react/renderer/core/tests/EventTargetTests.cpp +26 -0
  1818. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +7 -7
  1819. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +19 -19
  1820. package/ReactCommon/react/renderer/core/tests/PropsConceptsTest.cpp +135 -0
  1821. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +43 -53
  1822. package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +88 -1
  1823. package/ReactCommon/react/renderer/css/CSSBackgroundImage.h +112 -140
  1824. package/ReactCommon/react/renderer/css/CSSColor.h +7 -8
  1825. package/ReactCommon/react/renderer/css/CSSColorFunction.h +38 -39
  1826. package/ReactCommon/react/renderer/css/CSSCompoundDataType.h +23 -17
  1827. package/ReactCommon/react/renderer/css/CSSDataType.h +15 -10
  1828. package/ReactCommon/react/renderer/css/CSSFilter.h +12 -17
  1829. package/ReactCommon/react/renderer/css/CSSKeyword.h +8 -0
  1830. package/ReactCommon/react/renderer/css/CSSList.h +11 -11
  1831. package/ReactCommon/react/renderer/css/CSSRatio.h +4 -4
  1832. package/ReactCommon/react/renderer/css/CSSShadow.h +7 -7
  1833. package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +17 -6
  1834. package/ReactCommon/react/renderer/css/CSSTokenizer.h +2 -0
  1835. package/ReactCommon/react/renderer/css/CSSTransform.h +20 -20
  1836. package/ReactCommon/react/renderer/css/CSSTransformOrigin.h +4 -5
  1837. package/ReactCommon/react/renderer/css/CSSValueParser.h +71 -67
  1838. package/ReactCommon/react/renderer/css/tests/CSSValueParserTest.cpp +12 -11
  1839. package/ReactCommon/react/renderer/debug/CMakeLists.txt +7 -0
  1840. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +42 -26
  1841. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +4 -2
  1842. package/ReactCommon/react/renderer/debug/flags.h +3 -2
  1843. package/ReactCommon/react/renderer/debug/tests/DebugStringConvertibleTest.cpp +34 -3
  1844. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +3 -3
  1845. package/ReactCommon/react/renderer/graphics/BackgroundPosition.h +0 -1
  1846. package/ReactCommon/react/renderer/graphics/BackgroundRepeat.h +0 -1
  1847. package/ReactCommon/react/renderer/graphics/BackgroundSize.h +0 -1
  1848. package/ReactCommon/react/renderer/graphics/BlendMode.h +7 -0
  1849. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +1 -0
  1850. package/ReactCommon/react/renderer/graphics/ColorStop.h +3 -0
  1851. package/ReactCommon/react/renderer/graphics/Filter.h +5 -2
  1852. package/ReactCommon/react/renderer/graphics/LinearGradient.cpp +9 -15
  1853. package/ReactCommon/react/renderer/graphics/LinearGradient.h +10 -19
  1854. package/ReactCommon/react/renderer/graphics/Point.h +0 -2
  1855. package/ReactCommon/react/renderer/graphics/RadialGradient.h +8 -35
  1856. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +4 -6
  1857. package/ReactCommon/react/renderer/graphics/Rect.h +1 -9
  1858. package/ReactCommon/react/renderer/graphics/RectangleCorners.h +1 -10
  1859. package/ReactCommon/react/renderer/graphics/RectangleEdges.h +1 -10
  1860. package/ReactCommon/react/renderer/graphics/Size.h +0 -5
  1861. package/ReactCommon/react/renderer/graphics/Transform.cpp +0 -4
  1862. package/ReactCommon/react/renderer/graphics/Transform.h +1 -13
  1863. package/ReactCommon/react/renderer/graphics/TransformUtils.h +95 -0
  1864. package/ReactCommon/react/renderer/graphics/ValueUnit.cpp +1 -1
  1865. package/ReactCommon/react/renderer/graphics/ValueUnit.h +3 -11
  1866. package/ReactCommon/react/renderer/graphics/fromRawValueShared.h +13 -1
  1867. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/HostPlatformColor.mm +17 -53
  1868. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.h +3 -3
  1869. package/ReactCommon/react/renderer/graphics/platform/ios/react/renderer/graphics/RCTPlatformColorUtils.mm +13 -16
  1870. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +3 -4
  1871. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +11 -12
  1872. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.h +4 -3
  1873. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +19 -13
  1874. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +8 -3
  1875. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +16 -4
  1876. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +6 -36
  1877. package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +25 -4
  1878. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequestParams.h +1 -9
  1879. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/ImageRequestParams.h +1 -9
  1880. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.h +1 -1
  1881. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImageManager.mm +1 -1
  1882. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTImagePrimitivesConversions.h +1 -5
  1883. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.h +1 -1
  1884. package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +8 -4
  1885. package/ReactCommon/react/renderer/imagemanager/primitives.h +15 -11
  1886. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +158 -47
  1887. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +28 -14
  1888. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +99 -48
  1889. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +4 -0
  1890. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +96 -1
  1891. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +1 -0
  1892. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +39 -42
  1893. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +0 -11
  1894. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
  1895. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +253 -21
  1896. package/ReactCommon/react/renderer/mounting/ShadowTree.h +32 -6
  1897. package/ReactCommon/react/renderer/mounting/ShadowTreeDelegate.h +11 -0
  1898. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +0 -4
  1899. package/ReactCommon/react/renderer/mounting/ShadowView.h +0 -1
  1900. package/ReactCommon/react/renderer/mounting/internal/ShadowViewNodePair.h +0 -5
  1901. package/ReactCommon/react/renderer/mounting/internal/sliceChildShadowNodeViewPairs.h +3 -3
  1902. package/ReactCommon/react/renderer/mounting/stubs/StubView.cpp +0 -4
  1903. package/ReactCommon/react/renderer/mounting/stubs/StubView.h +0 -1
  1904. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.cpp +0 -4
  1905. package/ReactCommon/react/renderer/mounting/stubs/StubViewTree.h +0 -2
  1906. package/ReactCommon/react/renderer/mounting/tests/DifferentiatorUnflattenTest.cpp +220 -0
  1907. package/ReactCommon/react/renderer/mounting/tests/OrderIndexTest.cpp +1 -1
  1908. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +79 -18
  1909. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeReactBranchingTest.cpp +141 -0
  1910. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +1 -1
  1911. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -0
  1912. package/ReactCommon/react/renderer/mounting/updateMountedFlag.cpp +37 -11
  1913. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserver.cpp +2 -1
  1914. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.cpp +0 -5
  1915. package/ReactCommon/react/renderer/observers/intersection/IntersectionObserverState.h +0 -1
  1916. package/ReactCommon/react/renderer/observers/intersection/__docs__/README.md +13 -0
  1917. package/ReactCommon/react/renderer/observers/mutation/__docs__/README.md +13 -0
  1918. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +1 -0
  1919. package/ReactCommon/react/renderer/runtimescheduler/React-runtimescheduler.podspec +1 -0
  1920. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +22 -2
  1921. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +13 -2
  1922. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.cpp +13 -0
  1923. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Legacy.h +9 -0
  1924. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.cpp +43 -5
  1925. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler_Modern.h +17 -1
  1926. package/ReactCommon/react/renderer/runtimescheduler/Task.h +4 -0
  1927. package/ReactCommon/react/renderer/runtimescheduler/__docs__/README.md +210 -0
  1928. package/ReactCommon/react/renderer/runtimescheduler/__docs__/event-loop-async-task.excalidraw.svg +4 -0
  1929. package/ReactCommon/react/renderer/runtimescheduler/__docs__/event-loop-sync-task.excalidraw.svg +4 -0
  1930. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +134 -31
  1931. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +2 -0
  1932. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +118 -10
  1933. package/ReactCommon/react/renderer/scheduler/Scheduler.h +17 -4
  1934. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +11 -0
  1935. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +7 -0
  1936. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +1 -105
  1937. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +3 -9
  1938. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -3
  1939. package/ReactCommon/react/renderer/scheduler/tests/SchedulerDelegateInvalidationTest.cpp +671 -0
  1940. package/ReactCommon/react/renderer/textlayoutmanager/TextLayoutManagerExtended.h +18 -18
  1941. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +22 -5
  1942. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +12 -16
  1943. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +5 -5
  1944. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.h +15 -4
  1945. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTAttributedTextUtils.mm +82 -44
  1946. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontProperties.h +1 -1
  1947. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.h +1 -1
  1948. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTFontUtils.mm +1 -25
  1949. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.h +2 -8
  1950. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextLayoutManager.mm +210 -32
  1951. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/RCTTextPrimitivesConversions.h +18 -6
  1952. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/react/renderer/textlayoutmanager/TextLayoutManager.mm +12 -2
  1953. package/ReactCommon/react/renderer/textlayoutmanager/tests/TextLayoutManagerTest.cpp +86 -5
  1954. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.cpp +1 -1
  1955. package/ReactCommon/react/renderer/uimanager/PointerEventsProcessor.h +1 -3
  1956. package/ReactCommon/react/renderer/uimanager/PointerHoverTracker.cpp +1 -1
  1957. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +144 -98
  1958. package/ReactCommon/react/renderer/uimanager/UIManager.h +27 -10
  1959. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +20 -5
  1960. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +349 -7
  1961. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +7 -5
  1962. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +16 -1
  1963. package/ReactCommon/react/renderer/uimanager/UIManagerViewTransitionDelegate.h +82 -0
  1964. package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.cpp +19 -23
  1965. package/ReactCommon/react/renderer/uimanager/consistency/LazyShadowTreeRevisionConsistencyManager.h +2 -3
  1966. package/ReactCommon/react/renderer/uimanager/consistency/tests/LazyShadowTreeRevisionConsistencyManagerTest.cpp +13 -5
  1967. package/ReactCommon/react/renderer/uimanager/primitives.h +16 -7
  1968. package/ReactCommon/react/renderer/uimanager/tests/FabricUIManagerTest.cpp +144 -3
  1969. package/ReactCommon/react/renderer/uimanager/tests/FindShadowNodeByTagTest.cpp +236 -0
  1970. package/ReactCommon/react/renderer/uimanager/tests/PointerEventsProcessorTest.cpp +4 -4
  1971. package/ReactCommon/react/renderer/viewtransition/CMakeLists.txt +22 -0
  1972. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.cpp +569 -0
  1973. package/ReactCommon/react/renderer/viewtransition/ViewTransitionModule.h +171 -0
  1974. package/ReactCommon/react/runtime/CMakeLists.txt +0 -4
  1975. package/ReactCommon/react/runtime/PlatformTimerRegistry.h +12 -0
  1976. package/ReactCommon/react/runtime/ReactInstance.cpp +99 -77
  1977. package/ReactCommon/react/runtime/ReactInstance.h +5 -1
  1978. package/ReactCommon/react/runtime/TimerManager.cpp +30 -56
  1979. package/ReactCommon/react/runtime/TimerManager.h +7 -12
  1980. package/ReactCommon/react/runtime/hermes/CMakeLists.txt +0 -4
  1981. package/ReactCommon/react/runtime/hermes/HermesInstance.cpp +11 -95
  1982. package/ReactCommon/react/runtime/iostests/MainQueueCoordinatorTests.mm +99 -0
  1983. package/ReactCommon/react/runtime/iostests/RCTHostTests.mm +11 -0
  1984. package/ReactCommon/react/runtime/iostests/RCTInstanceTests.mm +244 -0
  1985. package/ReactCommon/react/runtime/platform/ios/ReactCommon/ObjCTimerRegistry.h +2 -2
  1986. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +20 -5
  1987. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +170 -7
  1988. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.h +1 -1
  1989. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTInstance.mm +49 -39
  1990. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTJscInstance.mm +3 -2
  1991. package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTPerformanceLoggerUtils.mm +3 -2
  1992. package/ReactCommon/react/runtime/tests/cxx/ReactInstanceTest.cpp +27 -3
  1993. package/ReactCommon/react/runtime/tests/cxx/RuntimeExecutorShutdownTest.cpp +155 -0
  1994. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +8 -5
  1995. package/ReactCommon/react/timing/PrivacyInfo.xcprivacy +21 -0
  1996. package/ReactCommon/react/timing/React-timing.podspec +2 -0
  1997. package/ReactCommon/react/timing/__docs__/README.md +107 -0
  1998. package/ReactCommon/react/timing/primitives.h +33 -1
  1999. package/ReactCommon/react/utils/Base64.h +99 -0
  2000. package/ReactCommon/react/utils/ContextContainer.h +0 -2
  2001. package/ReactCommon/react/utils/React-utils.podspec +3 -1
  2002. package/ReactCommon/react/utils/Telemetry.h +0 -13
  2003. package/ReactCommon/react/utils/tests/Base64Tests.cpp +36 -0
  2004. package/ReactCommon/reactperflogger/reactperflogger/ReactPerfettoLogger.cpp +0 -1
  2005. package/ReactCommon/runtimeexecutor/platform/ios/ReactCommon/RuntimeExecutorSyncUIThreadUtils.mm +21 -38
  2006. package/ReactCommon/yoga/Yoga.podspec +1 -1
  2007. package/ReactCommon/yoga/yoga/YGEnums.cpp +34 -0
  2008. package/ReactCommon/yoga/yoga/YGEnums.h +21 -4
  2009. package/ReactCommon/yoga/yoga/YGMacros.h +2 -0
  2010. package/ReactCommon/yoga/yoga/YGNode.cpp +41 -0
  2011. package/ReactCommon/yoga/yoga/YGNode.h +70 -1
  2012. package/ReactCommon/yoga/yoga/YGNodeLayout.h +0 -2
  2013. package/ReactCommon/yoga/yoga/YGNodeStyle.cpp +269 -0
  2014. package/ReactCommon/yoga/yoga/YGNodeStyle.h +93 -1
  2015. package/ReactCommon/yoga/yoga/YGValue.h +0 -4
  2016. package/ReactCommon/yoga/yoga/algorithm/AbsoluteLayout.cpp +41 -9
  2017. package/ReactCommon/yoga/yoga/algorithm/Align.h +12 -1
  2018. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.cpp +401 -32
  2019. package/ReactCommon/yoga/yoga/algorithm/CalculateLayout.h +22 -0
  2020. package/ReactCommon/yoga/yoga/algorithm/FlexDirection.h +6 -6
  2021. package/ReactCommon/yoga/yoga/algorithm/SizingMode.h +4 -4
  2022. package/ReactCommon/yoga/yoga/config/Config.h +1 -1
  2023. package/ReactCommon/yoga/yoga/enums/Align.h +3 -1
  2024. package/ReactCommon/yoga/yoga/enums/Display.h +2 -1
  2025. package/ReactCommon/yoga/yoga/enums/Errata.h +1 -0
  2026. package/ReactCommon/yoga/yoga/enums/ExperimentalFeature.h +2 -1
  2027. package/ReactCommon/yoga/yoga/enums/GridTrackType.h +43 -0
  2028. package/ReactCommon/yoga/yoga/enums/Justify.h +5 -1
  2029. package/ReactCommon/yoga/yoga/enums/YogaEnums.h +0 -1
  2030. package/ReactCommon/yoga/yoga/event/event.cpp +2 -0
  2031. package/ReactCommon/yoga/yoga/event/event.h +1 -0
  2032. package/ReactCommon/yoga/yoga/node/LayoutResults.h +8 -3
  2033. package/ReactCommon/yoga/yoga/node/Node.cpp +38 -1
  2034. package/ReactCommon/yoga/yoga/node/Node.h +37 -4
  2035. package/ReactCommon/yoga/yoga/numeric/FloatOptional.h +0 -9
  2036. package/ReactCommon/yoga/yoga/style/GridLine.h +53 -0
  2037. package/ReactCommon/yoga/yoga/style/GridTrack.h +63 -0
  2038. package/ReactCommon/yoga/yoga/style/Style.h +268 -82
  2039. package/ReactCommon/yoga/yoga/style/StyleLength.h +7 -0
  2040. package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +14 -1
  2041. package/ReactCommon/yoga/yoga/style/StyleValueHandle.h +8 -0
  2042. package/ReactCommon/yoga/yoga/style/StyleValuePool.h +10 -0
  2043. package/cli.js +4 -183
  2044. package/flow/HermesInternalType.js +6 -6
  2045. package/flow/bom.js.flow +152 -52
  2046. package/flow/cssom.js.flow +24 -24
  2047. package/flow/dom.js.flow +258 -250
  2048. package/flow/global.js +7 -1
  2049. package/gradle/libs.versions.toml +11 -7
  2050. package/index.js +95 -100
  2051. package/index.js.flow +92 -32
  2052. package/macos/UIKitCompat/MobileCoreServices/MobileCoreServices.h +14 -0
  2053. package/macos/UIKitCompat/MobileCoreServices/UTCoreTypes.h +14 -0
  2054. package/macos/UIKitCompat/MobileCoreServices/UTType.h +14 -0
  2055. package/macos/UIKitCompat/RCTPlatformViewCompat.h +68 -0
  2056. package/macos/UIKitCompat/README.md +77 -0
  2057. package/macos/UIKitCompat/React-UIKitCompat.podspec +61 -0
  2058. package/macos/UIKitCompat/UIKit/UIAccessibility.h +72 -0
  2059. package/macos/UIKitCompat/UIKit/UIAccessibility.m +103 -0
  2060. package/macos/UIKitCompat/UIKit/UIAlertController.h +92 -0
  2061. package/macos/UIKitCompat/UIKit/UIAlertController.m +172 -0
  2062. package/macos/UIKitCompat/UIKit/UIApplication.h +39 -0
  2063. package/macos/UIKitCompat/UIKit/UIApplication.m +30 -0
  2064. package/macos/UIKitCompat/UIKit/UIApplicationDelegate.h +156 -0
  2065. package/macos/UIKitCompat/UIKit/UIApplicationDelegate.m +116 -0
  2066. package/macos/UIKitCompat/UIKit/UIColor.h +50 -0
  2067. package/macos/UIKitCompat/UIKit/UIColor.m +84 -0
  2068. package/macos/UIKitCompat/UIKit/UIControls.h +352 -0
  2069. package/macos/UIKitCompat/UIKit/UIControls.m +609 -0
  2070. package/macos/UIKitCompat/UIKit/UIDisplayLink.h +52 -0
  2071. package/macos/UIKitCompat/UIKit/UIDisplayLink.m +168 -0
  2072. package/macos/UIKitCompat/UIKit/UIEvent.h +110 -0
  2073. package/macos/UIKitCompat/UIKit/UIEvent.m +109 -0
  2074. package/macos/UIKitCompat/UIKit/UIGestureRecognizerSubclass.h +16 -0
  2075. package/macos/UIKitCompat/UIKit/UIGraphics.h +66 -0
  2076. package/macos/UIKitCompat/UIKit/UIGraphics.m +192 -0
  2077. package/macos/UIKitCompat/UIKit/UIImage.h +90 -0
  2078. package/macos/UIKitCompat/UIKit/UIImage.m +176 -0
  2079. package/macos/UIKitCompat/UIKit/UIKeyCommand.h +95 -0
  2080. package/macos/UIKitCompat/UIKit/UIKeyCommand.m +66 -0
  2081. package/macos/UIKitCompat/UIKit/UIKit.h +51 -0
  2082. package/macos/UIKitCompat/UIKit/UIKitDefines.h +417 -0
  2083. package/macos/UIKitCompat/UIKit/UIPlatformGaps.h +405 -0
  2084. package/macos/UIKitCompat/UIKit/UIPlatformGaps.m +1075 -0
  2085. package/macos/UIKitCompat/UIKit/UIScrollView.h +106 -0
  2086. package/macos/UIKitCompat/UIKit/UIScrollView.m +237 -0
  2087. package/macos/UIKitCompat/UIKit/UIStatusBar.h +42 -0
  2088. package/macos/UIKitCompat/UIKit/UIStatusBar.m +27 -0
  2089. package/macos/UIKitCompat/UIKit/UIText.h +234 -0
  2090. package/macos/UIKitCompat/UIKit/UIText.m +332 -0
  2091. package/macos/UIKitCompat/UIKit/UITouch.h +24 -0
  2092. package/macos/UIKitCompat/UIKit/UITraitCollection.h +57 -0
  2093. package/macos/UIKitCompat/UIKit/UITraitCollection.m +114 -0
  2094. package/macos/UIKitCompat/UIKit/UIUserActivity.h +14 -0
  2095. package/macos/UIKitCompat/UIKit/UIView.h +166 -0
  2096. package/macos/UIKitCompat/UIKit/UIView.m +555 -0
  2097. package/macos/UIKitCompat/UIKit/UIViewAnimation.h +355 -0
  2098. package/macos/UIKitCompat/UIKit/UIViewAnimation.m +481 -0
  2099. package/macos/UIKitCompat/UIKit/UIViewController.h +24 -0
  2100. package/macos/UIKitCompat/UIKit/UIWindow.h +24 -0
  2101. package/macos/UIKitCompat/macos-excludes.txt +22 -0
  2102. package/macos/metro-config.js +120 -0
  2103. package/package.json +79 -89
  2104. package/react-native.config.js +86 -57
  2105. package/scripts/cocoapods/__docs__/prebuilt-deps.md +78 -0
  2106. package/scripts/cocoapods/__tests__/codegen_utils-test.rb +315 -0
  2107. package/scripts/cocoapods/__tests__/fabric-test.rb +57 -0
  2108. package/scripts/cocoapods/__tests__/jsengine-test.rb +47 -0
  2109. package/scripts/cocoapods/__tests__/local_podspec_patch-test.rb +167 -0
  2110. package/scripts/cocoapods/__tests__/new_architecture-test.rb +402 -0
  2111. package/scripts/cocoapods/__tests__/rndependencies-test.rb +89 -0
  2112. package/scripts/cocoapods/__tests__/spm-test.rb +100 -0
  2113. package/scripts/cocoapods/__tests__/test_utils/CodegenScriptPhaseExtractorMock.rb +21 -0
  2114. package/scripts/cocoapods/__tests__/test_utils/CodegenUtilsMock.rb +108 -0
  2115. package/scripts/cocoapods/__tests__/test_utils/DirMock.rb +72 -0
  2116. package/scripts/cocoapods/__tests__/test_utils/EnvironmentMock.rb +21 -0
  2117. package/scripts/cocoapods/__tests__/test_utils/FileMock.rb +113 -0
  2118. package/scripts/cocoapods/__tests__/test_utils/FileUtilsMock.rb +40 -0
  2119. package/scripts/cocoapods/__tests__/test_utils/FinderMock.rb +28 -0
  2120. package/scripts/cocoapods/__tests__/test_utils/InstallerMock.rb +239 -0
  2121. package/scripts/cocoapods/__tests__/test_utils/LocalPodspecPatchMock.rb +14 -0
  2122. package/scripts/cocoapods/__tests__/test_utils/Open3Mock.rb +43 -0
  2123. package/scripts/cocoapods/__tests__/test_utils/PathnameMock.rb +50 -0
  2124. package/scripts/cocoapods/__tests__/test_utils/PodMock.rb +144 -0
  2125. package/scripts/cocoapods/__tests__/test_utils/SpecMock.rb +30 -0
  2126. package/scripts/cocoapods/__tests__/test_utils/SysctlCheckerMock.rb +21 -0
  2127. package/scripts/cocoapods/__tests__/test_utils/TargetDefinitionMock.rb +12 -0
  2128. package/scripts/cocoapods/__tests__/test_utils/XcodebuildMock.rb +26 -0
  2129. package/scripts/cocoapods/__tests__/test_utils/XcodeprojMock.rb +21 -0
  2130. package/scripts/cocoapods/__tests__/test_utils/podSpy.rb +39 -0
  2131. package/scripts/cocoapods/__tests__/test_utils/systemUtils.rb +14 -0
  2132. package/scripts/cocoapods/__tests__/utils-test.rb +1079 -0
  2133. package/scripts/cocoapods/autolinking.rb +11 -2
  2134. package/scripts/cocoapods/codegen.rb +3 -1
  2135. package/scripts/cocoapods/codegen_utils.rb +7 -2
  2136. package/scripts/cocoapods/fabric.rb +1 -1
  2137. package/scripts/cocoapods/helpers.rb +27 -6
  2138. package/scripts/cocoapods/jsengine.rb +1 -1
  2139. package/scripts/cocoapods/new_architecture.rb +8 -2
  2140. package/scripts/cocoapods/rncore.rb +153 -18
  2141. package/scripts/cocoapods/rncore_facades.rb +232 -0
  2142. package/scripts/cocoapods/rndependencies.rb +148 -27
  2143. package/scripts/cocoapods/rndeps_facades.rb +197 -0
  2144. package/scripts/cocoapods/spm.rb +104 -19
  2145. package/scripts/cocoapods/utils.rb +65 -26
  2146. package/scripts/codegen/__fixtures__/fixtures.js +133 -0
  2147. package/scripts/codegen/__fixtures__/test-app/lib/test-library/package.json +66 -0
  2148. package/scripts/codegen/__fixtures__/test-app/package.json +67 -0
  2149. package/scripts/codegen/__fixtures__/test-app-legacy/package.json +37 -0
  2150. package/scripts/codegen/__fixtures__/test-library/test-library.podspec +10 -0
  2151. package/scripts/codegen/__fixtures__/test-library-2/test-library-2.podspec +12 -0
  2152. package/scripts/codegen/__tests__/__snapshots__/generate-artifacts-executor-test.js.snap +995 -0
  2153. package/scripts/codegen/__tests__/generate-artifacts-executor-test.js +509 -0
  2154. package/scripts/codegen/__tests__/generate-specs-cli-executor-test.js +74 -0
  2155. package/scripts/codegen/generate-artifacts-executor/generateAppDependencyProvider.js +4 -4
  2156. package/scripts/codegen/generate-artifacts-executor/generateCustomURLHandlers.js +4 -4
  2157. package/scripts/codegen/generate-artifacts-executor/generateNativeCode.js +15 -7
  2158. package/scripts/codegen/generate-artifacts-executor/generatePackageSwift.js +2 -2
  2159. package/scripts/codegen/generate-artifacts-executor/generateRCTModuleProviders.js +4 -3
  2160. package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +12 -9
  2161. package/scripts/codegen/generate-artifacts-executor/generateReactCodegenPodspec.js +26 -11
  2162. package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +8 -8
  2163. package/scripts/codegen/generate-artifacts-executor/generateUnstableModulesRequiringMainQueueSetupProvider.js +4 -4
  2164. package/scripts/codegen/generate-artifacts-executor/index.js +102 -33
  2165. package/scripts/codegen/generate-artifacts-executor/utils.js +67 -6
  2166. package/scripts/codegen/generate-specs-cli-executor.js +1 -1
  2167. package/scripts/codegen/templates/Package.swift.spm-template +97 -0
  2168. package/scripts/codegen/templates/Package.swift.template +7 -0
  2169. package/scripts/codegen/templates/RCTThirdPartyComponentsProviderMM.template +22 -1
  2170. package/scripts/codegen/templates/ReactCodegen.podspec.template +1 -1
  2171. package/scripts/generate-codegen-artifacts.js +20 -2
  2172. package/scripts/generate-provider-cli.js +1 -1
  2173. package/scripts/hermes/hermes-utils.js +27 -58
  2174. package/scripts/ios-configure-glog.sh +24 -1
  2175. package/scripts/node-binary.sh +0 -0
  2176. package/scripts/react-native-xcode.sh +24 -6
  2177. package/scripts/react_native_pods.rb +125 -30
  2178. package/scripts/react_native_pods_utils/script_phases.rb +9 -3
  2179. package/scripts/react_native_pods_utils/script_phases.sh +4 -3
  2180. package/scripts/replace-rncore-version.js +110 -37
  2181. package/scripts/setup-apple-spm.js +1283 -0
  2182. package/scripts/spm/__docs__/README.md +92 -0
  2183. package/scripts/spm/__docs__/spm-autolinking-plugins.md +359 -0
  2184. package/scripts/spm/__docs__/spm-header-paths-contract.md +100 -0
  2185. package/scripts/spm/__docs__/spm-scripts.md +646 -0
  2186. package/scripts/spm/__tests__/__fixtures__/plain-app.pbxproj +171 -0
  2187. package/scripts/spm/__tests__/autolinking-plugins-test.js +543 -0
  2188. package/scripts/spm/__tests__/download-spm-artifacts-test.js +893 -0
  2189. package/scripts/spm/__tests__/expand-spm-dependencies-test.js +959 -0
  2190. package/scripts/spm/__tests__/flavored-frameworks-plist-dep-test.js +102 -0
  2191. package/scripts/spm/__tests__/flavored-frameworks-test.js +439 -0
  2192. package/scripts/spm/__tests__/generate-spm-autolinking-config-test.js +364 -0
  2193. package/scripts/spm/__tests__/generate-spm-autolinking-test.js +1960 -0
  2194. package/scripts/spm/__tests__/generate-spm-package-test.js +335 -0
  2195. package/scripts/spm/__tests__/generate-spm-xcodeproj-test.js +443 -0
  2196. package/scripts/spm/__tests__/inject-spm-xcodeproj-test.js +1169 -0
  2197. package/scripts/spm/__tests__/pbxproj-oracles.js +33 -0
  2198. package/scripts/spm/__tests__/read-podspec-test.js +487 -0
  2199. package/scripts/spm/__tests__/remove-spm-injection-test.js +1379 -0
  2200. package/scripts/spm/__tests__/scaffold-package-swift-test.js +1321 -0
  2201. package/scripts/spm/__tests__/setup-apple-spm-test.js +652 -0
  2202. package/scripts/spm/__tests__/spm-pbxproj-test.js +707 -0
  2203. package/scripts/spm/__tests__/spm-utils-test.js +715 -0
  2204. package/scripts/spm/__tests__/swift-tools-version-test.js +97 -0
  2205. package/scripts/spm/__tests__/sync-spm-autolinking-test.js +118 -0
  2206. package/scripts/spm/autolinking-plugins.js +411 -0
  2207. package/scripts/spm/download-spm-artifacts.js +1467 -0
  2208. package/scripts/spm/expand-spm-dependencies.js +435 -0
  2209. package/scripts/spm/flavored-frameworks.js +1008 -0
  2210. package/scripts/spm/generate-spm-autolinking-config.js +221 -0
  2211. package/scripts/spm/generate-spm-autolinking.js +2005 -0
  2212. package/scripts/spm/generate-spm-package.js +314 -0
  2213. package/scripts/spm/generate-spm-xcodeproj.js +2790 -0
  2214. package/scripts/spm/read-podspec.js +695 -0
  2215. package/scripts/spm/scaffold-package-swift.js +1247 -0
  2216. package/scripts/spm/spm-pbxproj.js +784 -0
  2217. package/scripts/spm/spm-types.js +546 -0
  2218. package/scripts/spm/spm-utils.js +760 -0
  2219. package/scripts/spm/sync-spm-autolinking.js +160 -0
  2220. package/scripts/xcode/with-environment.sh +7 -1
  2221. package/sdks/.hermesv1version +1 -0
  2222. package/sdks/hermes-engine/hermes-engine.podspec +12 -31
  2223. package/sdks/hermes-engine/hermes-utils.rb +108 -133
  2224. package/sdks/hermes-engine/utils/replace_hermes_version.js +18 -4
  2225. package/sdks/hermes-engine/version.properties +1 -2
  2226. package/settings.gradle.kts +0 -23
  2227. package/src/asset-registry.js +29 -0
  2228. package/src/private/__tests__/MemoryBaseline-itest.js +113 -0
  2229. package/src/private/__tests__/utilities/ShadowNodeReferenceCounter.js +60 -0
  2230. package/src/private/__tests__/utilities/ShadowNodeRevisionGetter.js +49 -0
  2231. package/src/private/__tests__/utilities/__tests__/ShadowNodeReferenceCounter-itest.js +196 -0
  2232. package/src/private/__tests__/utilities/__tests__/ShadowNodeRevisionGetter-itest.js +79 -0
  2233. package/src/private/__tests__/utilities/accessibilityPropsSuite.js +332 -0
  2234. package/src/private/__tests__/utilities/commonPropsSuite.js +40 -0
  2235. package/src/private/__tests__/utilities/ensureInstance.js +21 -0
  2236. package/src/private/__tests__/utilities/isUnreachable.js +27 -0
  2237. package/src/private/__tests__/utilities/measureRenderTime.js +46 -0
  2238. package/src/private/animated/NativeAnimatedHelper.js +170 -143
  2239. package/src/private/animated/NativeAnimatedValidation.js +7 -4
  2240. package/src/private/animated/__tests__/AnimatedNative-test.js +1766 -0
  2241. package/src/private/animated/__tests__/AnimatedProps-itest.js +80 -0
  2242. package/src/private/animated/__tests__/createAnimatedPropsHook-itest.js +89 -0
  2243. package/src/private/animated/__tests__/createAnimatedPropsMemoHook-itest.js +370 -0
  2244. package/src/private/animated/createAnimatedPropsHook.js +15 -7
  2245. package/src/private/animated/createAnimatedPropsMemoHook.js +20 -20
  2246. package/src/private/assets/AssetRegistry.js +52 -0
  2247. package/src/private/components/activityindicator/specs/ActivityIndicatorViewNativeComponent.js +56 -0
  2248. package/src/private/components/debuggingoverlay/specs/DebuggingOverlayNativeComponent.js +62 -0
  2249. package/src/private/components/drawerlayoutandroid/specs/AndroidDrawerLayoutNativeComponent.js +124 -0
  2250. package/src/private/components/inputaccessoryview/specs/RCTInputAccessoryViewNativeComponent.js +29 -0
  2251. package/src/private/components/modal/specs/RCTModalHostViewNativeComponent.js +151 -0
  2252. package/src/private/components/progressbarandroid/specs/ProgressBarAndroidNativeComponent.js +39 -0
  2253. package/src/private/components/refreshcontrol/specs/AndroidSwipeRefreshLayoutNativeComponent.js +74 -0
  2254. package/src/private/components/refreshcontrol/specs/PullToRefreshViewNativeComponent.js +74 -0
  2255. package/src/private/components/safeareaview/SafeAreaView_INTERNAL_DO_NOT_USE.js +2 -2
  2256. package/src/private/components/safeareaview/specs/RCTSafeAreaViewNativeComponent.js +28 -0
  2257. package/src/private/components/scrollview/HScrollViewNativeComponents.js +1 -1
  2258. package/src/private/components/scrollview/specs/AndroidHorizontalScrollContentViewNativeComponent.js +27 -0
  2259. package/src/private/components/switch/specs/AndroidSwitchNativeComponent.js +65 -0
  2260. package/src/private/components/switch/specs/SwitchNativeComponent.js +65 -0
  2261. package/src/private/components/unimplementedview/specs/UnimplementedNativeViewNativeComponent.js +26 -0
  2262. package/src/private/components/virtualcollection/FlingConstants.js +21 -0
  2263. package/src/private/components/virtualcollection/Virtual.js +62 -0
  2264. package/src/private/components/virtualcollection/VirtualCollectionView.js +234 -0
  2265. package/src/private/components/virtualcollection/column/VirtualColumn.js +43 -0
  2266. package/src/private/components/virtualcollection/column/VirtualColumnGenerator.js +72 -0
  2267. package/src/private/components/virtualcollection/dom/getScrollParent.js +43 -0
  2268. package/src/private/components/virtualcollection/dom/isScrollableNode.js +22 -0
  2269. package/src/private/components/virtualcollection/row/VirtualRow.js +43 -0
  2270. package/src/private/components/virtualcollection/row/VirtualRowGenerator.js +72 -0
  2271. package/src/private/components/virtualview/VirtualView.js +30 -30
  2272. package/src/private/components/virtualview/VirtualViewExperimentalNativeComponent.js +11 -10
  2273. package/src/private/components/virtualview/VirtualViewNativeComponent.js +4 -4
  2274. package/src/private/components/virtualview/__tests__/VirtualView-itest.js +409 -0
  2275. package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
  2276. package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
  2277. package/src/private/devsupport/devmenu/elementinspector/BorderBox.js +2 -2
  2278. package/src/private/devsupport/devmenu/elementinspector/BoxInspector.js +3 -3
  2279. package/src/private/devsupport/devmenu/elementinspector/ElementBox.js +4 -4
  2280. package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +2 -2
  2281. package/src/private/devsupport/devmenu/elementinspector/Inspector.js +42 -37
  2282. package/src/private/devsupport/devmenu/elementinspector/InspectorOverlay.js +15 -3
  2283. package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +3 -29
  2284. package/src/private/devsupport/devmenu/elementinspector/ReactDevToolsOverlay.js +2 -8
  2285. package/src/private/devsupport/devmenu/elementinspector/StyleInspector.js +1 -1
  2286. package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +3 -2
  2287. package/src/private/devsupport/devmenu/elementinspector/getInspectorDataForViewAtPoint.js +2 -2
  2288. package/src/private/devsupport/devmenu/elementinspector/resolveBoxStyle.js +1 -1
  2289. package/src/private/devsupport/devmenu/elementinspector/useExternalInspection.js +102 -0
  2290. package/src/private/devsupport/devmenu/specs/NativeDevMenu.js +5 -5
  2291. package/src/private/devsupport/rndevtools/FuseboxSessionObserver.js +12 -25
  2292. package/src/private/devsupport/rndevtools/GlobalStateObserver.js +56 -0
  2293. package/src/private/devsupport/rndevtools/ReactDevToolsSettingsManager.macos.js +7 -5
  2294. package/src/private/devsupport/rndevtools/TracingStateObserver.js +28 -0
  2295. package/src/private/devsupport/rndevtools/__docs__/FuseboxReactDevToolsDispatcher.excalidraw.svg +3 -0
  2296. package/src/private/devsupport/rndevtools/__tests__/TracingStateObserver-itest.js +131 -0
  2297. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsRuntimeSettingsModule.js +6 -4
  2298. package/src/private/devsupport/rndevtools/specs/NativeReactDevToolsSettingsManager.js +4 -4
  2299. package/src/private/featureflags/ReactNativeFeatureFlags.js +136 -133
  2300. package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +6 -6
  2301. package/src/private/featureflags/__docs__/README.md +229 -0
  2302. package/src/private/featureflags/__docs__/architecture.excalidraw.svg +4 -0
  2303. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-itest.js +104 -0
  2304. package/src/private/featureflags/__tests__/ReactNativeFeatureFlags-test.js +91 -0
  2305. package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +88 -85
  2306. package/src/private/renderer/branching/__tests__/ShadowTreeBranching-itest.js +249 -0
  2307. package/src/private/renderer/consistency/__tests__/UIConsistency-itest.js +159 -0
  2308. package/src/private/renderer/core/__tests__/EventDispatching-benchmark-itest.js +326 -0
  2309. package/src/private/renderer/core/__tests__/EventDispatching-itest.js +685 -0
  2310. package/src/private/renderer/core/__tests__/EventTargetDispatching-itest.js +1630 -0
  2311. package/src/private/renderer/core/__tests__/ResponderEventTarget-itest.js +910 -0
  2312. package/src/private/renderer/errorhandling/ErrorHandlers.js +12 -9
  2313. package/src/private/renderer/events/LegacySyntheticEvent.js +90 -0
  2314. package/src/private/renderer/events/ReactNativeEventTypeMapping.js +103 -0
  2315. package/src/private/renderer/events/ReactNativeResponder.js +732 -0
  2316. package/src/private/renderer/events/ResponderEvent.js +40 -0
  2317. package/src/private/renderer/events/ResponderTouchHistoryStore.js +267 -0
  2318. package/src/private/renderer/events/dispatchNativeEvent.js +118 -0
  2319. package/src/private/renderer/mounting/__tests__/Mounting-itest.js +563 -0
  2320. package/src/private/renderer/runtimescheduler/__tests__/RuntimeScheduler-benchmark-itest.js +62 -0
  2321. package/src/private/setup/__tests__/setUpDefaultReactNativeEnvironment-ComponentSideEffects-itest.js +56 -0
  2322. package/src/private/setup/__tests__/setUpDefaultReactNativeEnvironment-FeatureFlags-itest.js +28 -0
  2323. package/src/private/setup/__tests__/setUpDefaultReactNativeEnvironment-Globals-IntersectionObserver-itest.js +44 -0
  2324. package/src/private/setup/__tests__/setUpDefaultReactNativeEnvironment-Globals-MutationObserver-itest.js +44 -0
  2325. package/src/private/setup/__tests__/setUpDefaultReactNativeEnvironment-Globals-itest.js +346 -0
  2326. package/src/private/setup/setUpDOM.js +39 -9
  2327. package/src/private/setup/setUpDefaultReactNativeEnvironment.js +12 -0
  2328. package/src/private/setup/setUpIntersectionObserver.js +7 -0
  2329. package/src/private/setup/setUpMutationObserver.js +3 -1
  2330. package/src/private/specs_DEPRECATED/__docs__/README.md +12 -0
  2331. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityInfo.js +10 -10
  2332. package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +26 -32
  2333. package/src/private/specs_DEPRECATED/modules/NativeActionSheetManager.js +29 -29
  2334. package/src/private/specs_DEPRECATED/modules/NativeAlertManager.js +2 -7
  2335. package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +48 -24
  2336. package/src/private/specs_DEPRECATED/modules/NativeAnimatedTurboModule.js +44 -24
  2337. package/src/private/specs_DEPRECATED/modules/NativeAppState.js +5 -5
  2338. package/src/private/specs_DEPRECATED/modules/NativeAppearance.js +9 -7
  2339. package/src/private/specs_DEPRECATED/modules/NativeBlobModule.js +8 -8
  2340. package/src/private/specs_DEPRECATED/modules/NativeClipboard.js +4 -4
  2341. package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +4 -3
  2342. package/src/private/specs_DEPRECATED/modules/NativeDevSettings.js +12 -15
  2343. package/src/private/specs_DEPRECATED/modules/NativeDeviceEventManager.js +2 -2
  2344. package/src/private/specs_DEPRECATED/modules/NativeDeviceInfo.js +4 -4
  2345. package/src/private/specs_DEPRECATED/modules/NativeDialogManagerAndroid.js +8 -8
  2346. package/src/private/specs_DEPRECATED/modules/NativeExceptionsManager.js +5 -9
  2347. package/src/private/specs_DEPRECATED/modules/NativeFileReaderModule.js +4 -4
  2348. package/src/private/specs_DEPRECATED/modules/NativeFrameRateLogger.js +5 -5
  2349. package/src/private/specs_DEPRECATED/modules/NativeHeadlessJsTaskSupport.js +3 -3
  2350. package/src/private/specs_DEPRECATED/modules/NativeI18nManager.js +2 -2
  2351. package/src/private/specs_DEPRECATED/modules/NativeImageEditor.js +15 -15
  2352. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderAndroid.js +10 -7
  2353. package/src/private/specs_DEPRECATED/modules/NativeImageLoaderIOS.js +7 -7
  2354. package/src/private/specs_DEPRECATED/modules/NativeImageStoreAndroid.js +4 -4
  2355. package/src/private/specs_DEPRECATED/modules/NativeImageStoreIOS.js +10 -7
  2356. package/src/private/specs_DEPRECATED/modules/NativeIntentAndroid.js +6 -6
  2357. package/src/private/specs_DEPRECATED/modules/NativeJSCHeapCapture.js +2 -2
  2358. package/src/private/specs_DEPRECATED/modules/NativeKeyboardObserver.js +3 -3
  2359. package/src/private/specs_DEPRECATED/modules/NativeLinkingManager.js +7 -7
  2360. package/src/private/specs_DEPRECATED/modules/NativeLogBox.js +3 -3
  2361. package/src/private/specs_DEPRECATED/modules/NativeModalManager.js +3 -3
  2362. package/src/private/specs_DEPRECATED/modules/NativeNetworkingAndroid.js +6 -6
  2363. package/src/private/specs_DEPRECATED/modules/NativeNetworkingIOS.js +7 -7
  2364. package/src/private/specs_DEPRECATED/modules/NativePermissionsAndroid.js +7 -5
  2365. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsAndroid.js +4 -4
  2366. package/src/private/specs_DEPRECATED/modules/NativePlatformConstantsIOS.js +3 -3
  2367. package/src/private/specs_DEPRECATED/modules/NativePushNotificationManagerIOS.js +37 -33
  2368. package/src/private/specs_DEPRECATED/modules/NativeRedBox.js +3 -3
  2369. package/src/private/specs_DEPRECATED/modules/NativeSampleTurboModule.js +26 -26
  2370. package/src/private/specs_DEPRECATED/modules/NativeSegmentFetcher.js +3 -3
  2371. package/src/private/specs_DEPRECATED/modules/NativeSettingsManager.js +5 -5
  2372. package/src/private/specs_DEPRECATED/modules/NativeShareModule.js +3 -3
  2373. package/src/private/specs_DEPRECATED/modules/NativeSoundManager.js +2 -2
  2374. package/src/private/specs_DEPRECATED/modules/NativeSourceCode.js +1 -1
  2375. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerAndroid.js +5 -17
  2376. package/src/private/specs_DEPRECATED/modules/NativeStatusBarManagerIOS.js +10 -15
  2377. package/src/private/specs_DEPRECATED/modules/NativeTiming.js +4 -4
  2378. package/src/private/specs_DEPRECATED/modules/NativeToastAndroid.js +5 -5
  2379. package/src/private/specs_DEPRECATED/modules/NativeUIManager.js +36 -23
  2380. package/src/private/specs_DEPRECATED/modules/NativeVibration.js +5 -5
  2381. package/src/private/specs_DEPRECATED/modules/NativeWebSocketModule.js +9 -9
  2382. package/src/private/styles/composeStyles.js +2 -2
  2383. package/src/private/testing/fantom/specs/NativeCPUTime.js +24 -0
  2384. package/src/private/testing/fantom/specs/NativeFantom.js +140 -0
  2385. package/src/private/testing/fantom/specs/NativeFantomTestSpecificMethods.js +37 -0
  2386. package/src/private/testing/fantom/specs/__docs__/README.md +19 -0
  2387. package/src/private/timers/__tests__/Timers-itest.js +140 -0
  2388. package/src/private/types/HostComponent.js +1 -1
  2389. package/src/private/types/HostInstance.js +38 -80
  2390. package/src/private/utilities/toError.js +27 -0
  2391. package/src/private/utilities/toExtendedError.js +30 -0
  2392. package/src/private/viewtransition/specs/NativeViewTransition.js +35 -0
  2393. package/src/private/webapis/console/__tests__/consoleCreateTask-benchmark-itest.js +35 -0
  2394. package/src/private/webapis/console/__tests__/consoleCreateTask-jsx-benchmark-itest.js +79 -0
  2395. package/src/private/webapis/console/__tests__/no-consoleCreateTask-jsx-benchmark-itest.js +19 -0
  2396. package/src/private/webapis/dom/abort-api/AbortController.js +92 -0
  2397. package/src/private/webapis/dom/abort-api/AbortSignal.js +243 -0
  2398. package/src/private/webapis/dom/abort-api/__tests__/AbortController-itest.js +466 -0
  2399. package/src/private/webapis/dom/events/CustomEvent.js +3 -3
  2400. package/src/private/webapis/dom/events/Event.js +22 -13
  2401. package/src/private/webapis/dom/events/EventHandlerAttributes.js +2 -2
  2402. package/src/private/webapis/dom/events/EventTarget.js +184 -33
  2403. package/src/private/webapis/dom/events/__tests__/CustomEvent-itest.js +51 -0
  2404. package/src/private/webapis/dom/events/__tests__/Event-itest.js +317 -0
  2405. package/src/private/webapis/dom/events/__tests__/EventHandlerAttributes-itest.js +203 -0
  2406. package/src/private/webapis/dom/events/__tests__/EventTarget-benchmark-itest.js +209 -0
  2407. package/src/private/webapis/dom/events/__tests__/EventTarget-itest.js +1048 -0
  2408. package/src/private/webapis/dom/events/__tests__/createEventTargetHierarchyWithDepth.js +37 -0
  2409. package/src/private/webapis/dom/events/internals/EventInternals.js +56 -3
  2410. package/src/private/webapis/dom/events/internals/EventTargetInternals.js +50 -3
  2411. package/src/private/webapis/dom/nodes/ReactNativeDocument.js +11 -0
  2412. package/src/private/webapis/dom/nodes/ReactNativeElement.js +127 -2
  2413. package/src/private/webapis/dom/nodes/ReadOnlyCharacterData.js +11 -0
  2414. package/src/private/webapis/dom/nodes/ReadOnlyElement.js +14 -7
  2415. package/src/private/webapis/dom/nodes/ReadOnlyNode.js +99 -3
  2416. package/src/private/webapis/dom/nodes/ReadOnlyText.js +33 -0
  2417. package/src/private/webapis/dom/nodes/__tests__/ReactNativeDocument-itest.js +319 -0
  2418. package/src/private/webapis/dom/nodes/__tests__/ReactNativeElement-itest.js +1810 -0
  2419. package/src/private/webapis/dom/nodes/__tests__/ReactNativeElement-traversal-benchmark-itest.js +181 -0
  2420. package/src/private/webapis/dom/nodes/__tests__/ReadOnlyText-itest.js +462 -0
  2421. package/src/private/webapis/dom/nodes/internals/NodeInternals.js +10 -0
  2422. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
  2423. package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
  2424. package/src/private/webapis/dom/nodes/specs/NativeDOM.js +88 -84
  2425. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +15 -3
  2426. package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +7 -3
  2427. package/src/private/webapis/dom/oldstylecollections/NodeList.js +14 -4
  2428. package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +8 -4
  2429. package/src/private/webapis/dom/oldstylecollections/__tests__/HTMLCollection-itest.js +97 -0
  2430. package/src/private/webapis/dom/oldstylecollections/__tests__/NodeList-itest.js +178 -0
  2431. package/src/private/webapis/errors/DOMException.js +50 -50
  2432. package/src/private/webapis/errors/__tests__/DOMException-itest.js +157 -0
  2433. package/src/private/webapis/geometry/DOMRectList.js +14 -2
  2434. package/src/private/webapis/geometry/DOMRectList.js.flow +4 -2
  2435. package/src/private/webapis/geometry/DOMRectReadOnly.js +1 -1
  2436. package/src/private/webapis/geometry/__tests__/DOMRectList-itest.js +102 -0
  2437. package/src/private/webapis/html/events/MessageEvent.js +5 -5
  2438. package/src/private/webapis/idlecallbacks/__tests__/requestIdleCallback-itest.js +172 -0
  2439. package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +7 -7
  2440. package/src/private/webapis/intersectionobserver/IntersectionObserver.js +61 -13
  2441. package/src/private/webapis/intersectionobserver/IntersectionObserverEntry.js +13 -0
  2442. package/src/private/webapis/intersectionobserver/__docs__/README.md +53 -0
  2443. package/src/private/webapis/intersectionobserver/__docs__/architecture.excalidraw.svg +5 -0
  2444. package/src/private/webapis/intersectionobserver/__tests__/IntersectionObserver-benchmark-itest.js +449 -0
  2445. package/src/private/webapis/intersectionobserver/__tests__/IntersectionObserver-itest.js +4295 -0
  2446. package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +10 -18
  2447. package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +16 -16
  2448. package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +3 -3
  2449. package/src/private/webapis/mutationobserver/MutationObserver.js +9 -9
  2450. package/src/private/webapis/mutationobserver/MutationRecord.js +15 -3
  2451. package/src/private/webapis/mutationobserver/__docs__/README.md +46 -0
  2452. package/src/private/webapis/mutationobserver/__docs__/architecture.excalidraw.svg +4 -0
  2453. package/src/private/webapis/mutationobserver/__tests__/MutationObserver-itest.js +943 -0
  2454. package/src/private/webapis/mutationobserver/internals/MutationObserverManager.js +6 -8
  2455. package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +13 -13
  2456. package/src/private/webapis/performance/EventTiming.js +3 -3
  2457. package/src/private/webapis/performance/LongTasks.js +3 -3
  2458. package/src/private/webapis/performance/Performance.js +5 -5
  2459. package/src/private/webapis/performance/PerformanceEntry.js +4 -4
  2460. package/src/private/webapis/performance/PerformanceObserver.js +6 -6
  2461. package/src/private/webapis/performance/ResourceTiming.js +13 -13
  2462. package/src/private/webapis/performance/UserTiming.js +4 -4
  2463. package/src/private/webapis/performance/__tests__/EventTimingAPI-itest.js +403 -0
  2464. package/src/private/webapis/performance/__tests__/LongTasksAPI-itest.js +207 -0
  2465. package/src/private/webapis/performance/__tests__/Performance-benchmark-itest.js +146 -0
  2466. package/src/private/webapis/performance/__tests__/Performance-itest.js +77 -0
  2467. package/src/private/webapis/performance/__tests__/PerformanceMemory-itest.js +28 -0
  2468. package/src/private/webapis/performance/__tests__/PerformanceObserver-itest.js +127 -0
  2469. package/src/private/webapis/performance/__tests__/UserTiming-itest.js +828 -0
  2470. package/src/private/webapis/performance/internals/RawPerformanceEntry.js +1 -1
  2471. package/src/private/webapis/performance/internals/Utilities.js +1 -1
  2472. package/src/private/webapis/performance/specs/NativePerformance.js +34 -28
  2473. package/src/private/webapis/structuredClone/__tests__/structuredClone-benchmark-itest.js +43 -0
  2474. package/src/private/webapis/structuredClone/__tests__/structuredClone-itest.js +444 -0
  2475. package/src/private/webapis/structuredClone/structuredClone.js +6 -6
  2476. package/src/private/webapis/utils/ArrayLikeUtils.js +1 -1
  2477. package/src/private/webapis/webidl/PlatformObjects.js +4 -4
  2478. package/src/private/webapis/websockets/events/CloseEvent.js +3 -3
  2479. package/src/private/webapis/xhr/events/ProgressEvent.js +3 -3
  2480. package/src/react-private-interface.js +145 -0
  2481. package/src/react-private-interface.js.flow +48 -0
  2482. package/src/setup-env.js +22 -0
  2483. package/src/types/globals.d.ts +67 -6
  2484. package/src/unstable-internals-do-not-use.d.ts +214 -0
  2485. package/src/unstable-internals-do-not-use.js +76 -0
  2486. package/third-party-podspecs/RCT-Folly.podspec +2 -1
  2487. package/third-party-podspecs/ReactNativeDependencies.podspec +2 -2
  2488. package/third-party-podspecs/fmt.podspec +2 -2
  2489. package/third-party-podspecs/glog.podspec +1 -0
  2490. package/types/index.d.ts +3 -3
  2491. package/types/public/DeprecatedPropertiesAlias.d.ts +0 -4
  2492. package/types/public/ReactNativeTypes.d.ts +4 -2
  2493. package/Libraries/AppDelegate/RCTArchConfiguratorProtocol.h +0 -38
  2494. package/Libraries/Components/View/DraggedType.js +0 -23
  2495. package/Libraries/Components/View/ReactNativeViewAttributes.js +0 -77
  2496. package/Libraries/DevToolsSettings/DevToolsSettingsManager.macos.js +0 -14
  2497. package/Libraries/Image/AssetRegistry.js +0 -14
  2498. package/Libraries/Image/RCTImageShadowView.h +0 -17
  2499. package/Libraries/Image/RCTImageShadowView.mm +0 -28
  2500. package/Libraries/Image/RCTImageView.h +0 -35
  2501. package/Libraries/Image/RCTImageView.mm +0 -657
  2502. package/Libraries/Image/RCTImageViewManager.h +0 -17
  2503. package/Libraries/Image/RCTImageViewManager.mm +0 -119
  2504. package/Libraries/Image/TextInlineImageNativeComponent.js +0 -49
  2505. package/Libraries/Interaction/InteractionManager.d.ts +0 -87
  2506. package/Libraries/Interaction/InteractionManager.js +0 -188
  2507. package/Libraries/LinkingIOS/macos/RCTLinkingManager.mm +0 -123
  2508. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +0 -19660
  2509. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +0 -11121
  2510. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +0 -12922
  2511. package/Libraries/Renderer/shims/ReactNative.js +0 -26
  2512. package/Libraries/StyleSheet/PlatformColorValueTypesMacOS.d.ts +0 -30
  2513. package/Libraries/StyleSheet/PlatformColorValueTypesMacOS.js +0 -44
  2514. package/Libraries/StyleSheet/PlatformColorValueTypesMacOS.macos.js +0 -52
  2515. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +0 -35
  2516. package/Libraries/Text/BaseText/RCTBaseTextShadowView.mm +0 -162
  2517. package/Libraries/Text/BaseText/RCTBaseTextViewManager.h +0 -21
  2518. package/Libraries/Text/BaseText/RCTBaseTextViewManager.mm +0 -69
  2519. package/Libraries/Text/RCTTextAttributes.h +0 -112
  2520. package/Libraries/Text/RCTTextAttributes.mm +0 -381
  2521. package/Libraries/Text/RCTTextUIKit.h +0 -50
  2522. package/Libraries/Text/RawText/RCTRawTextShadowView.h +0 -23
  2523. package/Libraries/Text/RawText/RCTRawTextShadowView.mm +0 -38
  2524. package/Libraries/Text/RawText/RCTRawTextViewManager.h +0 -21
  2525. package/Libraries/Text/RawText/RCTRawTextViewManager.mm +0 -32
  2526. package/Libraries/Text/Text/RCTTextShadowView.h +0 -33
  2527. package/Libraries/Text/Text/RCTTextShadowView.mm +0 -469
  2528. package/Libraries/Text/Text/RCTTextView.h +0 -37
  2529. package/Libraries/Text/Text/RCTTextView.mm +0 -571
  2530. package/Libraries/Text/Text/RCTTextViewManager.h +0 -19
  2531. package/Libraries/Text/Text/RCTTextViewManager.mm +0 -101
  2532. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.h +0 -29
  2533. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.mm +0 -209
  2534. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.h +0 -21
  2535. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.mm +0 -42
  2536. package/Libraries/Text/TextInput/Multiline/RCTWrappedTextView.h +0 -30
  2537. package/Libraries/Text/TextInput/Multiline/RCTWrappedTextView.m +0 -210
  2538. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.h +0 -30
  2539. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.mm +0 -379
  2540. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +0 -86
  2541. package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +0 -1217
  2542. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.h +0 -17
  2543. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.mm +0 -217
  2544. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.h +0 -17
  2545. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.mm +0 -26
  2546. package/Libraries/Text/TextInput/RCTInputAccessoryView.h +0 -22
  2547. package/Libraries/Text/TextInput/RCTInputAccessoryView.mm +0 -82
  2548. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.h +0 -17
  2549. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.mm +0 -78
  2550. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.h +0 -17
  2551. package/Libraries/Text/TextInput/RCTInputAccessoryViewManager.mm +0 -33
  2552. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.h +0 -21
  2553. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.mm +0 -106
  2554. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.h +0 -21
  2555. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.mm +0 -37
  2556. package/Libraries/Text/TextInput/Singleline/macOS/RCTUISecureTextField.h +0 -15
  2557. package/Libraries/Text/TextInput/Singleline/macOS/RCTUISecureTextField.m +0 -14
  2558. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.h +0 -17
  2559. package/Libraries/Text/VirtualText/RCTVirtualTextShadowView.mm +0 -42
  2560. package/Libraries/Text/VirtualText/RCTVirtualTextView.h +0 -28
  2561. package/Libraries/Text/VirtualText/RCTVirtualTextView.mm +0 -16
  2562. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.h +0 -17
  2563. package/Libraries/Text/VirtualText/RCTVirtualTextViewManager.mm +0 -30
  2564. package/Libraries/Utilities/GlobalPerformanceLogger.js +0 -24
  2565. package/Libraries/Utilities/IPerformanceLogger.d.ts +0 -48
  2566. package/Libraries/Utilities/IPerformanceLogger.js +0 -49
  2567. package/Libraries/Utilities/NativePlatformConstantsMacOS.js +0 -31
  2568. package/Libraries/Utilities/PerformanceLoggerContext.js +0 -33
  2569. package/Libraries/Utilities/SceneTracker.js +0 -42
  2570. package/Libraries/Utilities/createPerformanceLogger.js +0 -329
  2571. package/Libraries/Wrapper/Example/RCTWrapperExampleView.h +0 -21
  2572. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +0 -57
  2573. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.h +0 -21
  2574. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +0 -27
  2575. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.h +0 -29
  2576. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +0 -50
  2577. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.h +0 -23
  2578. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +0 -35
  2579. package/Libraries/Wrapper/RCTWrapper.h +0 -73
  2580. package/Libraries/Wrapper/RCTWrapperShadowView.h +0 -27
  2581. package/Libraries/Wrapper/RCTWrapperShadowView.m +0 -138
  2582. package/Libraries/Wrapper/RCTWrapperView.h +0 -42
  2583. package/Libraries/Wrapper/RCTWrapperView.m +0 -99
  2584. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.h +0 -34
  2585. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +0 -137
  2586. package/Libraries/Wrapper/RCTWrapperViewManager.h +0 -25
  2587. package/Libraries/Wrapper/RCTWrapperViewManager.m +0 -31
  2588. package/React/Base/RCTFocusChangeEvent.h +0 -20
  2589. package/React/Base/RCTFocusChangeEvent.m +0 -30
  2590. package/React/Base/RCTRootContentView.h +0 -43
  2591. package/React/Base/RCTRootContentView.m +0 -158
  2592. package/React/Base/RCTRootViewInternal.h +0 -28
  2593. package/React/Base/macOS/RCTPlatformDisplayLink.m +0 -165
  2594. package/React/Base/macOS/RCTUIKit.m +0 -908
  2595. package/React/CxxBridge/RCTCxxBridge.mm +0 -1585
  2596. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.h +0 -25
  2597. package/React/CxxBridge/RCTJSIExecutorRuntimeInstaller.mm +0 -34
  2598. package/React/CxxBridge/RCTObjcExecutor.h +0 -34
  2599. package/React/CxxBridge/RCTObjcExecutor.mm +0 -150
  2600. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.h +0 -16
  2601. package/React/CxxLogUtils/RCTDefaultCxxLogFunction.mm +0 -35
  2602. package/React/CxxModule/DispatchMessageQueueThread.h +0 -50
  2603. package/React/CxxModule/RCTCxxMethod.h +0 -17
  2604. package/React/CxxModule/RCTCxxMethod.mm +0 -147
  2605. package/React/CxxModule/RCTCxxModule.h +0 -29
  2606. package/React/CxxModule/RCTCxxModule.mm +0 -87
  2607. package/React/CxxModule/RCTNativeModule.h +0 -34
  2608. package/React/CxxModule/RCTNativeModule.mm +0 -241
  2609. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.h +0 -25
  2610. package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +0 -325
  2611. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +0 -205
  2612. package/React/Tests/Text/RCTTextAttributesTest.mm +0 -49
  2613. package/React/Views/RCTActivityIndicatorView.h +0 -26
  2614. package/React/Views/RCTActivityIndicatorView.m +0 -132
  2615. package/React/Views/RCTActivityIndicatorViewManager.h +0 -23
  2616. package/React/Views/RCTActivityIndicatorViewManager.m +0 -65
  2617. package/React/Views/RCTCursor.m +0 -233
  2618. package/React/Views/RCTDebuggingOverlayManager.h +0 -18
  2619. package/React/Views/RCTDebuggingOverlayManager.m +0 -68
  2620. package/React/Views/RCTHandledKey.h +0 -40
  2621. package/React/Views/RCTHandledKey.m +0 -139
  2622. package/React/Views/RCTModalHostView.h +0 -64
  2623. package/React/Views/RCTModalHostView.m +0 -260
  2624. package/React/Views/RCTModalHostViewController.m +0 -80
  2625. package/React/Views/RCTModalHostViewManager.m +0 -133
  2626. package/React/Views/RCTModalManager.h +0 -22
  2627. package/React/Views/RCTModalManager.m +0 -46
  2628. package/React/Views/RCTRootShadowView.h +0 -35
  2629. package/React/Views/RCTRootShadowView.m +0 -53
  2630. package/React/Views/RCTShadowView+Internal.h +0 -18
  2631. package/React/Views/RCTShadowView+Internal.m +0 -23
  2632. package/React/Views/RCTSwitch.h +0 -22
  2633. package/React/Views/RCTSwitch.m +0 -24
  2634. package/React/Views/RCTSwitchManager.h +0 -17
  2635. package/React/Views/RCTSwitchManager.m +0 -77
  2636. package/React/Views/RCTViewKeyboardEvent.h +0 -17
  2637. package/React/Views/RCTViewKeyboardEvent.m +0 -109
  2638. package/React/Views/RefreshControl/RCTRefreshControl.h +0 -26
  2639. package/React/Views/RefreshControl/RCTRefreshControl.m +0 -232
  2640. package/React/Views/RefreshControl/RCTRefreshControlManager.h +0 -17
  2641. package/React/Views/RefreshControl/RCTRefreshControlManager.m +0 -49
  2642. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.h +0 -21
  2643. package/React/Views/SafeAreaView/RCTSafeAreaShadowView.m +0 -57
  2644. package/React/Views/SafeAreaView/RCTSafeAreaView.h +0 -27
  2645. package/React/Views/SafeAreaView/RCTSafeAreaView.m +0 -83
  2646. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.h +0 -25
  2647. package/React/Views/SafeAreaView/RCTSafeAreaViewLocalData.m +0 -25
  2648. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.h +0 -21
  2649. package/React/Views/SafeAreaView/RCTSafeAreaViewManager.m +0 -34
  2650. package/React/Views/ScrollView/MacOS/RCTScrollContentLocalData.h +0 -27
  2651. package/React/Views/ScrollView/MacOS/RCTScrollContentLocalData.m +0 -26
  2652. package/React/Views/ScrollView/RCTScrollContentShadowView.h +0 -19
  2653. package/React/Views/ScrollView/RCTScrollContentShadowView.m +0 -53
  2654. package/React/Views/ScrollView/RCTScrollContentView.h +0 -23
  2655. package/React/Views/ScrollView/RCTScrollContentView.m +0 -81
  2656. package/React/Views/ScrollView/RCTScrollContentViewManager.h +0 -17
  2657. package/React/Views/ScrollView/RCTScrollContentViewManager.m +0 -33
  2658. package/React/Views/ScrollView/RCTScrollView.m +0 -1533
  2659. package/React/Views/ScrollView/RCTScrollViewManager.h +0 -28
  2660. package/React/Views/ScrollView/RCTScrollViewManager.m +0 -214
  2661. package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.kt +0 -146
  2662. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +0 -251
  2663. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BridgeReactContext.java +0 -315
  2664. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +0 -45
  2665. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +0 -710
  2666. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +0 -25
  2667. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +0 -61
  2668. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +0 -427
  2669. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +0 -36
  2670. package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +0 -21
  2671. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +0 -54
  2672. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +0 -78
  2673. package/ReactAndroid/src/main/java/com/facebook/react/common/ClearableSynchronizedPool.kt +0 -51
  2674. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +0 -105
  2675. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingState.kt +0 -19
  2676. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingStateProvider.kt +0 -12
  2677. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +0 -1410
  2678. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobCollector.kt +0 -31
  2679. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +0 -157
  2680. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +0 -714
  2681. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +0 -985
  2682. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +0 -32
  2683. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +0 -904
  2684. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +0 -485
  2685. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -403
  2686. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactZIndexedViewGroup.kt +0 -25
  2687. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -1008
  2688. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -848
  2689. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -1092
  2690. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewGroupDrawingOrderHelper.kt +0 -111
  2691. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +0 -614
  2692. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +0 -30
  2693. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventDispatcherImpl.kt +0 -336
  2694. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/EventEmitterImpl.kt +0 -135
  2695. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +0 -87
  2696. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +0 -23
  2697. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/ProgressBarShadowNode.kt +0 -81
  2698. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollContainerLegacyView.kt +0 -47
  2699. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +0 -1783
  2700. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +0 -1605
  2701. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchShadowNode.kt +0 -72
  2702. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.kt +0 -677
  2703. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.kt +0 -218
  2704. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.kt +0 -369
  2705. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageShadowNode.kt +0 -156
  2706. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageSpan.kt +0 -174
  2707. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/FrescoBasedReactTextInlineImageViewManager.kt +0 -54
  2708. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/ReactTextInlineImageShadowNode.kt +0 -30
  2709. package/ReactAndroid/src/main/java/com/facebook/react/views/text/internal/span/TextInlineImageSpan.kt +0 -58
  2710. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.kt +0 -228
  2711. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +0 -314
  2712. package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimentalManager.kt +0 -110
  2713. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +0 -47
  2714. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaBoxSizing.java +0 -33
  2715. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIBase.java +0 -62
  2716. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaConfigJNIFinalizer.java +0 -31
  2717. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +0 -33
  2718. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.java +0 -35
  2719. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +0 -35
  2720. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +0 -47
  2721. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaErrata.java +0 -41
  2722. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +0 -31
  2723. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +0 -37
  2724. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +0 -35
  2725. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +0 -41
  2726. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +0 -45
  2727. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +0 -35
  2728. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +0 -279
  2729. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +0 -827
  2730. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIFinalizer.java +0 -35
  2731. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +0 -33
  2732. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +0 -35
  2733. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +0 -35
  2734. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaProps.java +0 -197
  2735. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +0 -43
  2736. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +0 -35
  2737. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +0 -428
  2738. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +0 -118
  2739. package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +0 -37
  2740. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +0 -20
  2741. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h +0 -22
  2742. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +0 -175
  2743. package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +0 -75
  2744. package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +0 -136
  2745. package/ReactCommon/cxxreact/JSIndexedRAMBundle.h +0 -72
  2746. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.cpp +0 -143
  2747. package/ReactCommon/hermes/inspector-modern/chrome/ConnectionDemux.h +0 -55
  2748. package/ReactCommon/hermes/inspector-modern/chrome/Registration.cpp +0 -37
  2749. package/ReactCommon/hermes/inspector-modern/chrome/Registration.h +0 -39
  2750. package/ReactCommon/hermes/inspector-modern/chrome/tests/ConnectionDemuxTests.cpp +0 -148
  2751. package/ReactCommon/jsi/jsi/hermes.h +0 -189
  2752. package/ReactCommon/jsinspector-modern/Base64.h +0 -99
  2753. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.cpp +0 -68
  2754. package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.h +0 -42
  2755. package/ReactCommon/jsinspector-modern/tracing/TracingState.h +0 -24
  2756. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +0 -212
  2757. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +0 -40
  2758. package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +0 -147
  2759. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.cpp +0 -416
  2760. package/ReactCommon/react/nativemodule/samples/platform/android/ReactCommon/SampleTurboModuleSpec.h +0 -31
  2761. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +0 -71
  2762. package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +0 -280
  2763. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.h +0 -35
  2764. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -177
  2765. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropState.mm +0 -11
  2766. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +0 -44
  2767. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +0 -222
  2768. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.cpp +0 -14
  2769. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformTouch.h +0 -16
  2770. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewEventEmitter.cpp +0 -197
  2771. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewEventEmitter.h +0 -50
  2772. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewEvents.h +0 -81
  2773. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewProps.cpp +0 -160
  2774. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewProps.h +0 -58
  2775. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/HostPlatformViewTraitsInitializer.h +0 -30
  2776. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/KeyEvent.h +0 -137
  2777. package/ReactCommon/react/renderer/components/view/platform/macos/react/renderer/components/view/MouseEvent.h +0 -83
  2778. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalComponentDescriptor.h +0 -19
  2779. package/ReactCommon/react/renderer/components/virtualviewexperimental/VirtualViewExperimentalShadowNode.h +0 -38
  2780. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +0 -72
  2781. package/ReactCommon/react/renderer/core/RawPropsKey.h +0 -40
  2782. package/ReactCommon/react/renderer/graphics/DoubleConversions.cpp +0 -38
  2783. package/ReactCommon/react/renderer/graphics/DoubleConversions.h +0 -16
  2784. package/ReactCommon/react/renderer/mounting/internal/TinyMap.h +0 -147
  2785. package/interface.js +0 -21
  2786. package/jest/MockNativeMethods.js +0 -27
  2787. package/jest/RefreshControlMock.js +0 -32
  2788. package/jest/assetFileTransformer.js +0 -33
  2789. package/jest/local-setup.js +0 -29
  2790. package/jest/mock.js +0 -39
  2791. package/jest/mockComponent.js +0 -104
  2792. package/jest/mockNativeComponent.js +0 -52
  2793. package/jest/mocks/AccessibilityInfo.js +0 -67
  2794. package/jest/mocks/ActivityIndicator.js +0 -23
  2795. package/jest/mocks/AppState.js +0 -19
  2796. package/jest/mocks/Clipboard.js +0 -16
  2797. package/jest/mocks/Image.js +0 -23
  2798. package/jest/mocks/InitializeCore.js +0 -9
  2799. package/jest/mocks/Linking.js +0 -28
  2800. package/jest/mocks/Modal.js +0 -33
  2801. package/jest/mocks/NativeComponentRegistry.js +0 -30
  2802. package/jest/mocks/NativeModules.js +0 -239
  2803. package/jest/mocks/RefreshControl.js +0 -31
  2804. package/jest/mocks/RendererProxy.js +0 -45
  2805. package/jest/mocks/ScrollView.js +0 -58
  2806. package/jest/mocks/Text.js +0 -27
  2807. package/jest/mocks/TextInput.js +0 -32
  2808. package/jest/mocks/UIManager.js +0 -60
  2809. package/jest/mocks/Vibration.js +0 -16
  2810. package/jest/mocks/View.js +0 -27
  2811. package/jest/mocks/ViewNativeComponent.js +0 -23
  2812. package/jest/mocks/requireNativeComponent.js +0 -22
  2813. package/jest/mocks/useColorScheme.js +0 -18
  2814. package/jest/react-native-env.js +0 -17
  2815. package/jest/renderer.js +0 -40
  2816. package/jest/resolver.js +0 -32
  2817. package/jest/setup.js +0 -140
  2818. package/jest-preset.js +0 -30
  2819. package/local-cli/cli.js +0 -18
  2820. package/local-cli/generate-macos.js +0 -36
  2821. package/local-cli/generator-common/index.js +0 -385
  2822. package/local-cli/generator-macos/index.js +0 -135
  2823. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/AppDelegate.h +0 -6
  2824. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/AppDelegate.mm +0 -47
  2825. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/Assets.xcassets/AppIcon.appiconset/Contents.json +0 -58
  2826. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/Assets.xcassets/Contents.json +0 -6
  2827. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/Base.lproj/Main.storyboard +0 -684
  2828. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/HelloWorld.entitlements +0 -12
  2829. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/Info.plist +0 -47
  2830. package/local-cli/generator-macos/templates/macos/HelloWorld-macOS/main.m +0 -5
  2831. package/local-cli/generator-macos/templates/macos/HelloWorld.xcodeproj/project.pbxproj +0 -536
  2832. package/local-cli/generator-macos/templates/macos/HelloWorld.xcodeproj/xcshareddata/xcschemes/HelloWorld-iOS.xcscheme +0 -78
  2833. package/local-cli/generator-macos/templates/macos/HelloWorld.xcodeproj/xcshareddata/xcschemes/HelloWorld-macOS.xcscheme +0 -78
  2834. package/local-cli/generator-macos/templates/macos/Podfile +0 -28
  2835. package/local-cli/generator-macos/templates/macos/_gitignore +0 -2
  2836. package/local-cli/runMacOS/runMacOS.js +0 -387
  2837. package/rn-get-polyfills.js +0 -13
  2838. package/sdks/.hermesversion +0 -1
  2839. package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +0 -628
  2840. package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +0 -66
  2841. package/src/private/specs_DEPRECATED/components/ActivityIndicatorViewNativeComponent.js +0 -56
  2842. package/src/private/specs_DEPRECATED/components/AndroidDrawerLayoutNativeComponent.js +0 -124
  2843. package/src/private/specs_DEPRECATED/components/AndroidHorizontalScrollContentViewNativeComponent.js +0 -27
  2844. package/src/private/specs_DEPRECATED/components/AndroidSwipeRefreshLayoutNativeComponent.js +0 -74
  2845. package/src/private/specs_DEPRECATED/components/AndroidSwitchNativeComponent.js +0 -65
  2846. package/src/private/specs_DEPRECATED/components/DebuggingOverlayNativeComponent.js +0 -62
  2847. package/src/private/specs_DEPRECATED/components/ProgressBarAndroidNativeComponent.js +0 -39
  2848. package/src/private/specs_DEPRECATED/components/PullToRefreshViewNativeComponent.js +0 -74
  2849. package/src/private/specs_DEPRECATED/components/RCTInputAccessoryViewNativeComponent.js +0 -29
  2850. package/src/private/specs_DEPRECATED/components/RCTModalHostViewNativeComponent.js +0 -156
  2851. package/src/private/specs_DEPRECATED/components/RCTSafeAreaViewNativeComponent.js +0 -28
  2852. package/src/private/specs_DEPRECATED/components/SwitchNativeComponent.js +0 -62
  2853. package/src/private/specs_DEPRECATED/components/UnimplementedNativeViewNativeComponent.js +0 -26
  2854. package/third-party-podspecs/SocketRocket.podspec +0 -30
  2855. package/types/tsconfig.json +0 -15
  2856. /package/React/Fabric/Mounting/ComponentViews/{VirtualViewExperimental → VirtualView}/RCTVirtualViewMode.h +0 -0
  2857. /package/React/Fabric/Mounting/ComponentViews/{VirtualViewExperimental → VirtualView}/RCTVirtualViewRenderState.h +0 -0
  2858. /package/ReactAndroid/src/main/java/com/facebook/react/fabric/internal/interop/{InteropUiBlockListener.kt → InteropUIBlockListener.kt} +0 -0
  2859. /package/ReactCommon/react/renderer/components/scrollview/{RCTComponentViewHelpers.h → platform/ios/react/renderer/components/scrollview/RCTComponentViewHelpers.h} +0 -0
  2860. /package/ReactCommon/{cxxreact → react/utils}/MoveWrapper.h +0 -0
@@ -6,14 +6,12 @@
6
6
  */
7
7
 
8
8
  #import "RCTViewComponentView.h"
9
+ #import <React/RCTSurfaceHostingProxyRootView.h>
9
10
 
10
11
  #import <CoreGraphics/CoreGraphics.h>
11
12
  #import <QuartzCore/QuartzCore.h>
12
13
  #import <objc/runtime.h>
13
14
  #import <ranges>
14
- #if TARGET_OS_OSX // [macOS
15
- #import <UniformTypeIdentifiers/UniformTypeIdentifiers.h>
16
- #endif // macOS]
17
15
 
18
16
  #import <RCTSwiftUIWrapper/RCTSwiftUIContainerViewWrapper.h>
19
17
  #import <React/RCTAssert.h>
@@ -35,18 +33,12 @@
35
33
  #import <React/RCTComponentViewFactory.h>
36
34
  #endif
37
35
 
38
- #if TARGET_OS_OSX // [macOS
39
- #import <React/RCTCursor.h>
40
- #import <React/RCTViewKeyboardEvent.h>
41
- #import <React/RCTUtils.h>
42
- #endif // macOS]
43
-
44
36
  using namespace facebook::react;
45
37
 
46
38
  const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
47
39
 
48
40
  @implementation RCTViewComponentView {
49
- RCTUIColor *_backgroundColor; // [macOS]
41
+ UIColor *_backgroundColor;
50
42
  CALayer *_backgroundColorLayer;
51
43
  __weak CALayer *_borderLayer;
52
44
  CALayer *_outlineLayer;
@@ -56,18 +48,13 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
56
48
  BOOL _needsInvalidateLayer;
57
49
  BOOL _isJSResponder;
58
50
  BOOL _removeClippedSubviews;
59
- #if TARGET_OS_OSX // [macOS
60
- BOOL _hasMouseOver;
61
- BOOL _hasClipViewBoundsObserver;
62
- NSTrackingArea *_trackingArea;
63
- BOOL _allowsVibrancy;
64
- #endif // macOS]
65
- NSMutableArray<RCTUIView *> *_reactSubviews; // [macOS]
51
+ NSMutableArray<UIView *> *_reactSubviews;
66
52
  NSSet<NSString *> *_Nullable _propKeysManagedByAnimated_DO_NOT_USE_THIS_IS_BROKEN;
67
- RCTPlatformView *_containerView; // [macOS]
53
+ UIView *_containerView;
68
54
  BOOL _useCustomContainerView;
69
55
  NSMutableSet<NSString *> *_accessibilityOrderNativeIDs;
70
56
  RCTSwiftUIContainerViewWrapper *_swiftUIWrapper;
57
+ BOOL _focusable;
71
58
  }
72
59
 
73
60
  #ifdef RCT_DYNAMIC_FRAMEWORKS
@@ -82,15 +69,11 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
82
69
  if (self = [super initWithFrame:frame]) {
83
70
  _props = ViewShadowNode::defaultSharedProps();
84
71
  _reactSubviews = [NSMutableArray new];
85
- #if !TARGET_OS_OSX // [macOS]
72
+ #if !TARGET_OS_TV
86
73
  self.multipleTouchEnabled = YES;
87
- #endif // [macOS]
74
+ #endif
88
75
  _useCustomContainerView = NO;
89
76
  _removeClippedSubviews = NO;
90
- #if TARGET_OS_OSX // [macOS
91
- _allowsVibrancy = NO;
92
- self.mouseDownCanMoveWindow = YES;
93
- #endif // macOS]
94
77
  }
95
78
  return self;
96
79
  }
@@ -100,11 +83,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
100
83
  return _props;
101
84
  }
102
85
 
103
- #if !TARGET_OS_OSX // [macOS]
104
- - (void)setContentView:(RCTUIView *)contentView // [macOS]
105
- #else // [macOS
106
- - (void)setContentView:(RCTPlatformView *)contentView // [macOS]
107
- #endif // macOS]
86
+ - (void)setContentView:(UIView *)contentView
108
87
  {
109
88
  if (_contentView) {
110
89
  [_contentView removeFromSuperview];
@@ -115,15 +94,28 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
115
94
  if (_contentView) {
116
95
  [self.currentContainerView addSubview:_contentView];
117
96
  _contentView.frame = RCTCGRectFromRect(_layoutMetrics.getContentFrame());
118
- #if TARGET_OS_OSX // [macOS
119
- _contentView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
120
- #endif // macOS]
121
- [self addSubview:_contentView];
122
97
  }
123
98
  }
124
99
 
100
+ // Rejects hits against views whose 2D transform collapses an axis (e.g. `scaleX: 0`,
101
+ // `scaleY: 0`, or any other non-invertible affine). Such views are visually degenerate, and
102
+ // UIKit's `-convertPoint:fromView:` falls back to the original matrix when
103
+ // `CGAffineTransformInvert` can't invert, so without this check the degenerate transform is
104
+ // applied to the touch point and the view can still register hits along the collapsed axis.
105
+ static BOOL RCTLayerTransformCollapsesAxis(CALayer *layer)
106
+ {
107
+ CATransform3D t = layer.transform;
108
+ // Determinant of the 2x2 projection onto the XY plane. Anything non-zero is invertible; we
109
+ // treat values within float epsilon as zero to avoid numerical issues near machine precision.
110
+ CGFloat det = t.m11 * t.m22 - t.m12 * t.m21;
111
+ return fabs(det) < (CGFloat)1e-6;
112
+ }
113
+
125
114
  - (BOOL)pointInside:(CGPoint)point withEvent:(UIEvent *)event
126
115
  {
116
+ if (RCTLayerTransformCollapsesAxis(self.layer)) {
117
+ return NO;
118
+ }
127
119
  if (UIEdgeInsetsEqualToEdgeInsets(self.hitTestEdgeInsets, UIEdgeInsetsZero)) {
128
120
  return [super pointInside:point withEvent:event];
129
121
  }
@@ -131,34 +123,16 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
131
123
  return CGRectContainsPoint(hitFrame, point);
132
124
  }
133
125
 
134
- - (RCTUIColor *)backgroundColor // [macOS]
126
+ - (UIColor *)backgroundColor
135
127
  {
136
128
  return _backgroundColor;
137
129
  }
138
130
 
139
- - (void)setBackgroundColor:(RCTUIColor *)backgroundColor // [macOS]
131
+ - (void)setBackgroundColor:(UIColor *)backgroundColor
140
132
  {
141
133
  _backgroundColor = backgroundColor;
142
134
  }
143
135
 
144
- #if TARGET_OS_OSX // [macOS
145
- - (void)resetCursorRects
146
- {
147
- [self discardCursorRects];
148
- if (_props->cursor != Cursor::Auto)
149
- {
150
- NSCursor *cursor = NSCursorFromRCTCursor(RCTCursorFromCursor(_props->cursor));
151
- [self addCursorRect:self.bounds cursor:cursor];
152
- }
153
- }
154
-
155
- - (BOOL)allowsVibrancy
156
- {
157
- return _allowsVibrancy;
158
- }
159
- #endif // macOS]
160
-
161
- #if !TARGET_OS_OSX
162
136
  - (void)traitCollectionDidChange:(UITraitCollection *)previousTraitCollection
163
137
  {
164
138
  [super traitCollectionDidChange:previousTraitCollection];
@@ -167,14 +141,6 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
167
141
  [self invalidateLayer];
168
142
  }
169
143
  }
170
- #else // [macOS SAAD
171
- - (void)viewDidChangeEffectiveAppearance
172
- {
173
- [super viewDidChangeEffectiveAppearance];
174
-
175
- [self invalidateLayer];
176
- }
177
- #endif // macOS]
178
144
 
179
145
  #pragma mark - RCTComponentViewProtocol
180
146
 
@@ -187,7 +153,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
187
153
  return concreteComponentDescriptorProvider<ViewComponentDescriptor>();
188
154
  }
189
155
 
190
- - (void)mountChildComponentView:(RCTUIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index // [macOS]
156
+ - (void)mountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index
191
157
  {
192
158
  RCTAssert(
193
159
  childComponentView.superview == nil,
@@ -204,17 +170,24 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
204
170
  }
205
171
  }
206
172
 
207
- - (void)unmountChildComponentView:(RCTUIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index // [macOS]
173
+ - (void)unmountChildComponentView:(UIView<RCTComponentViewProtocol> *)childComponentView index:(NSInteger)index
208
174
  {
209
175
  if (_removeClippedSubviews) {
210
176
  [_reactSubviews removeObjectAtIndex:index];
211
177
  } else {
212
178
  RCTAssert(
213
- childComponentView.superview == self.currentContainerView,
214
- @"Attempt to unmount a view which is mounted inside different view. (parent: %@, child: %@, index: %@)",
179
+ childComponentView.superview != nil,
180
+ @"Attempt to unmount a view which is not mounted. (parent: %@, child: %@, index: %@)",
215
181
  self,
216
182
  childComponentView,
217
183
  @(index));
184
+ RCTAssert(
185
+ childComponentView.superview == self.currentContainerView,
186
+ @"Attempt to unmount a view which is mounted inside a different view. (parent: %@, child: %@, index: %@, existing parent: %@)",
187
+ self,
188
+ childComponentView,
189
+ @(index),
190
+ @([childComponentView.superview tag]));
218
191
  RCTAssert(
219
192
  (self.currentContainerView.subviews.count > index) &&
220
193
  [self.currentContainerView.subviews objectAtIndex:index] == childComponentView,
@@ -229,7 +202,31 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
229
202
  [childComponentView removeFromSuperview];
230
203
  }
231
204
 
232
- - (void)updateClippedSubviewsWithClipRect:(CGRect)clipRect relativeToView:(RCTUIView *)clipView // [macOS]
205
+ - (void)_updateRemoveClippedSubviewsState
206
+ {
207
+ if (_removeClippedSubviews) {
208
+ // Toggled ON: populate _reactSubviews from the current view hierarchy.
209
+ // Actual clipping will happen on the next scroll event.
210
+ RCTAssert(
211
+ _reactSubviews.count == 0,
212
+ @"_reactSubviews should be empty when toggling removeClippedSubviews on. (view: %@, count: %@)",
213
+ self,
214
+ @(_reactSubviews.count));
215
+ if (self.currentContainerView.subviews.count > 0) {
216
+ _reactSubviews = [NSMutableArray arrayWithArray:self.currentContainerView.subviews];
217
+ }
218
+ } else {
219
+ // Toggled OFF: re-mount all children in the correct order, then clear the tracking array.
220
+ // addSubview: on an already-present child moves it to the front, so iterating in order
221
+ // produces the correct subview ordering.
222
+ for (UIView *view in _reactSubviews) {
223
+ [self.currentContainerView addSubview:view];
224
+ }
225
+ [_reactSubviews removeAllObjects];
226
+ }
227
+ }
228
+
229
+ - (void)updateClippedSubviewsWithClipRect:(CGRect)clipRect relativeToView:(UIView *)clipView
233
230
  {
234
231
  if (!_removeClippedSubviews) {
235
232
  // Use default behavior if unmounting is disabled
@@ -250,7 +247,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
250
247
  clipRect = [clipView convertRect:clipRect toView:self];
251
248
 
252
249
  // Mount / unmount views
253
- for (RCTUIView *view in _reactSubviews) { // [macOS]
250
+ for (UIView *view in _reactSubviews) {
254
251
  if (CGRectIntersectsRect(clipRect, view.frame)) {
255
252
  // View is at least partially visible, so remount it if unmounted
256
253
  [self.currentContainerView addSubview:view];
@@ -294,21 +291,19 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
294
291
  if (!ReactNativeFeatureFlags::enableViewCulling()) {
295
292
  if (oldViewProps.removeClippedSubviews != newViewProps.removeClippedSubviews) {
296
293
  _removeClippedSubviews = newViewProps.removeClippedSubviews;
297
- if (_removeClippedSubviews && self.currentContainerView.subviews.count > 0) {
298
- _reactSubviews = [NSMutableArray arrayWithArray:self.currentContainerView.subviews];
299
- }
294
+ [self _updateRemoveClippedSubviewsState];
300
295
  }
301
296
  }
302
297
 
303
298
  // `backgroundColor`
304
299
  if (oldViewProps.backgroundColor != newViewProps.backgroundColor) {
305
- self.backgroundColor = RCTUIColorFromSharedColor(newViewProps.backgroundColor); // [macOS]
300
+ self.backgroundColor = RCTUIColorFromSharedColor(newViewProps.backgroundColor);
306
301
  needsInvalidateLayer = YES;
307
302
  }
308
303
 
309
304
  // `shadowColor`
310
305
  if (oldViewProps.shadowColor != newViewProps.shadowColor) {
311
- RCTUIColor *shadowColor = RCTUIColorFromSharedColor(newViewProps.shadowColor); // [macOS]
306
+ UIColor *shadowColor = RCTUIColorFromSharedColor(newViewProps.shadowColor);
312
307
  self.layer.shadowColor = shadowColor.CGColor;
313
308
  needsInvalidateLayer = YES;
314
309
  }
@@ -341,19 +336,10 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
341
336
  needsInvalidateLayer = YES;
342
337
  }
343
338
 
344
- // `cursor`
345
- if (oldViewProps.cursor != newViewProps.cursor) {
346
- needsInvalidateLayer = YES;
347
- }
348
-
349
339
  // `shouldRasterize`
350
340
  if (oldViewProps.shouldRasterize != newViewProps.shouldRasterize) {
351
341
  self.layer.shouldRasterize = newViewProps.shouldRasterize;
352
- #if !TARGET_OS_OSX // [macOS]
353
342
  self.layer.rasterizationScale = newViewProps.shouldRasterize ? self.traitCollection.displayScale : 1.0;
354
- #else // [macOS
355
- self.layer.rasterizationScale = 1.0;
356
- #endif // macOS]
357
343
  }
358
344
 
359
345
  // `pointerEvents`
@@ -367,15 +353,6 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
367
353
  ![_propKeysManagedByAnimated_DO_NOT_USE_THIS_IS_BROKEN containsObject:@"transform"]) {
368
354
  auto newTransform = newViewProps.resolveTransform(_layoutMetrics);
369
355
  CATransform3D caTransform = RCTCATransform3DFromTransformMatrix(newTransform);
370
- #if TARGET_OS_OSX // [macOS
371
- CGPoint anchorPoint = self.layer.anchorPoint;
372
- if (CGPointEqualToPoint(anchorPoint, CGPointZero) && !CATransform3DEqualToTransform(caTransform, CATransform3DIdentity)) {
373
- // https://developer.apple.com/documentation/quartzcore/calayer/1410817-anchorpoint
374
- // This compensates for the fact that layer.anchorPoint is {0, 0} instead of {0.5, 0.5} on macOS for some reason.
375
- CATransform3D originAdjust = CATransform3DTranslate(CATransform3DIdentity, self.frame.size.width / 2, self.frame.size.height / 2, 0);
376
- caTransform = CATransform3DConcat(CATransform3DConcat(CATransform3DInvert(originAdjust), caTransform), originAdjust);
377
- }
378
- #endif // macOS]
379
356
 
380
357
  self.layer.transform = caTransform;
381
358
  // Enable edge antialiasing in rotation, skew, or perspective transforms
@@ -418,11 +395,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
418
395
 
419
396
  // `accessible`
420
397
  if (oldViewProps.accessible != newViewProps.accessible) {
421
- #if !TARGET_OS_OSX // [macOS]
422
398
  self.accessibilityElement.isAccessibilityElement = newViewProps.accessible;
423
- #else // [macOS
424
- self.accessibilityElement.accessibilityElement = newViewProps.accessible;
425
- #endif // macOS]
426
399
  }
427
400
 
428
401
  // `accessibilityLabel`
@@ -430,24 +403,17 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
430
403
  self.accessibilityElement.accessibilityLabel = RCTNSStringFromStringNilIfEmpty(newViewProps.accessibilityLabel);
431
404
  }
432
405
 
433
- #if !TARGET_OS_OSX // [macOS]
434
406
  // `accessibilityLanguage`
435
407
  if (oldViewProps.accessibilityLanguage != newViewProps.accessibilityLanguage) {
436
408
  self.accessibilityElement.accessibilityLanguage =
437
409
  RCTNSStringFromStringNilIfEmpty(newViewProps.accessibilityLanguage);
438
410
  }
439
- #endif // [macOS]
440
411
 
441
412
  // `accessibilityHint`
442
413
  if (oldViewProps.accessibilityHint != newViewProps.accessibilityHint) {
443
- #if !TARGET_OS_OSX // [macOS]
444
414
  self.accessibilityElement.accessibilityHint = RCTNSStringFromStringNilIfEmpty(newViewProps.accessibilityHint);
445
- #else // [macOS
446
- self.accessibilityElement.accessibilityHelp = RCTNSStringFromStringNilIfEmpty(newViewProps.accessibilityHint);
447
- #endif // macOS]
448
415
  }
449
416
 
450
- #if !TARGET_OS_OSX // [macOS]
451
417
  // `accessibilityViewIsModal`
452
418
  if (oldViewProps.accessibilityViewIsModal != newViewProps.accessibilityViewIsModal) {
453
419
  self.accessibilityElement.accessibilityViewIsModal = newViewProps.accessibilityViewIsModal;
@@ -460,6 +426,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
460
426
 
461
427
  // `accessibilityShowsLargeContentViewer`
462
428
  if (oldViewProps.accessibilityShowsLargeContentViewer != newViewProps.accessibilityShowsLargeContentViewer) {
429
+ #if !TARGET_OS_TV
463
430
  if (@available(iOS 13.0, *)) {
464
431
  if (newViewProps.accessibilityShowsLargeContentViewer) {
465
432
  self.showsLargeContentViewer = YES;
@@ -469,15 +436,17 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
469
436
  self.showsLargeContentViewer = NO;
470
437
  }
471
438
  }
439
+ #endif
472
440
  }
473
441
 
474
442
  // `accessibilityLargeContentTitle`
475
443
  if (oldViewProps.accessibilityLargeContentTitle != newViewProps.accessibilityLargeContentTitle) {
444
+ #if !TARGET_OS_TV
476
445
  if (@available(iOS 13.0, *)) {
477
446
  self.largeContentTitle = RCTNSStringFromStringNilIfEmpty(newViewProps.accessibilityLargeContentTitle);
478
447
  }
448
+ #endif
479
449
  }
480
- #endif // [macOS]
481
450
 
482
451
  // `accessibilityOrder`
483
452
  if (oldViewProps.accessibilityOrder != newViewProps.accessibilityOrder &&
@@ -499,19 +468,10 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
499
468
 
500
469
  // `accessibilityTraits`
501
470
  if (oldViewProps.accessibilityTraits != newViewProps.accessibilityTraits) {
502
- #if !TARGET_OS_OSX // [macOS]
503
471
  self.accessibilityElement.accessibilityTraits =
504
472
  RCTUIAccessibilityTraitsFromAccessibilityTraits(newViewProps.accessibilityTraits);
505
- #else // [macOS
506
- // On macOS, accessibilityElement returns self (NSView*) which doesn't have accessibilityTraits.
507
- // Set role directly on self based on traits.
508
- RCTUIAccessibilityTraits traits = RCTUIAccessibilityTraitsFromAccessibilityTraits(newViewProps.accessibilityTraits);
509
- self.accessibilityRole = RCTAccessibilityRoleFromTraits(traits);
510
- self.accessibilityEnabled = (traits & RCTUIAccessibilityTraitNotEnabled) == 0;
511
- #endif // macOS]
512
473
  }
513
474
 
514
- #if !TARGET_OS_OSX // [macOS]
515
475
  // `accessibilityState`
516
476
  if (oldViewProps.accessibilityState != newViewProps.accessibilityState) {
517
477
  self.accessibilityTraits &= ~(UIAccessibilityTraitNotEnabled | UIAccessibilityTraitSelected);
@@ -528,7 +488,6 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
528
488
  if (oldViewProps.accessibilityIgnoresInvertColors != newViewProps.accessibilityIgnoresInvertColors) {
529
489
  self.accessibilityIgnoresInvertColors = newViewProps.accessibilityIgnoresInvertColors;
530
490
  }
531
- #endif // [macOS]
532
491
 
533
492
  // `accessibilityValue`
534
493
  if (oldViewProps.accessibilityValue != newViewProps.accessibilityValue) {
@@ -548,19 +507,17 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
548
507
  }
549
508
  }
550
509
 
551
- #if !TARGET_OS_OSX // [macOS]
552
510
  if (oldViewProps.accessibilityRespondsToUserInteraction != newViewProps.accessibilityRespondsToUserInteraction) {
553
511
  self.accessibilityElement.accessibilityRespondsToUserInteraction =
554
512
  newViewProps.accessibilityRespondsToUserInteraction;
555
513
  }
556
- #endif // [macOS]
557
514
 
558
515
  // `testId`
559
516
  if (oldViewProps.testId != newViewProps.testId) {
560
517
  SEL setAccessibilityIdentifierSelector = @selector(setAccessibilityIdentifier:);
561
518
  NSString *identifier = RCTNSStringFromString(newViewProps.testId);
562
519
  if ([self.accessibilityElement respondsToSelector:setAccessibilityIdentifierSelector]) {
563
- RCTPlatformView *accessibilityView = (RCTPlatformView *)self.accessibilityElement; // [macOS]
520
+ UIView *accessibilityView = (UIView *)self.accessibilityElement;
564
521
  accessibilityView.accessibilityIdentifier = identifier;
565
522
  } else {
566
523
  self.accessibilityIdentifier = identifier;
@@ -572,6 +529,13 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
572
529
  needsInvalidateLayer = YES;
573
530
  }
574
531
 
532
+ // `focusable`
533
+ #if TARGET_OS_TV
534
+ if (oldViewProps.focusable != newViewProps.focusable) {
535
+ _focusable = (bool)newViewProps.focusable;
536
+ }
537
+ #endif
538
+
575
539
  // `mixBlendMode`
576
540
  if (oldViewProps.mixBlendMode != newViewProps.mixBlendMode) {
577
541
  switch (newViewProps.mixBlendMode) {
@@ -620,6 +584,9 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
620
584
  case BlendMode::Luminosity:
621
585
  self.layer.compositingFilter = @"luminosityBlendMode";
622
586
  break;
587
+ case BlendMode::PlusLighter:
588
+ self.layer.compositingFilter = @"linearDodgeBlendMode";
589
+ break;
623
590
  case BlendMode::Normal:
624
591
  self.layer.compositingFilter = nil;
625
592
  break;
@@ -639,54 +606,6 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
639
606
  needsInvalidateLayer = YES;
640
607
  }
641
608
 
642
- #if TARGET_OS_OSX // [macOS
643
- // `acceptsFirstMouse`
644
- if (oldViewProps.acceptsFirstMouse != newViewProps.acceptsFirstMouse) {
645
- self.acceptsFirstMouse = newViewProps.acceptsFirstMouse;
646
- }
647
-
648
- // `mouseDownCanMoveWindow`
649
- if (oldViewProps.mouseDownCanMoveWindow != newViewProps.mouseDownCanMoveWindow) {
650
- self.mouseDownCanMoveWindow = newViewProps.mouseDownCanMoveWindow;
651
- }
652
-
653
- // `allowsVibrancy`
654
- if (oldViewProps.allowsVibrancy != newViewProps.allowsVibrancy) {
655
- _allowsVibrancy = newViewProps.allowsVibrancy;
656
- }
657
-
658
- // `draggedTypes`
659
- if (oldViewProps.draggedTypes != newViewProps.draggedTypes) {
660
- if (!oldViewProps.draggedTypes.empty()) {
661
- [self unregisterDraggedTypes];
662
- }
663
-
664
- if (!newViewProps.draggedTypes.empty()) {
665
- NSMutableArray<NSPasteboardType> *pasteboardTypes = [NSMutableArray arrayWithCapacity:newViewProps.draggedTypes.size()];
666
- for (const auto &draggedType : newViewProps.draggedTypes) {
667
- if (draggedType == "fileUrl") {
668
- [pasteboardTypes addObject:NSFilenamesPboardType];
669
- } else if (draggedType == "image") {
670
- [pasteboardTypes addObject:NSPasteboardTypePNG];
671
- [pasteboardTypes addObject:NSPasteboardTypeTIFF];
672
- } else if (draggedType == "string") {
673
- [pasteboardTypes addObject:NSPasteboardTypeString];
674
- }
675
- }
676
- [self registerForDraggedTypes:pasteboardTypes];
677
- }
678
- }
679
-
680
- // `tooltip`
681
- if (oldViewProps.tooltip != newViewProps.tooltip) {
682
- if (newViewProps.tooltip.has_value()) {
683
- self.toolTip = RCTNSStringFromStringNilIfEmpty(newViewProps.tooltip.value());
684
- } else {
685
- self.toolTip = nil;
686
- }
687
- }
688
- #endif // macOS]
689
-
690
609
  _needsInvalidateLayer = _needsInvalidateLayer || needsInvalidateLayer;
691
610
 
692
611
  _props = std::static_pointer_cast<const ViewProps>(props);
@@ -705,6 +624,12 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
705
624
  // re-applying individual sub-values which weren't changed.
706
625
  [super updateLayoutMetrics:layoutMetrics oldLayoutMetrics:_layoutMetrics];
707
626
 
627
+ // Capture the frame size that was used by updateProps to resolve the
628
+ // transform, before overwriting _layoutMetrics. This is important because
629
+ // _layoutMetrics may be stale (e.g., from a recycled view) and differ from
630
+ // the oldLayoutMetrics parameter (which comes from the shadow tree).
631
+ auto previousFrameSize = _layoutMetrics.frame.size;
632
+
708
633
  _layoutMetrics = layoutMetrics;
709
634
  _needsInvalidateLayer = YES;
710
635
 
@@ -722,8 +647,12 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
722
647
  _backgroundColorLayer.frame = CGRectMake(0, 0, self.layer.bounds.size.width, self.layer.bounds.size.height);
723
648
  }
724
649
 
650
+ // Recompute the transform whenever the layout size differs from what was
651
+ // used in updateProps. Using previousFrameSize (the stored _layoutMetrics)
652
+ // instead of the oldLayoutMetrics parameter ensures correctness even when
653
+ // the view was recycled with stale dimensions.
725
654
  if ((_props->transformOrigin.isSet() || !_props->transform.operations.empty()) &&
726
- layoutMetrics.frame.size != oldLayoutMetrics.frame.size) {
655
+ layoutMetrics.frame.size != previousFrameSize) {
727
656
  auto newTransform = _props->resolveTransform(layoutMetrics);
728
657
  self.layer.transform = RCTCATransform3DFromTransformMatrix(newTransform);
729
658
  }
@@ -753,11 +682,6 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
753
682
 
754
683
  _needsInvalidateLayer = NO;
755
684
  [self invalidateLayer];
756
-
757
- #if TARGET_OS_OSX // [macOS
758
- [self updateTrackingAreas];
759
- [self updateClipViewBoundsObserverIfNeeded];
760
- #endif // macOS]
761
685
  }
762
686
 
763
687
  - (void)prepareForRecycle
@@ -773,16 +697,32 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
773
697
  self.layer.opacity = (float)props.opacity;
774
698
  }
775
699
 
700
+ // Clean up box shadow layers to prevent cross-component contamination
701
+ if (_boxShadowLayers != nullptr) {
702
+ for (CALayer *boxShadowLayer = nullptr in _boxShadowLayers) {
703
+ [boxShadowLayer removeFromSuperlayer];
704
+ }
705
+ [_boxShadowLayers removeAllObjects];
706
+ _boxShadowLayers = nil;
707
+ }
708
+
709
+ // Clean up other visual layers
710
+ [_backgroundColorLayer removeFromSuperlayer];
711
+ _backgroundColorLayer = nil;
712
+ [_borderLayer removeFromSuperlayer];
713
+ _borderLayer = nil;
714
+ [_outlineLayer removeFromSuperlayer];
715
+ _outlineLayer = nil;
716
+ [_filterLayer removeFromSuperlayer];
717
+ _filterLayer = nil;
718
+ [self clearExistingBackgroundImageLayers];
719
+
776
720
  _propKeysManagedByAnimated_DO_NOT_USE_THIS_IS_BROKEN = nil;
777
721
  _eventEmitter.reset();
778
722
  _isJSResponder = NO;
779
723
  _removeClippedSubviews = NO;
780
724
  _reactSubviews = [NSMutableArray new];
781
- #if TARGET_OS_OSX // [macOS
782
- _allowsVibrancy = NO;
783
- self.acceptsFirstMouse = NO;
784
- self.mouseDownCanMoveWindow = YES;
785
- #endif // macOS]
725
+ _layoutMetrics = {};
786
726
  }
787
727
 
788
728
  - (void)setPropKeysManagedByAnimated_DO_NOT_USE_THIS_IS_BROKEN:(NSSet<NSString *> *_Nullable)props
@@ -795,7 +735,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
795
735
  return _propKeysManagedByAnimated_DO_NOT_USE_THIS_IS_BROKEN;
796
736
  }
797
737
 
798
- - (RCTPlatformView *)betterHitTest:(CGPoint)point withEvent:(UIEvent *)event // [macOS]
738
+ - (UIView *)betterHitTest:(CGPoint)point withEvent:(UIEvent *)event
799
739
  {
800
740
  // This is a classic textbook implementation of `hitTest:` with a couple of improvements:
801
741
  // * It does not stop algorithm if some touch is outside the view
@@ -803,19 +743,15 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
803
743
  // * Taking `layer.zIndex` field into an account is not required because
804
744
  // lists of `ShadowView`s are already sorted based on `zIndex` prop.
805
745
 
806
- #if !TARGET_OS_OSX // [macOS]
807
746
  if (!self.userInteractionEnabled || self.hidden || self.alpha < 0.01) {
808
- #else // [macOS
809
- if (!self.userInteractionEnabled || self.hidden || self.alphaValue < 0.01 ) {
810
- #endif // macOS]
811
747
  return nil;
812
748
  }
813
749
 
814
750
  BOOL isPointInside = [self pointInside:point withEvent:event];
815
751
 
816
- RCTPlatformView *currentContainerView = self.currentContainerView; // [macOS]
752
+ UIView *currentContainerView = self.currentContainerView;
817
753
 
818
- BOOL clipsToBounds = false; // [macOS]
754
+ BOOL clipsToBounds = currentContainerView.clipsToBounds;
819
755
 
820
756
  clipsToBounds = clipsToBounds || _layoutMetrics.overflowInset == EdgeInsets{};
821
757
 
@@ -823,8 +759,8 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
823
759
  return nil;
824
760
  }
825
761
 
826
- for (RCTPlatformView *subview = nullptr in [currentContainerView.subviews reverseObjectEnumerator]) { // [macOS]
827
- RCTPlatformView *hitView = RCTUIViewHitTestWithEvent(subview, [subview convertPoint:point fromView:currentContainerView], event); // [macOS]
762
+ for (UIView *subview = nullptr in [currentContainerView.subviews reverseObjectEnumerator]) {
763
+ UIView *hitView = [subview hitTest:[subview convertPoint:point fromView:currentContainerView] withEvent:event];
828
764
  if (hitView) {
829
765
  return hitView;
830
766
  }
@@ -833,7 +769,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
833
769
  return isPointInside ? self : nil;
834
770
  }
835
771
 
836
- - (RCTPlatformView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event // [macOS]
772
+ - (UIView *)hitTest:(CGPoint)point withEvent:(UIEvent *)event
837
773
  {
838
774
  switch (_props->pointerEvents) {
839
775
  case PointerEventsMode::Auto:
@@ -843,7 +779,7 @@ const CGFloat BACKGROUND_COLOR_ZPOSITION = -1024.0f;
843
779
  case PointerEventsMode::BoxOnly:
844
780
  return [self pointInside:point withEvent:event] ? self : nil;
845
781
  case PointerEventsMode::BoxNone:
846
- RCTPlatformView *view = [self betterHitTest:point withEvent:event]; // [macOS]
782
+ UIView *view = [self betterHitTest:point withEvent:event];
847
783
  return view != self ? view : nil;
848
784
  }
849
785
  }
@@ -883,8 +819,8 @@ static void RCTAddContourEffectToLayer(
883
819
  const UIEdgeInsets &contourInsets,
884
820
  const RCTBorderStyle &contourStyle)
885
821
  {
886
- RCTUIImage *image = RCTGetBorderImage( // [macOS]
887
- contourStyle, layer.bounds.size, cornerRadii, contourInsets, contourColors, [RCTUIColor clearColor], NO); // [macOS]
822
+ UIImage *image = RCTGetBorderImage(
823
+ contourStyle, layer.bounds.size, cornerRadii, contourInsets, contourColors, [UIColor clearColor], NO);
888
824
 
889
825
  if (image == nil) {
890
826
  layer.contents = nil;
@@ -943,88 +879,6 @@ static RCTBorderStyle RCTBorderStyleFromBorderStyle(BorderStyle borderStyle)
943
879
  }
944
880
  }
945
881
 
946
- #if TARGET_OS_OSX // [macOS
947
- static RCTCursor RCTCursorFromCursor(Cursor cursor)
948
- {
949
- switch (cursor) {
950
- case Cursor::Auto:
951
- return RCTCursorAuto;
952
- case Cursor::Alias:
953
- return RCTCursorAlias;
954
- case Cursor::AllScroll:
955
- return RCTCursorAllScroll;
956
- case Cursor::Cell:
957
- return RCTCursorCell;
958
- case Cursor::ColResize:
959
- return RCTCursorColResize;
960
- case Cursor::ContextMenu:
961
- return RCTCursorContextMenu;
962
- case Cursor::Copy:
963
- return RCTCursorCopy;
964
- case Cursor::Crosshair:
965
- return RCTCursorCrosshair;
966
- case Cursor::Default:
967
- return RCTCursorDefault;
968
- case Cursor::EResize:
969
- return RCTCursorEResize;
970
- case Cursor::EWResize:
971
- return RCTCursorEWResize;
972
- case Cursor::Grab:
973
- return RCTCursorGrab;
974
- case Cursor::Grabbing:
975
- return RCTCursorGrabbing;
976
- case Cursor::Help:
977
- return RCTCursorHelp;
978
- case Cursor::Move:
979
- return RCTCursorMove;
980
- case Cursor::NEResize:
981
- return RCTCursorNEResize;
982
- case Cursor::NESWResize:
983
- return RCTCursorNESWResize;
984
- case Cursor::NResize:
985
- return RCTCursorNResize;
986
- case Cursor::NSResize:
987
- return RCTCursorNSResize;
988
- case Cursor::NWResize:
989
- return RCTCursorNWResize;
990
- case Cursor::NWSEResize:
991
- return RCTCursorNWSEResize;
992
- case Cursor::NoDrop:
993
- return RCTCursorNoDrop;
994
- case Cursor::None:
995
- return RCTCursorNone;
996
- case Cursor::NotAllowed:
997
- return RCTCursorNotAllowed;
998
- case Cursor::Pointer:
999
- return RCTCursorPointer;
1000
- case Cursor::Progress:
1001
- return RCTCursorProgress;
1002
- case Cursor::RowResize:
1003
- return RCTCursorRowResize;
1004
- case Cursor::SResize:
1005
- return RCTCursorSResize;
1006
- case Cursor::SEResize:
1007
- return RCTCursorSEResize;
1008
- case Cursor::SWResize:
1009
- return RCTCursorSWResize;
1010
- case Cursor::Text:
1011
- return RCTCursorText;
1012
- case Cursor::Url:
1013
- return RCTCursorUrl;
1014
- case Cursor::VerticalText:
1015
- return RCTCursorVerticalText;
1016
- case Cursor::WResize:
1017
- return RCTCursorWResize;
1018
- case Cursor::Wait:
1019
- return RCTCursorWait;
1020
- case Cursor::ZoomIn:
1021
- return RCTCursorZoomIn;
1022
- case Cursor::ZoomOut:
1023
- return RCTCursorZoomOut;
1024
- }
1025
- }
1026
- #endif // macOS]
1027
-
1028
882
  static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1029
883
  {
1030
884
  switch (outlineStyle) {
@@ -1051,19 +905,19 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1051
905
  // `blur` applied, we need to wrap it in a SwiftUI view to render the effect.
1052
906
  // In this case, `effectiveContentView` will be the content view inside the
1053
907
  // SwiftUI wrapper.
1054
- - (RCTPlatformView *)effectiveContentView // [macOS]
908
+ - (UIView *)effectiveContentView
1055
909
  {
1056
910
  if (!ReactNativeFeatureFlags::enableSwiftUIBasedFilters()) {
1057
911
  return self;
1058
912
  }
1059
913
 
1060
- RCTPlatformView *effectiveContentView = self; // [macOS]
914
+ UIView *effectiveContentView = self;
1061
915
 
1062
916
  if (self.styleNeedsSwiftUIContainer) {
1063
917
  if (_swiftUIWrapper == nullptr) {
1064
918
  _swiftUIWrapper = [RCTSwiftUIContainerViewWrapper new];
1065
- RCTPlatformView *swiftUIContentView = [[RCTPlatformView alloc] init]; // [macOS]
1066
- for (RCTPlatformView *subview = nullptr in self.subviews) { // [macOS]
919
+ UIView *swiftUIContentView = [[RCTUIView alloc] init]; // [macOS] needs a flipped, layer-backed view
920
+ for (UIView *subview = nullptr in self.subviews) {
1067
921
  [swiftUIContentView addSubview:subview];
1068
922
  }
1069
923
  swiftUIContentView.clipsToBounds = self.clipsToBounds;
@@ -1080,8 +934,8 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1080
934
  effectiveContentView = _swiftUIWrapper.contentView;
1081
935
  } else {
1082
936
  if (_swiftUIWrapper != nullptr) {
1083
- RCTPlatformView *swiftUIContentView = _swiftUIWrapper.contentView; // [macOS]
1084
- for (RCTPlatformView *subview = nullptr in swiftUIContentView.subviews) { // [macOS]
937
+ UIView *swiftUIContentView = _swiftUIWrapper.contentView;
938
+ for (UIView *subview = nullptr in swiftUIContentView.subviews) {
1085
939
  [self addSubview:subview];
1086
940
  }
1087
941
  self.clipsToBounds = swiftUIContentView.clipsToBounds;
@@ -1100,14 +954,14 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1100
954
  // This UIView is the UIView that holds all subviews. It is sometimes not self
1101
955
  // because we want to render "overflow ink" that extends beyond the bounds of
1102
956
  // the view and is not affected by clipping.
1103
- - (RCTUIView *)currentContainerView // [macOS]
957
+ - (UIView *)currentContainerView
1104
958
  {
1105
- RCTPlatformView *effectiveContentView = self.effectiveContentView; // [macOS]
959
+ UIView *effectiveContentView = self.effectiveContentView;
1106
960
 
1107
961
  if (_useCustomContainerView) {
1108
962
  if (!_containerView) {
1109
- _containerView = [[RCTPlatformView alloc] initWithFrame:CGRectMake(0, 0, self.bounds.size.width, self.bounds.size.height)]; // [macOS]
1110
- for (RCTPlatformView *subview = nullptr in effectiveContentView.subviews) { // [macOS]
963
+ _containerView = [[RCTUIView alloc] initWithFrame:CGRectMake(0, 0, self.bounds.size.width, self.bounds.size.height)]; // [macOS] needs a flipped, layer-backed view
964
+ for (UIView *subview = nullptr in effectiveContentView.subviews) {
1111
965
  [_containerView addSubview:subview];
1112
966
  }
1113
967
  _containerView.clipsToBounds = effectiveContentView.clipsToBounds;
@@ -1120,7 +974,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1120
974
  effectiveContentView = _containerView;
1121
975
  } else {
1122
976
  if (_containerView) {
1123
- for (RCTPlatformView *subview in _containerView.subviews) { // [macOS]
977
+ for (UIView *subview in _containerView.subviews) {
1124
978
  [effectiveContentView addSubview:subview];
1125
979
  }
1126
980
  effectiveContentView.clipsToBounds = _containerView.clipsToBounds;
@@ -1140,18 +994,6 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1140
994
  return;
1141
995
  }
1142
996
 
1143
- #if TARGET_OS_OSX // [macOS
1144
- // On macOS, clipsToBounds doesn't automatically set layer.masksToBounds like iOS does.
1145
- // When _useCustomContainerView is true (boxShadow + overflow:hidden), the container
1146
- // view handles clipping children while the main layer stays unclipped for the shadow.
1147
- // The container view's masksToBounds is set in currentContainerView getter.
1148
- if (_useCustomContainerView) {
1149
- layer.masksToBounds = NO;
1150
- } else {
1151
- layer.masksToBounds = _props->getClipsContentToBounds();
1152
- }
1153
- #endif // macOS]
1154
-
1155
997
  const auto borderMetrics = _props->resolveBorderMetrics(_layoutMetrics);
1156
998
 
1157
999
  // Stage 1. Shadow Path
@@ -1172,34 +1014,8 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1172
1014
  layer.shadowPath = nil;
1173
1015
  }
1174
1016
 
1175
- #if !TARGET_OS_OSX // [visionOS]
1176
- // Stage 1.5. Cursor / Hover Effects
1177
- if (@available(iOS 17.0, *)) {
1178
- UIHoverStyle *hoverStyle = nil;
1179
- if (_props->cursor == Cursor::Pointer) {
1180
- const RCTCornerInsets cornerInsets =
1181
- RCTGetCornerInsets(RCTCornerRadiiFromBorderRadii(borderMetrics.borderRadii), UIEdgeInsetsZero);
1182
- #if TARGET_OS_IOS
1183
- // Due to an Apple bug, it seems on iOS, UIShapes made with `[UIShape shapeWithBezierPath:]`
1184
- // evaluate their shape on the superviews' coordinate space. This leads to the hover shape
1185
- // rendering incorrectly on iOS, iOS apps in compatibility mode on visionOS, but not on visionOS.
1186
- // To work around this, for iOS, we can calculate the border path based on `view.frame` (the
1187
- // superview's coordinate space) instead of view.bounds.
1188
- CGPathRef borderPath = RCTPathCreateWithRoundedRect(self.frame, cornerInsets, NULL, NO);
1189
- #else // TARGET_OS_VISION
1190
- CGPathRef borderPath = RCTPathCreateWithRoundedRect(self.bounds, cornerInsets, NULL, NO);
1191
- #endif
1192
- UIBezierPath *bezierPath = [UIBezierPath bezierPathWithCGPath:borderPath];
1193
- CGPathRelease(borderPath);
1194
- UIShape *shape = [UIShape shapeWithBezierPath:bezierPath];
1195
-
1196
- hoverStyle = [UIHoverStyle styleWithEffect:[UIHoverAutomaticEffect effect] shape:shape];
1197
- }
1198
- [self setHoverStyle:hoverStyle];
1199
- }
1200
- #endif // [visionOS]
1201
-
1202
- #if defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 170000 /* __IPHONE_17_0 */
1017
+ #if !TARGET_OS_TV && defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && \
1018
+ __IPHONE_OS_VERSION_MAX_ALLOWED >= 170000 /* __IPHONE_17_0 */
1203
1019
  // Stage 1.5. Cursor / Hover Effects
1204
1020
  if (@available(iOS 17.0, *)) {
1205
1021
  UIHoverStyle *hoverStyle = nil;
@@ -1228,7 +1044,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1228
1044
  const bool useCoreAnimationBorderRendering =
1229
1045
  borderMetrics.borderColors.isUniform() && borderMetrics.borderWidths.isUniform() &&
1230
1046
  borderMetrics.borderStyles.isUniform() && borderMetrics.borderStyles.left == BorderStyle::Solid &&
1231
- borderMetrics.borderRadii.isUniform() &&
1047
+ areBorderRadiiCircular(borderMetrics.borderRadii) &&
1232
1048
  (
1233
1049
  // iOS draws borders in front of the content whereas CSS draws them behind
1234
1050
  // the content. For this reason, only use iOS border drawing when clipping
@@ -1238,11 +1054,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1238
1054
  (*borderMetrics.borderColors.left).getUIColor() != nullptr));
1239
1055
 
1240
1056
  // background color
1241
- #if !TARGET_OS_OSX // [macOS]
1242
- RCTUIColor *backgroundColor = [_backgroundColor resolvedColorWithTraitCollection:self.traitCollection];
1243
- #else // [macOS
1244
- RCTUIColor *backgroundColor = _backgroundColor;
1245
- #endif // macOS]
1057
+ UIColor *backgroundColor = [_backgroundColor resolvedColorWithTraitCollection:self.traitCollection];
1246
1058
  // The reason we sometimes do not set self.layer's backgroundColor is because
1247
1059
  // we want to support non-uniform border radii, which apple does not natively
1248
1060
  // support. To get this behavior we need to create a CGPath in the shape that
@@ -1271,13 +1083,10 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1271
1083
  _borderLayer = nil;
1272
1084
 
1273
1085
  layer.borderWidth = (CGFloat)borderMetrics.borderWidths.left;
1274
- RCTUIColor *borderColor = RCTUIColorFromSharedColor(borderMetrics.borderColors.left); // [macOS]
1086
+ UIColor *borderColor = RCTUIColorFromSharedColor(borderMetrics.borderColors.left);
1275
1087
  layer.borderColor = borderColor.CGColor;
1276
1088
  layer.cornerRadius = (CGFloat)borderMetrics.borderRadii.topLeft.horizontal;
1277
-
1278
1089
  layer.cornerCurve = CornerCurveFromBorderCurve(borderMetrics.borderCurves.topLeft);
1279
-
1280
- layer.backgroundColor = backgroundColor.CGColor;
1281
1090
  } else {
1282
1091
  if (!_borderLayer) {
1283
1092
  CALayer *borderLayer = [CALayer new];
@@ -1317,12 +1126,12 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1317
1126
  _outlineLayer.frame = CGRectInset(
1318
1127
  layer.bounds, -_props->outlineOffset - _props->outlineWidth, -_props->outlineOffset - _props->outlineWidth);
1319
1128
 
1320
- if (borderMetrics.borderRadii.isUniform() && borderMetrics.borderRadii.topLeft.horizontal == 0) {
1321
- RCTUIColor *outlineColor = RCTUIColorFromSharedColor(_props->outlineColor); // [macOS]
1129
+ if (areBorderRadiiCircular(borderMetrics.borderRadii) && borderMetrics.borderRadii.topLeft.horizontal == 0) {
1130
+ UIColor *outlineColor = RCTUIColorFromSharedColor(_props->outlineColor);
1322
1131
  _outlineLayer.borderWidth = _props->outlineWidth;
1323
1132
  _outlineLayer.borderColor = outlineColor.CGColor;
1324
1133
  } else {
1325
- RCTUIColor *outlineColor = RCTUIColorFromSharedColor(_props->outlineColor); // [macOS]
1134
+ UIColor *outlineColor = RCTUIColorFromSharedColor(_props->outlineColor);
1326
1135
 
1327
1136
  RCTAddContourEffectToLayer(
1328
1137
  _outlineLayer,
@@ -1348,7 +1157,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1348
1157
  if (primitive.type == FilterType::DropShadow) {
1349
1158
  if (_swiftUIWrapper != nullptr && std::holds_alternative<DropShadowParams>(primitive.parameters)) {
1350
1159
  const auto &dropShadowParams = std::get<DropShadowParams>(primitive.parameters);
1351
- RCTUIColor *shadowColor = RCTUIColorFromSharedColor(dropShadowParams.color); // [macOS]
1160
+ UIColor *shadowColor = RCTUIColorFromSharedColor(dropShadowParams.color);
1352
1161
  [_swiftUIWrapper updateDropShadow:@(dropShadowParams.standardDeviation)
1353
1162
  x:@(dropShadowParams.offsetX)
1354
1163
  y:@(dropShadowParams.offsetY)
@@ -1393,7 +1202,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1393
1202
  _filterLayer = [CALayer layer];
1394
1203
  [self shapeLayerToMatchView:_filterLayer borderMetrics:borderMetrics];
1395
1204
  _filterLayer.compositingFilter = @"multiplyBlendMode";
1396
- _filterLayer.backgroundColor = [RCTUIColor colorWithRed:multiplicativeBrightness // [macOS]
1205
+ _filterLayer.backgroundColor = [UIColor colorWithRed:multiplicativeBrightness
1397
1206
  green:multiplicativeBrightness
1398
1207
  blue:multiplicativeBrightness
1399
1208
  alpha:self.layer.opacity]
@@ -1493,7 +1302,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1493
1302
  if (self.currentContainerView.clipsToBounds) {
1494
1303
  BOOL clipToPaddingBox = ReactNativeFeatureFlags::enableIOSViewClipToPaddingBox();
1495
1304
  if (!clipToPaddingBox) {
1496
- if (borderMetrics.borderRadii.isUniform()) {
1305
+ if (areBorderRadiiCircular(borderMetrics.borderRadii)) {
1497
1306
  self.currentContainerView.layer.cornerRadius = borderMetrics.borderRadii.topLeft.horizontal;
1498
1307
  } else {
1499
1308
  CALayer *maskLayer =
@@ -1503,8 +1312,8 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1503
1312
  self.currentContainerView.layer.mask = maskLayer;
1504
1313
  }
1505
1314
 
1506
- for (RCTPlatformView *subview in self.currentContainerView.subviews) { // [macOS]
1507
- if ([subview isKindOfClass:[RCTUIImageView class]]) { // [macOS]
1315
+ for (UIView *subview in self.currentContainerView.subviews) {
1316
+ if ([subview isKindOfClass:[UIImageView class]]) {
1508
1317
  RCTCornerInsets cornerInsets = RCTGetCornerInsets(
1509
1318
  RCTCornerRadiiFromBorderRadii(borderMetrics.borderRadii),
1510
1319
  RCTUIEdgeInsetsFromEdgeInsets(borderMetrics.borderWidths));
@@ -1516,7 +1325,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1516
1325
  }
1517
1326
  } else if (
1518
1327
  !borderMetrics.borderWidths.isUniform() || borderMetrics.borderWidths.left != 0 ||
1519
- !borderMetrics.borderRadii.isUniform()) {
1328
+ !areBorderRadiiCircular(borderMetrics.borderRadii)) {
1520
1329
  CALayer *maskLayer = [self createMaskLayer:RCTCGRectFromRect(_layoutMetrics.getPaddingFrame())
1521
1330
  cornerInsets:RCTGetCornerInsets(
1522
1331
  RCTCornerRadiiFromBorderRadii(borderMetrics.borderRadii),
@@ -1535,7 +1344,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1535
1344
  // Bounds is needed here to account for scaling transforms properly and ensure
1536
1345
  // we do not scale twice
1537
1346
  layer.frame = CGRectMake(0, 0, self.layer.bounds.size.width, self.layer.bounds.size.height);
1538
- if (borderMetrics.borderRadii.isUniform()) {
1347
+ if (areBorderRadiiCircular(borderMetrics.borderRadii)) {
1539
1348
  layer.mask = nil;
1540
1349
  layer.cornerRadius = borderMetrics.borderRadii.topLeft.horizontal;
1541
1350
  layer.cornerCurve = CornerCurveFromBorderCurve(borderMetrics.borderCurves.topLeft);
@@ -1571,11 +1380,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1571
1380
 
1572
1381
  #pragma mark - Accessibility
1573
1382
 
1574
- #if !TARGET_OS_OSX // [macOS]
1575
1383
  - (NSObject *)accessibilityElement
1576
- #else // [macOS
1577
- - (NSView *)accessibilityElement // macOS]
1578
- #endif // macOS]
1579
1384
  {
1580
1385
  return self;
1581
1386
  }
@@ -1595,7 +1400,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1595
1400
  return;
1596
1401
  }
1597
1402
 
1598
- NSMutableDictionary<NSString *, RCTPlatformView *> *nativeIdToView = [NSMutableDictionary new]; // [macOS]
1403
+ NSMutableDictionary<NSString *, UIView *> *nativeIdToView = [NSMutableDictionary new];
1599
1404
  [RCTViewComponentView collectAccessibilityElements:self
1600
1405
  intoDictionary:nativeIdToView
1601
1406
  nativeIds:_accessibilityOrderNativeIDs];
@@ -1604,7 +1409,7 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1604
1409
  for (const auto &childId : _props->accessibilityOrder) {
1605
1410
  NSString *nsStringChildId = RCTNSStringFromString(childId);
1606
1411
 
1607
- RCTPlatformView *viewWithMatchingNativeId = [nativeIdToView objectForKey:nsStringChildId]; // [macOS]
1412
+ UIView *viewWithMatchingNativeId = [nativeIdToView objectForKey:nsStringChildId];
1608
1413
  if (viewWithMatchingNativeId != nil) {
1609
1414
  [accessibilityElements addObject:viewWithMatchingNativeId];
1610
1415
  }
@@ -1613,11 +1418,11 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1613
1418
  self.accessibilityElements = accessibilityElements;
1614
1419
  }
1615
1420
 
1616
- + (void)collectAccessibilityElements:(RCTPlatformView *)view // [macOS]
1617
- intoDictionary:(NSMutableDictionary<NSString *, RCTPlatformView *> *)dict // [macOS]
1421
+ + (void)collectAccessibilityElements:(UIView *)view
1422
+ intoDictionary:(NSMutableDictionary<NSString *, UIView *> *)dict
1618
1423
  nativeIds:(NSSet<NSString *> *)nativeIds
1619
1424
  {
1620
- for (RCTPlatformView *subview in view.subviews) { // [macOS]
1425
+ for (UIView *subview in view.subviews) {
1621
1426
  if ([subview isKindOfClass:[RCTViewComponentView class]] &&
1622
1427
  [nativeIds containsObject:((RCTViewComponentView *)subview).nativeId]) {
1623
1428
  [dict setObject:subview forKey:((RCTViewComponentView *)subview).nativeId];
@@ -1626,11 +1431,15 @@ static RCTBorderStyle RCTBorderStyleFromOutlineStyle(OutlineStyle outlineStyle)
1626
1431
  }
1627
1432
  }
1628
1433
 
1629
- static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1434
+ static NSString *RCTRecursiveAccessibilityLabel(UIView *view)
1630
1435
  {
1631
1436
  // Result string is initialized lazily to prevent useless but costly allocations.
1632
1437
  NSMutableString *result = nil;
1633
- for (RCTUIView *subview in view.subviews) { // [macOS]
1438
+ for (UIView *subview in view.subviews) {
1439
+ // Skip subviews that have accessibilityElementsHidden set to YES
1440
+ if (subview.accessibilityElementsHidden) {
1441
+ continue;
1442
+ }
1634
1443
  NSString *label = subview.accessibilityLabel;
1635
1444
  if (!label) {
1636
1445
  label = RCTRecursiveAccessibilityLabel(subview);
@@ -1671,6 +1480,11 @@ static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1671
1480
  return !super.accessibilityLabel && super.isAccessibilityElement;
1672
1481
  }
1673
1482
 
1483
+ - (BOOL)canBecomeFocused
1484
+ {
1485
+ return _focusable;
1486
+ }
1487
+
1674
1488
  - (BOOL)isAccessibilityElement
1675
1489
  {
1676
1490
  if (self.contentView != nil) {
@@ -1686,7 +1500,6 @@ static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1686
1500
  const auto accessibilityState = props.accessibilityState.value_or(AccessibilityState{});
1687
1501
 
1688
1502
  // Handle Switch.
1689
- #if !TARGET_OS_OSX // [macOS]
1690
1503
  if ((self.accessibilityTraits & AccessibilityTraitSwitch) == AccessibilityTraitSwitch) {
1691
1504
  if (accessibilityState.checked == AccessibilityState::Checked) {
1692
1505
  return @"1";
@@ -1694,7 +1507,6 @@ static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1694
1507
  return @"0";
1695
1508
  }
1696
1509
  }
1697
- #endif // [macOS]
1698
1510
 
1699
1511
  NSMutableArray *valueComponents = [NSMutableArray new];
1700
1512
  NSString *roleString = (props.role != Role::None) ? [NSString stringWithUTF8String:toString(props.role).c_str()]
@@ -1770,8 +1582,15 @@ static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1770
1582
 
1771
1583
  NSMutableArray<UIAccessibilityCustomAction *> *customActions = [NSMutableArray array];
1772
1584
  for (const auto &accessibilityAction : accessibilityActions) {
1585
+ NSString *actionName = RCTNSStringFromString(accessibilityAction.name);
1586
+ NSString *actionLabel = actionName;
1587
+
1588
+ if (accessibilityAction.label.has_value()) {
1589
+ actionLabel = RCTNSStringFromString(accessibilityAction.label.value());
1590
+ }
1591
+
1773
1592
  [customActions
1774
- addObject:[[UIAccessibilityCustomAction alloc] initWithName:RCTNSStringFromString(accessibilityAction.name)
1593
+ addObject:[[UIAccessibilityCustomAction alloc] initWithName:actionLabel
1775
1594
  target:self
1776
1595
  selector:@selector(didActivateAccessibilityCustomAction:)]];
1777
1596
  }
@@ -1826,439 +1645,22 @@ static NSString *RCTRecursiveAccessibilityLabel(RCTUIView *view) // [macOS]
1826
1645
  - (BOOL)didActivateAccessibilityCustomAction:(UIAccessibilityCustomAction *)action
1827
1646
  {
1828
1647
  if (_eventEmitter && _props->onAccessibilityAction) {
1829
- _eventEmitter->onAccessibilityAction(RCTStringFromNSString(action.name));
1830
- return YES;
1831
- } else {
1832
- return NO;
1833
- }
1834
- }
1835
-
1836
- #if TARGET_OS_OSX // [macOS
1837
-
1838
- # pragma mark - Focus Ring
1839
-
1840
- - (CGRect)focusRingMaskBounds
1841
- {
1842
- return [self bounds];
1843
- }
1844
-
1845
- - (void)drawFocusRingMask
1846
- {
1847
- if (_props->enableFocusRing) {
1848
- CGContextRef context = NSGraphicsContext.currentContext.CGContext;
1849
-
1850
- const auto borderMetrics = _props->resolveBorderMetrics(_layoutMetrics);
1851
- const RCTCornerInsets cornerInsets =
1852
- RCTGetCornerInsets(RCTCornerRadiiFromBorderRadii(borderMetrics.borderRadii), UIEdgeInsetsZero);
1853
- CGPathRef path = RCTPathCreateWithRoundedRect(self.bounds, cornerInsets, NULL, NO); // [macOS]
1854
-
1855
- CGContextAddPath(context, path);
1856
- CGContextFillPath(context);
1857
- CGPathRelease(path);
1858
- }
1859
- }
1860
-
1861
- - (BOOL)needsPanelToBecomeKey
1862
- {
1863
- // We need to override this so that mouse clicks don't move keyboard focus on focusable views by default.
1864
- return false;
1865
- }
1866
-
1867
- - (BOOL)acceptsFirstResponder
1868
- {
1869
- return _props->focusable || [super acceptsFirstResponder];
1870
- }
1871
-
1872
- #pragma mark - Keyboard Events
1873
-
1874
- - (BOOL)handleKeyboardEvent:(NSEvent *)event {
1875
- RCTAssert(
1876
- event.type == NSEventTypeKeyDown || event.type == NSEventTypeKeyUp,
1877
- @"Keyboard event must be keyDown, keyUp. Got type: %ld", (long)event.type);
1878
-
1879
- // Convert the event to a KeyEvent
1880
- NSEventModifierFlags modifierFlags = event.modifierFlags;
1881
- facebook::react::KeyEvent keyEvent = {
1882
- .key = [[RCTViewKeyboardEvent keyFromEvent:event] UTF8String],
1883
- .altKey = static_cast<bool>(modifierFlags & NSEventModifierFlagOption),
1884
- .ctrlKey = static_cast<bool>(modifierFlags & NSEventModifierFlagControl),
1885
- .shiftKey = static_cast<bool>(modifierFlags & NSEventModifierFlagShift),
1886
- .metaKey = static_cast<bool>(modifierFlags & NSEventModifierFlagCommand),
1887
- .capsLockKey = static_cast<bool>(modifierFlags & NSEventModifierFlagCapsLock),
1888
- .numericPadKey = static_cast<bool>(modifierFlags & NSEventModifierFlagNumericPad),
1889
- .helpKey = static_cast<bool>(modifierFlags & NSEventModifierFlagHelp),
1890
- .functionKey = static_cast<bool>(modifierFlags & NSEventModifierFlagFunction),
1891
- };
1892
-
1893
- if (_eventEmitter) {
1894
- // Emit the event to JS only once. By default, events, will bubble up the respnder chain
1895
- // when we call super, so let's emit the event only at the first responder. It would be
1896
- // simpler to check `if (self == self.window.firstResponder), however, that does not account
1897
- // for cases like TextInputComponentView, where the first responder may be a subview.
1898
- static const char kRCTViewKeyboardEventEmittedKey = 0;
1899
- NSNumber *emitted = objc_getAssociatedObject(event, &kRCTViewKeyboardEventEmittedKey);
1900
- BOOL alreadyEmitted = [emitted boolValue];
1901
- if (!alreadyEmitted) {
1902
- if (event.type == NSEventTypeKeyDown) {
1903
- _eventEmitter->onKeyDown(keyEvent);
1904
- } else {
1905
- _eventEmitter->onKeyUp(keyEvent);
1906
- }
1907
- objc_setAssociatedObject(event, &kRCTViewKeyboardEventEmittedKey, @(YES), OBJC_ASSOCIATION_RETAIN_NONATOMIC);
1908
- }
1909
- }
1910
-
1911
- // If keyDownEvents or keyUpEvents specifies the event, block native handling of the event
1912
- auto const& handledKeyEvents = event.type == NSEventTypeKeyDown ? _props->keyDownEvents : _props->keyUpEvents;
1913
- return std::find(handledKeyEvents.cbegin(), handledKeyEvents.cend(), keyEvent) != handledKeyEvents.cend();
1914
- }
1915
-
1916
- - (void)keyDown:(NSEvent *)event {
1917
- if (![self handleKeyboardEvent:event]) {
1918
- [super keyDown:event];
1919
- }
1920
- }
1921
-
1922
- - (void)keyUp:(NSEvent *)event {
1923
- if (![self handleKeyboardEvent:event]) {
1924
- [super keyUp:event];
1925
- }
1926
- }
1927
-
1928
-
1929
- #pragma mark - Drag and Drop Events
1930
-
1931
- enum DragEventType {
1932
- DragEnter,
1933
- DragLeave,
1934
- Drop,
1935
- };
1936
-
1937
- - (DataTransfer)dataTransferForPasteboard:(NSPasteboard *)pasteboard {
1938
- DataTransfer dataTransfer{};
1939
- auto &files = dataTransfer.files;
1940
- auto &items = dataTransfer.items;
1941
- auto &types = dataTransfer.types;
1942
-
1943
- NSArray *fileNames = [pasteboard propertyListForType:NSFilenamesPboardType] ?: @[];
1944
- for (NSString *file in fileNames) {
1945
- NSURL *fileURL = [NSURL fileURLWithPath:file];
1946
- BOOL isDir = NO;
1947
- BOOL isValid = [[NSFileManager defaultManager] fileExistsAtPath:fileURL.path isDirectory:&isDir] && !isDir;
1948
- if (isValid) {
1949
-
1950
- NSString *MIMETypeString = nil;
1951
- if (fileURL.pathExtension) {
1952
- CFStringRef fileExtension = (__bridge CFStringRef)fileURL.pathExtension;
1953
- CFStringRef UTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, fileExtension, NULL);
1954
- if (UTI != NULL) {
1955
- CFStringRef MIMEType = UTTypeCopyPreferredTagWithClass(UTI, kUTTagClassMIMEType);
1956
- CFRelease(UTI);
1957
- MIMETypeString = (__bridge_transfer NSString *)MIMEType;
1958
- }
1959
- }
1960
-
1961
- NSNumber *fileSizeValue = nil;
1962
- NSError *fileSizeError = nil;
1963
- BOOL success = [fileURL getResourceValue:&fileSizeValue
1964
- forKey:NSURLFileSizeKey
1965
- error:&fileSizeError];
1966
-
1967
- std::string typeString = MIMETypeString != nil ? [MIMETypeString UTF8String] : "";
1968
-
1969
- DataTransferFile fileEntry = {
1970
- .name = fileURL.lastPathComponent ? fileURL.lastPathComponent.UTF8String : "",
1971
- .type = typeString,
1972
- .uri = fileURL.path ? fileURL.path.UTF8String : "",
1973
- };
1974
-
1975
- if (success) {
1976
- fileEntry.size = fileSizeValue.intValue;
1977
- }
1978
-
1979
- if ([MIMETypeString hasPrefix:@"image/"]) {
1980
- NSImage *image = [[NSImage alloc] initWithContentsOfURL:fileURL];
1981
- CGImageRef cgImage = [image CGImageForProposedRect:nil context:nil hints:nil];
1982
- fileEntry.width = static_cast<int>(CGImageGetWidth(cgImage));
1983
- fileEntry.height = static_cast<int>(CGImageGetHeight(cgImage));
1648
+ // iOS defines the name as the localized label, so iterate through accessibilityActions to find the matching
1649
+ // non-localized action name when passing to JS. This allows for standard action names across platforms.
1650
+ NSString *actionName = action.name;
1651
+ for (const auto &accessibilityAction : _props->accessibilityActions) {
1652
+ if (accessibilityAction.label.has_value() &&
1653
+ [RCTNSStringFromString(accessibilityAction.label.value()) isEqualToString:action.name]) {
1654
+ actionName = RCTNSStringFromString(accessibilityAction.name);
1655
+ break;
1984
1656
  }
1985
-
1986
- files.push_back(fileEntry);
1987
- items.push_back({
1988
- .kind = "file",
1989
- .type = typeString,
1990
- });
1991
- types.push_back(typeString);
1992
- }
1993
- }
1994
-
1995
- NSPasteboardType imageType = [pasteboard availableTypeFromArray:@[NSPasteboardTypePNG, NSPasteboardTypeTIFF]];
1996
- if (imageType && fileNames.count == 0) {
1997
- NSString *MIMETypeString = imageType == NSPasteboardTypePNG ?[UTTypePNG preferredMIMEType] : [UTTypeTIFF preferredMIMEType];
1998
- NSData *imageData = [pasteboard dataForType:imageType];
1999
- NSImage *image = [[NSImage alloc] initWithData:imageData];
2000
- CGImageRef cgImage = [image CGImageForProposedRect:nil context:nil hints:nil];
2001
-
2002
- NSString *dataURLString = RCTDataURL(MIMETypeString, imageData).absoluteString;
2003
- std::string typeString = MIMETypeString != nil ? [MIMETypeString UTF8String] : "";
2004
-
2005
- DataTransferFile fileEntry = {
2006
- .name = "",
2007
- .type = typeString,
2008
- .uri = dataURLString ? dataURLString.UTF8String : "",
2009
- };
2010
-
2011
- fileEntry.size = static_cast<int>(imageData.length);
2012
- fileEntry.width = static_cast<int>(CGImageGetWidth(cgImage));
2013
- fileEntry.height = static_cast<int>(CGImageGetHeight(cgImage));
2014
-
2015
- files.push_back(fileEntry);
2016
- items.push_back({
2017
- .kind = "image",
2018
- .type = typeString,
2019
- });
2020
- types.push_back(typeString);
2021
- }
2022
- return dataTransfer;
2023
- }
2024
-
2025
- - (void)emitDragEvent:(DragEventType)eventType draggingInfo:(id<NSDraggingInfo>)sender {
2026
- if (!_eventEmitter) {
2027
- return;
2028
- }
2029
-
2030
- NSPoint locationInWindow = sender.draggingLocation;
2031
- NSPasteboard *pasteboard = sender.draggingPasteboard;
2032
-
2033
- DataTransfer dataTransfer = [self dataTransferForPasteboard:pasteboard];
2034
-
2035
- NSPoint locationInView = [self convertPoint:locationInWindow fromView:nil];
2036
- NSEventModifierFlags modifierFlags = self.window.currentEvent.modifierFlags;
2037
-
2038
- DragEvent dragEvent = {
2039
- {
2040
- .clientX = locationInView.x,
2041
- .clientY = locationInView.y,
2042
- .screenX = locationInWindow.x,
2043
- .screenY = locationInWindow.y,
2044
- .altKey = static_cast<bool>(modifierFlags & NSEventModifierFlagOption),
2045
- .ctrlKey = static_cast<bool>(modifierFlags & NSEventModifierFlagControl),
2046
- .shiftKey = static_cast<bool>(modifierFlags & NSEventModifierFlagShift),
2047
- .metaKey = static_cast<bool>(modifierFlags & NSEventModifierFlagCommand),
2048
- },
2049
- .dataTransfer = dataTransfer,
2050
- };
2051
-
2052
- switch (eventType) {
2053
- case DragEnter:
2054
- _eventEmitter->onDragEnter(dragEvent);
2055
- break;
2056
-
2057
- case DragLeave:
2058
- _eventEmitter->onDragLeave(dragEvent);
2059
- break;
2060
-
2061
- case Drop:
2062
- _eventEmitter->onDrop(dragEvent);
2063
- break;
2064
- }
2065
- }
2066
-
2067
- - (NSDragOperation)draggingEntered:(id <NSDraggingInfo>)sender
2068
- {
2069
- NSPasteboard *pboard = sender.draggingPasteboard;
2070
- NSDragOperation sourceDragMask = sender.draggingSourceOperationMask;
2071
-
2072
- [self emitDragEvent:DragEnter draggingInfo:sender];
2073
-
2074
- if ([pboard availableTypeFromArray:self.registeredDraggedTypes]) {
2075
- if (sourceDragMask & NSDragOperationLink) {
2076
- return NSDragOperationLink;
2077
- } else if (sourceDragMask & NSDragOperationCopy) {
2078
- return NSDragOperationCopy;
2079
- }
2080
- }
2081
- return NSDragOperationNone;
2082
- }
2083
-
2084
- - (void)draggingExited:(id<NSDraggingInfo>)sender
2085
- {
2086
- [self emitDragEvent:DragLeave draggingInfo:sender];
2087
- }
2088
-
2089
- - (BOOL)performDragOperation:(id <NSDraggingInfo>)sender
2090
- {
2091
- [self emitDragEvent:Drop draggingInfo:sender];
2092
- return YES;
2093
- }
2094
-
2095
-
2096
- #pragma mark - Mouse Events
2097
-
2098
- enum MouseEventType {
2099
- MouseEnter,
2100
- MouseLeave,
2101
- DoubleClick,
2102
- };
2103
-
2104
- - (void)emitMouseEvent:(MouseEventType)eventType
2105
- {
2106
- if (!_eventEmitter) {
2107
- return;
2108
- }
2109
-
2110
- NSPoint locationInWindow = self.window.mouseLocationOutsideOfEventStream;
2111
- NSPoint locationInView = [self convertPoint:locationInWindow fromView:nil];
2112
-
2113
- NSEventModifierFlags modifierFlags = self.window.currentEvent.modifierFlags;
2114
-
2115
- MouseEvent mouseEvent = {
2116
- .clientX = locationInView.x,
2117
- .clientY = locationInView.y,
2118
- .screenX = locationInWindow.x,
2119
- .screenY = locationInWindow.y,
2120
- .altKey = static_cast<bool>(modifierFlags & NSEventModifierFlagOption),
2121
- .ctrlKey = static_cast<bool>(modifierFlags & NSEventModifierFlagControl),
2122
- .shiftKey = static_cast<bool>(modifierFlags & NSEventModifierFlagShift),
2123
- .metaKey = static_cast<bool>(modifierFlags & NSEventModifierFlagCommand),
2124
- };
2125
-
2126
- switch (eventType) {
2127
- case MouseEnter:
2128
- _eventEmitter->onMouseEnter(mouseEvent);
2129
- break;
2130
-
2131
- case MouseLeave:
2132
- _eventEmitter->onMouseLeave(mouseEvent);
2133
- break;
2134
-
2135
- case DoubleClick:
2136
- _eventEmitter->onDoubleClick(mouseEvent);
2137
- break;
2138
- }
2139
- }
2140
-
2141
- - (void)updateMouseOverIfNeeded
2142
- {
2143
- // When an enclosing scrollview is scrolled using the scrollWheel or trackpad,
2144
- // the mouseExited: event does not get called on the view where mouseEntered: was previously called.
2145
- // This creates an unnatural pairing of mouse enter and exit events and can cause problems.
2146
- // We therefore explicitly check for this here and handle them by calling the appropriate callbacks.
2147
-
2148
- BOOL hasMouseOver = _hasMouseOver;
2149
- NSPoint locationInWindow = self.window.mouseLocationOutsideOfEventStream;
2150
- NSPoint locationInView = [self convertPoint:locationInWindow fromView:nil];
2151
- BOOL insideBounds = NSPointInRect(locationInView, self.visibleRect);
2152
-
2153
- // On macOS 14+ visibleRect can be larger than the view bounds
2154
- insideBounds &= NSPointInRect(locationInView, self.bounds);
2155
-
2156
- if (hasMouseOver && !insideBounds) {
2157
- hasMouseOver = NO;
2158
- } else if (!hasMouseOver && insideBounds) {
2159
- // The window's frame view must be used for hit testing against `locationInWindow`
2160
- NSView *hitView = [self.window.contentView.superview hitTest:locationInWindow];
2161
- hasMouseOver = [hitView isDescendantOf:self];
2162
- }
2163
-
2164
- if (hasMouseOver != _hasMouseOver) {
2165
- _hasMouseOver = hasMouseOver;
2166
- [self emitMouseEvent:hasMouseOver ? MouseEnter : MouseLeave];
2167
- }
2168
- }
2169
-
2170
- - (void)updateClipViewBoundsObserverIfNeeded
2171
- {
2172
- // Subscribe to view bounds changed notification so that the view can be notified when a
2173
- // scroll event occurs either due to trackpad/gesture based scrolling or a scrollwheel event
2174
- // both of which would not cause the mouseExited to be invoked.
2175
-
2176
- NSClipView *clipView = self.window ? self.enclosingScrollView.contentView : nil;
2177
-
2178
- BOOL hasMouseEventHandler =
2179
- _props->hostPlatformEvents[HostPlatformViewEvents::Offset::MouseEnter] ||
2180
- _props->hostPlatformEvents[HostPlatformViewEvents::Offset::MouseLeave];
2181
-
2182
- if (_hasClipViewBoundsObserver && (!clipView || !hasMouseEventHandler)) {
2183
- _hasClipViewBoundsObserver = NO;
2184
- [[NSNotificationCenter defaultCenter] removeObserver:self
2185
- name:NSViewBoundsDidChangeNotification
2186
- object:nil];
2187
- } else if (!_hasClipViewBoundsObserver && clipView && hasMouseEventHandler) {
2188
- _hasClipViewBoundsObserver = YES;
2189
- [[NSNotificationCenter defaultCenter] addObserver:self
2190
- selector:@selector(updateMouseOverIfNeeded)
2191
- name:NSViewBoundsDidChangeNotification
2192
- object:clipView];
2193
- [self updateMouseOverIfNeeded];
2194
- }
2195
- }
2196
-
2197
- - (void)viewDidMoveToWindow
2198
- {
2199
- [self updateClipViewBoundsObserverIfNeeded];
2200
- [super viewDidMoveToWindow];
2201
- }
2202
-
2203
- - (void)updateTrackingAreas
2204
- {
2205
- BOOL hasMouseEventHandler =
2206
- _props->hostPlatformEvents[HostPlatformViewEvents::Offset::MouseEnter] ||
2207
- _props->hostPlatformEvents[HostPlatformViewEvents::Offset::MouseLeave];
2208
- BOOL wouldRecreateIdenticalTrackingArea =
2209
- hasMouseEventHandler && _trackingArea && NSEqualRects(self.bounds, [_trackingArea rect]);
2210
-
2211
- if (!wouldRecreateIdenticalTrackingArea) {
2212
- [self removeTrackingArea:_trackingArea];
2213
- if (hasMouseEventHandler) {
2214
- _trackingArea = [[NSTrackingArea alloc] initWithRect:self.bounds
2215
- options:NSTrackingActiveAlways|NSTrackingMouseEnteredAndExited
2216
- owner:self
2217
- userInfo:nil];
2218
- [self addTrackingArea:_trackingArea];
2219
- [self updateMouseOverIfNeeded];
2220
1657
  }
2221
- }
2222
-
2223
- [super updateTrackingAreas];
2224
- }
2225
-
2226
- - (void)mouseEntered:(NSEvent *)event
2227
- {
2228
- if (_hasMouseOver) {
2229
- return;
2230
- }
2231
-
2232
- // The window's frame view must be used for hit testing against `locationInWindow`
2233
- NSView *hitView = [self.window.contentView.superview hitTest:event.locationInWindow];
2234
- if (![hitView isDescendantOf:self]) {
2235
- return;
2236
- }
2237
-
2238
- _hasMouseOver = YES;
2239
- [self emitMouseEvent:MouseEnter];
2240
- }
2241
-
2242
- - (void)mouseExited:(NSEvent *)event
2243
- {
2244
- if (!_hasMouseOver) {
2245
- return;
2246
- }
2247
-
2248
- _hasMouseOver = NO;
2249
- [self emitMouseEvent:MouseLeave];
2250
- }
2251
-
2252
- - (void)mouseUp:(NSEvent *)event
2253
- {
2254
- BOOL hasDoubleClickEventHandler = _props->hostPlatformEvents[HostPlatformViewEvents::Offset::DoubleClick];
2255
- if (hasDoubleClickEventHandler && event.clickCount == 2) {
2256
- [self emitMouseEvent :DoubleClick];
1658
+ _eventEmitter->onAccessibilityAction(RCTStringFromNSString(actionName));
1659
+ return YES;
2257
1660
  } else {
2258
- [super mouseUp:event];
1661
+ return NO;
2259
1662
  }
2260
1663
  }
2261
- #endif // macOS]
2262
1664
 
2263
1665
  - (SharedTouchEventEmitter)touchEventEmitterAtPoint:(CGPoint)point
2264
1666
  {
@@ -2270,11 +1672,6 @@ enum MouseEventType {
2270
1672
  return RCTNSStringFromString([[self class] componentDescriptorProvider].name);
2271
1673
  }
2272
1674
 
2273
- - (BOOL)wantsUpdateLayer
2274
- {
2275
- return YES;
2276
- }
2277
-
2278
1675
  - (BOOL)styleNeedsSwiftUIContainer
2279
1676
  {
2280
1677
  if (!_props->filter.empty()) {
@@ -2289,7 +1686,7 @@ enum MouseEventType {
2289
1686
  return NO;
2290
1687
  }
2291
1688
 
2292
- - (void)transferVisualPropertiesFromView:(RCTPlatformView *)sourceView toView:(RCTPlatformView *)destinationView // [macOS]
1689
+ - (void)transferVisualPropertiesFromView:(UIView *)sourceView toView:(UIView *)destinationView
2293
1690
  {
2294
1691
  // shadow
2295
1692
  destinationView.layer.shadowColor = sourceView.layer.shadowColor;
@@ -2317,9 +1714,7 @@ enum MouseEventType {
2317
1714
  // corner
2318
1715
  destinationView.layer.cornerRadius = sourceView.layer.cornerRadius;
2319
1716
  sourceView.layer.cornerRadius = 0;
2320
- #if !TARGET_OS_OSX // [macOS]
2321
1717
  destinationView.layer.cornerCurve = sourceView.layer.cornerCurve;
2322
- #endif // [macOS]
2323
1718
 
2324
1719
  // custom layers
2325
1720
  if (_borderLayer != nullptr) {
@@ -2339,9 +1734,11 @@ enum MouseEventType {
2339
1734
  }
2340
1735
  }
2341
1736
 
1737
+ #pragma mark - Focus Events
1738
+
2342
1739
  - (BOOL)canBecomeFirstResponder
2343
1740
  {
2344
- return YES;
1741
+ return ReactNativeFeatureFlags::enableImperativeFocus();
2345
1742
  }
2346
1743
 
2347
1744
  - (void)handleCommand:(const NSString *)commandName args:(const NSArray *)args
@@ -2357,24 +1754,43 @@ enum MouseEventType {
2357
1754
  }
2358
1755
  }
2359
1756
 
1757
+ #if TARGET_OS_TV
1758
+ /// Finds the containing RCTSurfaceHostingProxyRootView by walking up the view
1759
+ /// hierarchy.
1760
+ - (RCTSurfaceHostingProxyRootView *)containingRootView
1761
+ {
1762
+ UIView *view = self;
1763
+ while (view != nil) {
1764
+ if ([view isKindOfClass:[RCTSurfaceHostingProxyRootView class]]) {
1765
+ return (RCTSurfaceHostingProxyRootView *)view;
1766
+ }
1767
+ view = view.superview;
1768
+ }
1769
+ return nil;
1770
+ }
1771
+ #endif
1772
+
2360
1773
  - (void)focus
2361
1774
  {
2362
- #if TARGET_OS_OSX // [macOS
2363
- [[self window] makeFirstResponder:self];
2364
- #endif // macOS]
2365
1775
  [self becomeFirstResponder];
1776
+
1777
+ #if TARGET_OS_TV
1778
+ RCTSurfaceHostingProxyRootView *rootView = [self containingRootView];
1779
+ if (rootView == nil) {
1780
+ return;
1781
+ }
1782
+
1783
+ rootView.reactPreferredFocusedView = self;
1784
+ [rootView setNeedsFocusUpdate];
1785
+ [rootView updateFocusIfNeeded];
1786
+ #endif
2366
1787
  }
2367
1788
 
2368
1789
  - (void)blur
2369
1790
  {
2370
- #if TARGET_OS_OSX // [macOS
2371
- [[self window] resignFirstResponder];
2372
- #endif // macOS]
2373
1791
  [self resignFirstResponder];
2374
1792
  }
2375
1793
 
2376
- #pragma mark - Focus Events
2377
-
2378
1794
  - (BOOL)becomeFirstResponder
2379
1795
  {
2380
1796
  if (![super becomeFirstResponder]) {
@@ -2401,6 +1817,30 @@ enum MouseEventType {
2401
1817
  return YES;
2402
1818
  }
2403
1819
 
1820
+ #if TARGET_OS_TV
1821
+
1822
+ - (void)didUpdateFocusInContext:(UIFocusUpdateContext *)context
1823
+ withAnimationCoordinator:(UIFocusAnimationCoordinator *)coordinator
1824
+ {
1825
+ if (context.previouslyFocusedView == context.nextFocusedView) {
1826
+ return;
1827
+ }
1828
+
1829
+ // Do not resignFirstRespodner if we lost focus, let whoever took focus
1830
+ // becomeFirstResponder thereby resigning for us. If we resign here,
1831
+ // first responder will be assigned to some ancestor view and they
1832
+ // can temporarily call onFocus/onBlur
1833
+ if (context.nextFocusedView == self) {
1834
+ [self becomeFirstResponder];
1835
+ } else if (context.previouslyFocusedView == self && context.nextFocusedView == nil) {
1836
+ [self resignFirstResponder];
1837
+ }
1838
+
1839
+ [super didUpdateFocusInContext:context withAnimationCoordinator:coordinator];
1840
+ }
1841
+
1842
+ #endif
1843
+
2404
1844
  @end
2405
1845
 
2406
1846
  #ifdef __cplusplus