react-native 0.68.1 → 0.69.0-rc.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1008) hide show
  1. package/CHANGELOG.md +250 -0
  2. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +7 -0
  3. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +1 -0
  4. package/Libraries/ActionSheetIOS/React-RCTActionSheet.podspec +1 -1
  5. package/Libraries/Animated/AnimatedImplementation.js +1 -1
  6. package/Libraries/Animated/NativeAnimatedHelper.js +55 -9
  7. package/Libraries/Animated/NativeAnimatedModule.js +1 -0
  8. package/Libraries/Animated/NativeAnimatedTurboModule.js +1 -0
  9. package/Libraries/Animated/animations/TimingAnimation.js +6 -11
  10. package/Libraries/Animated/createAnimatedComponent.js +2 -2
  11. package/Libraries/Animated/nodes/AnimatedColor.js +95 -29
  12. package/Libraries/Animated/nodes/AnimatedInterpolation.js +19 -22
  13. package/Libraries/Animated/nodes/AnimatedNode.js +2 -2
  14. package/Libraries/Animated/nodes/AnimatedValue.js +1 -1
  15. package/Libraries/AppState/AppState.js +1 -1
  16. package/Libraries/Blob/React-RCTBlob.podspec +2 -2
  17. package/Libraries/Blob/URL.js +7 -1
  18. package/Libraries/Components/Button.js +3 -0
  19. package/Libraries/Components/DatePickerAndroid/NativeDatePickerAndroid.js +5 -0
  20. package/Libraries/Components/Pressable/Pressable.js +3 -3
  21. package/Libraries/Components/ScrollView/AndroidHorizontalScrollViewNativeComponent.js +47 -38
  22. package/Libraries/Components/ScrollView/ScrollContentViewNativeComponent.js +15 -7
  23. package/Libraries/Components/ScrollView/ScrollView.js +1 -1
  24. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +16 -3
  25. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +3 -1
  26. package/Libraries/Components/Slider/Slider.js +0 -2
  27. package/Libraries/Components/Slider/SliderNativeComponent.js +0 -1
  28. package/Libraries/Components/StatusBar/StatusBar.js +6 -1
  29. package/Libraries/Components/Switch/Switch.js +11 -1
  30. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +114 -109
  31. package/Libraries/Components/TextInput/RCTMultilineTextInputNativeComponent.js +17 -9
  32. package/Libraries/Components/TextInput/RCTSingelineTextInputNativeComponent.js +13 -5
  33. package/Libraries/Components/TextInput/RCTTextInputViewConfig.js +10 -0
  34. package/Libraries/Components/TextInput/TextInput.js +1 -8
  35. package/Libraries/Components/TextInput/TextInputState.js +10 -2
  36. package/Libraries/Components/Touchable/TouchableBounce.js +1 -0
  37. package/Libraries/Components/Touchable/TouchableHighlight.js +1 -0
  38. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -0
  39. package/Libraries/Components/Touchable/TouchableOpacity.js +7 -1
  40. package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +2 -0
  41. package/Libraries/Components/View/ReactNativeViewAttributes.js +1 -0
  42. package/Libraries/Components/View/ViewNativeComponent.js +68 -8
  43. package/Libraries/Components/View/ViewPropTypes.js +36 -4
  44. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  45. package/Libraries/Core/ExceptionsManager.js +1 -1
  46. package/Libraries/Core/RawEventEmitter.js +38 -0
  47. package/Libraries/Core/ReactNativeVersion.js +3 -3
  48. package/Libraries/Core/polyfillPromise.js +32 -0
  49. package/Libraries/Core/setUpReactDevTools.js +3 -2
  50. package/Libraries/EventEmitter/NativeEventEmitter.js +3 -3
  51. package/Libraries/EventEmitter/RCTDeviceEventEmitter.js +2 -1
  52. package/Libraries/EventEmitter/__mocks__/NativeEventEmitter.js +3 -3
  53. package/Libraries/Events/CustomEvent.js +32 -0
  54. package/Libraries/Events/EventPolyfill.js +239 -0
  55. package/Libraries/FBLazyVector/BUCK +4 -1
  56. package/Libraries/FBLazyVector/FBLazyVector.podspec +1 -1
  57. package/Libraries/Image/Image.android.js +0 -6
  58. package/Libraries/Image/Image.ios.js +0 -6
  59. package/Libraries/Image/ImageViewNativeComponent.js +18 -3
  60. package/Libraries/Image/RCTImageBlurUtils.m +8 -5
  61. package/Libraries/Image/RCTImageCache.h +3 -0
  62. package/Libraries/Image/RCTImageCache.m +8 -2
  63. package/Libraries/Image/RCTImageLoader.mm +14 -4
  64. package/Libraries/Image/RCTImageUtils.m +8 -7
  65. package/Libraries/Image/RCTUIImageViewAnimated.m +1 -1
  66. package/Libraries/Image/React-RCTImage.podspec +2 -2
  67. package/Libraries/Image/TextInlineImageNativeComponent.js +23 -15
  68. package/Libraries/Inspector/Inspector.js +2 -4
  69. package/Libraries/Interaction/BridgeSpyStallHandler.js +4 -3
  70. package/Libraries/Interaction/InteractionManager.js +1 -12
  71. package/Libraries/Interaction/TaskQueue.js +5 -4
  72. package/Libraries/LayoutAnimation/LayoutAnimation.js +13 -0
  73. package/Libraries/Linking/Linking.js +1 -1
  74. package/Libraries/LinkingIOS/React-RCTLinking.podspec +2 -2
  75. package/Libraries/Lists/FlatList.js +27 -6
  76. package/Libraries/Lists/VirtualizedList.js +71 -55
  77. package/Libraries/Lists/VirtualizedListContext.js +7 -3
  78. package/Libraries/Lists/VirtualizedSectionList.js +2 -2
  79. package/Libraries/LogBox/Data/LogBoxData.js +2 -2
  80. package/Libraries/LogBox/Data/LogBoxLog.js +1 -1
  81. package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
  82. package/Libraries/LogBox/Data/parseLogBoxLog.js +1 -1
  83. package/Libraries/LogBox/LogBox.js +2 -21
  84. package/Libraries/LogBox/UI/LogBoxInspectorFooter.js +1 -0
  85. package/Libraries/LogBox/UI/LogBoxInspectorHeader.js +2 -1
  86. package/Libraries/NativeAnimation/Drivers/RCTFrameAnimation.m +2 -2
  87. package/{ReactCommon/react/renderer/mounting/MountingTransactionMetadata.cpp → Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.h} +6 -4
  88. package/Libraries/NativeAnimation/Nodes/RCTColorAnimatedNode.m +30 -0
  89. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +11 -6
  90. package/Libraries/NativeAnimation/Nodes/RCTStyleAnimatedNode.m +8 -4
  91. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +8 -0
  92. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +3 -0
  93. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +8 -0
  94. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +8 -0
  95. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +3 -3
  96. package/Libraries/NativeComponent/BaseViewConfig.android.js +295 -0
  97. package/Libraries/NativeComponent/BaseViewConfig.ios.js +333 -0
  98. package/Libraries/NativeComponent/NativeComponentRegistry.js +0 -2
  99. package/Libraries/NativeComponent/PlatformBaseViewConfig.js +24 -0
  100. package/Libraries/NativeComponent/StaticViewConfigValidator.js +7 -42
  101. package/Libraries/NativeComponent/ViewConfig.js +4 -4
  102. package/Libraries/NativeComponent/ViewConfigIgnore.js +54 -0
  103. package/Libraries/Network/FormData.js +7 -1
  104. package/Libraries/Network/React-RCTNetwork.podspec +2 -2
  105. package/Libraries/Pressability/Pressability.js +115 -46
  106. package/Libraries/Pressability/PressabilityDebug.js +5 -9
  107. package/Libraries/PushNotificationIOS/NativePushNotificationManagerIOS.js +1 -0
  108. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +21 -9
  109. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +2 -2
  110. package/Libraries/RCTRequired/BUCK +4 -1
  111. package/Libraries/RCTRequired/RCTRequired.podspec +1 -1
  112. package/Libraries/ReactNative/AppContainer.js +1 -1
  113. package/Libraries/ReactNative/{DummyUIManager.js → BridgelessUIManager.js} +62 -40
  114. package/Libraries/ReactNative/ReactNativeFeatureFlags.js +39 -0
  115. package/Libraries/ReactNative/UIManager.js +2 -3
  116. package/Libraries/ReactNative/renderApplication.js +4 -0
  117. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +8 -0
  118. package/Libraries/Renderer/REVISION +1 -1
  119. package/Libraries/Renderer/implementations/ReactFabric-dev.js +5908 -4906
  120. package/Libraries/Renderer/implementations/ReactFabric-prod.js +2100 -1918
  121. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +2567 -2352
  122. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +5610 -4844
  123. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +1710 -1556
  124. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +1830 -1639
  125. package/Libraries/Renderer/shims/ReactNativeTypes.js +2 -1
  126. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +2 -1
  127. package/Libraries/Settings/React-RCTSettings.podspec +2 -2
  128. package/Libraries/StyleSheet/EdgeInsetsPropType.js +4 -1
  129. package/Libraries/StyleSheet/StyleSheetTypes.js +59 -66
  130. package/Libraries/StyleSheet/normalizeColor.js +1 -1
  131. package/Libraries/StyleSheet/private/_StyleSheetTypesOverrides.js +15 -0
  132. package/Libraries/StyleSheet/private/_TransformStyle.js +53 -0
  133. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponent.h +2 -0
  134. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponent.mm +20 -11
  135. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponentState.h +3 -3
  136. package/Libraries/SurfaceBackedComponent/RCTSurfaceBackedComponentState.mm +2 -4
  137. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent+Internal.h +1 -2
  138. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.h +2 -3
  139. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +16 -3
  140. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponentController.mm +26 -10
  141. package/Libraries/Text/React-RCTText.podspec +1 -1
  142. package/Libraries/Text/Text.js +13 -7
  143. package/Libraries/Text/TextNativeComponent.js +2 -0
  144. package/Libraries/Text/TextProps.js +10 -0
  145. package/Libraries/TypeSafety/RCTConvertHelpers.h +10 -9
  146. package/Libraries/TypeSafety/RCTConvertHelpers.mm +2 -2
  147. package/Libraries/TypeSafety/RCTTypeSafety.podspec +3 -8
  148. package/Libraries/Types/CoreEventTypes.js +13 -1
  149. package/Libraries/Utilities/Appearance.js +0 -8
  150. package/Libraries/Utilities/HMRClient.js +1 -1
  151. package/Libraries/Utilities/ReactNativeTestTools.js +1 -0
  152. package/Libraries/Utilities/codegenNativeComponent.js +17 -6
  153. package/Libraries/Utilities/stringifySafe.js +4 -1
  154. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +3 -3
  155. package/Libraries/Vibration/React-RCTVibration.podspec +2 -2
  156. package/Libraries/WebSocket/WebSocket.js +1 -1
  157. package/Libraries/vendor/emitter/_EmitterSubscription.js +1 -1
  158. package/Libraries/vendor/emitter/_EventEmitter.js +1 -1
  159. package/Libraries/vendor/emitter/_EventSubscription.js +1 -1
  160. package/React/Base/RCTAssert.h +36 -15
  161. package/React/Base/RCTAssert.m +65 -19
  162. package/React/Base/RCTBridge.m +2 -4
  163. package/React/Base/RCTBridgeModule.h +3 -0
  164. package/React/Base/RCTBridgeModuleDecorator.h +35 -0
  165. package/React/Base/RCTBridgeModuleDecorator.m +73 -0
  166. package/React/Base/RCTConstants.h +18 -0
  167. package/React/Base/RCTConstants.m +46 -0
  168. package/React/Base/RCTJavaScriptLoader.h +1 -4
  169. package/React/Base/RCTJavaScriptLoader.mm +11 -17
  170. package/React/Base/RCTLog.h +17 -0
  171. package/React/Base/RCTLog.mm +31 -2
  172. package/React/Base/RCTModuleData.mm +8 -74
  173. package/React/Base/RCTVersion.m +3 -3
  174. package/React/Base/RCTViewRegistry.m +24 -0
  175. package/React/Base/Surface/RCTSurface.mm +2 -1
  176. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +0 -1
  177. package/React/CoreModules/BUCK +1 -0
  178. package/React/CoreModules/RCTAccessibilityManager.mm +2 -2
  179. package/React/CoreModules/RCTActionSheetManager.mm +38 -9
  180. package/React/CoreModules/RCTDevMenu.h +5 -0
  181. package/React/CoreModules/RCTDevMenu.mm +68 -25
  182. package/React/CoreModules/RCTDeviceInfo.mm +17 -11
  183. package/React/CoreModules/RCTEventDispatcher.mm +2 -2
  184. package/React/CoreModules/RCTExceptionsManager.h +5 -3
  185. package/React/CoreModules/RCTExceptionsManager.mm +44 -12
  186. package/React/CoreModules/RCTFPSGraph.m +3 -3
  187. package/React/CoreModules/RCTLogBox.mm +17 -9
  188. package/React/CoreModules/RCTLogBoxView.h +3 -1
  189. package/React/CoreModules/RCTLogBoxView.mm +40 -11
  190. package/React/CoreModules/RCTPlatform.mm +2 -0
  191. package/React/CoreModules/RCTRedBox.mm +2 -2
  192. package/React/CoreModules/RCTStatusBarManager.mm +1 -1
  193. package/React/CoreModules/React-CoreModules.podspec +2 -2
  194. package/React/CxxBridge/RCTCxxBridge.mm +25 -58
  195. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +2 -2
  196. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.h +1 -0
  197. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +77 -19
  198. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +2 -1
  199. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +28 -7
  200. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +1 -0
  201. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
  202. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +4 -3
  203. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +2 -2
  204. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +9 -3
  205. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +2 -2
  206. package/React/Fabric/Mounting/RCTMountingManager.mm +13 -6
  207. package/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.h +5 -3
  208. package/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.mm +10 -8
  209. package/React/Fabric/Mounting/RCTMountingTransactionObserving.h +5 -3
  210. package/React/Fabric/RCTConversions.h +9 -1
  211. package/React/Fabric/RCTLocalizationProvider.mm +10 -4
  212. package/React/Fabric/RCTScheduler.h +7 -0
  213. package/React/Fabric/RCTScheduler.mm +15 -0
  214. package/React/Fabric/RCTSurfacePresenter.h +8 -0
  215. package/React/Fabric/RCTSurfacePresenter.mm +65 -15
  216. package/React/Fabric/RCTSurfaceTouchHandler.mm +158 -0
  217. package/React/Fabric/Surface/RCTFabricSurface.mm +1 -1
  218. package/React/Modules/RCTSurfacePresenterStub.h +4 -0
  219. package/React/Modules/RCTUIManager.m +26 -1
  220. package/React/React-RCTFabric.podspec +2 -2
  221. package/React/Views/RCTBorderDrawing.m +176 -173
  222. package/React/Views/RCTComponent.h +1 -0
  223. package/React/Views/RCTComponentData.m +11 -1
  224. package/React/Views/RCTDatePickerManager.m +5 -6
  225. package/React/Views/RCTModalHostView.h +1 -1
  226. package/React/Views/RCTView.h +10 -0
  227. package/React/Views/RCTView.m +34 -17
  228. package/React/Views/RCTViewManager.m +37 -2
  229. package/React/Views/UIView+React.h +1 -0
  230. package/React/Views/UIView+React.m +11 -0
  231. package/React/third-party.xcconfig +1 -1
  232. package/React-Core.podspec +1 -1
  233. package/React.podspec +1 -1
  234. package/ReactAndroid/.npmignore +6 -2
  235. package/ReactAndroid/Android-prebuilt.mk +7 -13
  236. package/ReactAndroid/build.gradle +76 -85
  237. package/ReactAndroid/gradle.properties +3 -2
  238. package/ReactAndroid/hermes-engine/.npmignore +3 -0
  239. package/ReactAndroid/hermes-engine/build.gradle +261 -0
  240. package/ReactAndroid/hermes-engine/gradle.properties +1 -0
  241. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java +4 -0
  242. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java +13 -0
  243. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java +8 -0
  244. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/BUCK +4 -1
  245. package/ReactAndroid/src/androidTest/js/BUCK +4 -1
  246. package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +4 -1
  247. package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +4 -1
  248. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -5
  249. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +8 -2
  250. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/CMakeLists.txt +31 -0
  251. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +32 -32
  252. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/CMakeLists.txt +41 -0
  253. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/OnLoad.cpp +1 -0
  254. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +4 -1
  255. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +33 -1
  256. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +9 -27
  257. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +1 -1
  258. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +1 -1
  259. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +89 -12
  260. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeWithUpdateableConfig.java +15 -0
  261. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +6 -1
  262. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.java +131 -0
  263. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +116 -45
  264. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +17 -0
  265. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java +14 -0
  266. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java +2 -0
  267. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.java +2 -1
  268. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +8 -2
  269. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +3 -1
  270. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java +4 -0
  271. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +12 -1
  272. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +2 -1
  273. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.java +27 -0
  274. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.java +6 -0
  275. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +4 -1
  276. package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegate.java +3 -0
  277. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +8 -2
  278. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +170 -0
  279. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBufferSoLoader.kt +33 -0
  280. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +298 -0
  281. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +170 -0
  282. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +0 -2
  283. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +4 -1
  284. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/CMakeLists.txt +34 -0
  285. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/.clang-tidy +3 -0
  286. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JReadableMapBuffer.cpp +43 -0
  287. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/{ReadableMapBuffer.h → JReadableMapBuffer.h} +5 -3
  288. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JWritableMapBuffer.cpp +65 -0
  289. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JWritableMapBuffer.h +23 -0
  290. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/OnLoad.cpp +3 -2
  291. package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +4 -1
  292. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +4 -1
  293. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +18 -5
  294. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +8 -2
  295. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +1 -0
  296. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +1 -0
  297. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +42 -51
  298. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +1 -0
  299. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +17 -0
  300. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.java +1 -1
  301. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.java +5 -4
  302. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{RedBoxDialog.java → RedBoxContentView.java} +38 -29
  303. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.java +126 -0
  304. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +7 -0
  305. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{RedBoxHandler.java → interfaces/RedBoxHandler.java} +1 -3
  306. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +11 -5
  307. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +148 -0
  308. package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.java +1 -1
  309. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +2 -2
  310. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +42 -29
  311. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.java +5 -2
  312. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +2 -1
  313. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +1 -2
  314. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/{AsyncEventBeatV2.cpp → AsyncEventBeat.cpp} +6 -6
  315. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeat.h +8 -40
  316. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +6 -3
  317. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +55 -36
  318. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +3 -2
  319. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CMakeLists.txt +70 -0
  320. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +2 -15
  321. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +2 -4
  322. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.cpp +5 -2
  323. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.h +3 -1
  324. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountingManager.cpp +65 -71
  325. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountingManager.h +11 -9
  326. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JFabricUIManager.cpp +18 -0
  327. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JFabricUIManager.h +25 -0
  328. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/ReactNativeConfigHolder.cpp +1 -1
  329. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.cpp +4 -4
  330. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.h +2 -2
  331. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +527 -0
  332. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +19 -22
  333. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +93 -29
  334. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +6 -9
  335. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.java +2 -0
  336. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +2 -3
  337. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +1 -1
  338. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +4 -1
  339. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/CMakeLists.txt +23 -0
  340. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +4 -1
  341. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +8 -2
  342. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +4 -1
  343. package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +4 -1
  344. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +6 -1
  345. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +11 -1
  346. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +4 -1
  347. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +4 -1
  348. package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +4 -1
  349. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +4 -1
  350. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +4 -1
  351. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +1 -1
  352. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BUCK +4 -1
  353. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/CMakeLists.txt +22 -0
  354. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +4 -1
  355. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +4 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +4 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +4 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.java +16 -0
  359. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +4 -1
  360. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +8 -2
  361. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +4 -1
  362. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +4 -1
  363. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +4 -1
  364. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +4 -1
  365. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +4 -1
  366. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +4 -1
  367. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +8 -5
  368. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +4 -1
  369. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +7 -5
  370. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +4 -1
  371. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +9 -2
  372. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +4 -1
  373. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.java +7 -7
  374. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +4 -1
  375. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +4 -1
  376. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +4 -1
  377. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +4 -1
  378. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +20 -8
  379. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +4 -1
  380. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +8 -2
  381. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  382. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +4 -1
  383. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +4 -1
  384. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +4 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +4 -1
  386. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +4 -1
  387. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -0
  388. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/BUCK +1 -0
  389. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/CMakeLists.txt +24 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +4 -1
  391. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +4 -1
  392. package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +4 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +8 -2
  394. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +4 -1
  395. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +1 -1
  396. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +8 -2
  397. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/CMakeLists.txt +62 -0
  398. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/OnLoad.cpp +3 -3
  399. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +45 -7
  400. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +148 -7
  401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/BaseViewManagerDelegate.java → BaseViewManagerDelegate.java} +0 -0
  402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/BaseViewManagerInterface.java → BaseViewManagerInterface.java} +0 -0
  403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/FloatUtil.java → FloatUtil.java} +0 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +331 -0
  405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +3 -3
  406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +265 -21
  407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.java +1 -6
  408. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/Spacing.java → Spacing.java} +0 -0
  409. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/StateWrapper.java +1 -1
  410. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +57 -12
  411. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -11
  412. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +3 -3
  413. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +42 -0
  414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/ViewManagerDelegate.java → ViewManagerDelegate.java} +0 -0
  415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/ViewProps.java → ViewProps.java} +0 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +4 -1
  417. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +4 -1
  418. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +7 -1
  419. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/NativeGestureUtil.java +5 -1
  420. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +180 -0
  421. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +75 -0
  422. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +0 -2
  423. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +4 -1
  424. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/CMakeLists.txt +26 -0
  425. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +4 -1
  426. package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +4 -1
  427. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.java +5 -4
  428. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +4 -1
  429. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +4 -1
  430. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +8 -3
  431. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +3 -91
  432. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +8 -2
  433. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java +2 -1
  434. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +5 -1
  435. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +35 -1
  436. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +4 -1
  437. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +4 -1
  438. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +57 -17
  439. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +10 -7
  440. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +60 -20
  441. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +45 -11
  442. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +10 -7
  443. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +10 -10
  444. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +4 -1
  445. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +7 -2
  446. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +4 -1
  447. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +4 -1
  448. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +12 -3
  449. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +14 -0
  450. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactClickableSpan.java +3 -6
  451. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +5 -0
  452. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +20 -0
  453. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +45 -9
  454. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +31 -31
  455. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +21 -17
  456. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +25 -31
  457. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +4 -1
  458. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +4 -1
  459. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +9 -4
  460. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +12 -2
  461. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +1 -1
  462. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +4 -1
  463. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +11 -2
  464. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ColorUtil.java +19 -0
  465. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +468 -0
  466. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferViewManager.kt +76 -0
  467. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +1 -1
  468. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +4 -0
  469. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManagerWrapper.kt +90 -0
  470. package/ReactAndroid/src/main/jni/CMakeLists.txt +102 -0
  471. package/ReactAndroid/src/main/jni/first-party/fb/BUCK +1 -1
  472. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +28 -0
  473. package/ReactAndroid/src/main/jni/first-party/fbgloginit/CMakeLists.txt +15 -0
  474. package/ReactAndroid/src/main/jni/first-party/fbjni/CMakeLists.txt +15 -0
  475. package/ReactAndroid/src/main/jni/first-party/hermes/CMakeLists.txt +13 -0
  476. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +20 -0
  477. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedGlobalRef.h +1 -1
  478. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedLocalRef.h +1 -1
  479. package/ReactAndroid/src/main/jni/react/jni/Android.mk +12 -5
  480. package/ReactAndroid/src/main/jni/react/jni/BUCK +4 -1
  481. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +72 -0
  482. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +63 -32
  483. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  484. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.cpp +10 -0
  485. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.h +3 -1
  486. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +10 -0
  487. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.h +1 -1
  488. package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +3 -3
  489. package/ReactAndroid/src/main/jni/third-party/boost/CMakeLists.txt +22 -0
  490. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/jump_arm64_aapcs_elf_gas.S +0 -0
  491. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/make_arm64_aapcs_elf_gas.S +0 -0
  492. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/ontop_arm64_aapcs_elf_gas.S +0 -0
  493. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/jump_arm_aapcs_elf_gas.S +0 -0
  494. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/make_arm_aapcs_elf_gas.S +0 -0
  495. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/ontop_arm_aapcs_elf_gas.S +0 -0
  496. package/ReactAndroid/src/main/jni/third-party/double-conversion/CMakeLists.txt +23 -0
  497. package/ReactAndroid/src/main/jni/third-party/fmt/CMakeLists.txt +13 -0
  498. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +31 -31
  499. package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +126 -0
  500. package/ReactAndroid/src/main/jni/third-party/glog/CMakeLists.txt +35 -0
  501. package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +15 -0
  502. package/ReactAndroid/src/main/jni/third-party/libevent/CMakeLists.txt +42 -0
  503. package/ReactAndroid/src/main/res/shell/values/styles.xml +3 -2
  504. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +3 -0
  505. package/ReactAndroid/src/test/java/com/facebook/react/ReactActivityDelegateTest.kt +62 -0
  506. package/ReactAndroid/src/test/java/com/facebook/react/views/BUCK +5 -2
  507. package/ReactAndroid/src/test/java/com/facebook/react/views/view/ColorUtilTest.java +9 -0
  508. package/ReactAndroid/src/test/resources/BUCK +1 -0
  509. package/ReactCommon/React-Fabric.podspec +1 -1
  510. package/ReactCommon/React-rncore.podspec +1 -1
  511. package/ReactCommon/ReactCommon.podspec +4 -3
  512. package/ReactCommon/butter/Android.mk +0 -2
  513. package/ReactCommon/butter/BUCK +4 -1
  514. package/ReactCommon/butter/CMakeLists.txt +20 -0
  515. package/ReactCommon/callinvoker/BUCK +4 -1
  516. package/ReactCommon/callinvoker/CMakeLists.txt +13 -0
  517. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  518. package/ReactCommon/cxxreact/Android.mk +5 -2
  519. package/ReactCommon/cxxreact/BUCK +16 -4
  520. package/ReactCommon/cxxreact/CMakeLists.txt +29 -0
  521. package/ReactCommon/cxxreact/Instance.cpp +0 -35
  522. package/ReactCommon/cxxreact/Instance.h +0 -3
  523. package/ReactCommon/cxxreact/JSBundleType.cpp +13 -8
  524. package/ReactCommon/cxxreact/JSBundleType.h +15 -11
  525. package/ReactCommon/cxxreact/ModuleRegistry.cpp +1 -1
  526. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  527. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  528. package/ReactCommon/cxxreact/tests/BUCK +1 -1
  529. package/ReactCommon/hermes/React-hermes.podspec +1 -1
  530. package/ReactCommon/hermes/executor/Android.mk +20 -19
  531. package/ReactCommon/hermes/executor/CMakeLists.txt +29 -0
  532. package/ReactCommon/hermes/inspector/Android.mk +5 -4
  533. package/ReactCommon/hermes/inspector/CMakeLists.txt +32 -0
  534. package/ReactCommon/hermes/inspector/Exceptions.h +6 -0
  535. package/ReactCommon/hermes/inspector/Inspector.cpp +5 -2
  536. package/ReactCommon/hermes/inspector/Inspector.h +14 -0
  537. package/ReactCommon/hermes/inspector/InspectorState.cpp +16 -8
  538. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +398 -1
  539. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +266 -12
  540. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +140 -2
  541. package/ReactCommon/hermes/inspector/chrome/tests/AsyncHermesRuntime.cpp +21 -0
  542. package/ReactCommon/hermes/inspector/chrome/tests/AsyncHermesRuntime.h +27 -0
  543. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +298 -7
  544. package/ReactCommon/hermes/inspector/chrome/tests/MessageTests.cpp +1071 -1
  545. package/ReactCommon/hermes/inspector/tools/message_types.txt +4 -0
  546. package/ReactCommon/hermes/inspector/tools/msggen/package.json +1 -1
  547. package/ReactCommon/hermes/inspector/tools/msggen/src/GeneratedHeader.js +1 -1
  548. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +14 -1
  549. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +1 -1
  550. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +17 -2
  551. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +4 -4
  552. package/ReactCommon/hermes/inspector/tools/run_msggen +17 -12
  553. package/ReactCommon/jsi/Android.mk +2 -2
  554. package/ReactCommon/jsi/BUCK +12 -3
  555. package/ReactCommon/jsi/CMakeLists.txt +43 -0
  556. package/ReactCommon/jsi/JSCRuntime.cpp +8 -0
  557. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  558. package/ReactCommon/jsi/jsi/decorator.h +3 -0
  559. package/ReactCommon/jsi/jsi/jsi.cpp +11 -0
  560. package/ReactCommon/jsi/jsi/jsi.h +24 -4
  561. package/ReactCommon/jsi/jsi/jsilib.h +1 -1
  562. package/ReactCommon/jsi/jsi/test/testlib.cpp +3 -1
  563. package/ReactCommon/jsiexecutor/Android.mk +1 -1
  564. package/ReactCommon/jsiexecutor/BUCK +4 -1
  565. package/ReactCommon/jsiexecutor/CMakeLists.txt +23 -0
  566. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
  567. package/ReactCommon/jsinspector/BUCK +4 -1
  568. package/ReactCommon/jsinspector/CMakeLists.txt +14 -0
  569. package/ReactCommon/jsinspector/React-jsinspector.podspec +1 -1
  570. package/ReactCommon/logger/BUCK +4 -1
  571. package/ReactCommon/logger/CMakeLists.txt +16 -0
  572. package/ReactCommon/logger/React-logger.podspec +1 -1
  573. package/ReactCommon/microprofiler/BUCK +5 -2
  574. package/ReactCommon/react/bridging/AString.h +42 -0
  575. package/ReactCommon/react/bridging/Android.mk +27 -0
  576. package/ReactCommon/react/bridging/Array.h +108 -0
  577. package/ReactCommon/react/bridging/BUCK +57 -0
  578. package/ReactCommon/react/bridging/Base.h +154 -0
  579. package/ReactCommon/react/bridging/Bool.h +25 -0
  580. package/ReactCommon/react/bridging/Bridging.h +19 -0
  581. package/ReactCommon/react/bridging/CMakeLists.txt +17 -0
  582. package/ReactCommon/react/bridging/CallbackWrapper.h +103 -0
  583. package/ReactCommon/react/bridging/Class.h +71 -0
  584. package/ReactCommon/react/bridging/Convert.h +153 -0
  585. package/ReactCommon/react/bridging/Error.h +51 -0
  586. package/ReactCommon/react/bridging/Function.h +214 -0
  587. package/ReactCommon/react/{nativemodule/core/ReactCommon → bridging}/LongLivedObject.cpp +5 -0
  588. package/ReactCommon/react/bridging/LongLivedObject.h +58 -0
  589. package/ReactCommon/react/bridging/Number.h +47 -0
  590. package/ReactCommon/react/bridging/Object.h +100 -0
  591. package/ReactCommon/react/bridging/Promise.h +102 -0
  592. package/ReactCommon/react/bridging/React-bridging.podspec +41 -0
  593. package/ReactCommon/react/bridging/Value.h +107 -0
  594. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +407 -0
  595. package/ReactCommon/react/bridging/tests/BridgingTest.h +77 -0
  596. package/ReactCommon/react/bridging/tests/ClassTest.cpp +97 -0
  597. package/ReactCommon/react/config/BUCK +4 -1
  598. package/ReactCommon/react/config/CMakeLists.txt +19 -0
  599. package/ReactCommon/react/debug/Android.mk +1 -1
  600. package/ReactCommon/react/debug/BUCK +4 -1
  601. package/ReactCommon/react/debug/CMakeLists.txt +22 -0
  602. package/ReactCommon/react/debug/react_native_assert.h +1 -1
  603. package/ReactCommon/react/nativemodule/core/Android.mk +7 -4
  604. package/ReactCommon/react/nativemodule/core/BUCK +5 -1
  605. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +32 -0
  606. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +2 -48
  607. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +0 -23
  608. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +18 -2
  609. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +2 -83
  610. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +3 -1
  611. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +17 -7
  612. package/ReactCommon/react/nativemodule/samples/BUCK +4 -1
  613. package/ReactCommon/react/renderer/animations/Android.mk +1 -2
  614. package/ReactCommon/react/renderer/animations/BUCK +4 -1
  615. package/ReactCommon/react/renderer/animations/CMakeLists.txt +32 -0
  616. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +6 -6
  617. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +4 -3
  618. package/ReactCommon/react/renderer/animations/conversions.h +11 -11
  619. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +1 -1
  620. package/ReactCommon/react/renderer/attributedstring/Android.mk +1 -2
  621. package/ReactCommon/react/renderer/attributedstring/BUCK +4 -1
  622. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +29 -0
  623. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +16 -16
  624. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +14 -14
  625. package/ReactCommon/react/renderer/attributedstring/conversions.h +13 -11
  626. package/ReactCommon/react/renderer/componentregistry/Android.mk +2 -2
  627. package/ReactCommon/react/renderer/componentregistry/BUCK +4 -1
  628. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +24 -0
  629. package/ReactCommon/react/renderer/componentregistry/native/Android.mk +1 -2
  630. package/ReactCommon/react/renderer/componentregistry/native/BUCK +4 -1
  631. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +24 -0
  632. package/ReactCommon/react/renderer/components/image/Android.mk +1 -1
  633. package/ReactCommon/react/renderer/components/image/BUCK +4 -1
  634. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +29 -0
  635. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +4 -1
  636. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +4 -1
  637. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +16 -2
  638. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +4 -1
  639. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +16 -11
  640. package/ReactCommon/react/renderer/components/modal/Android.mk +1 -1
  641. package/ReactCommon/react/renderer/components/modal/BUCK +4 -1
  642. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +31 -0
  643. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +1 -1
  644. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.h +1 -1
  645. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +1 -1
  646. package/ReactCommon/react/renderer/components/progressbar/Android.mk +1 -2
  647. package/ReactCommon/react/renderer/components/progressbar/BUCK +4 -1
  648. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +34 -0
  649. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/conversions.h +1 -1
  650. package/ReactCommon/react/renderer/components/root/Android.mk +1 -2
  651. package/ReactCommon/react/renderer/components/root/BUCK +4 -1
  652. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +26 -0
  653. package/ReactCommon/react/renderer/components/safeareaview/BUCK +4 -1
  654. package/ReactCommon/react/renderer/components/scrollview/Android.mk +1 -2
  655. package/ReactCommon/react/renderer/components/scrollview/BUCK +4 -1
  656. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +28 -0
  657. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +2 -2
  658. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +1 -1
  659. package/ReactCommon/react/renderer/components/slider/Android.mk +1 -2
  660. package/ReactCommon/react/renderer/components/slider/BUCK +4 -1
  661. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +38 -0
  662. package/ReactCommon/react/renderer/components/switch/Android.mk +1 -2
  663. package/ReactCommon/react/renderer/components/switch/BUCK +4 -1
  664. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +44 -0
  665. package/ReactCommon/react/renderer/components/text/Android.mk +1 -1
  666. package/ReactCommon/react/renderer/components/text/BUCK +4 -1
  667. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +33 -0
  668. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +1 -1
  669. package/ReactCommon/react/renderer/components/textinput/Android.mk +1 -1
  670. package/ReactCommon/react/renderer/components/textinput/BUCK +4 -1
  671. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +40 -0
  672. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +6 -6
  673. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +1 -1
  674. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +4 -1
  675. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +1 -1
  676. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +1 -1
  677. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +3 -4
  678. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +1 -2
  679. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +4 -1
  680. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +27 -0
  681. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +41 -6
  682. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -0
  683. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +5 -0
  684. package/ReactCommon/react/renderer/components/view/Android.mk +1 -1
  685. package/ReactCommon/react/renderer/components/view/BUCK +5 -3
  686. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +26 -0
  687. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +35 -0
  688. package/ReactCommon/react/renderer/components/view/PointerEvent.h +59 -0
  689. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +76 -2
  690. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +14 -1
  691. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
  692. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.h +1 -1
  693. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +46 -22
  694. package/ReactCommon/react/renderer/components/view/ViewProps.h +18 -7
  695. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -3
  696. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +46 -3
  697. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +13 -1
  698. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +38 -27
  699. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  700. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -1
  701. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +33 -0
  702. package/ReactCommon/react/renderer/components/view/conversions.h +5 -6
  703. package/ReactCommon/react/renderer/components/view/primitives.h +96 -3
  704. package/ReactCommon/react/renderer/components/view/propsConversions.h +191 -0
  705. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +201 -24
  706. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +3 -3
  707. package/ReactCommon/react/renderer/core/Android.mk +1 -2
  708. package/ReactCommon/react/renderer/core/BUCK +4 -3
  709. package/ReactCommon/react/renderer/core/CMakeLists.txt +22 -0
  710. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +12 -0
  711. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +21 -0
  712. package/ReactCommon/react/renderer/core/EventDispatcher.h +15 -0
  713. package/ReactCommon/react/renderer/core/EventEmitter.cpp +15 -12
  714. package/ReactCommon/react/renderer/core/EventEmitter.h +5 -6
  715. package/ReactCommon/react/renderer/core/EventListener.cpp +39 -0
  716. package/ReactCommon/react/renderer/core/EventListener.h +44 -0
  717. package/ReactCommon/react/renderer/core/Props.cpp +5 -2
  718. package/ReactCommon/react/renderer/core/Props.h +2 -1
  719. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  720. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +1 -1
  721. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -6
  722. package/ReactCommon/react/renderer/core/RawPropsParser.h +0 -1
  723. package/ReactCommon/react/renderer/core/propsConversions.h +6 -5
  724. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +10 -12
  725. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +3 -3
  726. package/ReactCommon/react/renderer/debug/Android.mk +1 -1
  727. package/ReactCommon/react/renderer/debug/BUCK +4 -1
  728. package/ReactCommon/react/renderer/debug/CMakeLists.txt +15 -0
  729. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +3 -3
  730. package/ReactCommon/react/renderer/element/BUCK +4 -1
  731. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +3 -3
  732. package/ReactCommon/react/renderer/graphics/Android.mk +1 -2
  733. package/ReactCommon/react/renderer/graphics/BUCK +4 -1
  734. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +25 -0
  735. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  736. package/ReactCommon/react/renderer/graphics/Transform.cpp +8 -0
  737. package/ReactCommon/react/renderer/graphics/Transform.h +9 -3
  738. package/ReactCommon/react/renderer/graphics/conversions.h +1 -11
  739. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +1 -1
  740. package/ReactCommon/react/renderer/imagemanager/Android.mk +1 -1
  741. package/ReactCommon/react/renderer/imagemanager/BUCK +4 -1
  742. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +34 -0
  743. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImageManager.mm +1 -1
  744. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  745. package/ReactCommon/react/renderer/leakchecker/BUCK +4 -1
  746. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +18 -0
  747. package/ReactCommon/react/renderer/mapbuffer/BUCK +4 -1
  748. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +15 -0
  749. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +8 -8
  750. package/ReactCommon/react/renderer/mounting/Android.mk +1 -2
  751. package/ReactCommon/react/renderer/mounting/BUCK +4 -1
  752. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +31 -0
  753. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +2 -2
  754. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +3 -3
  755. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  756. package/ReactCommon/react/renderer/mounting/MountingTransaction.cpp +1 -1
  757. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +2 -2
  758. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +4 -1
  759. package/ReactCommon/react/renderer/mounting/ShadowTreeRevision.h +0 -2
  760. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +1 -1
  761. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +7 -10
  762. package/ReactCommon/react/renderer/mounting/TelemetryController.h +7 -7
  763. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +1 -1
  764. package/ReactCommon/react/renderer/runtimescheduler/BUCK +4 -1
  765. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +21 -0
  766. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +55 -40
  767. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +26 -1
  768. package/ReactCommon/react/renderer/runtimescheduler/Task.h +3 -2
  769. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +48 -3
  770. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +9 -0
  771. package/ReactCommon/react/renderer/scheduler/Android.mk +1 -2
  772. package/ReactCommon/react/renderer/scheduler/BUCK +4 -1
  773. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +34 -0
  774. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +41 -6
  775. package/ReactCommon/react/renderer/scheduler/Scheduler.h +10 -1
  776. package/ReactCommon/react/renderer/telemetry/Android.mk +1 -2
  777. package/ReactCommon/react/renderer/telemetry/BUCK +4 -1
  778. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +27 -0
  779. package/ReactCommon/react/renderer/templateprocessor/Android.mk +1 -2
  780. package/ReactCommon/react/renderer/templateprocessor/BUCK +4 -1
  781. package/ReactCommon/react/renderer/templateprocessor/CMakeLists.txt +26 -0
  782. package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +1 -2
  783. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +4 -1
  784. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +45 -0
  785. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +142 -10
  786. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +13 -11
  787. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +0 -2
  788. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -1
  789. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +26 -9
  790. package/ReactCommon/react/renderer/uimanager/Android.mk +1 -2
  791. package/ReactCommon/react/renderer/uimanager/BUCK +4 -1
  792. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +32 -0
  793. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +8 -9
  794. package/ReactCommon/react/renderer/uimanager/UIManager.h +10 -13
  795. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +6 -5
  796. package/ReactCommon/react/test_utils/BUCK +4 -1
  797. package/ReactCommon/react/test_utils/MockSurfaceHandler.h +2 -2
  798. package/ReactCommon/react/utils/Android.mk +1 -3
  799. package/ReactCommon/react/utils/BUCK +4 -1
  800. package/ReactCommon/react/utils/CMakeLists.txt +24 -0
  801. package/ReactCommon/react/utils/ContextContainer.h +2 -2
  802. package/ReactCommon/react/utils/ManagedObjectWrapper.h +4 -0
  803. package/ReactCommon/react/utils/SimpleThreadSafeCache.h +2 -2
  804. package/ReactCommon/react/utils/Telemetry.h +2 -2
  805. package/ReactCommon/reactperflogger/BUCK +4 -1
  806. package/ReactCommon/reactperflogger/CMakeLists.txt +14 -0
  807. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  808. package/ReactCommon/runtimeexecutor/BUCK +4 -1
  809. package/ReactCommon/runtimeexecutor/CMakeLists.txt +17 -0
  810. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  811. package/ReactCommon/yoga/CMakeLists.txt +16 -0
  812. package/ReactCommon/yoga/Yoga-umbrella.h +21 -0
  813. package/ReactCommon/yoga/Yoga.modulemap +6 -0
  814. package/ReactCommon/yoga/Yoga.podspec +21 -7
  815. package/ReactCommon/yoga/yoga/Yoga.cpp +1 -1
  816. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-javadoc.jar +0 -0
  817. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-javadoc.jar.md5 +1 -0
  818. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-javadoc.jar.sha1 +1 -0
  819. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-javadoc.jar.sha256 +1 -0
  820. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-javadoc.jar.sha512 +1 -0
  821. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-sources.jar +0 -0
  822. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-sources.jar.md5 +1 -0
  823. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-sources.jar.sha1 +1 -0
  824. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-sources.jar.sha256 +1 -0
  825. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug-sources.jar.sha512 +1 -0
  826. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug.aar +0 -0
  827. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug.aar.md5 +1 -0
  828. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug.aar.sha1 +1 -0
  829. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug.aar.sha256 +1 -0
  830. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-debug.aar.sha512 +1 -0
  831. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-javadoc.jar +0 -0
  832. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-javadoc.jar.md5 +1 -0
  833. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-javadoc.jar.sha1 +1 -0
  834. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-javadoc.jar.sha256 +1 -0
  835. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-javadoc.jar.sha512 +1 -0
  836. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-sources.jar +0 -0
  837. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-sources.jar.md5 +1 -0
  838. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-sources.jar.sha1 +1 -0
  839. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-sources.jar.sha256 +1 -0
  840. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release-sources.jar.sha512 +1 -0
  841. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release.aar +0 -0
  842. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release.aar.md5 +1 -0
  843. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release.aar.sha1 +1 -0
  844. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release.aar.sha256 +1 -0
  845. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0-release.aar.sha512 +1 -0
  846. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.module +246 -0
  847. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.module.md5 +1 -0
  848. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.module.sha1 +1 -0
  849. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.module.sha256 +1 -0
  850. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.module.sha512 +1 -0
  851. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.pom +44 -0
  852. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.pom.md5 +1 -0
  853. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.pom.sha1 +1 -0
  854. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.pom.sha256 +1 -0
  855. package/android/com/facebook/react/hermes-engine/0.69.0-rc.0/hermes-engine-0.69.0-rc.0.pom.sha512 +1 -0
  856. package/android/com/facebook/react/hermes-engine/maven-metadata.xml +13 -0
  857. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +1 -0
  858. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +1 -0
  859. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +1 -0
  860. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +1 -0
  861. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-javadoc.jar +0 -0
  862. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-javadoc.jar.md5 +1 -0
  863. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-javadoc.jar.sha1 +1 -0
  864. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-javadoc.jar.sha256 +1 -0
  865. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-javadoc.jar.sha512 +1 -0
  866. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1-sources.jar → 0.69.0-rc.0/react-native-0.69.0-rc.0-debug-sources.jar} +0 -0
  867. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-sources.jar.md5 +1 -0
  868. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-sources.jar.sha1 +1 -0
  869. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-sources.jar.sha256 +1 -0
  870. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug-sources.jar.sha512 +1 -0
  871. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug.aar +0 -0
  872. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug.aar.md5 +1 -0
  873. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug.aar.sha1 +1 -0
  874. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug.aar.sha256 +1 -0
  875. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-debug.aar.sha512 +1 -0
  876. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-javadoc.jar +0 -0
  877. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-javadoc.jar.md5 +1 -0
  878. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-javadoc.jar.sha1 +1 -0
  879. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-javadoc.jar.sha256 +1 -0
  880. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-javadoc.jar.sha512 +1 -0
  881. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-sources.jar +0 -0
  882. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-sources.jar.md5 +1 -0
  883. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-sources.jar.sha1 +1 -0
  884. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-sources.jar.sha256 +1 -0
  885. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release-sources.jar.sha512 +1 -0
  886. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1.aar → 0.69.0-rc.0/react-native-0.69.0-rc.0-release.aar} +0 -0
  887. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release.aar.md5 +1 -0
  888. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release.aar.sha1 +1 -0
  889. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release.aar.sha256 +1 -0
  890. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0-release.aar.sha512 +1 -0
  891. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.module +670 -0
  892. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.module.md5 +1 -0
  893. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.module.sha1 +1 -0
  894. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.module.sha256 +1 -0
  895. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.module.sha512 +1 -0
  896. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1.pom → 0.69.0-rc.0/react-native-0.69.0-rc.0.pom} +32 -3
  897. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.pom.md5 +1 -0
  898. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.pom.sha1 +1 -0
  899. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.pom.sha256 +1 -0
  900. package/android/com/facebook/react/react-native/0.69.0-rc.0/react-native-0.69.0-rc.0.pom.sha512 +1 -0
  901. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -4
  902. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  903. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  904. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -1
  905. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -1
  906. package/index.js +30 -25
  907. package/jest/preprocessor.js +24 -107
  908. package/jest/preprocessor_DO_NOT_USE.js +122 -0
  909. package/package.json +23 -20
  910. package/react-native.config.js +1 -3
  911. package/react.gradle +47 -23
  912. package/scripts/{find-node.sh → find-node-for-xcode.sh} +11 -0
  913. package/scripts/generate-artifacts.js +16 -6
  914. package/scripts/packager.sh +1 -1
  915. package/scripts/react-native-xcode.sh +0 -4
  916. package/scripts/react_native_pods.rb +125 -12
  917. package/scripts/react_native_pods_utils/script_phases.rb +2 -2
  918. package/scripts/react_native_pods_utils/script_phases.sh +4 -5
  919. package/scripts/xcode/with-environment.sh +47 -0
  920. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  921. package/sdks/hermesc/osx-bin/hermesc +0 -0
  922. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  923. package/sdks/hermesc/win64-bin/icudt64.dll +0 -0
  924. package/sdks/hermesc/win64-bin/icuin64.dll +0 -0
  925. package/sdks/hermesc/win64-bin/icuio64.dll +0 -0
  926. package/sdks/hermesc/win64-bin/icutest64.dll +0 -0
  927. package/sdks/hermesc/win64-bin/icutu64.dll +0 -0
  928. package/sdks/hermesc/win64-bin/icuuc64.dll +0 -0
  929. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  930. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  931. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  932. package/template/Gemfile +1 -1
  933. package/template/_flowconfig +1 -2
  934. package/template/_gitignore +5 -3
  935. package/template/_ruby-version +1 -1
  936. package/template/android/app/build.gradle +11 -12
  937. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +9 -1
  938. package/template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java +2 -2
  939. package/template/android/app/src/main/jni/Android.mk +2 -3
  940. package/template/android/build.gradle +2 -2
  941. package/template/android/settings.gradle +2 -0
  942. package/template/ios/HelloWorld/AppDelegate.mm +26 -1
  943. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +7 -5
  944. package/template/ios/Podfile +1 -1
  945. package/template/ios/_xcode.env +11 -0
  946. package/template/package.json +4 -4
  947. package/third-party-podspecs/DoubleConversion.podspec +1 -1
  948. package/third-party-podspecs/glog.podspec +1 -1
  949. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -44
  950. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -45
  951. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
  952. package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -360
  953. package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -83
  954. package/Libraries/ReactNative/UIManagerInjection.js +0 -15
  955. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -24527
  956. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -8309
  957. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -8961
  958. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -24948
  959. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -8400
  960. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -9049
  961. package/React/Views/RCTWeakViewHolder.h +0 -19
  962. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +0 -388
  963. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +0 -33
  964. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.cpp +0 -48
  965. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.h +0 -40
  966. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/BUCK +0 -21
  967. package/ReactAndroid/src/main/jni/first-party/hermes/Android.mk +0 -10
  968. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +0 -731
  969. package/ReactAndroid/src/main/third-party/java/asm/BUCK +0 -75
  970. package/ReactAndroid/src/main/third-party/java/assertj/BUCK +0 -14
  971. package/ReactAndroid/src/main/third-party/java/buck-android-support/BUCK +0 -11
  972. package/ReactAndroid/src/main/third-party/java/buck-android-support/buck-android-support.jar +0 -0
  973. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +0 -14
  974. package/ReactAndroid/src/main/third-party/java/javapoet/BUCK +0 -14
  975. package/ReactAndroid/src/main/third-party/java/jsr-305/BUCK +0 -13
  976. package/ReactAndroid/src/main/third-party/java/jsr-330/BUCK +0 -13
  977. package/ReactAndroid/src/main/third-party/java/junit/BUCK +0 -36
  978. package/ReactAndroid/src/main/third-party/java/mockito/BUCK +0 -36
  979. package/ReactAndroid/src/main/third-party/java/mockito2/BUCK +0 -75
  980. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +0 -46
  981. package/ReactAndroid/src/main/third-party/java/okio/BUCK +0 -24
  982. package/ReactAndroid/src/main/third-party/java/robolectric/BUCK +0 -218
  983. package/ReactAndroid/src/main/third-party/java/sqlite/BUCK +0 -23
  984. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -13
  985. package/ReactAndroid/src/main/third-party/kotlin/BUCK +0 -91
  986. package/ReactCommon/butter/optional.h +0 -38
  987. package/ReactCommon/common.mk +0 -29
  988. package/ReactCommon/react/renderer/mounting/MountingTransactionMetadata.h +0 -32
  989. package/ReactCommon/react/utils/LayoutManager.h +0 -150
  990. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.md5 +0 -1
  991. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha1 +0 -1
  992. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha256 +0 -1
  993. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha512 +0 -1
  994. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.md5 +0 -1
  995. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha1 +0 -1
  996. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha256 +0 -1
  997. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha512 +0 -1
  998. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module +0 -272
  999. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.md5 +0 -1
  1000. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha1 +0 -1
  1001. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha256 +0 -1
  1002. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha512 +0 -1
  1003. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.md5 +0 -1
  1004. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha1 +0 -1
  1005. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha256 +0 -1
  1006. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha512 +0 -1
  1007. package/flow/Promise.js +0 -47
  1008. package/template/Gemfile.lock +0 -100
