react-native 0.70.6 → 0.71.0-rc.1

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 (1527) hide show
  1. package/CHANGELOG.md +351 -0
  2. package/Libraries/ActionSheetIOS/ActionSheetIOS.d.ts +80 -0
  3. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +4 -3
  4. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  5. package/Libraries/Alert/Alert.d.ts +90 -0
  6. package/Libraries/Alert/Alert.js +7 -1
  7. package/Libraries/Alert/Alert.js.flow +49 -0
  8. package/Libraries/Alert/NativeAlertManager.js +2 -0
  9. package/Libraries/Alert/RCTAlertManager.ios.js +2 -1
  10. package/Libraries/Animated/Animated.d.ts +587 -0
  11. package/Libraries/Animated/Animated.js +13 -11
  12. package/Libraries/Animated/AnimatedEvent.js +12 -17
  13. package/Libraries/Animated/AnimatedImplementation.js +21 -23
  14. package/Libraries/Animated/AnimatedMock.js +11 -13
  15. package/Libraries/Animated/AnimatedWeb.js +2 -2
  16. package/Libraries/Animated/Easing.d.ts +37 -0
  17. package/Libraries/Animated/Easing.js +2 -2
  18. package/Libraries/Animated/NativeAnimatedHelper.js +32 -22
  19. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  20. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  21. package/Libraries/Animated/SpringConfig.js +2 -7
  22. package/Libraries/Animated/animations/Animation.js +3 -4
  23. package/Libraries/Animated/animations/DecayAnimation.js +5 -8
  24. package/Libraries/Animated/animations/SpringAnimation.js +9 -14
  25. package/Libraries/Animated/animations/TimingAnimation.js +9 -13
  26. package/Libraries/Animated/bezier.js +2 -2
  27. package/Libraries/Animated/components/AnimatedFlatList.js +5 -6
  28. package/Libraries/Animated/components/AnimatedImage.js +5 -6
  29. package/Libraries/Animated/components/AnimatedScrollView.js +110 -14
  30. package/Libraries/Animated/components/AnimatedSectionList.js +4 -5
  31. package/Libraries/Animated/components/AnimatedText.js +5 -6
  32. package/Libraries/Animated/components/AnimatedView.js +5 -6
  33. package/Libraries/Animated/createAnimatedComponent.js +11 -25
  34. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +2 -2
  35. package/Libraries/Animated/nodes/AnimatedAddition.js +6 -8
  36. package/Libraries/Animated/nodes/AnimatedColor.js +7 -7
  37. package/Libraries/Animated/nodes/AnimatedDiffClamp.js +6 -8
  38. package/Libraries/Animated/nodes/AnimatedDivision.js +7 -9
  39. package/Libraries/Animated/nodes/AnimatedInterpolation.js +7 -10
  40. package/Libraries/Animated/nodes/AnimatedModulo.js +6 -8
  41. package/Libraries/Animated/nodes/AnimatedMultiplication.js +7 -9
  42. package/Libraries/Animated/nodes/AnimatedNode.js +10 -8
  43. package/Libraries/Animated/nodes/AnimatedProps.js +12 -28
  44. package/Libraries/Animated/nodes/AnimatedStyle.js +12 -22
  45. package/Libraries/Animated/nodes/AnimatedSubtraction.js +7 -9
  46. package/Libraries/Animated/nodes/AnimatedTracking.js +8 -12
  47. package/Libraries/Animated/nodes/AnimatedTransform.js +38 -31
  48. package/Libraries/Animated/nodes/AnimatedValue.js +9 -10
  49. package/Libraries/Animated/nodes/AnimatedValueXY.js +4 -7
  50. package/Libraries/Animated/nodes/AnimatedWithChildren.js +4 -5
  51. package/Libraries/Animated/useAnimatedProps.js +8 -16
  52. package/Libraries/Animated/useAnimatedValue.d.ts +15 -0
  53. package/Libraries/Animated/useAnimatedValue.js +25 -0
  54. package/Libraries/AppDelegate/RCTAppDelegate.h +130 -0
  55. package/Libraries/AppDelegate/RCTAppDelegate.mm +164 -0
  56. package/Libraries/AppDelegate/React-RCTAppDelegate.podspec +73 -0
  57. package/Libraries/AppState/AppState.d.ts +58 -0
  58. package/Libraries/AppState/AppState.js +3 -7
  59. package/Libraries/AppState/NativeAppState.js +1 -0
  60. package/Libraries/BatchedBridge/MessageQueue.js +9 -5
  61. package/Libraries/BatchedBridge/NativeModules.d.ts +25 -0
  62. package/Libraries/BatchedBridge/NativeModules.js +1 -0
  63. package/Libraries/Blob/BlobManager.js +5 -3
  64. package/Libraries/Blob/File.js +2 -3
  65. package/Libraries/Blob/FileReader.js +6 -5
  66. package/Libraries/Blob/NativeBlobModule.js +1 -0
  67. package/Libraries/Blob/NativeFileReaderModule.js +1 -0
  68. package/Libraries/Blob/RCTBlobCollector.h +0 -2
  69. package/Libraries/Blob/RCTBlobCollector.mm +27 -23
  70. package/Libraries/Blob/RCTBlobManager.h +1 -1
  71. package/Libraries/Blob/RCTBlobManager.mm +34 -28
  72. package/Libraries/Blob/RCTFileReaderModule.mm +24 -17
  73. package/Libraries/Blob/React-RCTBlob.podspec +0 -1
  74. package/Libraries/Blob/URL.js +11 -9
  75. package/Libraries/BugReporting/NativeBugReporting.js +1 -0
  76. package/Libraries/BugReporting/getReactData.js +1 -1
  77. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +128 -0
  78. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.flow.js +16 -16
  79. package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +9 -7
  80. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityInfo.js +1 -0
  81. package/Libraries/Components/AccessibilityInfo/NativeAccessibilityManager.js +1 -0
  82. package/Libraries/Components/ActivityIndicator/ActivityIndicator.d.ts +86 -0
  83. package/Libraries/Components/ActivityIndicator/ActivityIndicator.flow.js +58 -0
  84. package/Libraries/Components/ActivityIndicator/ActivityIndicator.js +7 -8
  85. package/Libraries/Components/ActivityIndicator/ActivityIndicatorViewNativeComponent.js +2 -3
  86. package/Libraries/Components/Button.d.ts +42 -0
  87. package/Libraries/Components/Button.flow.js +265 -0
  88. package/Libraries/Components/Button.js +62 -18
  89. package/Libraries/Components/Clipboard/Clipboard.d.ts +28 -0
  90. package/Libraries/Components/Clipboard/NativeClipboard.js +1 -0
  91. package/Libraries/Components/DatePicker/DatePickerIOS.android.js +4 -2
  92. package/Libraries/Components/DatePicker/DatePickerIOS.d.ts +92 -0
  93. package/Libraries/Components/{MaskedView/MaskedViewIOS.android.js → DatePicker/DatePickerIOS.flow.android.js} +3 -2
  94. package/Libraries/Components/DatePicker/DatePickerIOS.flow.ios.js +113 -0
  95. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +8 -7
  96. package/Libraries/Components/DatePicker/RCTDatePickerNativeComponent.js +7 -6
  97. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +1 -0
  98. package/Libraries/Components/DrawerAndroid/AndroidDrawerLayoutNativeComponent.js +9 -8
  99. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +13 -14
  100. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.d.ts +141 -0
  101. package/Libraries/Components/Keyboard/Keyboard.d.ts +109 -0
  102. package/Libraries/Components/Keyboard/Keyboard.js +7 -5
  103. package/Libraries/Components/Keyboard/KeyboardAvoidingView.d.ts +46 -0
  104. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +16 -9
  105. package/Libraries/Components/Keyboard/NativeKeyboardObserver.js +1 -0
  106. package/Libraries/Components/Pressable/Pressable.d.ts +167 -0
  107. package/Libraries/Components/Pressable/Pressable.js +73 -15
  108. package/Libraries/Components/Pressable/useAndroidRippleForView.js +6 -3
  109. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.android.js +3 -3
  110. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroid.d.ts +83 -0
  111. package/Libraries/Components/ProgressBarAndroid/ProgressBarAndroidNativeComponent.js +2 -2
  112. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.android.js +1 -1
  113. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.d.ts +62 -0
  114. package/Libraries/Components/ProgressViewIOS/ProgressViewIOS.ios.js +4 -4
  115. package/Libraries/Components/ProgressViewIOS/RCTProgressViewNativeComponent.js +2 -2
  116. package/Libraries/Components/RefreshControl/AndroidSwipeRefreshLayoutNativeComponent.js +5 -6
  117. package/Libraries/Components/RefreshControl/PullToRefreshViewNativeComponent.js +4 -4
  118. package/Libraries/Components/RefreshControl/RefreshControl.d.ts +87 -0
  119. package/Libraries/Components/RefreshControl/RefreshControl.js +4 -3
  120. package/Libraries/Components/RefreshControl/__mocks__/RefreshControlMock.js +2 -3
  121. package/Libraries/Components/SafeAreaView/RCTSafeAreaViewNativeComponent.js +1 -1
  122. package/Libraries/Components/SafeAreaView/SafeAreaView.d.ts +24 -0
  123. package/Libraries/Components/SafeAreaView/SafeAreaView.flow.js +19 -0
  124. package/Libraries/Components/SafeAreaView/SafeAreaView.js +5 -4
  125. package/Libraries/Components/ScrollView/AndroidHorizontalScrollContentViewNativeComponent.js +2 -1
  126. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +2 -1
  127. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +2 -1
  128. package/Libraries/Components/ScrollView/ScrollView.d.ts +911 -0
  129. package/Libraries/Components/ScrollView/ScrollView.js +77 -38
  130. package/Libraries/Components/ScrollView/ScrollViewCommands.js +3 -3
  131. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +2 -1
  132. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +3 -3
  133. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +243 -269
  134. package/Libraries/Components/Slider/Slider.d.ts +132 -0
  135. package/Libraries/Components/Slider/Slider.js +9 -9
  136. package/Libraries/Components/Slider/SliderNativeComponent.js +4 -5
  137. package/Libraries/Components/Sound/NativeSoundManager.js +1 -0
  138. package/Libraries/Components/StatusBar/NativeStatusBarManagerAndroid.js +1 -0
  139. package/Libraries/Components/StatusBar/NativeStatusBarManagerIOS.js +1 -0
  140. package/Libraries/Components/StatusBar/StatusBar.d.ts +138 -0
  141. package/Libraries/Components/StatusBar/StatusBar.js +7 -7
  142. package/Libraries/Components/Switch/AndroidSwitchNativeComponent.js +10 -10
  143. package/Libraries/Components/Switch/Switch.d.ts +115 -0
  144. package/Libraries/Components/Switch/Switch.js +7 -7
  145. package/Libraries/Components/Switch/SwitchNativeComponent.js +9 -4
  146. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +40 -12
  147. package/Libraries/Components/TextInput/InputAccessoryView.d.ts +34 -0
  148. package/Libraries/Components/TextInput/InputAccessoryView.js +3 -4
  149. package/Libraries/Components/TextInput/InputAccessoryView.js.flow +25 -0
  150. package/Libraries/Components/TextInput/RCTInputAccessoryViewNativeComponent.js +1 -1
  151. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +3 -2
  152. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +3 -2
  153. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +3 -1
  154. package/Libraries/Components/TextInput/TextInput.d.ts +840 -0
  155. package/Libraries/Components/TextInput/TextInput.flow.js +1057 -0
  156. package/Libraries/Components/TextInput/TextInput.js +344 -36
  157. package/Libraries/Components/TextInput/TextInputNativeCommands.js +2 -2
  158. package/Libraries/Components/TextInput/TextInputState.js +22 -5
  159. package/Libraries/Components/ToastAndroid/NativeToastAndroid.js +1 -0
  160. package/Libraries/Components/ToastAndroid/ToastAndroid.d.ts +47 -0
  161. package/Libraries/Components/Touchable/Touchable.d.ts +90 -0
  162. package/Libraries/Components/Touchable/Touchable.flow.js +258 -0
  163. package/Libraries/Components/Touchable/Touchable.js +12 -12
  164. package/Libraries/Components/Touchable/TouchableBounce.js +44 -10
  165. package/Libraries/Components/Touchable/TouchableHighlight.d.ts +68 -0
  166. package/Libraries/Components/Touchable/TouchableHighlight.js +32 -9
  167. package/Libraries/Components/Touchable/TouchableNativeFeedback.d.ts +114 -0
  168. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +54 -20
  169. package/Libraries/Components/Touchable/TouchableOpacity.d.ts +109 -0
  170. package/Libraries/Components/Touchable/TouchableOpacity.js +54 -16
  171. package/Libraries/Components/Touchable/TouchableWithoutFeedback.d.ts +143 -0
  172. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +64 -10
  173. package/Libraries/Components/UnimplementedViews/UnimplementedNativeViewNativeComponent.js +1 -1
  174. package/Libraries/Components/UnimplementedViews/UnimplementedView.js +1 -1
  175. package/Libraries/Components/View/ReactNativeStyleAttributes.js +13 -2
  176. package/Libraries/Components/View/View.d.ts +29 -0
  177. package/Libraries/Components/View/View.js +91 -8
  178. package/Libraries/Components/View/ViewAccessibility.d.ts +360 -0
  179. package/Libraries/Components/View/ViewAccessibility.js +70 -1
  180. package/Libraries/Components/View/ViewNativeComponent.js +3 -3
  181. package/Libraries/Components/View/ViewPropTypes.d.ts +245 -0
  182. package/Libraries/Components/View/ViewPropTypes.js +105 -13
  183. package/Libraries/Core/Devtools/openFileInEditor.js +3 -0
  184. package/Libraries/Core/Devtools/parseErrorStack.js +1 -1
  185. package/Libraries/Core/Devtools/symbolicateStackTrace.js +2 -2
  186. package/Libraries/Core/ExceptionsManager.js +8 -0
  187. package/Libraries/Core/ExtendedError.js +11 -8
  188. package/Libraries/Core/InitializeCore.js +2 -1
  189. package/Libraries/Core/NativeExceptionsManager.js +3 -4
  190. package/Libraries/Core/RawEventEmitter.js +2 -1
  191. package/Libraries/Core/ReactFiberErrorDialog.js +2 -2
  192. package/Libraries/Core/ReactNativeVersion.js +3 -3
  193. package/Libraries/Core/ReactNativeVersionCheck.js +1 -0
  194. package/Libraries/Core/SegmentFetcher/NativeSegmentFetcher.js +1 -0
  195. package/Libraries/Core/Timers/JSTimers.js +13 -11
  196. package/Libraries/Core/Timers/NativeTiming.js +1 -0
  197. package/Libraries/Core/setUpBatchedBridge.js +1 -5
  198. package/Libraries/Core/setUpDeveloperTools.js +4 -6
  199. package/Libraries/Core/setUpRegeneratorRuntime.js +1 -1
  200. package/Libraries/Core/setUpTimers.js +1 -1
  201. package/Libraries/EventEmitter/NativeEventEmitter.d.ts +70 -0
  202. package/Libraries/EventEmitter/NativeEventEmitter.js +1 -0
  203. package/Libraries/EventEmitter/RCTDeviceEventEmitter.d.ts +30 -0
  204. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
  205. package/Libraries/EventEmitter/RCTNativeAppEventEmitter.d.ts +32 -0
  206. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +1 -0
  207. package/Libraries/Events/EventPolyfill.js +1 -1
  208. package/Libraries/FBLazyVector/BUCK +2 -1
  209. package/Libraries/FBLazyVector/FBLazyVector/FBLazyIterator.h +9 -12
  210. package/Libraries/FBLazyVector/FBLazyVector/FBLazyVector.h +9 -6
  211. package/Libraries/HeapCapture/NativeJSCHeapCapture.js +1 -0
  212. package/Libraries/Image/AssetSourceResolver.js +4 -6
  213. package/Libraries/Image/Image.android.js +63 -45
  214. package/Libraries/Image/Image.d.ts +322 -0
  215. package/Libraries/Image/Image.flow.js +64 -0
  216. package/Libraries/Image/Image.ios.js +55 -28
  217. package/Libraries/Image/ImageBackground.js +18 -7
  218. package/Libraries/Image/ImageBackground.js.flow +17 -0
  219. package/Libraries/Image/ImageInjection.js +2 -1
  220. package/Libraries/Image/ImageProps.js +88 -5
  221. package/Libraries/Image/ImageResizeMode.d.ts +49 -0
  222. package/Libraries/Image/ImageSource.d.ts +76 -0
  223. package/Libraries/Image/ImageSourceUtils.js +80 -0
  224. package/Libraries/Image/ImageUtils.js +21 -0
  225. package/Libraries/Image/ImageViewNativeComponent.js +8 -5
  226. package/Libraries/Image/ImageViewNativeComponent.js.flow +45 -0
  227. package/Libraries/Image/NativeImageEditor.js +1 -0
  228. package/Libraries/Image/NativeImageLoaderAndroid.js +1 -0
  229. package/Libraries/Image/NativeImageLoaderIOS.js +1 -0
  230. package/Libraries/Image/NativeImageStoreAndroid.js +1 -0
  231. package/Libraries/Image/NativeImageStoreIOS.js +1 -0
  232. package/Libraries/Image/RCTAnimatedImage.m +5 -2
  233. package/Libraries/Image/RCTDisplayWeakRefreshable.m +4 -2
  234. package/Libraries/Image/RCTGIFImageDecoder.mm +7 -4
  235. package/Libraries/Image/RCTImageBlurUtils.m +22 -17
  236. package/Libraries/Image/RCTImageCache.h +7 -7
  237. package/Libraries/Image/RCTImageCache.m +16 -21
  238. package/Libraries/Image/RCTImageDataDecoder.h +1 -1
  239. package/Libraries/Image/RCTImageEditingManager.mm +53 -44
  240. package/Libraries/Image/RCTImageLoader.h +7 -7
  241. package/Libraries/Image/RCTImageLoader.mm +415 -378
  242. package/Libraries/Image/RCTImageLoaderProtocol.h +14 -17
  243. package/Libraries/Image/RCTImageLoaderWithAttributionProtocol.h +2 -2
  244. package/Libraries/Image/RCTImageStoreManager.mm +30 -25
  245. package/Libraries/Image/RCTImageURLLoader.h +11 -8
  246. package/Libraries/Image/RCTImageURLLoaderWithAttribution.h +6 -4
  247. package/Libraries/Image/RCTImageURLLoaderWithAttribution.mm +3 -1
  248. package/Libraries/Image/RCTImageUtils.h +19 -18
  249. package/Libraries/Image/RCTImageUtils.m +61 -67
  250. package/Libraries/Image/RCTImageView.h +2 -2
  251. package/Libraries/Image/RCTImageView.mm +50 -43
  252. package/Libraries/Image/RCTImageViewManager.mm +45 -41
  253. package/Libraries/Image/RCTLocalAssetImageLoader.mm +12 -10
  254. package/Libraries/Image/RCTResizeMode.h +1 -1
  255. package/Libraries/Image/RCTResizeMode.m +12 -8
  256. package/Libraries/Image/RCTUIImageViewAnimated.m +21 -13
  257. package/Libraries/Image/TextInlineImageNativeComponent.js +4 -3
  258. package/Libraries/Image/TextInlineImageNativeComponent.js.flow +27 -0
  259. package/Libraries/Image/nativeImageSource.js +2 -2
  260. package/Libraries/Image/resolveAssetSource.js +5 -5
  261. package/Libraries/Inspector/BorderBox.js +1 -1
  262. package/Libraries/Inspector/BoxInspector.js +3 -4
  263. package/Libraries/Inspector/DevtoolsOverlay.js +213 -0
  264. package/Libraries/Inspector/ElementBox.js +4 -5
  265. package/Libraries/Inspector/ElementProperties.js +10 -11
  266. package/Libraries/Inspector/Inspector.js +22 -108
  267. package/Libraries/Inspector/InspectorOverlay.js +5 -5
  268. package/Libraries/Inspector/InspectorPanel.js +12 -10
  269. package/Libraries/Inspector/NetworkOverlay.js +7 -3
  270. package/Libraries/Inspector/PerformanceOverlay.js +3 -3
  271. package/Libraries/Inspector/StyleInspector.js +2 -2
  272. package/Libraries/Inspector/getInspectorDataForViewAtPoint.js +71 -0
  273. package/Libraries/Interaction/BridgeSpyStallHandler.js +1 -1
  274. package/Libraries/Interaction/InteractionManager.d.ts +74 -0
  275. package/Libraries/Interaction/InteractionManager.js +8 -8
  276. package/Libraries/Interaction/NativeFrameRateLogger.js +1 -0
  277. package/Libraries/Interaction/PanResponder.d.ts +202 -0
  278. package/Libraries/Interaction/PanResponder.flow.js +257 -0
  279. package/Libraries/Interaction/PanResponder.js +4 -3
  280. package/Libraries/JSInspector/JSInspector.js +0 -3
  281. package/Libraries/JSInspector/NetworkAgent.js +3 -3
  282. package/Libraries/LayoutAnimation/LayoutAnimation.d.ts +84 -0
  283. package/Libraries/LayoutAnimation/LayoutAnimation.js +4 -3
  284. package/Libraries/Linking/Linking.d.ts +61 -0
  285. package/Libraries/Linking/Linking.js +3 -2
  286. package/Libraries/Linking/NativeIntentAndroid.js +1 -0
  287. package/Libraries/Linking/NativeLinkingManager.js +1 -0
  288. package/Libraries/LinkingIOS/RCTLinkingManager.h +5 -5
  289. package/Libraries/LinkingIOS/RCTLinkingManager.mm +75 -63
  290. package/Libraries/Lists/CellRenderMask.js +13 -3
  291. package/Libraries/Lists/ChildListCollection.js +72 -0
  292. package/Libraries/Lists/FillRateHelper.js +28 -17
  293. package/Libraries/Lists/FlatList.d.ts +292 -0
  294. package/Libraries/Lists/FlatList.js +70 -70
  295. package/Libraries/Lists/FlatList.js.flow +115 -0
  296. package/Libraries/Lists/SectionList.d.ts +300 -0
  297. package/Libraries/Lists/SectionList.js +5 -5
  298. package/Libraries/Lists/SectionListModern.js +6 -6
  299. package/Libraries/Lists/StateSafePureComponent.js +85 -0
  300. package/Libraries/Lists/ViewabilityHelper.js +33 -12
  301. package/Libraries/Lists/VirtualizeUtils.js +17 -13
  302. package/Libraries/Lists/VirtualizedList.d.ts +317 -0
  303. package/Libraries/Lists/VirtualizedList.js +548 -890
  304. package/Libraries/Lists/VirtualizedListCellRenderer.js +259 -0
  305. package/Libraries/Lists/VirtualizedListContext.js +7 -48
  306. package/Libraries/Lists/VirtualizedListProps.js +279 -0
  307. package/Libraries/Lists/VirtualizedSectionList.js +6 -3
  308. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +1 -1
  309. package/Libraries/LogBox/Data/LogBoxData.js +9 -8
  310. package/Libraries/LogBox/Data/LogBoxLog.js +5 -5
  311. package/Libraries/LogBox/Data/LogBoxSymbolication.js +4 -4
  312. package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -3
  313. package/Libraries/LogBox/LogBox.d.ts +28 -0
  314. package/Libraries/LogBox/LogBox.js +11 -11
  315. package/Libraries/LogBox/LogBoxInspectorContainer.js +5 -3
  316. package/Libraries/LogBox/LogBoxNotificationContainer.js +2 -2
  317. package/Libraries/LogBox/UI/AnsiHighlight.js +5 -3
  318. package/Libraries/LogBox/UI/LogBoxButton.js +6 -5
  319. package/Libraries/LogBox/UI/LogBoxInspector.js +6 -6
  320. package/Libraries/LogBox/UI/LogBoxInspectorCodeFrame.js +9 -8
  321. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +3 -3
  322. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +7 -6
  323. package/Libraries/LogBox/UI/LogBoxInspectorMessageHeader.js +6 -5
  324. package/Libraries/LogBox/UI/LogBoxInspectorReactFrames.js +7 -6
  325. package/Libraries/LogBox/UI/LogBoxInspectorSection.js +2 -2
  326. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +3 -3
  327. package/Libraries/LogBox/UI/LogBoxInspectorStackFrame.js +5 -5
  328. package/Libraries/LogBox/UI/LogBoxInspectorStackFrames.js +5 -5
  329. package/Libraries/LogBox/UI/LogBoxMessage.js +3 -3
  330. package/Libraries/LogBox/UI/LogBoxNotification.js +6 -5
  331. package/Libraries/Modal/Modal.d.ts +104 -0
  332. package/Libraries/Modal/Modal.js +14 -14
  333. package/Libraries/Modal/NativeModalManager.js +1 -0
  334. package/Libraries/Modal/RCTModalHostViewNativeComponent.js +3 -3
  335. package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.h +1 -1
  336. package/Libraries/NativeAnimation/Drivers/RCTDecayAnimation.m +6 -9
  337. package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.h +1 -2
  338. package/Libraries/NativeAnimation/Drivers/RCTEventAnimation.m +2 -4
  339. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.h +1 -1
  340. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.m +14 -21
  341. package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.h +1 -1
  342. package/Libraries/NativeAnimation/Drivers/RCTSpringAnimation.m +8 -22
  343. package/Libraries/NativeAnimation/Nodes/RCTAdditionAnimatedNode.m +1 -2
  344. package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.h +2 -3
  345. package/Libraries/NativeAnimation/Nodes/RCTAnimatedNode.m +3 -5
  346. package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +2 -4
  347. package/Libraries/NativeAnimation/Nodes/RCTDiffClampAnimatedNode.m +7 -4
  348. package/Libraries/NativeAnimation/Nodes/RCTDivisionAnimatedNode.m +1 -2
  349. package/Libraries/NativeAnimation/Nodes/RCTInterpolationAnimatedNode.m +14 -20
  350. package/Libraries/NativeAnimation/Nodes/RCTMultiplicationAnimatedNode.m +1 -2
  351. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +13 -16
  352. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +5 -7
  353. package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.h +0 -1
  354. package/Libraries/NativeAnimation/Nodes/RCTSubtractionAnimatedNode.m +1 -3
  355. package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.h +0 -1
  356. package/Libraries/NativeAnimation/Nodes/RCTTrackingAnimatedNode.m +3 -8
  357. package/Libraries/NativeAnimation/Nodes/RCTTransformAnimatedNode.m +4 -6
  358. package/Libraries/NativeAnimation/Nodes/RCTValueAnimatedNode.m +1 -2
  359. package/Libraries/NativeAnimation/RCTAnimationUtils.h +14 -12
  360. package/Libraries/NativeAnimation/RCTAnimationUtils.m +15 -19
  361. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.h +6 -1
  362. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +80 -72
  363. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +11 -20
  364. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +55 -64
  365. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.h +5 -1
  366. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +68 -78
  367. package/Libraries/NativeComponent/BaseViewConfig.android.js +27 -2
  368. package/Libraries/NativeComponent/BaseViewConfig.ios.js +8 -3
  369. package/Libraries/NativeComponent/NativeComponentRegistry.js +5 -4
  370. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +1 -0
  371. package/Libraries/NativeComponent/StaticViewConfigValidator.js +1 -1
  372. package/Libraries/NativeComponent/ViewConfig.js +1 -0
  373. package/Libraries/NativeModules/specs/NativeAnimationsDebugModule.js +1 -0
  374. package/Libraries/NativeModules/specs/NativeDevMenu.js +1 -0
  375. package/Libraries/NativeModules/specs/NativeDevSettings.js +1 -0
  376. package/Libraries/NativeModules/specs/NativeDeviceEventManager.js +1 -0
  377. package/Libraries/NativeModules/specs/NativeDialogManagerAndroid.js +1 -0
  378. package/Libraries/NativeModules/specs/NativeLogBox.js +3 -2
  379. package/Libraries/NativeModules/specs/NativeRedBox.js +1 -0
  380. package/Libraries/NativeModules/specs/NativeSourceCode.js +1 -0
  381. package/Libraries/Network/NativeNetworkingAndroid.js +1 -0
  382. package/Libraries/Network/NativeNetworkingIOS.js +1 -0
  383. package/Libraries/Network/RCTDataRequestHandler.mm +8 -11
  384. package/Libraries/Network/RCTFileRequestHandler.mm +10 -16
  385. package/Libraries/Network/RCTHTTPRequestHandler.h +4 -3
  386. package/Libraries/Network/RCTHTTPRequestHandler.mm +19 -23
  387. package/Libraries/Network/RCTNetworkTask.mm +2 -3
  388. package/Libraries/Network/RCTNetworking.android.js +4 -3
  389. package/Libraries/Network/RCTNetworking.ios.js +3 -2
  390. package/Libraries/Network/RCTNetworking.mm +172 -157
  391. package/Libraries/Network/convertRequestBody.js +1 -2
  392. package/Libraries/NewAppScreen/components/DebugInstructions.js +4 -1
  393. package/Libraries/NewAppScreen/components/Header.js +6 -2
  394. package/Libraries/NewAppScreen/components/HermesBadge.js +6 -2
  395. package/Libraries/NewAppScreen/components/LearnMoreLinks.js +8 -9
  396. package/Libraries/NewAppScreen/components/ReloadInstructions.js +4 -1
  397. package/Libraries/NewAppScreen/index.js +1 -1
  398. package/Libraries/Performance/NativeJSCSamplingProfiler.js +1 -0
  399. package/Libraries/Performance/QuickPerformanceLogger.js +34 -10
  400. package/Libraries/Performance/Systrace.d.ts +66 -0
  401. package/Libraries/Performance/Systrace.js +110 -195
  402. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +1 -0
  403. package/Libraries/PermissionsAndroid/PermissionsAndroid.d.ts +115 -0
  404. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +5 -4
  405. package/Libraries/Pressability/Pressability.js +12 -10
  406. package/Libraries/Pressability/PressabilityDebug.js +2 -2
  407. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  408. package/Libraries/PushNotificationIOS/PushNotificationIOS.d.ts +275 -0
  409. package/Libraries/PushNotificationIOS/PushNotificationIOS.js +19 -14
  410. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.h +2 -1
  411. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +142 -103
  412. package/Libraries/RCTRequired/BUCK +2 -1
  413. package/Libraries/RCTRequired/RCTRequired/RCTRequired.h +31 -18
  414. package/Libraries/ReactNative/AppContainer.js +17 -7
  415. package/Libraries/ReactNative/AppRegistry.d.ts +68 -0
  416. package/Libraries/ReactNative/AppRegistry.js +11 -14
  417. package/Libraries/ReactNative/BridgelessUIManager.js +3 -2
  418. package/Libraries/ReactNative/FabricUIManager.js +3 -3
  419. package/Libraries/ReactNative/I18nManager.d.ts +25 -0
  420. package/Libraries/ReactNative/NativeHeadlessJsTaskSupport.js +1 -0
  421. package/Libraries/ReactNative/NativeI18nManager.js +1 -0
  422. package/Libraries/ReactNative/NativeUIManager.js +1 -0
  423. package/Libraries/ReactNative/PaperUIManager.js +2 -2
  424. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +9 -0
  425. package/Libraries/ReactNative/RendererImplementation.js +112 -0
  426. package/Libraries/ReactNative/RendererProxy.d.ts +20 -0
  427. package/Libraries/ReactNative/RendererProxy.js +26 -0
  428. package/Libraries/ReactNative/RootTag.js +0 -1
  429. package/Libraries/ReactNative/UIManager.d.ts +157 -0
  430. package/Libraries/ReactNative/UIManager.js +1 -1
  431. package/Libraries/ReactNative/getCachedComponentWithDebugName.js +1 -0
  432. package/Libraries/ReactNative/renderApplication.js +38 -20
  433. package/Libraries/ReactNative/requireNativeComponent.d.ts +23 -0
  434. package/Libraries/ReactNative/requireNativeComponent.js +2 -2
  435. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +10 -9
  436. package/Libraries/Renderer/README.md +1 -1
  437. package/Libraries/Renderer/REVISION +1 -1
  438. package/Libraries/Renderer/implementations/ReactFabric-dev.js +312 -217
  439. package/Libraries/Renderer/implementations/ReactFabric-prod.js +212 -177
  440. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +248 -213
  441. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +311 -218
  442. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +226 -196
  443. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +262 -232
  444. package/Libraries/Renderer/implementations/ReactNativeRenderer.d.ts +149 -0
  445. package/Libraries/Renderer/shims/ReactFabric.js +2 -2
  446. package/Libraries/Renderer/shims/ReactFeatureFlags.js +2 -2
  447. package/Libraries/Renderer/shims/ReactNative.js +2 -2
  448. package/Libraries/Renderer/shims/ReactNativeTypes.d.ts +141 -0
  449. package/Libraries/Renderer/shims/ReactNativeTypes.js +23 -22
  450. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +8 -8
  451. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +2 -2
  452. package/Libraries/Settings/NativeSettingsManager.js +1 -0
  453. package/Libraries/Settings/RCTSettingsManager.mm +10 -12
  454. package/Libraries/Settings/Settings.d.ts +18 -0
  455. package/Libraries/Share/NativeShareModule.js +1 -0
  456. package/Libraries/Share/Share.d.ts +80 -0
  457. package/Libraries/Share/Share.js +7 -5
  458. package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +1 -1
  459. package/Libraries/StyleSheet/PlatformColorValueTypes.d.ts +18 -0
  460. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
  461. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.d.ts +25 -0
  462. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +1 -0
  463. package/Libraries/StyleSheet/StyleSheet.d.ts +156 -0
  464. package/Libraries/StyleSheet/StyleSheet.js +9 -10
  465. package/Libraries/StyleSheet/StyleSheetTypes.d.ts +332 -0
  466. package/Libraries/StyleSheet/StyleSheetTypes.js +101 -24
  467. package/Libraries/StyleSheet/__flowtests__/StyleSheet-flowtest.js +2 -2
  468. package/Libraries/StyleSheet/normalizeColor.js +3 -3
  469. package/Libraries/StyleSheet/private/_TransformStyle.js +26 -24
  470. package/Libraries/StyleSheet/processAspectRatio.js +53 -0
  471. package/Libraries/StyleSheet/processColor.d.ts +16 -0
  472. package/Libraries/StyleSheet/processColor.js +3 -4
  473. package/Libraries/StyleSheet/processColorArray.js +1 -0
  474. package/Libraries/StyleSheet/processFontVariant.js +30 -0
  475. package/Libraries/StyleSheet/processTransform.js +114 -105
  476. package/Libraries/StyleSheet/splitLayoutProps.js +5 -0
  477. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponent.mm +9 -12
  478. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponentState.h +1 -1
  479. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +9 -14
  480. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentController.mm +16 -12
  481. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentOptions.h +1 -1
  482. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.h +2 -3
  483. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentState.mm +3 -8
  484. package/Libraries/Text/BaseText/RCTBaseTextShadowView.h +4 -2
  485. package/Libraries/Text/BaseText/RCTBaseTextShadowView.m +13 -12
  486. package/Libraries/Text/BaseText/RCTBaseTextViewManager.m +2 -0
  487. package/Libraries/Text/RCTConvert+Text.m +16 -14
  488. package/Libraries/Text/RCTTextAttributes.h +3 -0
  489. package/Libraries/Text/RCTTextAttributes.m +75 -54
  490. package/Libraries/Text/RawText/RCTRawTextShadowView.m +2 -1
  491. package/Libraries/Text/Text/NSTextStorage+FontScaling.m +22 -42
  492. package/Libraries/Text/Text/RCTDynamicTypeRamp.h +37 -0
  493. package/Libraries/Text/Text/RCTDynamicTypeRamp.m +82 -0
  494. package/Libraries/Text/Text/RCTTextShadowView.m +152 -175
  495. package/Libraries/Text/Text/RCTTextView.m +38 -40
  496. package/Libraries/Text/Text/RCTTextViewManager.m +7 -8
  497. package/Libraries/Text/Text.d.ts +209 -0
  498. package/Libraries/Text/Text.js +94 -12
  499. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputView.m +10 -23
  500. package/Libraries/Text/TextInput/Multiline/RCTMultilineTextInputViewManager.m +1 -1
  501. package/Libraries/Text/TextInput/Multiline/RCTUITextView.h +1 -1
  502. package/Libraries/Text/TextInput/Multiline/RCTUITextView.m +18 -12
  503. package/Libraries/Text/TextInput/RCTBackedTextInputDelegate.h +10 -6
  504. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.h +1 -1
  505. package/Libraries/Text/TextInput/RCTBackedTextInputDelegateAdapter.m +22 -14
  506. package/Libraries/Text/TextInput/RCTBackedTextInputViewProtocol.h +1 -2
  507. package/Libraries/Text/TextInput/RCTBaseTextInputShadowView.m +37 -47
  508. package/Libraries/Text/TextInput/RCTBaseTextInputView.h +2 -3
  509. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +177 -155
  510. package/Libraries/Text/TextInput/RCTBaseTextInputViewManager.m +19 -17
  511. package/Libraries/Text/TextInput/RCTInputAccessoryShadowView.m +1 -1
  512. package/Libraries/Text/TextInput/RCTInputAccessoryView.m +2 -3
  513. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +1 -2
  514. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputView.m +3 -4
  515. package/Libraries/Text/TextInput/Singleline/RCTSinglelineTextInputViewManager.m +1 -2
  516. package/Libraries/Text/TextInput/Singleline/RCTUITextField.h +1 -1
  517. package/Libraries/Text/TextInput/Singleline/RCTUITextField.m +7 -5
  518. package/Libraries/Text/TextNativeComponent.js +49 -41
  519. package/Libraries/Text/TextProps.js +64 -7
  520. package/{React/Views/RCTMaskedViewManager.h → Libraries/TurboModule/RCTExport.d.ts} +6 -6
  521. package/Libraries/TurboModule/TurboModuleRegistry.d.ts +15 -0
  522. package/Libraries/TurboModule/TurboModuleRegistry.js +3 -1
  523. package/Libraries/TurboModule/samples/NativeSampleTurboModule.js +1 -0
  524. package/Libraries/TypeSafety/RCTConvertHelpers.h +22 -12
  525. package/Libraries/TypeSafety/RCTConvertHelpers.mm +2 -2
  526. package/Libraries/TypeSafety/RCTTypedModuleConstants.h +7 -5
  527. package/Libraries/TypeSafety/RCTTypedModuleConstants.mm +6 -4
  528. package/Libraries/Types/CoreEventTypes.d.ts +263 -0
  529. package/Libraries/Types/CoreEventTypes.js +2 -1
  530. package/Libraries/Utilities/AcessibilityMapping.js +154 -0
  531. package/Libraries/Utilities/Appearance.d.ts +43 -0
  532. package/Libraries/Utilities/Appearance.js +3 -3
  533. package/Libraries/Utilities/BackHandler.android.js +3 -5
  534. package/Libraries/Utilities/BackHandler.d.ts +38 -0
  535. package/Libraries/Utilities/DevSettings.d.ts +32 -0
  536. package/Libraries/Utilities/DevSettings.js +4 -2
  537. package/Libraries/Utilities/Dimensions.d.ts +79 -0
  538. package/Libraries/Utilities/Dimensions.js +2 -2
  539. package/Libraries/Utilities/GlobalPerformanceLogger.js +2 -1
  540. package/Libraries/Utilities/HMRClient.js +23 -8
  541. package/Libraries/Utilities/LoadingView.ios.js +1 -1
  542. package/Libraries/Utilities/NativeAppearance.js +1 -0
  543. package/Libraries/Utilities/NativeDevLoadingView.js +1 -0
  544. package/Libraries/Utilities/NativeDevSplitBundleLoader.js +1 -0
  545. package/Libraries/Utilities/NativeDeviceInfo.js +1 -0
  546. package/Libraries/Utilities/NativePlatformConstantsAndroid.js +1 -0
  547. package/Libraries/Utilities/NativePlatformConstantsIOS.js +1 -0
  548. package/Libraries/Utilities/PerformanceLoggerContext.js +3 -2
  549. package/Libraries/Utilities/PixelRatio.d.ts +64 -0
  550. package/Libraries/Utilities/PixelRatio.js.flow +21 -0
  551. package/Libraries/Utilities/Platform.android.js +11 -5
  552. package/Libraries/Utilities/Platform.d.ts +102 -0
  553. package/Libraries/Utilities/Platform.ios.js +12 -5
  554. package/Libraries/Utilities/PolyfillFunctions.js +1 -1
  555. package/Libraries/Utilities/ReactNativeTestTools.js +9 -15
  556. package/Libraries/Utilities/codegenNativeCommands.js +1 -10
  557. package/Libraries/Utilities/codegenNativeComponent.js +4 -1
  558. package/Libraries/Utilities/createPerformanceLogger.js +7 -8
  559. package/Libraries/Utilities/differ/deepDiffer.js +1 -1
  560. package/Libraries/Utilities/groupByEveryN.js +1 -1
  561. package/Libraries/Utilities/stringifySafe.js +3 -1
  562. package/Libraries/Utilities/useColorScheme.js +3 -2
  563. package/Libraries/Utilities/useRefEffect.js +1 -1
  564. package/Libraries/Vibration/NativeVibration.js +1 -0
  565. package/Libraries/Vibration/RCTVibration.mm +5 -5
  566. package/Libraries/Vibration/Vibration.d.ts +43 -0
  567. package/Libraries/Vibration/Vibration.js +1 -0
  568. package/Libraries/WebPerformance/NativePerformanceObserver.cpp +42 -0
  569. package/Libraries/WebPerformance/NativePerformanceObserver.h +64 -0
  570. package/Libraries/WebPerformance/NativePerformanceObserver.js +41 -0
  571. package/Libraries/WebPerformance/PerformanceObserver.js +223 -0
  572. package/Libraries/WebSocket/NativeWebSocketModule.js +1 -0
  573. package/Libraries/WebSocket/RCTReconnectingWebSocket.m +5 -2
  574. package/Libraries/WebSocket/RCTSRWebSocket.h +20 -16
  575. package/Libraries/WebSocket/RCTSRWebSocket.m +293 -187
  576. package/Libraries/WebSocket/WebSocket.js +11 -3
  577. package/Libraries/WebSocket/WebSocketInterceptor.js +1 -1
  578. package/Libraries/Wrapper/Example/RCTWrapperExampleView.m +5 -12
  579. package/Libraries/Wrapper/Example/RCTWrapperExampleViewController.m +2 -1
  580. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewController.m +4 -5
  581. package/Libraries/Wrapper/Example/RCTWrapperReactRootViewManager.m +2 -3
  582. package/Libraries/Wrapper/RCTWrapper.h +50 -48
  583. package/Libraries/Wrapper/RCTWrapperShadowView.m +9 -8
  584. package/Libraries/Wrapper/RCTWrapperView.m +1 -4
  585. package/Libraries/Wrapper/RCTWrapperViewControllerHostingView.m +1 -2
  586. package/Libraries/YellowBox/YellowBoxDeprecated.d.ts +19 -0
  587. package/Libraries/YellowBox/YellowBoxDeprecated.js +2 -3
  588. package/Libraries/__flowtests__/ReactNativeTypes-flowtest.js +2 -1
  589. package/Libraries/vendor/core/ErrorUtils.d.ts +15 -0
  590. package/Libraries/vendor/emitter/EventEmitter.d.ts +164 -0
  591. package/README.md +2 -2
  592. package/React/AppSetup/RCTAppSetupUtils.h +6 -2
  593. package/React/AppSetup/RCTAppSetupUtils.mm +10 -8
  594. package/React/Base/RCTAssert.h +4 -4
  595. package/React/Base/RCTBridge.h +3 -107
  596. package/React/Base/RCTBridge.m +0 -18
  597. package/React/Base/RCTBridgeConstants.h +71 -0
  598. package/React/Base/RCTBridgeConstants.m +18 -0
  599. package/React/Base/RCTBridgeModule.h +4 -47
  600. package/React/Base/RCTBundleManager.h +23 -0
  601. package/React/Base/RCTBundleManager.m +1 -1
  602. package/React/Base/RCTConstants.h +52 -4
  603. package/React/Base/RCTConstants.m +24 -13
  604. package/React/Base/RCTConvert.h +3 -0
  605. package/React/Base/RCTConvert.m +29 -1
  606. package/React/Base/RCTKeyCommands.m +1 -1
  607. package/React/Base/RCTModuleData.mm +1 -0
  608. package/React/Base/RCTModuleMethod.mm +1 -1
  609. package/React/Base/RCTModuleRegistry.m +3 -1
  610. package/React/Base/RCTTurboModuleRegistry.h +29 -0
  611. package/React/Base/RCTVersion.m +3 -3
  612. package/React/Base/Surface/RCTSurface.mm +1 -0
  613. package/React/CoreModules/BUCK +6 -5
  614. package/React/CoreModules/CoreModulesPlugins.h +1 -1
  615. package/React/CoreModules/CoreModulesPlugins.mm +1 -1
  616. package/React/CoreModules/RCTAlertController.m +5 -0
  617. package/React/CoreModules/RCTAlertManager.mm +32 -26
  618. package/React/CoreModules/RCTDevLoadingView.mm +1 -0
  619. package/React/CoreModules/RCTDevSettings.mm +1 -0
  620. package/React/CoreModules/RCTEventDispatcher.mm +6 -2
  621. package/React/CoreModules/RCTExceptionsManager.h +4 -1
  622. package/React/CoreModules/RCTExceptionsManager.mm +4 -12
  623. package/React/CoreModules/RCTRedBox.mm +7 -1
  624. package/React/CxxBridge/RCTCxxBridge.mm +2 -1
  625. package/React/CxxModule/RCTNativeModule.mm +15 -0
  626. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +1 -0
  627. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +1 -0
  628. package/React/Fabric/Mounting/ComponentViews/SafeAreaView/RCTSafeAreaViewComponentView.mm +0 -1
  629. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +7 -2
  630. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +23 -5
  631. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +15 -0
  632. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -5
  633. package/React/Fabric/Mounting/RCTComponentViewRegistry.h +0 -5
  634. package/React/Fabric/Mounting/RCTComponentViewRegistry.mm +0 -39
  635. package/React/Fabric/Mounting/RCTMountingManager.mm +1 -4
  636. package/React/Fabric/RCTScheduler.mm +0 -9
  637. package/React/Fabric/RCTSurfacePresenter.h +2 -1
  638. package/React/Fabric/RCTSurfacePresenter.mm +17 -12
  639. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +3 -1
  640. package/React/Fabric/RCTSurfaceTouchHandler.mm +290 -105
  641. package/React/Fabric/Utils/RCTReactTaggedView.h +34 -0
  642. package/React/Fabric/Utils/RCTReactTaggedView.mm +55 -0
  643. package/React/Profiler/RCTProfile.h +20 -0
  644. package/React/Tests/Mounting/RCTComponentViewRegistryTests.mm +1 -0
  645. package/React/Views/RCTBorderCurve.h +13 -0
  646. package/React/Views/RCTComponentData.m +1 -0
  647. package/React/Views/RCTFont.mm +80 -0
  648. package/React/Views/RCTShadowView.h +3 -0
  649. package/React/Views/RCTShadowView.m +14 -0
  650. package/React/Views/RCTView.h +6 -0
  651. package/React/Views/RCTView.m +18 -2
  652. package/React/Views/RCTViewManager.m +18 -0
  653. package/React/Views/RCTViewUtils.h +1 -0
  654. package/React-Core.podspec +22 -6
  655. package/ReactAndroid/Android-prebuilt.mk +10 -2
  656. package/ReactAndroid/build.gradle +245 -109
  657. package/ReactAndroid/cmake-utils/ReactNative-application.cmake +75 -17
  658. package/ReactAndroid/cmake-utils/default-app-setup/CMakeLists.txt +31 -0
  659. package/ReactAndroid/cmake-utils/default-app-setup/OnLoad.cpp +88 -0
  660. package/ReactAndroid/cmake-utils/folly-flags.cmake +22 -0
  661. package/ReactAndroid/external-artifacts/.npmignore +3 -0
  662. package/ReactAndroid/external-artifacts/build.gradle +41 -0
  663. package/ReactAndroid/gradle.properties +6 -9
  664. package/ReactAndroid/hermes-engine/build.gradle +16 -26
  665. package/ReactAndroid/publish.gradle +87 -0
  666. package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +0 -1
  667. package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +0 -1
  668. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +2 -30
  669. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/BUCK +2 -22
  670. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +0 -2
  671. package/ReactAndroid/src/main/java/com/facebook/react/CoreModulesPackage.java +0 -2
  672. package/ReactAndroid/src/main/java/com/facebook/react/JSEngineResolutionAlgorithm.java +18 -0
  673. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +31 -31
  674. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +15 -39
  675. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +8 -12
  676. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +66 -3
  677. package/ReactAndroid/src/main/java/com/facebook/react/TurboReactPackage.java +3 -1
  678. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +0 -2
  679. package/ReactAndroid/src/main/java/com/facebook/react/animated/EventAnimationDriver.java +6 -1
  680. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -24
  681. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +43 -38
  682. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +0 -4
  683. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +2 -11
  684. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +1 -1
  685. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +0 -2
  686. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +1 -3
  687. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +10 -0
  688. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +22 -1
  689. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +2 -0
  690. package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +0 -1
  691. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +0 -1
  692. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +12 -32
  693. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultComponentsRegistry.kt +35 -0
  694. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultJSIModulePackage.kt +58 -0
  695. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultNewArchitectureEntryPoint.kt +49 -0
  696. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactActivityDelegate.kt +46 -0
  697. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultReactNativeHost.kt +71 -0
  698. package/ReactAndroid/src/main/java/com/facebook/react/defaults/DefaultTurboModuleManagerDelegate.kt +33 -0
  699. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +0 -4
  700. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +1 -3
  701. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +24 -2
  702. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CoreComponentsRegistry.java +1 -2
  703. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppComponentRegistry.java +28 -0
  704. package/ReactAndroid/src/main/java/com/facebook/react/fabric/CppViewMutationsWrapper.java +47 -0
  705. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +14 -7
  706. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +4 -8
  707. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +18 -54
  708. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +19 -5
  709. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +2 -25
  710. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +0 -1
  711. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +0 -1
  712. package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +0 -1
  713. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +0 -1
  714. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +0 -2
  715. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +0 -2
  716. package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +0 -1
  717. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +0 -1
  718. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -3
  719. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +0 -2
  720. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +0 -2
  721. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +0 -1
  722. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +0 -1
  723. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +0 -2
  724. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +0 -3
  725. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +0 -2
  726. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +0 -2
  727. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +0 -1
  728. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +0 -2
  729. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +0 -2
  730. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +0 -2
  731. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +0 -2
  732. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +0 -2
  733. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +12 -21
  734. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +0 -1
  735. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +0 -1
  736. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +0 -2
  737. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +0 -2
  738. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/AndroidInfoModule.java +2 -0
  739. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +0 -4
  740. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  741. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +0 -1
  742. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +0 -1
  743. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +0 -2
  744. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/WebSocketModule.java +11 -3
  745. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +0 -2
  746. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +0 -1
  747. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -2
  748. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -3
  749. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -5
  750. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +0 -2
  751. package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +0 -2
  752. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +1 -3
  753. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +0 -2
  754. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +1 -7
  755. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +48 -15
  756. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManagerDelegate.java +3 -1
  757. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +3 -14
  758. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +277 -252
  759. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +24 -0
  760. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +6 -3
  761. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +6 -0
  762. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +16 -0
  763. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +0 -25
  764. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +3 -31
  765. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewProps.java +6 -0
  766. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +0 -2
  767. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +0 -2
  768. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +18 -0
  769. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +172 -45
  770. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +101 -44
  771. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +0 -2
  772. package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +0 -1
  773. package/ReactAndroid/src/main/java/com/facebook/react/util/RNLog.java +3 -3
  774. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +0 -2
  775. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +0 -2
  776. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/ReactDrawerLayout.java +12 -0
  777. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +1 -4
  778. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +30 -30
  779. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +0 -4
  780. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ImageSource.java +9 -4
  781. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +0 -2
  782. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +15 -6
  783. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +0 -2
  784. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +0 -2
  785. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +1 -0
  786. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +22 -12
  787. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +0 -11
  788. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +0 -2
  789. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +1 -1
  790. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +0 -2
  791. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/ReactSwipeRefreshLayout.java +12 -0
  792. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +0 -2
  793. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +0 -2
  794. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +3 -7
  795. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +60 -0
  796. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +60 -0
  797. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +2 -25
  798. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +7 -25
  799. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +0 -2
  800. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +9 -5
  801. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +42 -12
  802. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +76 -21
  803. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +0 -2
  804. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +0 -2
  805. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +25 -1
  806. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +4 -4
  807. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +1 -3
  808. package/ReactAndroid/src/main/java/com/facebook/systrace/BUCK +4 -1
  809. package/ReactAndroid/src/main/java/com/facebook/systrace/Systrace.java +22 -8
  810. package/ReactAndroid/src/main/java/com/facebook/systrace/SystraceMessage.java +61 -8
  811. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaAlign.java +2 -0
  812. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDimension.java +2 -0
  813. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDirection.java +2 -0
  814. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaDisplay.java +2 -0
  815. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaEdge.java +2 -0
  816. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaExperimentalFeature.java +2 -0
  817. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaFlexDirection.java +2 -0
  818. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaGutter.java +35 -0
  819. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaJustify.java +3 -2
  820. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaLogLevel.java +2 -0
  821. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaMeasureMode.java +2 -0
  822. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNative.java +3 -1
  823. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNode.java +4 -0
  824. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeJNIBase.java +10 -0
  825. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaNodeType.java +2 -0
  826. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaOverflow.java +2 -0
  827. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPositionType.java +2 -0
  828. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaPrintOptions.java +2 -0
  829. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaUnit.java +2 -0
  830. package/ReactAndroid/src/main/java/com/facebook/yoga/YogaWrap.java +2 -0
  831. package/ReactAndroid/src/main/jni/CMakeLists.txt +20 -11
  832. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +23 -0
  833. package/ReactAndroid/src/main/jni/react/cxxcomponents/BUCK +44 -0
  834. package/ReactAndroid/src/main/jni/react/cxxcomponents/CMakeLists.txt +22 -0
  835. package/ReactAndroid/src/main/jni/react/cxxcomponents/Component.h +66 -0
  836. package/ReactAndroid/src/main/jni/react/cxxcomponents/ComponentManager.h +26 -0
  837. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.cpp +0 -0
  838. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/AsyncEventBeat.h +0 -0
  839. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/BUCK +3 -3
  840. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.cpp +37 -59
  841. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/Binding.h +5 -9
  842. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CMakeLists.txt +1 -0
  843. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.cpp +0 -0
  844. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ComponentFactory.h +0 -0
  845. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.cpp +51 -0
  846. package/ReactAndroid/src/main/jni/react/fabric/ComponentRegistryResolver.h +47 -0
  847. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.cpp +0 -0
  848. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/CoreComponentsRegistry.h +0 -0
  849. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.cpp +73 -0
  850. package/ReactAndroid/src/main/jni/react/fabric/CppComponentRegistry.h +64 -0
  851. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.cpp +100 -0
  852. package/ReactAndroid/src/main/jni/react/fabric/CppViewMutationsWrapper.h +39 -0
  853. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.cpp +0 -0
  854. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventBeatManager.h +0 -0
  855. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.cpp +0 -0
  856. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/EventEmitterWrapper.h +0 -0
  857. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.cpp +4 -2
  858. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountItem.h +4 -1
  859. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.cpp +93 -55
  860. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/FabricMountingManager.h +3 -4
  861. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.cpp +0 -0
  862. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JBackgroundExecutor.h +0 -0
  863. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.cpp +0 -0
  864. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/JFabricUIManager.h +0 -0
  865. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/OnLoad.cpp +2 -0
  866. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.cpp +0 -0
  867. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/ReactNativeConfigHolder.h +0 -0
  868. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.cpp +0 -0
  869. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/StateWrapperImpl.h +0 -0
  870. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.cpp +0 -0
  871. package/ReactAndroid/src/main/{java/com/facebook/react/fabric/jni → jni/react/fabric}/SurfaceHandlerBinding.h +0 -0
  872. package/ReactAndroid/src/main/jni/react/fabric/viewPropConversions.h +215 -0
  873. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/.clang-tidy +1 -0
  874. package/ReactAndroid/src/main/jni/react/hermes/instrumentation/BUCK +27 -0
  875. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/CMakeLists.txt +0 -0
  876. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesMemoryDumper.h +0 -0
  877. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.cpp +0 -0
  878. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/HermesSamplingProfiler.h +0 -0
  879. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/instrumentation/OnLoad.cpp +0 -0
  880. package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/BUCK +19 -0
  881. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/CMakeLists.txt +0 -0
  882. package/ReactAndroid/src/main/{java/com/facebook → jni/react}/hermes/reactexecutor/OnLoad.cpp +0 -0
  883. package/ReactAndroid/src/main/jni/react/jni/BUCK +3 -3
  884. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +11 -25
  885. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -10
  886. package/ReactAndroid/src/main/jni/react/jni/JCallback.h +7 -0
  887. package/ReactAndroid/src/main/jni/react/jscexecutor/BUCK +22 -0
  888. package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/CMakeLists.txt +0 -0
  889. package/ReactAndroid/src/main/{java/com/facebook → jni}/react/jscexecutor/OnLoad.cpp +0 -0
  890. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/BUCK +0 -1
  891. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/CMakeLists.txt +0 -0
  892. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/.clang-tidy +0 -0
  893. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.cpp +0 -0
  894. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JReadableMapBuffer.h +0 -0
  895. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.cpp +0 -0
  896. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/JWritableMapBuffer.h +0 -0
  897. package/ReactAndroid/src/main/{java/com/facebook/react/common/mapbuffer/jni → jni/react/mapbuffer}/react/common/mapbuffer/OnLoad.cpp +0 -0
  898. package/ReactAndroid/src/main/jni/react/newarchdefaults/CMakeLists.txt +22 -0
  899. package/{template/android/app/src/main/jni/MainComponentsRegistry.cpp → ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.cpp} +21 -16
  900. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultComponentsRegistry.h +47 -0
  901. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.cpp +60 -0
  902. package/ReactAndroid/src/main/jni/react/newarchdefaults/DefaultTurboModuleManagerDelegate.h +53 -0
  903. package/ReactAndroid/src/main/jni/react/newarchdefaults/OnLoad.cpp +18 -0
  904. package/ReactAndroid/src/main/jni/react/perftests/BUCK +0 -1
  905. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BUCK +0 -1
  906. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.cpp +0 -0
  907. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/BlobCollector.h +0 -0
  908. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/CMakeLists.txt +0 -0
  909. package/ReactAndroid/src/main/{java/com/facebook/react/modules/blob/jni → jni/react/reactnativeblob}/OnLoad.cpp +0 -0
  910. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/BUCK +0 -1
  911. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/CMakeLists.txt +0 -0
  912. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/.clang-tidy +1 -0
  913. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/JNativeModulePerfLogger.h +0 -0
  914. package/ReactAndroid/src/main/{java/com/facebook/react/reactperflogger/jni → jni/react/reactperflogger}/reactperflogger/OnLoad.cpp +0 -0
  915. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/BUCK +1 -3
  916. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/CMakeLists.txt +0 -0
  917. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.cpp +0 -0
  918. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CallInvokerHolder.h +0 -0
  919. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.cpp +0 -0
  920. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/CompositeTurboModuleManagerDelegate.h +0 -0
  921. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/OnLoad.cpp +0 -0
  922. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.cpp +0 -0
  923. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManager.h +0 -0
  924. package/ReactAndroid/src/main/{java/com/facebook/react/turbomodule/core/jni → jni/react/turbomodule}/ReactCommon/TurboModuleManagerDelegate.h +0 -0
  925. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/BUCK +0 -2
  926. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/CMakeLists.txt +0 -0
  927. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.cpp +0 -0
  928. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/ComponentNameResolverManager.h +0 -0
  929. package/ReactAndroid/src/main/{java/com/facebook/react/uimanager/jni → jni/react/uimanager}/OnLoad.cpp +0 -0
  930. package/ReactAndroid/src/main/libraries/fbjni/BUCK +1 -1
  931. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +1 -1
  932. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +13 -22
  933. package/ReactCommon/React-Fabric.podspec +17 -4
  934. package/ReactCommon/ReactCommon.podspec +13 -4
  935. package/ReactCommon/butter/BUCK +4 -3
  936. package/ReactCommon/butter/CMakeLists.txt +3 -1
  937. package/ReactCommon/callinvoker/BUCK +1 -1
  938. package/ReactCommon/callinvoker/CMakeLists.txt +7 -1
  939. package/ReactCommon/cxxreact/BUCK +17 -11
  940. package/ReactCommon/cxxreact/CxxNativeModule.cpp +33 -25
  941. package/ReactCommon/cxxreact/JSBundleType.h +7 -4
  942. package/ReactCommon/cxxreact/JSExecutor.h +1 -2
  943. package/ReactCommon/cxxreact/NativeToJsBridge.cpp +2 -2
  944. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  945. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  946. package/ReactCommon/cxxreact/SampleCxxModule.cpp +1 -1
  947. package/ReactCommon/cxxreact/SystraceSection.h +11 -1
  948. package/ReactCommon/hermes/React-hermes.podspec +9 -6
  949. package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +11 -21
  950. package/ReactCommon/hermes/inspector/BUCK +4 -5
  951. package/ReactCommon/hermes/inspector/Inspector.cpp +1 -1
  952. package/ReactCommon/hermes/inspector/RuntimeAdapter.cpp +3 -8
  953. package/ReactCommon/hermes/inspector/RuntimeAdapter.h +4 -9
  954. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +87 -20
  955. package/ReactCommon/hermes/inspector/chrome/Connection.h +1 -1
  956. package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.cpp +8 -19
  957. package/ReactCommon/hermes/inspector/chrome/ConnectionDemux.h +3 -2
  958. package/ReactCommon/hermes/inspector/chrome/MessageConverters.cpp +10 -0
  959. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +106 -1
  960. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +49 -1
  961. package/ReactCommon/hermes/inspector/chrome/Registration.cpp +4 -4
  962. package/ReactCommon/hermes/inspector/chrome/Registration.h +9 -5
  963. package/ReactCommon/hermes/inspector/chrome/cli/main.cpp +5 -3
  964. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionDemuxTests.cpp +3 -5
  965. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +48 -0
  966. package/ReactCommon/hermes/inspector/chrome/tests/SyncConnection.cpp +1 -3
  967. package/ReactCommon/hermes/inspector/tests/InspectorTests.cpp +1 -3
  968. package/ReactCommon/hermes/inspector/tools/message_types.txt +2 -0
  969. package/ReactCommon/hermes/inspector/tools/run_msggen +3 -1
  970. package/ReactCommon/jserrorhandler/BUCK +30 -0
  971. package/ReactCommon/jserrorhandler/JsErrorHandler.cpp +107 -0
  972. package/ReactCommon/jserrorhandler/JsErrorHandler.h +39 -0
  973. package/ReactCommon/jsi/BUCK +3 -4
  974. package/ReactCommon/jsi/JSCRuntime.cpp +59 -0
  975. package/ReactCommon/jsi/React-jsc.podspec +41 -0
  976. package/ReactCommon/jsi/React-jsi.podspec +18 -23
  977. package/ReactCommon/{React-bridging.podspec → jsi/React-jsidynamic.podspec} +11 -11
  978. package/ReactCommon/jsi/jsi/JSIDynamic.cpp +7 -2
  979. package/ReactCommon/jsi/jsi/decorator.h +38 -0
  980. package/ReactCommon/jsi/jsi/jsi-inl.h +27 -0
  981. package/ReactCommon/jsi/jsi/jsi.cpp +18 -0
  982. package/ReactCommon/jsi/jsi/jsi.h +107 -0
  983. package/ReactCommon/jsiexecutor/BUCK +1 -2
  984. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -0
  985. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +1 -5
  986. package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +0 -2
  987. package/ReactCommon/jsinspector/BUCK +1 -1
  988. package/ReactCommon/logger/BUCK +1 -1
  989. package/ReactCommon/logger/React-logger.podspec +1 -1
  990. package/ReactCommon/react/bridging/Array.h +19 -0
  991. package/ReactCommon/react/bridging/BUCK +2 -2
  992. package/ReactCommon/react/bridging/Base.h +1 -2
  993. package/ReactCommon/react/bridging/CMakeLists.txt +8 -1
  994. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +113 -0
  995. package/ReactCommon/react/config/BUCK +1 -3
  996. package/ReactCommon/react/config/CMakeLists.txt +2 -0
  997. package/ReactCommon/react/debug/BUCK +3 -4
  998. package/ReactCommon/react/debug/CMakeLists.txt +2 -0
  999. package/ReactCommon/react/nativemodule/core/BUCK +1 -3
  1000. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +8 -1
  1001. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.h +2 -2
  1002. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +1 -0
  1003. package/ReactCommon/react/nativemodule/samples/BUCK +1 -1
  1004. package/ReactCommon/react/nativemodule/samples/platform/android/CMakeLists.txt +9 -1
  1005. package/ReactCommon/react/renderer/.clang-tidy +144 -0
  1006. package/ReactCommon/react/renderer/animations/BUCK +1 -6
  1007. package/ReactCommon/react/renderer/animations/CMakeLists.txt +8 -1
  1008. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +4 -6
  1009. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +26 -35
  1010. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +4 -6
  1011. package/ReactCommon/react/renderer/animations/utils.cpp +2 -4
  1012. package/ReactCommon/react/renderer/attributedstring/AttributedString.cpp +22 -5
  1013. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +13 -1
  1014. package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.cpp +2 -4
  1015. package/ReactCommon/react/renderer/attributedstring/BUCK +3 -5
  1016. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +8 -1
  1017. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +2 -4
  1018. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +14 -4
  1019. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -0
  1020. package/ReactCommon/react/renderer/attributedstring/conversions.h +134 -0
  1021. package/ReactCommon/react/renderer/attributedstring/primitives.h +30 -0
  1022. package/ReactCommon/react/renderer/attributedstring/tests/AttributedStringBoxTest.cpp +2 -4
  1023. package/ReactCommon/react/renderer/attributedstring/tests/ParagraphAttributesTest.cpp +2 -4
  1024. package/ReactCommon/react/renderer/componentregistry/BUCK +1 -8
  1025. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +8 -1
  1026. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +3 -5
  1027. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -1
  1028. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +6 -13
  1029. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +3 -2
  1030. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -4
  1031. package/ReactCommon/react/renderer/componentregistry/native/BUCK +1 -7
  1032. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +8 -1
  1033. package/ReactCommon/react/renderer/componentregistry/native/NativeComponentRegistryBinding.cpp +5 -7
  1034. package/ReactCommon/react/renderer/components/image/BUCK +1 -4
  1035. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +8 -1
  1036. package/ReactCommon/react/renderer/components/image/ImageEventEmitter.cpp +2 -4
  1037. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +82 -41
  1038. package/ReactCommon/react/renderer/components/image/ImageProps.h +13 -7
  1039. package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +2 -4
  1040. package/ReactCommon/react/renderer/components/image/ImageState.cpp +2 -4
  1041. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
  1042. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +3 -3
  1043. package/ReactCommon/react/renderer/components/modal/BUCK +2 -4
  1044. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +8 -1
  1045. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.cpp +2 -4
  1046. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.cpp +2 -4
  1047. package/ReactCommon/react/renderer/components/progressbar/BUCK +2 -5
  1048. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +8 -1
  1049. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarMeasurementsManager.cpp +2 -4
  1050. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/AndroidProgressBarShadowNode.cpp +3 -5
  1051. package/ReactCommon/react/renderer/components/root/BUCK +1 -5
  1052. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +8 -1
  1053. package/ReactCommon/react/renderer/components/root/RootProps.cpp +4 -6
  1054. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -4
  1055. package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
  1056. package/ReactCommon/react/renderer/components/scrollview/BUCK +2 -5
  1057. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +8 -1
  1058. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +2 -4
  1059. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +180 -163
  1060. package/ReactCommon/react/renderer/components/scrollview/ScrollViewShadowNode.cpp +2 -4
  1061. package/ReactCommon/react/renderer/components/scrollview/ScrollViewState.cpp +2 -4
  1062. package/ReactCommon/react/renderer/components/slider/BUCK +2 -4
  1063. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +8 -1
  1064. package/ReactCommon/react/renderer/components/slider/SliderShadowNode.cpp +3 -5
  1065. package/ReactCommon/react/renderer/components/slider/SliderState.cpp +2 -4
  1066. package/ReactCommon/react/renderer/components/slider/platform/android/react/renderer/components/slider/SliderMeasurementsManager.cpp +2 -4
  1067. package/ReactCommon/react/renderer/components/switch/BUCK +1 -9
  1068. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +2 -0
  1069. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchMeasurementsManager.cpp +2 -4
  1070. package/ReactCommon/react/renderer/components/switch/androidswitch/react/renderer/components/androidswitch/AndroidSwitchShadowNode.cpp +3 -5
  1071. package/ReactCommon/react/renderer/components/text/BUCK +1 -6
  1072. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +23 -24
  1073. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +0 -2
  1074. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +4 -6
  1075. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +8 -1
  1076. package/ReactCommon/react/renderer/components/text/ParagraphEventEmitter.cpp +2 -4
  1077. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +84 -21
  1078. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +3 -3
  1079. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +5 -6
  1080. package/ReactCommon/react/renderer/components/text/ParagraphState.cpp +2 -4
  1081. package/ReactCommon/react/renderer/components/text/ParagraphState.h +9 -0
  1082. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +2 -4
  1083. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.cpp +2 -4
  1084. package/ReactCommon/react/renderer/components/text/TextProps.cpp +2 -4
  1085. package/ReactCommon/react/renderer/components/text/TextShadowNode.cpp +2 -4
  1086. package/ReactCommon/react/renderer/components/text/conversions.h +1 -9
  1087. package/ReactCommon/react/renderer/components/textinput/BUCK +2 -6
  1088. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +8 -1
  1089. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +214 -66
  1090. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +59 -59
  1091. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.cpp +9 -11
  1092. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.cpp +24 -4
  1093. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputState.h +1 -3
  1094. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +4 -10
  1095. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.cpp +2 -4
  1096. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputEventEmitter.h +2 -2
  1097. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +2 -4
  1098. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputShadowNode.cpp +2 -4
  1099. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputState.cpp +4 -6
  1100. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +20 -0
  1101. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +10 -2
  1102. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +4 -4
  1103. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +1 -9
  1104. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +8 -1
  1105. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +2 -4
  1106. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.cpp +2 -4
  1107. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewShadowNode.cpp +2 -4
  1108. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +134 -123
  1109. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  1110. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.cpp +168 -0
  1111. package/ReactCommon/react/renderer/components/view/AccessibilityPropsMapBuffer.h +33 -0
  1112. package/ReactCommon/react/renderer/components/view/BUCK +3 -4
  1113. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +8 -1
  1114. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +9 -5
  1115. package/ReactCommon/react/renderer/components/view/PointerEvent.h +26 -0
  1116. package/ReactCommon/react/renderer/components/view/Touch.cpp +3 -5
  1117. package/ReactCommon/react/renderer/components/view/Touch.h +1 -1
  1118. package/ReactCommon/react/renderer/components/view/TouchEvent.cpp +3 -5
  1119. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +8 -4
  1120. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +2 -4
  1121. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +195 -179
  1122. package/ReactCommon/react/renderer/components/view/ViewProps.h +6 -0
  1123. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.cpp +202 -0
  1124. package/ReactCommon/react/renderer/components/view/ViewPropsMapBuffer.h +56 -0
  1125. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +8 -26
  1126. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +8 -9
  1127. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +38 -20
  1128. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +6 -1
  1129. package/ReactCommon/react/renderer/components/view/YogaStylablePropsMapBuffer.cpp +87 -0
  1130. package/ReactCommon/{hermes/inspector/chrome/AutoAttachUtils.h → react/renderer/components/view/YogaStylablePropsMapBuffer.h} +11 -11
  1131. package/ReactCommon/react/renderer/components/view/conversions.h +18 -0
  1132. package/ReactCommon/react/renderer/components/view/primitives.h +10 -0
  1133. package/ReactCommon/react/renderer/components/view/propsConversions.h +37 -17
  1134. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +2 -4
  1135. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +2 -4
  1136. package/ReactCommon/react/renderer/components/view/viewPropConversions.h +198 -0
  1137. package/ReactCommon/react/renderer/core/BUCK +8 -9
  1138. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -4
  1139. package/ReactCommon/react/renderer/core/CMakeLists.txt +9 -1
  1140. package/ReactCommon/react/renderer/core/ComponentDescriptor.cpp +2 -4
  1141. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +2 -1
  1142. package/ReactCommon/react/renderer/core/CoreFeatures.cpp +17 -0
  1143. package/ReactCommon/react/renderer/core/CoreFeatures.h +31 -0
  1144. package/ReactCommon/react/renderer/core/DynamicPropsUtilities.cpp +2 -4
  1145. package/ReactCommon/react/renderer/core/EventBeat.cpp +2 -4
  1146. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +2 -4
  1147. package/ReactCommon/react/renderer/core/EventEmitter.cpp +3 -5
  1148. package/ReactCommon/react/renderer/core/EventQueue.cpp +3 -5
  1149. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +2 -4
  1150. package/ReactCommon/react/renderer/core/EventTarget.cpp +3 -5
  1151. package/ReactCommon/react/renderer/core/LayoutConstraints.cpp +2 -4
  1152. package/ReactCommon/react/renderer/core/LayoutMetrics.cpp +3 -5
  1153. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +96 -18
  1154. package/ReactCommon/react/renderer/core/Props.cpp +12 -15
  1155. package/ReactCommon/react/renderer/core/Props.h +8 -11
  1156. package/ReactCommon/react/renderer/core/PropsMacros.h +20 -6
  1157. package/ReactCommon/react/renderer/core/PropsMapBuffer.cpp +37 -0
  1158. package/ReactCommon/react/renderer/core/PropsMapBuffer.h +23 -0
  1159. package/ReactCommon/react/renderer/core/RawEvent.cpp +2 -4
  1160. package/ReactCommon/react/renderer/core/RawProps.cpp +5 -6
  1161. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  1162. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +4 -6
  1163. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +2 -4
  1164. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +3 -5
  1165. package/ReactCommon/react/renderer/core/RawPropsParser.h +2 -2
  1166. package/ReactCommon/react/renderer/core/RawPropsPrimitives.h +1 -1
  1167. package/ReactCommon/react/renderer/core/RawValue.h +10 -14
  1168. package/ReactCommon/react/renderer/core/Sealable.cpp +4 -6
  1169. package/ReactCommon/react/renderer/core/ShadowNode.cpp +6 -4
  1170. package/ReactCommon/react/renderer/core/ShadowNode.h +5 -0
  1171. package/ReactCommon/react/renderer/core/ShadowNodeFamily.cpp +3 -5
  1172. package/ReactCommon/react/renderer/core/ShadowNodeFamilyFragment.cpp +2 -4
  1173. package/ReactCommon/react/renderer/core/ShadowNodeFragment.cpp +2 -4
  1174. package/ReactCommon/react/renderer/core/ShadowNodeTraits.cpp +1 -3
  1175. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +18 -13
  1176. package/ReactCommon/react/renderer/core/State.cpp +2 -4
  1177. package/ReactCommon/react/renderer/core/UnbatchedEventQueue.cpp +2 -4
  1178. package/ReactCommon/react/renderer/core/propsConversions.h +17 -35
  1179. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +3 -3
  1180. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +372 -0
  1181. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +2 -2
  1182. package/ReactCommon/react/renderer/core/tests/TestComponent.h +4 -2
  1183. package/ReactCommon/react/renderer/core/tests/benchmarks/RawPropsBenchmark.cpp +2 -4
  1184. package/ReactCommon/react/renderer/debug/BUCK +1 -4
  1185. package/ReactCommon/react/renderer/debug/CMakeLists.txt +8 -1
  1186. package/ReactCommon/react/renderer/debug/DebugStringConvertible.cpp +6 -8
  1187. package/ReactCommon/react/renderer/debug/DebugStringConvertibleItem.cpp +2 -4
  1188. package/ReactCommon/react/renderer/element/BUCK +1 -1
  1189. package/ReactCommon/react/renderer/element/ComponentBuilder.cpp +2 -4
  1190. package/ReactCommon/react/renderer/graphics/BUCK +2 -5
  1191. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +8 -1
  1192. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  1193. package/ReactCommon/react/renderer/graphics/Transform.cpp +43 -17
  1194. package/ReactCommon/react/renderer/graphics/Transform.h +20 -5
  1195. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +4 -6
  1196. package/ReactCommon/react/renderer/graphics/tests/TransformTest.cpp +7 -0
  1197. package/ReactCommon/react/renderer/imagemanager/BUCK +1 -4
  1198. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +8 -1
  1199. package/ReactCommon/react/renderer/imagemanager/ImageManager.h +1 -1
  1200. package/ReactCommon/react/renderer/imagemanager/ImageResponse.cpp +2 -4
  1201. package/ReactCommon/react/renderer/imagemanager/ImageResponseObserverCoordinator.cpp +2 -4
  1202. package/ReactCommon/react/renderer/imagemanager/ImageTelemetry.cpp +2 -4
  1203. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageManager.cpp +6 -7
  1204. package/ReactCommon/react/renderer/imagemanager/platform/cxx/react/renderer/imagemanager/ImageRequest.cpp +2 -4
  1205. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImagePrimitivesConversions.h +14 -16
  1206. package/ReactCommon/react/renderer/leakchecker/BUCK +1 -1
  1207. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +8 -1
  1208. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +4 -6
  1209. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -1
  1210. package/ReactCommon/react/renderer/leakchecker/WeakFamilyRegistry.cpp +3 -6
  1211. package/ReactCommon/react/renderer/mapbuffer/BUCK +5 -6
  1212. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +8 -1
  1213. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.cpp +28 -5
  1214. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +2 -0
  1215. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.cpp +35 -4
  1216. package/ReactCommon/react/renderer/mapbuffer/MapBufferBuilder.h +5 -0
  1217. package/ReactCommon/react/renderer/mapbuffer/tests/MapBufferTest.cpp +25 -0
  1218. package/ReactCommon/react/renderer/mounting/BUCK +2 -5
  1219. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +8 -1
  1220. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +15 -92
  1221. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +4 -6
  1222. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +1 -1
  1223. package/ReactCommon/react/renderer/mounting/MountingTransaction.cpp +2 -4
  1224. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +6 -8
  1225. package/ReactCommon/react/renderer/mounting/ShadowTree.h +4 -4
  1226. package/ReactCommon/react/renderer/mounting/ShadowTreeRegistry.cpp +2 -4
  1227. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +5 -6
  1228. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +8 -9
  1229. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +4 -3
  1230. package/ReactCommon/react/renderer/mounting/StubView.cpp +4 -6
  1231. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +2 -4
  1232. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +2 -4
  1233. package/ReactCommon/react/renderer/mounting/stubs.cpp +2 -4
  1234. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +2 -4
  1235. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +2 -4
  1236. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +2 -4
  1237. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -6
  1238. package/ReactCommon/react/renderer/runtimescheduler/BUCK +2 -1
  1239. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +8 -1
  1240. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +5 -6
  1241. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +4 -6
  1242. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +2 -4
  1243. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +6 -8
  1244. package/ReactCommon/react/renderer/runtimescheduler/Task.h +1 -1
  1245. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +45 -45
  1246. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +1 -1
  1247. package/ReactCommon/react/renderer/scheduler/BUCK +1 -5
  1248. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +8 -1
  1249. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +16 -36
  1250. package/ReactCommon/react/renderer/scheduler/Scheduler.h +1 -4
  1251. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +0 -8
  1252. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +7 -0
  1253. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +10 -9
  1254. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +1 -1
  1255. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -4
  1256. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +3 -5
  1257. package/ReactCommon/react/renderer/telemetry/BUCK +1 -5
  1258. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +8 -1
  1259. package/ReactCommon/react/renderer/telemetry/SurfaceTelemetry.cpp +2 -4
  1260. package/ReactCommon/react/renderer/telemetry/TransactionTelemetry.cpp +2 -4
  1261. package/ReactCommon/react/renderer/templateprocessor/BUCK +3 -5
  1262. package/ReactCommon/react/renderer/templateprocessor/CMakeLists.txt +8 -1
  1263. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +2 -4
  1264. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.h +2 -2
  1265. package/ReactCommon/react/renderer/templateprocessor/tests/UITemplateProcessorTest.cpp +8 -9
  1266. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +1 -5
  1267. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +8 -1
  1268. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.cpp +2 -4
  1269. package/ReactCommon/react/renderer/textlayoutmanager/TextMeasureCache.h +4 -1
  1270. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +8 -72
  1271. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +1 -2
  1272. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +84 -8
  1273. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTTextPrimitivesConversions.h +46 -23
  1274. package/ReactCommon/react/renderer/timeline/BUCK +2 -5
  1275. package/ReactCommon/react/renderer/timeline/Timeline.cpp +7 -8
  1276. package/ReactCommon/react/renderer/timeline/TimelineController.cpp +3 -5
  1277. package/ReactCommon/react/renderer/timeline/TimelineFrame.cpp +2 -4
  1278. package/ReactCommon/react/renderer/timeline/TimelineHandler.cpp +3 -5
  1279. package/ReactCommon/react/renderer/timeline/TimelineHandler.h +2 -2
  1280. package/ReactCommon/react/renderer/timeline/TimelineSnapshot.cpp +2 -4
  1281. package/ReactCommon/react/renderer/uimanager/BUCK +2 -5
  1282. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +8 -1
  1283. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +13 -16
  1284. package/ReactCommon/react/renderer/uimanager/UIManager.h +1 -1
  1285. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +50 -54
  1286. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +1 -7
  1287. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +0 -9
  1288. package/ReactCommon/react/test_utils/BUCK +1 -1
  1289. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +6 -0
  1290. package/ReactCommon/react/utils/BUCK +2 -6
  1291. package/ReactCommon/react/utils/CMakeLists.txt +2 -0
  1292. package/ReactCommon/react/utils/ManagedObjectWrapper.h +1 -1
  1293. package/ReactCommon/react/utils/ManagedObjectWrapper.mm +1 -3
  1294. package/ReactCommon/reactperflogger/BUCK +1 -1
  1295. package/ReactCommon/reactperflogger/CMakeLists.txt +7 -1
  1296. package/ReactCommon/runtimeexecutor/BUCK +1 -1
  1297. package/ReactCommon/runtimeexecutor/CMakeLists.txt +7 -1
  1298. package/ReactCommon/yoga/CMakeLists.txt +7 -1
  1299. package/ReactCommon/yoga/yoga/CompactValue.h +49 -29
  1300. package/ReactCommon/yoga/yoga/Utils.cpp +4 -0
  1301. package/ReactCommon/yoga/yoga/YGEnums.cpp +14 -0
  1302. package/ReactCommon/yoga/yoga/YGEnums.h +31 -52
  1303. package/ReactCommon/yoga/yoga/YGMacros.h +43 -0
  1304. package/ReactCommon/yoga/yoga/YGNode.cpp +33 -0
  1305. package/ReactCommon/yoga/yoga/YGNode.h +11 -0
  1306. package/ReactCommon/yoga/yoga/YGNodePrint.cpp +14 -0
  1307. package/ReactCommon/yoga/yoga/YGStyle.cpp +1 -1
  1308. package/ReactCommon/yoga/yoga/YGStyle.h +5 -0
  1309. package/ReactCommon/yoga/yoga/Yoga.cpp +76 -29
  1310. package/ReactCommon/yoga/yoga/Yoga.h +7 -0
  1311. package/ReactCommon/yoga/yoga/event/event.h +3 -0
  1312. package/flow/jest.js +2 -2
  1313. package/flow-typed/npm/{react-dom_v16.x.x.js → react-dom_v17.x.x.js} +58 -31
  1314. package/flow-typed/npm/yargs_v17.x.x.js +341 -0
  1315. package/index.js +89 -55
  1316. package/interface.js +8 -0
  1317. package/jest/react-native-env.js +16 -0
  1318. package/jest/renderer.js +2 -2
  1319. package/jest/setup.js +5 -8
  1320. package/jest-preset.js +1 -1
  1321. package/package.json +56 -43
  1322. package/react.gradle +20 -16
  1323. package/scripts/cocoapods/codegen.rb +4 -1
  1324. package/scripts/cocoapods/codegen_utils.rb +30 -15
  1325. package/scripts/cocoapods/fabric.rb +8 -11
  1326. package/scripts/cocoapods/flipper.rb +1 -1
  1327. package/scripts/cocoapods/jsengine.rb +72 -0
  1328. package/scripts/cocoapods/new_architecture.rb +40 -1
  1329. package/scripts/cocoapods/utils.rb +8 -12
  1330. package/scripts/codegen/generate-artifacts-executor.js +1 -1
  1331. package/scripts/codegen/generate-specs-cli-executor.js +4 -4
  1332. package/scripts/{generate-artifacts.js → generate-codegen-artifacts.js} +0 -0
  1333. package/scripts/hermes/hermes-utils.js +135 -60
  1334. package/scripts/hermes/prepare-hermes-for-build.js +9 -8
  1335. package/scripts/native_modules.rb +6 -0
  1336. package/scripts/packager.sh +1 -1
  1337. package/scripts/react-native-xcode.sh +19 -6
  1338. package/scripts/react_native_pods.rb +69 -15
  1339. package/scripts/react_native_pods_utils/script_phases.sh +1 -1
  1340. package/sdks/.hermesversion +1 -1
  1341. package/sdks/hermes-engine/hermes-engine.podspec +100 -41
  1342. package/sdks/hermes-engine/hermes-utils.rb +26 -0
  1343. package/sdks/hermes-engine/utils/build-apple-framework.sh +84 -44
  1344. package/sdks/hermes-engine/utils/build-hermes-xcode.sh +65 -0
  1345. package/sdks/hermes-engine/utils/build-hermesc-xcode.sh +22 -0
  1346. package/sdks/hermes-engine/utils/build-ios-framework.sh +2 -1
  1347. package/sdks/hermes-engine/utils/build-mac-framework.sh +2 -1
  1348. package/sdks/hermes-engine/utils/copy-hermes-xcode.sh +22 -0
  1349. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  1350. package/sdks/hermesc/osx-bin/hermesc +0 -0
  1351. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  1352. package/template/{App.js → App.tsx} +10 -9
  1353. package/template/Gemfile +2 -2
  1354. package/template/__tests__/{App-test.js → App-test.tsx} +0 -0
  1355. package/template/_eslintrc.js +2 -0
  1356. package/template/_gitignore +5 -6
  1357. package/template/_ruby-version +1 -1
  1358. package/template/android/app/build.gradle +65 -208
  1359. package/template/android/app/src/debug/java/com/helloworld/ReactNativeFlipper.java +4 -2
  1360. package/template/android/app/src/main/AndroidManifest.xml +1 -2
  1361. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +13 -26
  1362. package/template/android/app/src/main/java/com/helloworld/MainApplication.java +18 -47
  1363. package/template/android/app/src/release/java/com/helloworld/ReactNativeFlipper.java +20 -0
  1364. package/template/android/build.gradle +7 -21
  1365. package/template/android/gradle.properties +4 -0
  1366. package/template/android/settings.gradle +0 -7
  1367. package/template/ios/HelloWorld/AppDelegate.h +2 -4
  1368. package/template/ios/HelloWorld/AppDelegate.mm +9 -110
  1369. package/template/ios/HelloWorld/Info.plist +2 -2
  1370. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  1371. package/template/ios/Podfile +7 -5
  1372. package/template/package.json +19 -10
  1373. package/template/tsconfig.json +3 -0
  1374. package/third-party-podspecs/RCT-Folly.podspec +1 -1
  1375. package/third-party-podspecs/boost.podspec +1 -1
  1376. package/types/.npmignore +1 -0
  1377. package/types/index.d.ts +212 -0
  1378. package/types/modules/BatchedBridge.d.ts +32 -0
  1379. package/types/modules/Codegen.d.ts +74 -0
  1380. package/types/modules/Devtools.d.ts +31 -0
  1381. package/types/modules/LaunchScreen.d.ts +18 -0
  1382. package/types/modules/globals.d.ts +577 -0
  1383. package/types/private/TimerMixin.d.ts +19 -0
  1384. package/{React/Views/RCTMaskedView.h → types/private/Utilities.d.ts} +4 -8
  1385. package/types/public/DeprecatedPropertiesAlias.d.ts +205 -0
  1386. package/types/public/Insets.d.ts +15 -0
  1387. package/types/public/ReactNativeRenderer.d.ts +149 -0
  1388. package/types/public/ReactNativeTypes.d.ts +141 -0
  1389. package/types/tsconfig.json +15 -0
  1390. package/types/tslint.json +23 -0
  1391. package/Libraries/Components/MaskedView/MaskedViewIOS.ios.js +0 -93
  1392. package/Libraries/Components/MaskedView/RCTMaskedViewNativeComponent.js +0 -21
  1393. package/Libraries/Core/setUpSystrace.js +0 -21
  1394. package/Libraries/Image/ImagePickerIOS.js +0 -103
  1395. package/Libraries/Image/NativeImagePickerIOS.js +0 -38
  1396. package/Libraries/Storage/AsyncStorage.js +0 -385
  1397. package/Libraries/Storage/NativeAsyncLocalStorage.js +0 -44
  1398. package/Libraries/Storage/NativeAsyncSQLiteDBStorage.js +0 -44
  1399. package/Libraries/Utilities/JSDevSupportModule.js +0 -37
  1400. package/Libraries/Utilities/NativeJSDevSupport.js +0 -23
  1401. package/React/CoreModules/RCTAsyncLocalStorage.h +0 -41
  1402. package/React/CoreModules/RCTAsyncLocalStorage.mm +0 -470
  1403. package/React/Views/RCTMaskedView.m +0 -34
  1404. package/React/Views/RCTMaskedViewManager.m +0 -26
  1405. package/ReactAndroid/cmake-utils/Android-prebuilt.cmake +0 -231
  1406. package/ReactAndroid/src/main/java/com/facebook/react/JSInterpreter.java +0 -18
  1407. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/JSDevSupport.java +0 -103
  1408. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +0 -540
  1409. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncLocalStorageUtil.java +0 -125
  1410. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageErrorUtil.java +0 -38
  1411. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/AsyncStorageModule.java +0 -433
  1412. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +0 -27
  1413. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/ReactDatabaseSupplier.java +0 -163
  1414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementationProvider.java +0 -72
  1415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +0 -242
  1416. package/ReactAndroid/src/main/jni/first-party/fbjni/.gitignore +0 -2
  1417. package/ReactAndroid/src/main/jni/first-party/fbjni/Android.mk +0 -14
  1418. package/ReactAndroid/src/main/jni/first-party/fbjni/CMakeLists.txt +0 -15
  1419. package/ReactCommon/hermes/inspector/chrome/AutoAttachUtils.cpp +0 -151
  1420. package/ReactCommon/hermes/inspector/tools/msggen/.babelrc +0 -8
  1421. package/ReactCommon/hermes/inspector/tools/msggen/.gitignore +0 -3
  1422. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/CommandTest.js +0 -62
  1423. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/EventTest.js +0 -47
  1424. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/GraphTest.js +0 -78
  1425. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/HeaderWriterTest.js +0 -128
  1426. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/ImplementationWriterTest.js +0 -171
  1427. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/PropertyTest.js +0 -131
  1428. package/ReactCommon/hermes/inspector/tools/msggen/__tests__/TypeTest.js +0 -50
  1429. package/ReactCommon/hermes/inspector/tools/msggen/package.json +0 -41
  1430. package/ReactCommon/hermes/inspector/tools/msggen/src/Command.js +0 -79
  1431. package/ReactCommon/hermes/inspector/tools/msggen/src/Converters.js +0 -39
  1432. package/ReactCommon/hermes/inspector/tools/msggen/src/Event.js +0 -57
  1433. package/ReactCommon/hermes/inspector/tools/msggen/src/GeneratedHeader.js +0 -16
  1434. package/ReactCommon/hermes/inspector/tools/msggen/src/Graph.js +0 -90
  1435. package/ReactCommon/hermes/inspector/tools/msggen/src/HeaderWriter.js +0 -323
  1436. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +0 -421
  1437. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +0 -219
  1438. package/ReactCommon/hermes/inspector/tools/msggen/src/TestHelpers.js +0 -40
  1439. package/ReactCommon/hermes/inspector/tools/msggen/src/Type.js +0 -98
  1440. package/ReactCommon/hermes/inspector/tools/msggen/src/custom.json +0 -26
  1441. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +0 -251
  1442. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +0 -6088
  1443. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar +0 -0
  1444. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.md5 +0 -1
  1445. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha1 +0 -1
  1446. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha256 +0 -1
  1447. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug-sources.jar.sha512 +0 -1
  1448. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar +0 -0
  1449. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.md5 +0 -1
  1450. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha1 +0 -1
  1451. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha256 +0 -1
  1452. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-debug.aar.sha512 +0 -1
  1453. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar +0 -0
  1454. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.md5 +0 -1
  1455. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha1 +0 -1
  1456. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha256 +0 -1
  1457. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release-sources.jar.sha512 +0 -1
  1458. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar +0 -0
  1459. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.md5 +0 -1
  1460. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha1 +0 -1
  1461. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha256 +0 -1
  1462. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6-release.aar.sha512 +0 -1
  1463. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module +0 -204
  1464. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.md5 +0 -1
  1465. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha1 +0 -1
  1466. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha256 +0 -1
  1467. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.module.sha512 +0 -1
  1468. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom +0 -44
  1469. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.md5 +0 -1
  1470. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha1 +0 -1
  1471. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha256 +0 -1
  1472. package/android/com/facebook/react/hermes-engine/0.70.6/hermes-engine-0.70.6.pom.sha512 +0 -1
  1473. package/android/com/facebook/react/hermes-engine/maven-metadata.xml +0 -13
  1474. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +0 -1
  1475. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +0 -1
  1476. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +0 -1
  1477. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +0 -1
  1478. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar +0 -0
  1479. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.md5 +0 -1
  1480. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha1 +0 -1
  1481. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha256 +0 -1
  1482. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug-sources.jar.sha512 +0 -1
  1483. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar +0 -0
  1484. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.md5 +0 -1
  1485. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha1 +0 -1
  1486. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha256 +0 -1
  1487. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-debug.aar.sha512 +0 -1
  1488. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar +0 -0
  1489. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.md5 +0 -1
  1490. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha1 +0 -1
  1491. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha256 +0 -1
  1492. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release-sources.jar.sha512 +0 -1
  1493. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar +0 -0
  1494. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.md5 +0 -1
  1495. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha1 +0 -1
  1496. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha256 +0 -1
  1497. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6-release.aar.sha512 +0 -1
  1498. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module +0 -628
  1499. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.md5 +0 -1
  1500. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha1 +0 -1
  1501. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha256 +0 -1
  1502. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.module.sha512 +0 -1
  1503. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom +0 -156
  1504. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.md5 +0 -1
  1505. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha1 +0 -1
  1506. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha256 +0 -1
  1507. package/android/com/facebook/react/react-native/0.70.6/react-native-0.70.6.pom.sha512 +0 -1
  1508. package/android/com/facebook/react/react-native/maven-metadata.xml +0 -13
  1509. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +0 -1
  1510. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +0 -1
  1511. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +0 -1
  1512. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +0 -1
  1513. package/scripts/cocoapods/hermes.rb +0 -20
  1514. package/template/_buckconfig +0 -6
  1515. package/template/_flowconfig +0 -66
  1516. package/template/android/app/_BUCK +0 -55
  1517. package/template/android/app/build_defs.bzl +0 -19
  1518. package/template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java +0 -116
  1519. package/template/android/app/src/main/java/com/helloworld/newarchitecture/components/MainComponentsRegistry.java +0 -36
  1520. package/template/android/app/src/main/java/com/helloworld/newarchitecture/modules/MainApplicationTurboModuleManagerDelegate.java +0 -48
  1521. package/template/android/app/src/main/jni/CMakeLists.txt +0 -7
  1522. package/template/android/app/src/main/jni/MainApplicationModuleProvider.cpp +0 -32
  1523. package/template/android/app/src/main/jni/MainApplicationModuleProvider.h +0 -16
  1524. package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.cpp +0 -45
  1525. package/template/android/app/src/main/jni/MainApplicationTurboModuleManagerDelegate.h +0 -38
  1526. package/template/android/app/src/main/jni/MainComponentsRegistry.h +0 -32
  1527. package/template/android/app/src/main/jni/OnLoad.cpp +0 -11