@@ -34,7 +34,9 @@ import com.facebook.react.bridge.UiThreadUtil;
34
34
  import com.facebook.react.bridge.WritableMap;
35
35
  import com.facebook.react.bridge.WritableNativeMap;
36
36
  import com.facebook.react.common.annotations.VisibleForTesting;
37
+ import com.facebook.react.config.ReactFeatureFlags;
37
38
  import com.facebook.react.uimanager.FabricViewStateManager;
39
+ import com.facebook.react.uimanager.JSPointerDispatcher;
38
40
  import com.facebook.react.uimanager.JSTouchDispatcher;
39
41
  import com.facebook.react.uimanager.PixelUtil;
40
42
  import com.facebook.react.uimanager.RootView;
@@ -413,9 +415,13 @@ public class ReactModalHostView extends ViewGroup
413
415
  private final FabricViewStateManager mFabricViewStateManager = new FabricViewStateManager();
414
416
 
415
417
  private final JSTouchDispatcher mJSTouchDispatcher = new JSTouchDispatcher(this);
418
+ @Nullable private JSPointerDispatcher mJSPointerDispatcher;
416
419
 
417
420
  public DialogRootViewGroup(Context context) {
418
421
  super(context);
422
+ if (ReactFeatureFlags.dispatchPointerEvents) {
423
+ mJSPointerDispatcher = new JSPointerDispatcher(this);
424
+ }
419
425
  }