@@ -7,9 +7,9 @@
7
7
 
8
8
  #import "RCTSurfaceTouchHandler.h"
9
9
 
10
+ #import <React/RCTReactTaggedView.h>
10
11
  #import <React/RCTUtils.h>
11
12
  #import <React/RCTViewComponentView.h>
12
- #import <UIKit/UIGestureRecognizerSubclass.h>
13
13
 
14
14
  #import "RCTConversions.h"
15
15
  #import "RCTTouchableComponentViewProtocol.h"
@@ -83,6 +83,27 @@ struct ActiveTouch {
83
83
  */
84
84
  UIEventButtonMask buttonMask;
85
85
 
86
+ /*
87
+ * The bit mask of modifier flags in the gesture represented by the receiver.
88
+ */
89
+ UIKeyModifierFlags modifierFlags;
90
+
91
+ /*
92
+ * Indicates if the active touch represents the primary pointer of this pointer type.
93
+ */
94
+ bool isPrimary;
95
+
96
+ /*
97
+ * The button number that was pressed (if applicable) when the event was fired.
98
+ */
99
+ int button;
100
+
101
+ /*
102
+ * Informs the event system that when the touch is released it should be treated as the
103
+ * pointer leaving the screen entirely.
104
+ */
105
+ bool shouldLeaveWhenReleased;
106
+
86
107
  /*
87
108
  * A component view on which the touch was begun.
88
109
  */
@@ -103,6 +124,15 @@ struct ActiveTouch {
103
124
  };
104
125
  };
105
126
 
127
+ // Mouse and Pen pointers get reserved IDs so they stay consistent no matter the order
128
+ // at which events come in
129
+ static int const kMousePointerId = 0;
130
+ static int const kPencilPointerId = 1;
131
+
132
+ // If a new reserved ID is added above this should be incremented to ensure touch events
133
+ // do not conflict
134
+ static int const kTouchIdentifierPoolOffset = 2;
135
+
106
136
  // Returns a CGPoint which represents the tiltX/Y values (in RADIANS)
107
137
  // Adapted from https://gist.github.com/k3a/2903719bb42b48c9198d20c2d6f73ac1
108
138
  static CGPoint SphericalToTilt(CGFloat altitudeAngleRad, CGFloat azimuthAngleRad)
@@ -140,12 +170,37 @@ static CGFloat RadsToDegrees(CGFloat rads)
140
170
  }
141
171
 
142
172
  static int ButtonMaskToButtons(UIEventButtonMask buttonMask)
173
+ {
174
+ int buttonsMaskResult = 0;
175
+ if (@available(iOS 13.4, *)) {
176
+ if ((buttonMask & UIEventButtonMaskPrimary) != 0) {
177
+ buttonsMaskResult |= 1;
178
+ }
179
+ if ((buttonMask & UIEventButtonMaskSecondary) != 0) {
180
+ buttonsMaskResult |= 2;
181
+ }
182
+ // undocumented mask value which represents the "auxiliary button" (i.e. middle mouse button)
183
+ if ((buttonMask & 0x4) != 0) {
184
+ buttonsMaskResult |= 4;
185
+ }
186
+ }
187
+ return buttonsMaskResult;
188
+ }
189
+
190
+ static int ButtonMaskDiffToButton(UIEventButtonMask prevButtonMask, UIEventButtonMask curButtonMask)
143
191
  {
144
192
  if (@available(iOS 13.4, *)) {
145
- return (((buttonMask & UIEventButtonMaskPrimary) > 0) ? 1 : 0) |
146
- (((buttonMask & UIEventButtonMaskSecondary) > 0) ? 2 : 0);
193
+ if ((prevButtonMask & UIEventButtonMaskPrimary) != (curButtonMask & UIEventButtonMaskPrimary)) {
194
+ return 0;
195
+ }
196
+ if ((prevButtonMask & 0x4) != (curButtonMask & 0x4)) {
197
+ return 1;
198
+ }
199
+ if ((prevButtonMask & UIEventButtonMaskSecondary) != (curButtonMask & UIEventButtonMaskSecondary)) {
200
+ return 2;
201
+ }
147
202
  }
148
- return 0;
203
+ return -1;
149
204
  }