420
426
 
421
427
  private void setEventDispatcher(EventDispatcher eventDispatcher) {
@@ -515,31 +521,59 @@ public class ReactModalHostView extends ViewGroup
515
521
  @Override
516
522
  public boolean onInterceptTouchEvent(MotionEvent event) {
517
523
  mJSTouchDispatcher.handleTouchEvent(event, mEventDispatcher);
524
+ if (mJSPointerDispatcher != null) {
525
+ mJSPointerDispatcher.handleMotionEvent(event, mEventDispatcher);
526
+ }
518
527
  return super.onInterceptTouchEvent(event);
519
528
  }
520
529
 
521
530
  @Override
522
531
  public boolean onTouchEvent(MotionEvent event) {
523
532
  mJSTouchDispatcher.handleTouchEvent(event, mEventDispatcher);
533
+ if (mJSPointerDispatcher != null) {
534
+ mJSPointerDispatcher.handleMotionEvent(event, mEventDispatcher);
535
+ }
524
536
  super.onTouchEvent(event);
525
537
  // In case when there is no children interested in handling touch event, we return true from
526
538
  // the root view in order to receive subsequent events related to that gesture
527
539
  return true;
528
540
  }
529
541
 
542
+ @Override
543
+ public boolean onInterceptHoverEvent(MotionEvent event) {
544
+ if (mJSPointerDispatcher != null) {
545
+ mJSPointerDispatcher.handleMotionEvent(event, mEventDispatcher);
546
+ }
547
+ return super.onHoverEvent(event);
548
+ }
549
+
550
+ @Override
551
+ public boolean onHoverEvent(MotionEvent event) {
552
+ if (mJSPointerDispatcher != null) {
553
+ mJSPointerDispatcher.handleMotionEvent(event, mEventDispatcher);
554
+ }
555
+ return super.onHoverEvent(event);
556
+ }
557
+
530
558
  @Override
531
559
  public void onChildStartedNativeGesture(MotionEvent ev) {
532
- mJSTouchDispatcher.onChildStartedNativeGesture(ev, mEventDispatcher);
560
+ this.onChildStartedNativeGesture(null, ev);
533
561
  }
534
562
 
535
563
  @Override
536
564
  public void onChildStartedNativeGesture(View childView, MotionEvent ev) {
537
565
  mJSTouchDispatcher.onChildStartedNativeGesture(ev, mEventDispatcher);
566
+ if (mJSPointerDispatcher != null) {
567
+ mJSPointerDispatcher.onChildStartedNativeGesture(childView, ev, mEventDispatcher);
568
+ }
538
569
  }
539
570
 
540
571
  @Override
541
572
  public void onChildEndedNativeGesture(View childView, MotionEvent ev) {
542
573
  mJSTouchDispatcher.onChildEndedNativeGesture(ev, mEventDispatcher);
574
+ if (mJSPointerDispatcher != null) {
575
+ mJSPointerDispatcher.onChildEndedNativeGesture();
576
+ }
543
577
  }
544
578
 
545
579
  @Override
@@ -5,7 +5,10 @@ rn_android_library(
5
5
  srcs = glob(["*.java"]),
6
6
  autoglob = False,
7
7
  is_androidx = True,
8
- labels = ["supermodule:xplat/default/public.react_native.infra"],
8
+ labels = [
9
+ "pfh:ReactNative_CommonInfrastructurePlaceholder",
10
+ "supermodule:xplat/default/public.react_native.infra",
11
+ ],
9
12
  visibility = [
10
13
  "PUBLIC",
11
14
  ],
@@ -5,7 +5,10 @@ rn_android_library(
5
5
  srcs = glob(["*.java"]),
6
6
  autoglob = False,
7
7
  is_androidx = True,
8
- labels = ["supermodule:xplat/default/public.react_native.infra"],
8
+ labels = [
9
+ "pfh:ReactNative_CommonInfrastructurePlaceholder",
10
+ "supermodule:xplat/default/public.react_native.infra",
11
+ ],
9
12
  provided_deps = [
10
13
  react_native_dep("third-party/android/androidx:annotation"),
11
14
  react_native_dep("third-party/android/androidx:core"),
@@ -46,6 +46,7 @@ import com.facebook.react.uimanager.ReactOverflowViewWithInset;
46
46
  import com.facebook.react.uimanager.ViewProps;
47
47
  import com.facebook.react.uimanager.events.NativeGestureUtil;
48
48
  import com.facebook.react.views.scroll.ReactScrollViewHelper.HasFlingAnimator;
49
+ import com.facebook.react.views.scroll.ReactScrollViewHelper.HasScrollEventThrottle;
49
50
  import com.facebook.react.views.scroll.ReactScrollViewHelper.HasScrollState;
50
51
  import com.facebook.react.views.scroll.ReactScrollViewHelper.ReactScrollViewScrollState;
51
52
  import com.facebook.react.views.view.ReactViewBackgroundManager;
@@ -59,7 +60,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
59
60
  FabricViewStateManager.HasFabricViewStateManager,
60
61
  ReactOverflowViewWithInset,
61
62
  HasScrollState,
62
- HasFlingAnimator {
63
+ HasFlingAnimator,
64
+ HasScrollEventThrottle {
63
65
 
64
66
  private static boolean DEBUG_MODE = false && ReactBuildConfig.DEBUG;
65
67
  private static String TAG = ReactHorizontalScrollView.class.getSimpleName();
@@ -106,6 +108,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
106
108
  private final ReactScrollViewScrollState mReactScrollViewScrollState;
107
109
  private final ValueAnimator DEFAULT_FLING_ANIMATOR = ObjectAnimator.ofInt(this, "scrollX", 0, 0);
108
110
  private PointerEvents mPointerEvents = PointerEvents.AUTO;
111
+ private long mLastScrollDispatchTime = 0;
112
+ private int mScrollEventThrottle = 0;
109
113
 
110
114
  private final Rect mTempRect = new Rect();
111
115
 
@@ -460,11 +464,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
460
464
 
461
465
  try {
462
466
  if (super.onInterceptTouchEvent(ev)) {
463
- NativeGestureUtil.notifyNativeGestureStarted(this, ev);
464
- ReactScrollViewHelper.emitScrollBeginDragEvent(this);
465
- mDragging = true;
466
- enableFpsListener();
467
- getFlingAnimator().cancel();
467
+ handleInterceptedTouchEvent(ev);
468
468
  return true;
469
469
  }
470
470
  } catch (IllegalArgumentException e) {
@@ -477,6 +477,14 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
477
477
  return false;
478
478
  }
479
479
 
480
+ protected void handleInterceptedTouchEvent(MotionEvent ev) {
481
+ NativeGestureUtil.notifyNativeGestureStarted(this, ev);
482
+ ReactScrollViewHelper.emitScrollBeginDragEvent(this);
483
+ mDragging = true;
484
+ enableFpsListener();
485
+ getFlingAnimator().cancel();
486
+ }
487
+
480
488
  @Override
481
489
  public boolean pageScroll(int direction) {
482
490
  boolean handled = super.pageScroll(direction);
@@ -531,7 +539,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
531
539
  }
532
540
 
533
541
  mVelocityHelper.calculateVelocity(ev);
534
- int action = ev.getAction() & MotionEvent.ACTION_MASK;
542
+ int action = ev.getActionMasked();
535
543
  if (action == MotionEvent.ACTION_UP && mDragging) {
536
544
  ReactScrollViewHelper.updateFabricScrollState(this);
537
545
 
@@ -544,6 +552,10 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
544
552
  handlePostTouchScrolling(Math.round(velocityX), Math.round(velocityY));
545
553
  }
546
554
 
555
+ if (action == MotionEvent.ACTION_DOWN) {
556
+ cancelPostTouchScrolling();
557
+ }
558
+
547
559
  return super.onTouchEvent(ev);
548
560
  }
549
561
 
@@ -661,8 +673,7 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
661
673
  }
662
674
 
663
675
  private View getContentView() {
664
- View contentView = getChildAt(0);
665
- return contentView;
676
+ return getChildAt(0);
666
677
  }
667
678
 
668
679
  public void setEndFillColor(int color) {
@@ -822,6 +833,14 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
822
833
  this, mPostTouchRunnable, ReactScrollViewHelper.MOMENTUM_DELAY);
823
834
  }
824
835
 
836
+ private void cancelPostTouchScrolling() {
837
+ if (mPostTouchRunnable != null) {
838
+ removeCallbacks(mPostTouchRunnable);
839
+ mPostTouchRunnable = null;
840
+ getFlingAnimator().cancel();
841
+ }
842
+ }
843
+
825
844
  private int predictFinalScrollPosition(int velocityX) {
826
845
  // predict where a fling would end up so we can scroll to the nearest snap offset
827
846
  final int maximumOffset = Math.max(0, computeHorizontalScrollRange() - getWidth());
@@ -1191,12 +1210,13 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
1191
1210
  }
1192
1211
 
1193
1212
  super.scrollTo(x, y);
1194
- // The final scroll position might be different from (x, y). For example, we may need to scroll
1195
- // to the last item in the list, but that item cannot be move to the start position of the view.
1196
- final int actualX = getScrollX();
1197
- final int actualY = getScrollY();
1198
- ReactScrollViewHelper.updateFabricScrollState(this, actualX, actualY);
1199
- setPendingContentOffsets(actualX, actualY);
1213
+ ReactScrollViewHelper.updateFabricScrollState(this);
1214
+ setPendingContentOffsets(x, y);
1215
+ }
1216
+
1217
+ private boolean isContentReady() {
1218
+ View child = getContentView();
1219
+ return child != null && child.getWidth() != 0 && child.getHeight() != 0;
1200
1220
  }
1201
1221
 
1202
1222
  /**
@@ -1210,8 +1230,8 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
1210
1230
  if (DEBUG_MODE) {
1211
1231
  FLog.i(TAG, "setPendingContentOffsets[%d] x %d y %d", getId(), x, y);
1212
1232
  }
1213
- View child = getContentView();
1214
- if (child != null && child.getWidth() != 0 && child.getHeight() != 0) {
1233
+
1234
+ if (isContentReady()) {
1215
1235
  pendingContentOffsetX = UNSET_CONTENT_OFFSET;
1216
1236
  pendingContentOffsetY = UNSET_CONTENT_OFFSET;
1217
1237
  } else {
@@ -1270,4 +1290,24 @@ public class ReactHorizontalScrollView extends HorizontalScrollView
1270
1290
  public PointerEvents getPointerEvents() {
1271
1291
  return mPointerEvents;
1272
1292
  }
1293
+
1294
+ @Override
1295
+ public void setScrollEventThrottle(int scrollEventThrottle) {
1296
+ mScrollEventThrottle = scrollEventThrottle;
1297
+ }
1298
+
1299
+ @Override
1300
+ public int getScrollEventThrottle() {
1301
+ return mScrollEventThrottle;
1302
+ }
1303
+
1304
+ @Override
1305
+ public void setLastScrollDispatchTime(long lastScrollDispatchTime) {
1306
+ mLastScrollDispatchTime = lastScrollDispatchTime;
1307
+ }
1308
+
1309
+ @Override
1310
+ public long getLastScrollDispatchTime() {
1311
+ return mLastScrollDispatchTime;
1312
+ }
1273
1313
  }
@@ -8,13 +8,11 @@
8
8
  package com.facebook.react.views.scroll;
9
9
 
10
10
  import android.graphics.Color;
11
- import android.util.DisplayMetrics;
12
11
  import androidx.annotation.Nullable;
13
12
  import androidx.core.view.ViewCompat;
14
13
  import com.facebook.react.bridge.ReadableArray;
15
14
  import com.facebook.react.bridge.ReadableMap;
16
15
  import com.facebook.react.module.annotations.ReactModule;
17
- import com.facebook.react.uimanager.DisplayMetricsHolder;
18
16
  import com.facebook.react.uimanager.PixelUtil;
19
17
  import com.facebook.react.uimanager.PointerEvents;
20
18
  import com.facebook.react.uimanager.ReactClippingViewGroupHelper;
@@ -99,8 +97,8 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
99
97
  @ReactProp(name = "snapToInterval")
100
98
  public void setSnapToInterval(ReactHorizontalScrollView view, float snapToInterval) {
101
99
  // snapToInterval needs to be exposed as a float because of the Javascript interface.
102
- DisplayMetrics screenDisplayMetrics = DisplayMetricsHolder.getScreenDisplayMetrics();
103
- view.setSnapInterval((int) (snapToInterval * screenDisplayMetrics.density));
100
+ float density = PixelUtil.getDisplayMetricDensity();
101
+ view.setSnapInterval((int) (snapToInterval * density));
104
102
  }
105
103
 
106
104
  @ReactProp(name = "snapToAlignment")
@@ -111,15 +109,15 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
111
109
  @ReactProp(name = "snapToOffsets")
112
110
  public void setSnapToOffsets(
113
111
  ReactHorizontalScrollView view, @Nullable ReadableArray snapToOffsets) {
114
- if (snapToOffsets == null) {
112
+ if (snapToOffsets == null || snapToOffsets.size() == 0) {
115
113
  view.setSnapOffsets(null);
116
114
  return;
117
115
  }
118
116
 
119
- DisplayMetrics screenDisplayMetrics = DisplayMetricsHolder.getScreenDisplayMetrics();
117
+ float density = PixelUtil.getDisplayMetricDensity();
120
118
  List<Integer> offsets = new ArrayList<Integer>();
121
119
  for (int i = 0; i < snapToOffsets.size(); i++) {
122
- offsets.add((int) (snapToOffsets.getDouble(i) * screenDisplayMetrics.density));
120
+ offsets.add((int) (snapToOffsets.getDouble(i) * density));
123
121
  }
124
122
  view.setSnapOffsets(offsets);
125
123
  }
@@ -327,4 +325,9 @@ public class ReactHorizontalScrollViewManager extends ViewGroupManager<ReactHori
327
325
  public void setPointerEvents(ReactHorizontalScrollView view, @Nullable String pointerEventsStr) {
328
326
  view.setPointerEvents(PointerEvents.parsePointerEvents(pointerEventsStr));
329
327
  }
328
+
329
+ @ReactProp(name = "scrollEventThrottle")
330
+ public void setScrollEventThrottle(ReactHorizontalScrollView view, int scrollEventThrottle) {
331
+ view.setScrollEventThrottle(scrollEventThrottle);
332
+ }
330
333
  }
@@ -42,6 +42,7 @@ import com.facebook.react.uimanager.ReactOverflowViewWithInset;
42
42
  import com.facebook.react.uimanager.ViewProps;
43
43
  import com.facebook.react.uimanager.events.NativeGestureUtil;
44
44
  import com.facebook.react.views.scroll.ReactScrollViewHelper.HasFlingAnimator;
45
+ import com.facebook.react.views.scroll.ReactScrollViewHelper.HasScrollEventThrottle;
45
46
  import com.facebook.react.views.scroll.ReactScrollViewHelper.HasScrollState;
46
47
  import com.facebook.react.views.scroll.ReactScrollViewHelper.ReactScrollViewScrollState;
47
48
  import com.facebook.react.views.view.ReactViewBackgroundManager;
@@ -62,7 +63,8 @@ public class ReactScrollView extends ScrollView
62
63
  FabricViewStateManager.HasFabricViewStateManager,
63
64
  ReactOverflowViewWithInset,
64
65
  HasScrollState,
65
- HasFlingAnimator {
66
+ HasFlingAnimator,
67
+ HasScrollEventThrottle {
66
68
 
67
69
  private static @Nullable Field sScrollerField;
68
70
  private static boolean sTriedToGetScrollerField = false;
@@ -103,6 +105,8 @@ public class ReactScrollView extends ScrollView
103
105
  new ReactScrollViewScrollState(ViewCompat.LAYOUT_DIRECTION_LTR);
104
106
  private final ValueAnimator DEFAULT_FLING_ANIMATOR = ObjectAnimator.ofInt(this, "scrollY", 0, 0);
105
107
  private PointerEvents mPointerEvents = PointerEvents.AUTO;
108
+ private long mLastScrollDispatchTime = 0;
109
+ private int mScrollEventThrottle = 0;
106
110
 
107
111
  public ReactScrollView(Context context) {
108
112
  this(context, null);
@@ -254,8 +258,8 @@ public class ReactScrollView extends ScrollView
254
258
  @Override
255
259
  protected void onLayout(boolean changed, int l, int t, int r, int b) {
256
260
  // Call with the present values in order to re-layout if necessary
257
- // If a "pending" value has been set, we restore that value.
258
- // That value gets cleared by reactScrollTo.
261
+ // If a "pending" content offset value has been set, we restore that value.
262
+ // Upon call to scrollTo, the "pending" values will be re-set.
259
263
  int scrollToX =
260
264
  pendingContentOffsetX != UNSET_CONTENT_OFFSET ? pendingContentOffsetX : getScrollX();
261
265
  int scrollToY =
@@ -340,11 +344,7 @@ public class ReactScrollView extends ScrollView
340
344
 
341
345
  try {
342
346
  if (super.onInterceptTouchEvent(ev)) {
343
- NativeGestureUtil.notifyNativeGestureStarted(this, ev);
344
- ReactScrollViewHelper.emitScrollBeginDragEvent(this);
345
- mDragging = true;
346
- enableFpsListener();
347
- getFlingAnimator().cancel();
347
+ handleInterceptedTouchEvent(ev);
348
348
  return true;
349
349
  }
350
350
  } catch (IllegalArgumentException e) {
@@ -357,6 +357,14 @@ public class ReactScrollView extends ScrollView
357
357
  return false;
358
358
  }
359
359
 
360
+ protected void handleInterceptedTouchEvent(MotionEvent ev) {
361
+ NativeGestureUtil.notifyNativeGestureStarted(this, ev);
362
+ ReactScrollViewHelper.emitScrollBeginDragEvent(this);
363
+ mDragging = true;
364
+ enableFpsListener();
365
+ getFlingAnimator().cancel();
366
+ }
367
+
360
368
  @Override
361
369
  public boolean onTouchEvent(MotionEvent ev) {
362
370
  if (!mScrollEnabled) {
@@ -369,7 +377,7 @@ public class ReactScrollView extends ScrollView
369
377
  }
370
378
 
371
379
  mVelocityHelper.calculateVelocity(ev);
372
- int action = ev.getAction() & MotionEvent.ACTION_MASK;
380
+ int action = ev.getActionMasked();
373
381
  if (action == MotionEvent.ACTION_UP && mDragging) {
374
382
  ReactScrollViewHelper.updateFabricScrollState(this);
375
383
 
@@ -382,6 +390,10 @@ public class ReactScrollView extends ScrollView
382
390
  handlePostTouchScrolling(Math.round(velocityX), Math.round(velocityY));
383
391
  }
384
392
 
393
+ if (action == MotionEvent.ACTION_DOWN) {
394
+ cancelPostTouchScrolling();
395
+ }
396
+
385
397
  return super.onTouchEvent(ev);
386
398
  }
387
399
 
@@ -611,6 +623,14 @@ public class ReactScrollView extends ScrollView
611
623
  this, mPostTouchRunnable, ReactScrollViewHelper.MOMENTUM_DELAY);
612
624
  }
613
625
 
626
+ private void cancelPostTouchScrolling() {
627
+ if (mPostTouchRunnable != null) {
628
+ removeCallbacks(mPostTouchRunnable);
629
+ mPostTouchRunnable = null;
630
+ getFlingAnimator().cancel();
631
+ }
632
+ }
633
+
614
634
  private int predictFinalScrollPosition(int velocityY) {
615
635
  // predict where a fling would end up so we can scroll to the nearest snap offset
616
636
  // TODO(T106335409): Existing prediction still uses overscroller. Consider change this to use
@@ -954,10 +974,10 @@ public class ReactScrollView extends ScrollView
954
974
  }
955
975
 
956
976
  /**
957
- * Calls `reactScrollTo` and updates state.
977
+ * Calls `super.scrollTo` and updates state.
958
978
  *
959
- * <p>`reactScrollTo` changes `contentOffset` and we need to keep `contentOffset` in sync between
960
- * scroll view and state. Calling raw `reactScrollTo` doesn't update state.
979
+ * <p>`super.scrollTo` changes `contentOffset` and we need to keep `contentOffset` in sync between
980
+ * scroll view and state.
961
981
  *
962
982
  * <p>Note that while we can override scrollTo, we *cannot* override `smoothScrollTo` because it
963
983
  * is final. See `reactSmoothScrollTo`.
@@ -965,12 +985,13 @@ public class ReactScrollView extends ScrollView
965
985
  @Override
966
986
  public void scrollTo(int x, int y) {
967
987
  super.scrollTo(x, y);
968
- // The final scroll position might be different from (x, y). For example, we may need to scroll
969
- // to the last item in the list, but that item cannot be move to the start position of the view.
970
- final int actualX = getScrollX();
971
- final int actualY = getScrollY();
972
- ReactScrollViewHelper.updateFabricScrollState(this, actualX, actualY);
973
- setPendingContentOffsets(actualX, actualY);
988
+ ReactScrollViewHelper.updateFabricScrollState(this);
989
+ setPendingContentOffsets(x, y);
990
+ }
991
+
992
+ private boolean isContentReady() {
993
+ View child = getContentView();
994
+ return child != null && child.getWidth() != 0 && child.getHeight() != 0;
974
995
  }
975
996
 
976
997
  /**
@@ -981,8 +1002,7 @@ public class ReactScrollView extends ScrollView
981
1002
  * @param y
982
1003
  */
983
1004
  private void setPendingContentOffsets(int x, int y) {
984
- View child = getChildAt(0);
985
- if (child != null && child.getWidth() != 0 && child.getHeight() != 0) {
1005
+ if (isContentReady()) {
986
1006
  pendingContentOffsetX = UNSET_CONTENT_OFFSET;
987
1007
  pendingContentOffsetY = UNSET_CONTENT_OFFSET;
988
1008
  } else {
@@ -1132,4 +1152,24 @@ public class ReactScrollView extends ScrollView
1132
1152
  public PointerEvents getPointerEvents() {
1133
1153
  return mPointerEvents;
1134
1154
  }
1155
+
1156
+ @Override
1157
+ public void setScrollEventThrottle(int scrollEventThrottle) {
1158
+ mScrollEventThrottle = scrollEventThrottle;
1159
+ }
1160
+
1161
+ @Override
1162
+ public int getScrollEventThrottle() {
1163
+ return mScrollEventThrottle;
1164
+ }
1165
+
1166
+ @Override
1167
+ public void setLastScrollDispatchTime(long lastScrollDispatchTime) {
1168
+ mLastScrollDispatchTime = lastScrollDispatchTime;
1169
+ }
1170
+
1171
+ @Override
1172
+ public long getLastScrollDispatchTime() {
1173
+ return mLastScrollDispatchTime;
1174
+ }
1135
1175
  }
@@ -22,6 +22,7 @@ import com.facebook.react.bridge.ReactContext;
22
22
  import com.facebook.react.bridge.WritableMap;
23
23
  import com.facebook.react.bridge.WritableNativeMap;
24
24
  import com.facebook.react.common.build.ReactBuildConfig;
25
+ import com.facebook.react.config.ReactFeatureFlags;
25
26
  import com.facebook.react.uimanager.FabricViewStateManager;
26
27
  import com.facebook.react.uimanager.PixelUtil;
27
28
  import com.facebook.react.uimanager.UIManagerHelper;
@@ -68,34 +69,49 @@ public class ReactScrollViewHelper {
68
69
  private static boolean mSmoothScrollDurationInitialized = false;
69
70
 
70
71
  /** Shared by {@link ReactScrollView} and {@link ReactHorizontalScrollView}. */
71
- public static void emitScrollEvent(ViewGroup scrollView, float xVelocity, float yVelocity) {
72
+ public static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollEvent(
73
+ T scrollView, float xVelocity, float yVelocity) {
72
74
  emitScrollEvent(scrollView, ScrollEventType.SCROLL, xVelocity, yVelocity);
73
75
  }
74
76
 
75
- public static void emitScrollBeginDragEvent(ViewGroup scrollView) {
77
+ public static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollBeginDragEvent(
78
+ T scrollView) {
76
79
  emitScrollEvent(scrollView, ScrollEventType.BEGIN_DRAG);
77
80
  }
78
81
 
79
- public static void emitScrollEndDragEvent(
80
- ViewGroup scrollView, float xVelocity, float yVelocity) {
82
+ public static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollEndDragEvent(
83
+ T scrollView, float xVelocity, float yVelocity) {
81
84
  emitScrollEvent(scrollView, ScrollEventType.END_DRAG, xVelocity, yVelocity);
82
85
  }
83
86
 
84
- public static void emitScrollMomentumBeginEvent(
85
- ViewGroup scrollView, int xVelocity, int yVelocity) {
87
+ public static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollMomentumBeginEvent(
88
+ T scrollView, int xVelocity, int yVelocity) {
86
89
  emitScrollEvent(scrollView, ScrollEventType.MOMENTUM_BEGIN, xVelocity, yVelocity);
87
90
  }
88
91
 
89
- public static void emitScrollMomentumEndEvent(ViewGroup scrollView) {
92
+ public static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollMomentumEndEvent(
93
+ T scrollView) {
90
94
  emitScrollEvent(scrollView, ScrollEventType.MOMENTUM_END);
91
95
  }
92
96
 
93
- private static void emitScrollEvent(ViewGroup scrollView, ScrollEventType scrollEventType) {
97
+ private static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollEvent(
98
+ T scrollView, ScrollEventType scrollEventType) {
94
99
  emitScrollEvent(scrollView, scrollEventType, 0, 0);
95
100
  }
96
101
 
97
- private static void emitScrollEvent(
98
- ViewGroup scrollView, ScrollEventType scrollEventType, float xVelocity, float yVelocity) {
102
+ private static <T extends ViewGroup & HasScrollEventThrottle> void emitScrollEvent(
103
+ T scrollView, ScrollEventType scrollEventType, float xVelocity, float yVelocity) {
104
+ long now = System.currentTimeMillis();
105
+ // Throttle the scroll event if scrollEventThrottle is set to be equal or more than 17 ms.
106
+ // We limit the delta to 17ms so that small throttles intended to enable 60fps updates will not
107
+ // inadvertently filter out any scroll events.
108
+ if (ReactFeatureFlags.enableScrollEventThrottle
109
+ && scrollView.getScrollEventThrottle()
110
+ >= Math.max(17, now - scrollView.getLastScrollDispatchTime())) {
111
+ // Scroll events are throttled.
112
+ return;
113
+ }
114
+
99
115
  View contentView = scrollView.getChildAt(0);
100
116
 
101
117
  if (contentView == null) {
@@ -129,6 +145,7 @@ public class ReactScrollViewHelper {
129
145
  contentView.getHeight(),
130
146
  scrollView.getWidth(),
131
147
  scrollView.getHeight()));
148
+ scrollView.setLastScrollDispatchTime(now);
132
149
  }
133
150
  }
134
151
 
@@ -469,7 +486,7 @@ public class ReactScrollViewHelper {
469
486
  public static <
470
487
  T extends
471
488
  ViewGroup & FabricViewStateManager.HasFabricViewStateManager & HasScrollState
472
- & HasFlingAnimator>
489
+ & HasFlingAnimator & HasScrollEventThrottle>
473
490
  void updateStateOnScrollChanged(
474
491
  final T scrollView, final float xVelocity, final float yVelocity) {
475
492
  // Race an UpdateState with every onScroll. This makes it more likely that, in Fabric,
@@ -579,4 +596,21 @@ public class ReactScrollViewHelper {
579
596
  /** Get the fling distance with current velocity for prediction */
580
597
  int getFlingExtrapolatedDistance(int velocity);
581
598
  }
599
+
600
+ public interface HasScrollEventThrottle {
601
+ /**
602
+ * Set the scroll event throttle in ms. This number is used to throttle the scroll events. The
603
+ * default value is zero, which means the scroll events are sent with no throttle.
604
+ */
605
+ void setScrollEventThrottle(int scrollEventThrottle);
606
+
607
+ /** Get the scroll event throttle in ms. */
608
+ int getScrollEventThrottle();
609
+
610
+ /** Set the scroll view's last dispatch time for throttling */
611
+ void setLastScrollDispatchTime(long lastScrollDispatchTime);
612
+
613
+ /** Get the scroll view dispatch time for throttling */
614
+ long getLastScrollDispatchTime();
615
+ }
582
616
  }
@@ -8,7 +8,6 @@
8
8
  package com.facebook.react.views.scroll;
9
9
 
10
10
  import android.graphics.Color;
11
- import android.util.DisplayMetrics;
12
11
  import android.view.View;
13
12
  import androidx.annotation.Nullable;
14
13
  import androidx.core.view.ViewCompat;
@@ -17,7 +16,6 @@ import com.facebook.react.bridge.ReadableMap;
17
16
  import com.facebook.react.bridge.RetryableMountingLayerException;
18
17
  import com.facebook.react.common.MapBuilder;
19
18
  import com.facebook.react.module.annotations.ReactModule;
20
- import com.facebook.react.uimanager.DisplayMetricsHolder;
21
19
  import com.facebook.react.uimanager.PixelUtil;
22
20
  import com.facebook.react.uimanager.PointerEvents;
23
21
  import com.facebook.react.uimanager.ReactClippingViewGroupHelper;
@@ -98,21 +96,21 @@ public class ReactScrollViewManager extends ViewGroupManager<ReactScrollView>
98
96
  @ReactProp(name = "snapToInterval")
99
97
  public void setSnapToInterval(ReactScrollView view, float snapToInterval) {
100
98
  // snapToInterval needs to be exposed as a float because of the Javascript interface.
101
- DisplayMetrics screenDisplayMetrics = DisplayMetricsHolder.getScreenDisplayMetrics();
102
- view.setSnapInterval((int) (snapToInterval * screenDisplayMetrics.density));
99
+ float density = PixelUtil.getDisplayMetricDensity();
100
+ view.setSnapInterval((int) (snapToInterval * density));
103
101
  }
104
102
 
105
103
  @ReactProp(name = "snapToOffsets")
106
104
  public void setSnapToOffsets(ReactScrollView view, @Nullable ReadableArray snapToOffsets) {
107
- if (snapToOffsets == null) {
105
+ if (snapToOffsets == null || snapToOffsets.size() == 0) {
108
106
  view.setSnapOffsets(null);
109
107
  return;
110
108
  }
111
109
 
112
- DisplayMetrics screenDisplayMetrics = DisplayMetricsHolder.getScreenDisplayMetrics();
110
+ float density = PixelUtil.getDisplayMetricDensity();
113
111
  List<Integer> offsets = new ArrayList<Integer>();
114
112
  for (int i = 0; i < snapToOffsets.size(); i++) {
115
- offsets.add((int) (snapToOffsets.getDouble(i) * screenDisplayMetrics.density));
113
+ offsets.add((int) (snapToOffsets.getDouble(i) * density));
116
114
  }
117
115
  view.setSnapOffsets(offsets);
118
116
  }
@@ -369,4 +367,9 @@ public class ReactScrollViewManager extends ViewGroupManager<ReactScrollView>
369
367
  public void setPointerEvents(ReactScrollView view, @Nullable String pointerEventsStr) {
370
368
  view.setPointerEvents(PointerEvents.parsePointerEvents(pointerEventsStr));
371
369
  }
370
+
371
+ @ReactProp(name = "scrollEventThrottle")
372
+ public void setScrollEventThrottle(ReactScrollView view, int scrollEventThrottle) {
373
+ view.setScrollEventThrottle(scrollEventThrottle);
374
+ }
372
375
  }