150
205
 
151
206
  static void UpdateActiveTouchWithUITouch(
@@ -177,9 +232,17 @@ static void UpdateActiveTouchWithUITouch(
177
232
  activeTouch.altitudeAngle = uiTouch.altitudeAngle;
178
233
  activeTouch.azimuthAngle = [uiTouch azimuthAngleInView:nil];
179
234
  if (@available(iOS 13.4, *)) {
180
- activeTouch.buttonMask = uiEvent.buttonMask;
235
+ UIEventButtonMask nextButtonMask = 0;
236
+ if (uiTouch.phase != UITouchPhaseEnded) {
237
+ nextButtonMask = uiTouch.type == UITouchTypeIndirectPointer ? uiEvent.buttonMask : 1;
238
+ }
239
+ activeTouch.button = ButtonMaskDiffToButton(activeTouch.buttonMask, nextButtonMask);
240
+ activeTouch.buttonMask = nextButtonMask;
241
+ activeTouch.modifierFlags = uiEvent.modifierFlags;
181
242
  } else {
243
+ activeTouch.button = 0;
182
244
  activeTouch.buttonMask = 0;
245
+ activeTouch.modifierFlags = 0;
183
246
  }
184
247
  }
185
248
 
@@ -200,7 +263,6 @@ CreateTouchWithUITouch(UITouch *uiTouch, UIEvent *uiEvent, UIView *rootComponent
200
263
  }
201
264
  componentView = componentView.superview;
202
265
  }
203
-
204
266
  UpdateActiveTouchWithUITouch(activeTouch, uiTouch, uiEvent, rootComponentView, rootViewOriginOffset);
205
267
  return activeTouch;
206
268
  }
@@ -216,12 +278,12 @@ static UIView *FindClosestFabricManagedTouchableView(UIView *componentView)
216
278
  return nil;
217
279
  }
218
280
 
219
- static NSOrderedSet *GetTouchableViewsInPathToRoot(UIView *componentView)
281
+ static NSOrderedSet<RCTReactTaggedView *> *GetTouchableViewsInPathToRoot(UIView *componentView)
220
282
  {
221
283
  NSMutableOrderedSet *results = [NSMutableOrderedSet orderedSet];
222
284
  do {
223
285
  if ([componentView respondsToSelector:@selector(touchEventEmitterAtPoint:)]) {
224
- [results addObject:componentView];
286
+ [results addObject:[RCTReactTaggedView wrap:componentView]];
225
287
  }
226
288
  componentView = componentView.superview;
227
289
  } while (componentView);
@@ -248,18 +310,41 @@ static const char *PointerTypeCStringFromUITouchType(UITouchType type)
248
310
  }
249
311
  }
250
312
 
313
+ static void UpdatePointerEventModifierFlags(PointerEvent &event, UIKeyModifierFlags flags)
314
+ {
315
+ if (@available(iOS 13.4, *)) {
316
+ event.ctrlKey = (flags & UIKeyModifierControl) != 0;
317
+ event.shiftKey = (flags & UIKeyModifierShift) != 0;
318
+ event.altKey = (flags & UIKeyModifierAlternate) != 0;
319
+ event.metaKey = (flags & UIKeyModifierCommand) != 0;
320
+ } else {
321
+ event.ctrlKey = false;
322
+ event.shiftKey = false;
323
+ event.altKey = false;
324
+ event.metaKey = false;
325
+ }
326
+ }
327
+
251
328
  static PointerEvent CreatePointerEventFromActiveTouch(ActiveTouch activeTouch, RCTTouchEventType eventType)
252
329
  {
253
330
  Touch touch = activeTouch.touch;
254
331
 
255
332
  PointerEvent event = {};
256
333
  event.pointerId = touch.identifier;
257
- event.pressure = touch.force;
258
334
  event.pointerType = PointerTypeCStringFromUITouchType(activeTouch.touchType);
259
335
  event.clientPoint = touch.pagePoint;
260
336
  event.screenPoint = touch.screenPoint;
261
337
  event.offsetPoint = touch.offsetPoint;
262
338
 
339
+ event.pressure = touch.force;
340
+ if (@available(iOS 13.4, *)) {
341
+ if (activeTouch.touchType == UITouchTypeIndirectPointer) {
342
+ // pointer events with a mouse button pressed should report a pressure of 0.5
343
+ // when the touch is down and 0.0 when it is lifted regardless of how it is reported by the OS
344
+ event.pressure = eventType != RCTTouchEventTypeTouchEnd ? 0.5 : 0.0;
345
+ }
346
+ }
347
+
263
348
  CGFloat pointerSize = activeTouch.majorRadius * 2.0;
264
349
  if (@available(iOS 13.4, *)) {
265
350
  if (activeTouch.touchType == UITouchTypeIndirectPointer) {
@@ -276,31 +361,29 @@ static PointerEvent CreatePointerEventFromActiveTouch(ActiveTouch activeTouch, R
276
361
 
277
362
  event.detail = 0;
278
363
 
364
+ event.button = activeTouch.button;
279
365
  event.buttons = ButtonMaskToButtons(activeTouch.buttonMask);
280
- // UIEvent's button mask for touch end events still marks the button as down
281
- // so this ensures it's set to 0 as per the pointer event spec
282
- if (eventType == RCTTouchEventTypeTouchEnd) {
283
- event.buttons = 0;
284
- }
366
+
367
+ UpdatePointerEventModifierFlags(event, activeTouch.modifierFlags);
285
368
 
286
369
  event.tangentialPressure = 0.0;
287
370
  event.twist = 0;
371
+ event.isPrimary = activeTouch.isPrimary;
288
372
 
289
373
  return event;
290
374
  }
291
375
 
292
376
  static PointerEvent CreatePointerEventFromIncompleteHoverData(
293
- UIView *view,
294
377
  CGPoint clientLocation,
295
378
  CGPoint screenLocation,
296
379
  CGPoint offsetLocation,
297
- NSTimeInterval timestamp)
380
+ UIKeyModifierFlags modifierFlags)
298
381
  {
299
382
  PointerEvent event = {};
300
383
  // "touch" events produced from a mouse cursor on iOS always have the ID 0 so
301
384
  // we can just assume that here since these sort of hover events only ever come
302
385
  // from the mouse
303
- event.pointerId = 0;
386
+ event.pointerId = kMousePointerId;
304
387
  event.pressure = 0.0;
305
388
  event.pointerType = "mouse";
306
389
  event.clientPoint = RCTPointFromCGPoint(clientLocation);
@@ -311,9 +394,13 @@ static PointerEvent CreatePointerEventFromIncompleteHoverData(
311
394
  event.tiltX = 0;
312
395
  event.tiltY = 0;
313
396
  event.detail = 0;
397
+ event.button = -1;
314
398
  event.buttons = 0;
399
+ UpdatePointerEventModifierFlags(event, modifierFlags);
315
400
  event.tangentialPressure = 0.0;
316
401
  event.twist = 0;
402
+ event.isPrimary = true;
403
+
317
404
  return event;
318
405
  }
319
406
 
@@ -337,9 +424,10 @@ static BOOL AnyTouchesChanged(NSSet<UITouch *> *touches)
337
424
  return NO;
338
425
  }
339
426
 
340
- static BOOL IsViewListeningToEvent(UIView *view, ViewEvents::Offset eventType)
427
+ static BOOL IsViewListeningToEvent(RCTReactTaggedView *taggedView, ViewEvents::Offset eventType)
341
428
  {
342
- if ([view.class conformsToProtocol:@protocol(RCTComponentViewProtocol)]) {
429
+ UIView *view = taggedView.view;
430
+ if (view && [view.class conformsToProtocol:@protocol(RCTComponentViewProtocol)]) {
343
431
  auto props = ((id<RCTComponentViewProtocol>)view).props;
344
432
  if (SharedViewProps viewProps = std::dynamic_pointer_cast<ViewProps const>(props)) {
345
433
  return viewProps->events[eventType];
@@ -348,10 +436,10 @@ static BOOL IsViewListeningToEvent(UIView *view, ViewEvents::Offset eventType)
348
436
  return NO;
349
437
  }
350
438
 
351
- static BOOL IsAnyViewInPathListeningToEvent(NSOrderedSet<UIView *> *viewPath, ViewEvents::Offset eventType)
439
+ static BOOL IsAnyViewInPathListeningToEvent(NSOrderedSet<RCTReactTaggedView *> *viewPath, ViewEvents::Offset eventType)
352
440
  {
353
- for (UIView *view in viewPath) {
354
- if (IsViewListeningToEvent(view, eventType)) {
441
+ for (RCTReactTaggedView *taggedView in viewPath) {
442
+ if (IsViewListeningToEvent(taggedView, eventType)) {
355
443
  return YES;
356
444
  }
357
445
  }
@@ -386,7 +474,9 @@ struct PointerHasher {
386
474
  IdentifierPool<11> _identifierPool;
387
475
 
388
476
  UIHoverGestureRecognizer *_hoverRecognizer API_AVAILABLE(ios(13.0));
389
- NSOrderedSet *_currentlyHoveredViews;
477
+ NSMutableDictionary<NSNumber *, NSOrderedSet<RCTReactTaggedView *> *> *_currentlyHoveredViewsPerPointer;
478
+
479
+ int _primaryTouchPointerId;
390
480
  }
391
481
 
392
482
  - (instancetype)init
@@ -403,7 +493,8 @@ struct PointerHasher {
403
493
  self.delegate = self;
404
494
 
405
495
  _hoverRecognizer = nil;
406
- _currentlyHoveredViews = [NSOrderedSet orderedSet];
496
+ _currentlyHoveredViewsPerPointer = [[NSMutableDictionary alloc] init];
497
+ _primaryTouchPointerId = -1;
407
498
  }
408
499
 
409
500
  return self;
@@ -444,7 +535,42 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
444
535
  {
445
536
  for (UITouch *touch in touches) {
446
537
  auto activeTouch = CreateTouchWithUITouch(touch, event, _rootComponentView, _viewOriginOffset);
447
- activeTouch.touch.identifier = _identifierPool.dequeue();
538
+
539
+ if (@available(iOS 13.4, *)) {
540
+ switch (touch.type) {
541
+ case UITouchTypeIndirectPointer:
542
+ activeTouch.touch.identifier = kMousePointerId;
543
+ activeTouch.isPrimary = true;
544
+ break;
545
+ case UITouchTypePencil:
546
+ activeTouch.touch.identifier = kPencilPointerId;
547
+ activeTouch.isPrimary = true;
548
+ break;
549
+ default:
550
+ // use the identifier pool offset to ensure no conflicts between the reserved IDs and the
551
+ // touch IDs
552
+ activeTouch.touch.identifier = _identifierPool.dequeue() + kTouchIdentifierPoolOffset;
553
+ if (_primaryTouchPointerId == -1) {
554
+ _primaryTouchPointerId = activeTouch.touch.identifier;
555
+ activeTouch.isPrimary = true;
556
+ }
557
+ break;
558
+ }
559
+ } else {
560
+ activeTouch.touch.identifier = _identifierPool.dequeue();
561
+ if (_primaryTouchPointerId == -1) {
562
+ _primaryTouchPointerId = activeTouch.touch.identifier;
563
+ activeTouch.isPrimary = true;
564
+ }
565
+ }
566
+
567
+ // If the pointer has not been marked as hovering over views before the touch started, we register
568
+ // that the activeTouch should not maintain its hovered state once the pointer has been lifted.
569
+ auto currentlyHoveredViews = [_currentlyHoveredViewsPerPointer objectForKey:@(activeTouch.touch.identifier)];
570
+ if (currentlyHoveredViews == nil || [currentlyHoveredViews count] == 0) {
571
+ activeTouch.shouldLeaveWhenReleased = YES;
572
+ }
573
+
448
574
  _activeTouches.emplace(touch, activeTouch);
449
575
  }
450
576
  }
@@ -471,7 +597,25 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
471
597
  continue;
472
598
  }
473
599
  auto &activeTouch = iterator->second;
474
- _identifierPool.enqueue(activeTouch.touch.identifier);
600
+
601
+ if (activeTouch.touch.identifier == _primaryTouchPointerId) {
602
+ _primaryTouchPointerId = -1;
603
+ }
604
+
605
+ if (@available(iOS 13.4, *)) {
606
+ // only need to enqueue if the touch type isn't one with a reserved identifier
607
+ switch (touch.type) {
608
+ case UITouchTypeIndirectPointer:
609
+ case UITouchTypePencil:
610
+ break;
611
+ default:
612
+ // since the touch's identifier has been offset we need to re-normalize it to 0-based
613
+ // which is what the identifier pool expects
614
+ _identifierPool.enqueue(activeTouch.touch.identifier - kTouchIdentifierPoolOffset);
615
+ }
616
+ } else {
617
+ _identifierPool.enqueue(activeTouch.touch.identifier);
618
+ }
475
619
  _activeTouches.erase(touch);
476
620
  }
477
621
  }
@@ -512,19 +656,38 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
512
656
  // emit w3c pointer events
513
657
  if (RCTGetDispatchW3CPointerEvents()) {
514
658
  PointerEvent pointerEvent = CreatePointerEventFromActiveTouch(activeTouch, eventType);
515
- switch (eventType) {
516
- case RCTTouchEventTypeTouchStart:
517
- activeTouch.eventEmitter->onPointerDown(pointerEvent);
518
- break;
519
- case RCTTouchEventTypeTouchMove:
520
- activeTouch.eventEmitter->onPointerMove(pointerEvent);
521
- break;
522
- case RCTTouchEventTypeTouchEnd:
523
- activeTouch.eventEmitter->onPointerUp(pointerEvent);
524
- break;
525
- case RCTTouchEventTypeTouchCancel:
526
- activeTouch.eventEmitter->onPointerCancel(pointerEvent);
527
- break;
659
+
660
+ if ((eventType == RCTTouchEventTypeTouchEnd && activeTouch.shouldLeaveWhenReleased)) {
661
+ activeTouch.eventEmitter->onPointerUp(pointerEvent);
662
+ [self handleIncomingPointerEvent:pointerEvent onView:nil];
663
+ } else {
664
+ CGPoint clientLocation = CGPointMake(pointerEvent.clientPoint.x, pointerEvent.clientPoint.y);
665
+ UIView *targetView = FindClosestFabricManagedTouchableView([_rootComponentView hitTest:clientLocation
666
+ withEvent:nil]);
667
+
668
+ NSOrderedSet<RCTReactTaggedView *> *eventPathViews = [self handleIncomingPointerEvent:pointerEvent
669
+ onView:targetView];
670
+
671
+ switch (eventType) {
672
+ case RCTTouchEventTypeTouchStart:
673
+ activeTouch.eventEmitter->onPointerDown(pointerEvent);
674
+ break;
675
+ case RCTTouchEventTypeTouchMove: {
676
+ bool hasMoveEventListeners =
677
+ IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMove) ||
678
+ IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMoveCapture);
679
+ if (hasMoveEventListeners) {
680
+ activeTouch.eventEmitter->onPointerMove(pointerEvent);
681
+ }
682
+ break;
683
+ }
684
+ case RCTTouchEventTypeTouchEnd:
685
+ activeTouch.eventEmitter->onPointerUp(pointerEvent);
686
+ break;
687
+ case RCTTouchEventTypeTouchCancel:
688
+ activeTouch.eventEmitter->onPointerCancel(pointerEvent);
689
+ break;
690
+ }
528
691
  }
529
692
  }
530
693
  }
@@ -691,77 +854,60 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
691
854
 
692
855
  UIView *targetView = [listenerView hitTest:clientLocation withEvent:nil];
693
856
  targetView = FindClosestFabricManagedTouchableView(targetView);
694
- UIView *prevTargetView = [_currentlyHoveredViews firstObject];
695
857
 
696
858
  CGPoint offsetLocation = [recognizer locationInView:targetView];
697
859
 
698
- NSOrderedSet *eventPathViews = GetTouchableViewsInPathToRoot(targetView);
699
-
700
- NSTimeInterval timestamp = CACurrentMediaTime();
701
-
702
- BOOL hasMoveListenerInEventPath = NO;
703
-
704
- // Over
705
- if (prevTargetView != targetView) {
706
- BOOL shouldEmitOverEvent = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerOver);
707
- SharedTouchEventEmitter eventEmitter = GetTouchEmitterFromView(targetView, [recognizer locationInView:targetView]);
708
- if (shouldEmitOverEvent && eventEmitter != nil) {
709
- PointerEvent event = CreatePointerEventFromIncompleteHoverData(
710
- targetView, clientLocation, screenLocation, offsetLocation, timestamp);
711
- eventEmitter->onPointerOver(event);
712
- }
860
+ UIKeyModifierFlags modifierFlags;
861
+ if (@available(iOS 13.4, *)) {
862
+ modifierFlags = recognizer.modifierFlags;
863
+ } else {
864
+ modifierFlags = 0;
713
865
  }
714
866
 
715
- // Entering
716
-
717
- // We only want to emit events to JS if there is a view that is currently listening to said event
718
- // so we only send those event to the JS side if the element which has been entered is itself listening,
719
- // or if one of its parents is listening in case those listeners care about the capturing phase. Adding the ability
720
- // for native to distingusih between capturing listeners and not could be an optimization to futher reduce the number
721
- // of events we send to JS
722
- BOOL hasParentEnterListener = NO;
723
-
724
- for (UIView *componentView in [eventPathViews reverseObjectEnumerator]) {
725
- BOOL shouldEmitEvent =
726
- hasParentEnterListener || IsViewListeningToEvent(componentView, ViewEvents::Offset::PointerEnter);
867
+ PointerEvent event =
868
+ CreatePointerEventFromIncompleteHoverData(clientLocation, screenLocation, offsetLocation, modifierFlags);
727
869
 
728
- if (shouldEmitEvent && ![_currentlyHoveredViews containsObject:componentView]) {
729
- SharedTouchEventEmitter eventEmitter =
730
- GetTouchEmitterFromView(componentView, [recognizer locationInView:componentView]);
731
- if (eventEmitter != nil) {
732
- PointerEvent event = CreatePointerEventFromIncompleteHoverData(
733
- componentView, clientLocation, screenLocation, offsetLocation, timestamp);
734
- eventEmitter->onPointerEnter(event);
735
- }
736
- }
870
+ NSOrderedSet<RCTReactTaggedView *> *eventPathViews = [self handleIncomingPointerEvent:event onView:targetView];
871
+ SharedTouchEventEmitter eventEmitter = GetTouchEmitterFromView(targetView, offsetLocation);
872
+ bool hasMoveEventListeners = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMove) ||
873
+ IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerMoveCapture);
874
+ if (eventEmitter != nil && hasMoveEventListeners) {
875
+ eventEmitter->onPointerMove(event);
876
+ }
877
+ }
737
878
 
738
- if (shouldEmitEvent && !hasParentEnterListener) {
739
- hasParentEnterListener = YES;
740
- }
879
+ /**
880
+ * Private method which is used for tracking the location of pointer events to manage the entering/leaving events.
881
+ * The primary idea is that a pointer's presence & movement is dicated by a variety of underlying events such as down,
882
+ * move, and up — and they should all be treated the same when it comes to tracking the entering & leaving of pointers
883
+ * to views. This method accomplishes that by recieving the pointer event, the target view (can be null in cases when
884
+ * the event indicates that the pointer has left the screen entirely), and a block/callback where the underlying event
885
+ * should be fired.
886
+ */
887
+ - (NSOrderedSet<RCTReactTaggedView *> *)handleIncomingPointerEvent:(PointerEvent)event
888
+ onView:(nullable UIView *)targetView
889
+ {
890
+ int pointerId = event.pointerId;
891
+ CGPoint clientLocation = CGPointMake(event.clientPoint.x, event.clientPoint.y);
741
892
 
742
- if (!hasMoveListenerInEventPath && IsViewListeningToEvent(componentView, ViewEvents::Offset::PointerMove)) {
743
- hasMoveListenerInEventPath = YES;
744
- }
893
+ NSOrderedSet<RCTReactTaggedView *> *currentlyHoveredViews =
894
+ [_currentlyHoveredViewsPerPointer objectForKey:@(pointerId)];
895
+ if (currentlyHoveredViews == nil) {
896
+ currentlyHoveredViews = [NSOrderedSet orderedSet];
745
897
  }
746
898
 
747
- // Moving
748
- if (hasMoveListenerInEventPath) {
749
- SharedTouchEventEmitter eventEmitter = GetTouchEmitterFromView(targetView, [recognizer locationInView:targetView]);
750
- if (eventEmitter != nil) {
751
- PointerEvent event = CreatePointerEventFromIncompleteHoverData(
752
- targetView, clientLocation, screenLocation, offsetLocation, timestamp);
753
- eventEmitter->onPointerMove(event);
754
- }
755
- }
899
+ RCTReactTaggedView *targetTaggedView = [RCTReactTaggedView wrap:targetView];
900
+ RCTReactTaggedView *prevTargetTaggedView = [currentlyHoveredViews firstObject];
901
+ UIView *prevTargetView = prevTargetTaggedView.view;
902
+
903
+ NSOrderedSet<RCTReactTaggedView *> *eventPathViews = GetTouchableViewsInPathToRoot(targetView);
756
904
 
757
905
  // Out
758
- if (prevTargetView != targetView) {
759
- BOOL shouldEmitOutEvent = IsAnyViewInPathListeningToEvent(_currentlyHoveredViews, ViewEvents::Offset::PointerOut);
906
+ if (prevTargetView != nil && prevTargetTaggedView.tag != targetTaggedView.tag) {
907
+ BOOL shouldEmitOutEvent = IsAnyViewInPathListeningToEvent(currentlyHoveredViews, ViewEvents::Offset::PointerOut);
760
908
  SharedTouchEventEmitter eventEmitter =
761
- GetTouchEmitterFromView(prevTargetView, [recognizer locationInView:prevTargetView]);
909
+ GetTouchEmitterFromView(prevTargetView, [_rootComponentView convertPoint:clientLocation toView:prevTargetView]);
762
910
  if (shouldEmitOutEvent && eventEmitter != nil) {
763
- PointerEvent event = CreatePointerEventFromIncompleteHoverData(
764
- prevTargetView, clientLocation, screenLocation, offsetLocation, timestamp);
765
911
  eventEmitter->onPointerOut(event);
766
912
  }
767
913
  }
@@ -772,14 +918,16 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
772
918
  // we also need to efficiently keep track of if a view has a parent which is listening to the leave events,
773
919
  // so we first iterate from the root to the target, collecting the views which need events fired for, of which
774
920
  // we reverse iterate (now from target to root), actually emitting the events.
775
- NSMutableOrderedSet *viewsToEmitLeaveEventsTo = [NSMutableOrderedSet orderedSet];
921
+ NSMutableOrderedSet<UIView *> *viewsToEmitLeaveEventsTo = [NSMutableOrderedSet orderedSet];
776
922
 
777
923
  BOOL hasParentLeaveListener = NO;
778
- for (UIView *componentView in [_currentlyHoveredViews reverseObjectEnumerator]) {
779
- BOOL shouldEmitEvent =
780
- hasParentLeaveListener || IsViewListeningToEvent(componentView, ViewEvents::Offset::PointerLeave);
924
+ for (RCTReactTaggedView *taggedView in [currentlyHoveredViews reverseObjectEnumerator]) {
925
+ UIView *componentView = taggedView.view;
926
+
927
+ BOOL shouldEmitEvent = componentView != nil &&
928
+ (hasParentLeaveListener || IsViewListeningToEvent(taggedView, ViewEvents::Offset::PointerLeave));
781
929
 
782
- if (shouldEmitEvent && ![eventPathViews containsObject:componentView]) {
930
+ if (shouldEmitEvent && ![eventPathViews containsObject:taggedView]) {
783
931
  [viewsToEmitLeaveEventsTo addObject:componentView];
784
932
  }
785
933
 
@@ -790,15 +938,52 @@ RCT_NOT_IMPLEMENTED(-(instancetype)initWithTarget : (id)target action : (SEL)act
790
938
 
791
939
  for (UIView *componentView in [viewsToEmitLeaveEventsTo reverseObjectEnumerator]) {
792
940
  SharedTouchEventEmitter eventEmitter =
793
- GetTouchEmitterFromView(componentView, [recognizer locationInView:componentView]);
941
+ GetTouchEmitterFromView(componentView, [_rootComponentView convertPoint:clientLocation toView:componentView]);
794
942
  if (eventEmitter != nil) {
795
- PointerEvent event = CreatePointerEventFromIncompleteHoverData(
796
- componentView, clientLocation, screenLocation, offsetLocation, timestamp);
797
943
  eventEmitter->onPointerLeave(event);
798
944
  }
799
945
  }
800
946
 
801
- _currentlyHoveredViews = eventPathViews;
947
+ // Over
948
+ if (targetView != nil && prevTargetTaggedView.tag != targetTaggedView.tag) {
949
+ BOOL shouldEmitOverEvent = IsAnyViewInPathListeningToEvent(eventPathViews, ViewEvents::Offset::PointerOver);
950
+ SharedTouchEventEmitter eventEmitter =
951
+ GetTouchEmitterFromView(targetView, [_rootComponentView convertPoint:clientLocation toView:targetView]);
952
+ if (shouldEmitOverEvent && eventEmitter != nil) {
953
+ eventEmitter->onPointerOver(event);
954
+ }
955
+ }
956
+
957
+ // Entering
958
+
959
+ // We only want to emit events to JS if there is a view that is currently listening to said event
960
+ // so we only send those event to the JS side if the element which has been entered is itself listening,
961
+ // or if one of its parents is listening in case those listeners care about the capturing phase. Adding the ability
962
+ // for native to distingusih between capturing listeners and not could be an optimization to futher reduce the number
963
+ // of events we send to JS
964
+ BOOL hasParentEnterListener = NO;
965
+ for (RCTReactTaggedView *taggedView in [eventPathViews reverseObjectEnumerator]) {
966
+ UIView *componentView = taggedView.view;
967
+
968
+ BOOL shouldEmitEvent = componentView != nil &&
969
+ (hasParentEnterListener || IsViewListeningToEvent(taggedView, ViewEvents::Offset::PointerEnter));
970
+
971
+ if (shouldEmitEvent && ![currentlyHoveredViews containsObject:taggedView]) {
972
+ SharedTouchEventEmitter eventEmitter =
973
+ GetTouchEmitterFromView(componentView, [_rootComponentView convertPoint:clientLocation toView:componentView]);
974
+ if (eventEmitter != nil) {
975
+ eventEmitter->onPointerEnter(event);
976
+ }
977
+ }
978
+
979
+ if (shouldEmitEvent && !hasParentEnterListener) {
980
+ hasParentEnterListener = YES;
981
+ }
982
+ }
983
+
984
+ [_currentlyHoveredViewsPerPointer setObject:eventPathViews forKey:@(pointerId)];
985
+
986
+ return eventPathViews;
802
987
  }
803
988
 
804
989
  @end
@@ -0,0 +1,34 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import <UIKit/UIKit.h>
9
+
10
+ NS_ASSUME_NONNULL_BEGIN
11
+
12
+ /**
13
+ * Lightweight wrapper class around a UIView with a react tag which registers a
14
+ * constant react tag at initialization time for a stable hash and provides the
15
+ * udnerlying view to a caller if that underlying view's react tag has not
16
+ * changed from the one provided at initalization time (i.e. recycled).
17
+ */
18
+ @interface RCTReactTaggedView : NSObject {
19
+ UIView *_view;
20
+ NSInteger _tag;
21
+ }
22
+
23
+ + (RCTReactTaggedView *)wrap:(UIView *)view;
24
+
25
+ - (instancetype)initWithView:(UIView *)view;
26
+ - (nullable UIView *)view;
27
+ - (NSInteger)tag;
28
+
29
+ - (BOOL)isEqual:(id)other;
30
+ - (NSUInteger)hash;
31
+
32
+ @end
33
+
34
+ NS_ASSUME_NONNULL_END
@@ -0,0 +1,55 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #import "RCTReactTaggedView.h"
9
+
10
+ @implementation RCTReactTaggedView
11
+
12
+ + (RCTReactTaggedView *)wrap:(UIView *)view
13
+ {
14
+ return [[RCTReactTaggedView alloc] initWithView:view];
15
+ }
16
+
17
+ - (instancetype)initWithView:(UIView *)view
18
+ {
19
+ if (self = [super init]) {
20
+ _view = view;
21
+ _tag = view.tag;
22
+ }
23
+ return self;
24
+ }
25
+
26
+ - (nullable UIView *)view
27
+ {
28
+ if (_view.tag == _tag) {
29
+ return _view;
30
+ }
31
+ return nil;
32
+ }
33
+
34
+ - (NSInteger)tag
35
+ {
36
+ return _tag;
37
+ }
38
+
39
+ - (BOOL)isEqual:(id)other
40
+ {
41
+ if (other == self) {
42
+ return YES;
43
+ }
44
+ if (!other || ![other isKindOfClass:[self class]]) {
45
+ return NO;
46
+ }
47
+ return _tag == [other tag];
48
+ }
49
+
50
+ - (NSUInteger)hash
51
+ {
52
+ return _tag;
53
+ }
54
+
55
+ @end