react-native 0.68.1 → 0.69.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1022) 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/useColorScheme.js +9 -15
  155. package/Libraries/Utilities/verifyComponentAttributeEquivalence.js +3 -3
  156. package/Libraries/Vibration/React-RCTVibration.podspec +2 -2
  157. package/Libraries/WebSocket/WebSocket.js +1 -1
  158. package/Libraries/vendor/emitter/_EmitterSubscription.js +1 -1
  159. package/Libraries/vendor/emitter/_EventEmitter.js +1 -1
  160. package/Libraries/vendor/emitter/_EventSubscription.js +1 -1
  161. package/React/Base/RCTAssert.h +36 -15
  162. package/React/Base/RCTAssert.m +65 -19
  163. package/React/Base/RCTBridge.m +2 -4
  164. package/React/Base/RCTBridgeModule.h +3 -0
  165. package/React/Base/RCTBridgeModuleDecorator.h +35 -0
  166. package/React/Base/RCTBridgeModuleDecorator.m +73 -0
  167. package/React/Base/RCTConstants.h +18 -0
  168. package/React/Base/RCTConstants.m +46 -0
  169. package/React/Base/RCTJavaScriptLoader.h +1 -4
  170. package/React/Base/RCTJavaScriptLoader.mm +11 -17
  171. package/React/Base/RCTLog.h +17 -0
  172. package/React/Base/RCTLog.mm +31 -2
  173. package/React/Base/RCTModuleData.mm +8 -74
  174. package/React/Base/RCTVersion.m +3 -3
  175. package/React/Base/RCTViewRegistry.m +24 -0
  176. package/React/Base/Surface/RCTSurface.mm +2 -1
  177. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingView.mm +0 -1
  178. package/React/CoreModules/BUCK +1 -0
  179. package/React/CoreModules/RCTAccessibilityManager.mm +2 -2
  180. package/React/CoreModules/RCTActionSheetManager.mm +38 -9
  181. package/React/CoreModules/RCTDevMenu.h +5 -0
  182. package/React/CoreModules/RCTDevMenu.mm +68 -25
  183. package/React/CoreModules/RCTDeviceInfo.mm +17 -11
  184. package/React/CoreModules/RCTEventDispatcher.mm +2 -2
  185. package/React/CoreModules/RCTExceptionsManager.h +5 -3
  186. package/React/CoreModules/RCTExceptionsManager.mm +44 -12
  187. package/React/CoreModules/RCTFPSGraph.m +3 -3
  188. package/React/CoreModules/RCTLogBox.mm +17 -9
  189. package/React/CoreModules/RCTLogBoxView.h +3 -1
  190. package/React/CoreModules/RCTLogBoxView.mm +40 -11
  191. package/React/CoreModules/RCTPlatform.mm +2 -0
  192. package/React/CoreModules/RCTRedBox.mm +2 -2
  193. package/React/CoreModules/RCTStatusBarManager.mm +1 -1
  194. package/React/CoreModules/React-CoreModules.podspec +2 -2
  195. package/React/CxxBridge/RCTCxxBridge.mm +25 -58
  196. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +2 -2
  197. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.h +1 -0
  198. package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +77 -19
  199. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +2 -1
  200. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +28 -7
  201. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentAccessibilityProvider.mm +1 -0
  202. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +2 -2
  203. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.h +4 -3
  204. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputUtils.mm +2 -2
  205. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +9 -3
  206. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +2 -2
  207. package/React/Fabric/Mounting/RCTMountingManager.mm +13 -6
  208. package/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.h +5 -3
  209. package/React/Fabric/Mounting/RCTMountingTransactionObserverCoordinator.mm +10 -8
  210. package/React/Fabric/Mounting/RCTMountingTransactionObserving.h +5 -3
  211. package/React/Fabric/RCTConversions.h +9 -1
  212. package/React/Fabric/RCTLocalizationProvider.mm +10 -4
  213. package/React/Fabric/RCTScheduler.h +7 -0
  214. package/React/Fabric/RCTScheduler.mm +15 -0
  215. package/React/Fabric/RCTSurfacePresenter.h +8 -0
  216. package/React/Fabric/RCTSurfacePresenter.mm +65 -15
  217. package/React/Fabric/RCTSurfaceTouchHandler.mm +158 -0
  218. package/React/Fabric/Surface/RCTFabricSurface.mm +1 -1
  219. package/React/Modules/RCTSurfacePresenterStub.h +4 -0
  220. package/React/Modules/RCTUIManager.m +26 -1
  221. package/React/React-RCTFabric.podspec +3 -2
  222. package/React/Views/RCTBorderDrawing.m +176 -173
  223. package/React/Views/RCTComponent.h +1 -0
  224. package/React/Views/RCTComponentData.m +11 -1
  225. package/React/Views/RCTDatePickerManager.m +5 -6
  226. package/React/Views/RCTModalHostView.h +1 -1
  227. package/React/Views/RCTView.h +10 -0
  228. package/React/Views/RCTView.m +34 -17
  229. package/React/Views/RCTViewManager.m +37 -2
  230. package/React/Views/UIView+React.h +1 -0
  231. package/React/Views/UIView+React.m +11 -0
  232. package/React/third-party.xcconfig +1 -1
  233. package/React-Core.podspec +1 -1
  234. package/React.podspec +1 -1
  235. package/ReactAndroid/.npmignore +6 -2
  236. package/ReactAndroid/Android-prebuilt.mk +7 -13
  237. package/ReactAndroid/build.gradle +76 -85
  238. package/ReactAndroid/gradle.properties +3 -2
  239. package/ReactAndroid/hermes-engine/.npmignore +3 -0
  240. package/ReactAndroid/hermes-engine/build.gradle +261 -0
  241. package/ReactAndroid/hermes-engine/gradle.properties +1 -0
  242. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppTestActivity.java +4 -0
  243. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstanceSpecForTest.java +13 -0
  244. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactInstrumentationTest.java +8 -0
  245. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/network/BUCK +4 -1
  246. package/ReactAndroid/src/androidTest/js/BUCK +4 -1
  247. package/ReactAndroid/src/main/java/com/facebook/debug/holder/BUCK +4 -1
  248. package/ReactAndroid/src/main/java/com/facebook/debug/tags/BUCK +4 -1
  249. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +3 -5
  250. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/BUCK +8 -2
  251. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/CMakeLists.txt +31 -0
  252. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +35 -32
  253. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/CMakeLists.txt +41 -0
  254. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/OnLoad.cpp +1 -0
  255. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +4 -1
  256. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivityDelegate.java +33 -1
  257. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +9 -27
  258. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +1 -1
  259. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +1 -1
  260. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +89 -12
  261. package/ReactAndroid/src/main/java/com/facebook/react/animated/AnimatedNodeWithUpdateableConfig.java +15 -0
  262. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +6 -1
  263. package/ReactAndroid/src/main/java/com/facebook/react/animated/ColorAnimatedNode.java +131 -0
  264. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +116 -45
  265. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +17 -0
  266. package/ReactAndroid/src/main/java/com/facebook/react/animated/PropsAnimatedNode.java +14 -0
  267. package/ReactAndroid/src/main/java/com/facebook/react/animated/StyleAnimatedNode.java +2 -0
  268. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ActivityEventListener.java +2 -1
  269. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BUCK +8 -2
  270. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BaseActivityEventListener.java +3 -1
  271. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaOnlyMap.java +4 -0
  272. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +12 -1
  273. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarker.java +2 -1
  274. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactNoCrashBridgeNotAllowedSoftException.java +27 -0
  275. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactSoftExceptionLogger.java +6 -0
  276. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +4 -1
  277. package/ReactAndroid/src/main/java/com/facebook/react/common/SurfaceDelegate.java +3 -0
  278. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +8 -2
  279. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBuffer.kt +170 -0
  280. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/MapBufferSoLoader.kt +33 -0
  281. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.kt +298 -0
  282. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/WritableMapBuffer.kt +170 -0
  283. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/Android.mk +1 -2
  284. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +4 -1
  285. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/CMakeLists.txt +34 -0
  286. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/.clang-tidy +3 -0
  287. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JReadableMapBuffer.cpp +43 -0
  288. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/{ReadableMapBuffer.h → JReadableMapBuffer.h} +5 -3
  289. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JWritableMapBuffer.cpp +65 -0
  290. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/JWritableMapBuffer.h +23 -0
  291. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/OnLoad.cpp +3 -2
  292. package/ReactAndroid/src/main/java/com/facebook/react/common/network/BUCK +4 -1
  293. package/ReactAndroid/src/main/java/com/facebook/react/config/BUCK +4 -1
  294. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +18 -5
  295. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +8 -2
  296. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +1 -0
  297. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +1 -0
  298. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +42 -51
  299. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +1 -0
  300. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DisabledDevSupportManager.java +17 -0
  301. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DoubleTapReloadRecognizer.java +1 -1
  302. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/LogBoxDialogSurfaceDelegate.java +5 -4
  303. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{RedBoxDialog.java → RedBoxContentView.java} +38 -29
  304. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxDialogSurfaceDelegate.java +126 -0
  305. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +7 -0
  306. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{RedBoxHandler.java → interfaces/RedBoxHandler.java} +1 -3
  307. package/ReactAndroid/src/main/java/com/facebook/react/fabric/BUCK +11 -5
  308. package/ReactAndroid/src/main/java/com/facebook/react/fabric/DevToolsReactPerfLogger.java +148 -0
  309. package/ReactAndroid/src/main/java/com/facebook/react/fabric/EmptyReactNativeConfig.java +1 -1
  310. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +2 -2
  311. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +42 -29
  312. package/ReactAndroid/src/main/java/com/facebook/react/fabric/ReactNativeConfig.java +5 -2
  313. package/ReactAndroid/src/main/java/com/facebook/react/fabric/StateWrapperImpl.java +2 -1
  314. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +2 -2
  315. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/{AsyncEventBeatV2.cpp → AsyncEventBeat.cpp} +6 -6
  316. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeat.h +8 -40
  317. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +6 -3
  318. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +55 -36
  319. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +3 -2
  320. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CMakeLists.txt +70 -0
  321. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +2 -15
  322. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +2 -4
  323. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.cpp +5 -2
  324. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountItem.h +3 -1
  325. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountingManager.cpp +65 -71
  326. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/FabricMountingManager.h +11 -9
  327. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JFabricUIManager.cpp +18 -0
  328. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/JFabricUIManager.h +25 -0
  329. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/ReactNativeConfigHolder.cpp +1 -1
  330. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.cpp +4 -4
  331. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/StateWrapperImpl.h +2 -2
  332. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/viewPropConversions.h +527 -0
  333. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +19 -22
  334. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +93 -29
  335. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +6 -9
  336. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/MountItem.java +2 -0
  337. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +2 -3
  338. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -1
  339. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/BUCK +4 -1
  340. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/CMakeLists.txt +23 -0
  341. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/BUCK +4 -1
  342. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +8 -2
  343. package/ReactAndroid/src/main/java/com/facebook/react/module/annotations/BUCK +4 -1
  344. package/ReactAndroid/src/main/java/com/facebook/react/module/model/BUCK +4 -1
  345. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/BUCK +6 -1
  346. package/ReactAndroid/src/main/java/com/facebook/react/module/processing/ReactModuleSpecProcessor.java +11 -1
  347. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +4 -1
  348. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +4 -1
  349. package/ReactAndroid/src/main/java/com/facebook/react/modules/appregistry/BUCK +4 -1
  350. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +4 -1
  351. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +4 -1
  352. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -1
  353. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/BUCK +4 -1
  354. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/CMakeLists.txt +22 -0
  355. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +4 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +4 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/modules/clipboard/BUCK +4 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/BUCK +4 -1
  359. package/ReactAndroid/src/main/java/com/facebook/react/modules/common/ModuleDataCleaner.java +16 -0
  360. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +4 -1
  361. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +8 -2
  362. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +4 -1
  363. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +4 -1
  364. package/ReactAndroid/src/main/java/com/facebook/react/modules/fabric/BUCK +4 -1
  365. package/ReactAndroid/src/main/java/com/facebook/react/modules/fresco/BUCK +4 -1
  366. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +4 -1
  367. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +4 -1
  368. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/ImageLoaderModule.java +8 -5
  369. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +4 -1
  370. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +7 -5
  371. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +4 -1
  372. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +9 -2
  373. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.java +4 -1
  374. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ProgressiveStringDecoder.java +7 -7
  375. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +4 -1
  376. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +4 -1
  377. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +4 -1
  378. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +4 -1
  379. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/StatusBarModule.java +20 -8
  380. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +4 -1
  381. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +8 -2
  382. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +3 -3
  383. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +4 -1
  384. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +4 -1
  385. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +4 -1
  386. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/BUCK +4 -1
  387. package/ReactAndroid/src/main/java/com/facebook/react/processing/BUCK +4 -1
  388. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/BUCK +1 -0
  389. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/Android.mk +1 -0
  390. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/BUCK +1 -0
  391. package/ReactAndroid/src/main/java/com/facebook/react/reactperflogger/jni/CMakeLists.txt +24 -0
  392. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +4 -1
  393. package/ReactAndroid/src/main/java/com/facebook/react/surface/BUCK +4 -1
  394. package/ReactAndroid/src/main/java/com/facebook/react/touch/BUCK +4 -1
  395. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/BUCK +8 -2
  396. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/interfaces/BUCK +4 -1
  397. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/Android.mk +3 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/BUCK +8 -2
  399. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/CMakeLists.txt +62 -0
  400. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/OnLoad.cpp +3 -3
  401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BUCK +45 -7
  402. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +148 -7
  403. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/BaseViewManagerDelegate.java → BaseViewManagerDelegate.java} +0 -0
  404. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/BaseViewManagerInterface.java → BaseViewManagerInterface.java} +0 -0
  405. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/FloatUtil.java → FloatUtil.java} +0 -0
  406. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +331 -0
  407. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/LayoutShadowNode.java +3 -3
  408. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +265 -21
  409. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactRoot.java +1 -6
  410. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/Spacing.java → Spacing.java} +0 -0
  411. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/StateWrapper.java +1 -1
  412. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +57 -12
  413. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +0 -11
  414. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModuleConstants.java +3 -3
  415. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManager.java +42 -0
  416. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/ViewManagerDelegate.java → ViewManagerDelegate.java} +0 -0
  417. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/{interfaces/ViewProps.java → ViewProps.java} +0 -0
  418. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/annotations/BUCK +4 -1
  419. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/common/BUCK +4 -1
  420. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +7 -1
  421. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/NativeGestureUtil.java +5 -1
  422. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.java +180 -0
  423. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEventHelper.java +75 -0
  424. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/Android.mk +1 -2
  425. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +4 -1
  426. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/CMakeLists.txt +26 -0
  427. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/util/BUCK +4 -1
  428. package/ReactAndroid/src/main/java/com/facebook/react/util/BUCK +4 -1
  429. package/ReactAndroid/src/main/java/com/facebook/react/util/JSStackTrace.java +5 -4
  430. package/ReactAndroid/src/main/java/com/facebook/react/views/common/BUCK +4 -1
  431. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +4 -1
  432. package/ReactAndroid/src/main/java/com/facebook/react/views/image/BUCK +8 -3
  433. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.java +3 -91
  434. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/BUCK +8 -2
  435. package/ReactAndroid/src/main/java/com/facebook/react/views/imagehelper/ResourceDrawableIdHelper.java +2 -1
  436. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +5 -1
  437. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +35 -1
  438. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +4 -1
  439. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +4 -1
  440. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +57 -17
  441. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +10 -7
  442. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +60 -20
  443. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +45 -11
  444. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +10 -7
  445. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +10 -10
  446. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +4 -1
  447. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +7 -2
  448. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +4 -1
  449. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +4 -1
  450. package/ReactAndroid/src/main/java/com/facebook/react/views/text/BUCK +12 -3
  451. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactBaseTextShadowNode.java +14 -0
  452. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactClickableSpan.java +3 -6
  453. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +5 -0
  454. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +20 -0
  455. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewManager.java +45 -9
  456. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +31 -31
  457. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +21 -17
  458. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +25 -31
  459. package/ReactAndroid/src/main/java/com/facebook/react/views/text/frescosupport/BUCK +4 -1
  460. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +4 -1
  461. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +9 -4
  462. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +12 -2
  463. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputShadowNode.java +1 -1
  464. package/ReactAndroid/src/main/java/com/facebook/react/views/unimplementedview/BUCK +4 -1
  465. package/ReactAndroid/src/main/java/com/facebook/react/views/view/BUCK +11 -2
  466. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ColorUtil.java +19 -0
  467. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferPropSetter.kt +468 -0
  468. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactMapBufferViewManager.kt +76 -0
  469. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +1 -1
  470. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundManager.java +4 -0
  471. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewManagerWrapper.kt +90 -0
  472. package/ReactAndroid/src/main/jni/CMakeLists.txt +102 -0
  473. package/ReactAndroid/src/main/jni/first-party/fb/BUCK +1 -1
  474. package/ReactAndroid/src/main/jni/first-party/fb/CMakeLists.txt +28 -0
  475. package/ReactAndroid/src/main/jni/first-party/fbgloginit/CMakeLists.txt +15 -0
  476. package/ReactAndroid/src/main/jni/first-party/fbjni/CMakeLists.txt +15 -0
  477. package/ReactAndroid/src/main/jni/first-party/hermes/CMakeLists.txt +13 -0
  478. package/ReactAndroid/src/main/jni/first-party/yogajni/Android.mk +1 -0
  479. package/ReactAndroid/src/main/jni/first-party/yogajni/CMakeLists.txt +20 -0
  480. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedGlobalRef.h +1 -1
  481. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/ScopedLocalRef.h +1 -1
  482. package/ReactAndroid/src/main/jni/react/jni/Android.mk +14 -5
  483. package/ReactAndroid/src/main/jni/react/jni/BUCK +4 -1
  484. package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +73 -0
  485. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +63 -32
  486. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  487. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.cpp +10 -0
  488. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeArray.h +3 -1
  489. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.cpp +10 -0
  490. package/ReactAndroid/src/main/jni/react/jni/ReadableNativeMap.h +1 -1
  491. package/ReactAndroid/src/main/jni/third-party/boost/Android.mk +4 -3
  492. package/ReactAndroid/src/main/jni/third-party/boost/CMakeLists.txt +22 -0
  493. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/jump_arm64_aapcs_elf_gas.S +0 -0
  494. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/make_arm64_aapcs_elf_gas.S +0 -0
  495. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm64 → arm64-v8a}/ontop_arm64_aapcs_elf_gas.S +0 -0
  496. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/jump_arm_aapcs_elf_gas.S +0 -0
  497. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/make_arm_aapcs_elf_gas.S +0 -0
  498. package/ReactAndroid/src/main/jni/third-party/boost/asm/{arm → armeabi-v7a}/ontop_arm_aapcs_elf_gas.S +0 -0
  499. package/ReactAndroid/src/main/jni/third-party/double-conversion/CMakeLists.txt +23 -0
  500. package/ReactAndroid/src/main/jni/third-party/fmt/CMakeLists.txt +13 -0
  501. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +31 -31
  502. package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +126 -0
  503. package/ReactAndroid/src/main/jni/third-party/glog/CMakeLists.txt +35 -0
  504. package/ReactAndroid/src/main/jni/third-party/jsc/CMakeLists.txt +15 -0
  505. package/ReactAndroid/src/main/jni/third-party/libevent/CMakeLists.txt +42 -0
  506. package/ReactAndroid/src/main/res/shell/values/styles.xml +3 -2
  507. package/ReactAndroid/src/main/res/views/uimanager/values/ids.xml +3 -0
  508. package/ReactAndroid/src/test/java/com/facebook/react/ReactActivityDelegateTest.kt +62 -0
  509. package/ReactAndroid/src/test/java/com/facebook/react/views/BUCK +5 -2
  510. package/ReactAndroid/src/test/java/com/facebook/react/views/view/ColorUtilTest.java +9 -0
  511. package/ReactAndroid/src/test/resources/BUCK +1 -0
  512. package/ReactCommon/React-Fabric.podspec +1 -1
  513. package/ReactCommon/React-rncore.podspec +1 -1
  514. package/ReactCommon/ReactCommon.podspec +4 -3
  515. package/ReactCommon/butter/Android.mk +1 -2
  516. package/ReactCommon/butter/BUCK +4 -1
  517. package/ReactCommon/butter/CMakeLists.txt +20 -0
  518. package/ReactCommon/callinvoker/BUCK +4 -1
  519. package/ReactCommon/callinvoker/CMakeLists.txt +13 -0
  520. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  521. package/ReactCommon/cxxreact/Android.mk +6 -2
  522. package/ReactCommon/cxxreact/BUCK +16 -4
  523. package/ReactCommon/cxxreact/CMakeLists.txt +29 -0
  524. package/ReactCommon/cxxreact/Instance.cpp +0 -35
  525. package/ReactCommon/cxxreact/Instance.h +0 -3
  526. package/ReactCommon/cxxreact/JSBundleType.cpp +13 -8
  527. package/ReactCommon/cxxreact/JSBundleType.h +15 -11
  528. package/ReactCommon/cxxreact/ModuleRegistry.cpp +1 -1
  529. package/ReactCommon/cxxreact/React-cxxreact.podspec +1 -1
  530. package/ReactCommon/cxxreact/ReactNativeVersion.h +3 -3
  531. package/ReactCommon/cxxreact/tests/BUCK +1 -1
  532. package/ReactCommon/hermes/React-hermes.podspec +1 -1
  533. package/ReactCommon/hermes/executor/Android.mk +23 -19
  534. package/ReactCommon/hermes/executor/CMakeLists.txt +29 -0
  535. package/ReactCommon/hermes/inspector/Android.mk +6 -4
  536. package/ReactCommon/hermes/inspector/CMakeLists.txt +32 -0
  537. package/ReactCommon/hermes/inspector/Exceptions.h +6 -0
  538. package/ReactCommon/hermes/inspector/Inspector.cpp +5 -2
  539. package/ReactCommon/hermes/inspector/Inspector.h +14 -0
  540. package/ReactCommon/hermes/inspector/InspectorState.cpp +16 -8
  541. package/ReactCommon/hermes/inspector/chrome/Connection.cpp +398 -1
  542. package/ReactCommon/hermes/inspector/chrome/MessageTypes.cpp +266 -12
  543. package/ReactCommon/hermes/inspector/chrome/MessageTypes.h +140 -2
  544. package/ReactCommon/hermes/inspector/chrome/tests/AsyncHermesRuntime.cpp +21 -0
  545. package/ReactCommon/hermes/inspector/chrome/tests/AsyncHermesRuntime.h +27 -0
  546. package/ReactCommon/hermes/inspector/chrome/tests/ConnectionTests.cpp +298 -7
  547. package/ReactCommon/hermes/inspector/chrome/tests/MessageTests.cpp +1071 -1
  548. package/ReactCommon/hermes/inspector/tools/message_types.txt +4 -0
  549. package/ReactCommon/hermes/inspector/tools/msggen/package.json +1 -1
  550. package/ReactCommon/hermes/inspector/tools/msggen/src/GeneratedHeader.js +1 -1
  551. package/ReactCommon/hermes/inspector/tools/msggen/src/ImplementationWriter.js +14 -1
  552. package/ReactCommon/hermes/inspector/tools/msggen/src/Property.js +1 -1
  553. package/ReactCommon/hermes/inspector/tools/msggen/src/index.js +17 -2
  554. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +4 -4
  555. package/ReactCommon/hermes/inspector/tools/run_msggen +17 -12
  556. package/ReactCommon/jsi/Android.mk +4 -2
  557. package/ReactCommon/jsi/BUCK +12 -3
  558. package/ReactCommon/jsi/CMakeLists.txt +43 -0
  559. package/ReactCommon/jsi/JSCRuntime.cpp +8 -0
  560. package/ReactCommon/jsi/React-jsi.podspec +1 -1
  561. package/ReactCommon/jsi/jsi/decorator.h +3 -0
  562. package/ReactCommon/jsi/jsi/jsi.cpp +11 -0
  563. package/ReactCommon/jsi/jsi/jsi.h +24 -4
  564. package/ReactCommon/jsi/jsi/jsilib.h +1 -1
  565. package/ReactCommon/jsi/jsi/test/testlib.cpp +3 -1
  566. package/ReactCommon/jsiexecutor/Android.mk +2 -1
  567. package/ReactCommon/jsiexecutor/BUCK +4 -1
  568. package/ReactCommon/jsiexecutor/CMakeLists.txt +23 -0
  569. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +1 -1
  570. package/ReactCommon/jsinspector/Android.mk +1 -0
  571. package/ReactCommon/jsinspector/BUCK +4 -1
  572. package/ReactCommon/jsinspector/CMakeLists.txt +14 -0
  573. package/ReactCommon/jsinspector/React-jsinspector.podspec +1 -1
  574. package/ReactCommon/logger/Android.mk +1 -0
  575. package/ReactCommon/logger/BUCK +4 -1
  576. package/ReactCommon/logger/CMakeLists.txt +16 -0
  577. package/ReactCommon/logger/React-logger.podspec +1 -1
  578. package/ReactCommon/microprofiler/BUCK +5 -2
  579. package/ReactCommon/react/bridging/AString.h +42 -0
  580. package/ReactCommon/react/bridging/Android.mk +27 -0
  581. package/ReactCommon/react/bridging/Array.h +108 -0
  582. package/ReactCommon/react/bridging/BUCK +57 -0
  583. package/ReactCommon/react/bridging/Base.h +154 -0
  584. package/ReactCommon/react/bridging/Bool.h +25 -0
  585. package/ReactCommon/react/bridging/Bridging.h +19 -0
  586. package/ReactCommon/react/bridging/CMakeLists.txt +17 -0
  587. package/ReactCommon/react/bridging/CallbackWrapper.h +103 -0
  588. package/ReactCommon/react/bridging/Class.h +71 -0
  589. package/ReactCommon/react/bridging/Convert.h +153 -0
  590. package/ReactCommon/react/bridging/Error.h +51 -0
  591. package/ReactCommon/react/bridging/Function.h +214 -0
  592. package/ReactCommon/react/{nativemodule/core/ReactCommon → bridging}/LongLivedObject.cpp +5 -0
  593. package/ReactCommon/react/bridging/LongLivedObject.h +58 -0
  594. package/ReactCommon/react/bridging/Number.h +47 -0
  595. package/ReactCommon/react/bridging/Object.h +100 -0
  596. package/ReactCommon/react/bridging/Promise.h +102 -0
  597. package/ReactCommon/react/bridging/React-bridging.podspec +41 -0
  598. package/ReactCommon/react/bridging/Value.h +107 -0
  599. package/ReactCommon/react/bridging/tests/BridgingTest.cpp +407 -0
  600. package/ReactCommon/react/bridging/tests/BridgingTest.h +77 -0
  601. package/ReactCommon/react/bridging/tests/ClassTest.cpp +97 -0
  602. package/ReactCommon/react/config/Android.mk +1 -0
  603. package/ReactCommon/react/config/BUCK +4 -1
  604. package/ReactCommon/react/config/CMakeLists.txt +19 -0
  605. package/ReactCommon/react/debug/Android.mk +2 -1
  606. package/ReactCommon/react/debug/BUCK +4 -1
  607. package/ReactCommon/react/debug/CMakeLists.txt +22 -0
  608. package/ReactCommon/react/debug/react_native_assert.h +1 -1
  609. package/ReactCommon/react/nativemodule/core/Android.mk +8 -4
  610. package/ReactCommon/react/nativemodule/core/BUCK +5 -1
  611. package/ReactCommon/react/nativemodule/core/CMakeLists.txt +32 -0
  612. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +2 -48
  613. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.cpp +0 -23
  614. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +18 -2
  615. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +2 -83
  616. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +3 -1
  617. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +17 -7
  618. package/ReactCommon/react/nativemodule/samples/BUCK +4 -1
  619. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +1 -0
  620. package/ReactCommon/react/renderer/animations/Android.mk +2 -2
  621. package/ReactCommon/react/renderer/animations/BUCK +4 -1
  622. package/ReactCommon/react/renderer/animations/CMakeLists.txt +32 -0
  623. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +6 -6
  624. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +4 -3
  625. package/ReactCommon/react/renderer/animations/conversions.h +11 -11
  626. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +1 -1
  627. package/ReactCommon/react/renderer/attributedstring/Android.mk +2 -2
  628. package/ReactCommon/react/renderer/attributedstring/BUCK +4 -1
  629. package/ReactCommon/react/renderer/attributedstring/CMakeLists.txt +29 -0
  630. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +16 -16
  631. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +14 -14
  632. package/ReactCommon/react/renderer/attributedstring/conversions.h +13 -11
  633. package/ReactCommon/react/renderer/componentregistry/Android.mk +3 -2
  634. package/ReactCommon/react/renderer/componentregistry/BUCK +4 -1
  635. package/ReactCommon/react/renderer/componentregistry/CMakeLists.txt +24 -0
  636. package/ReactCommon/react/renderer/componentregistry/native/Android.mk +2 -2
  637. package/ReactCommon/react/renderer/componentregistry/native/BUCK +4 -1
  638. package/ReactCommon/react/renderer/componentregistry/native/CMakeLists.txt +24 -0
  639. package/ReactCommon/react/renderer/components/image/Android.mk +2 -1
  640. package/ReactCommon/react/renderer/components/image/BUCK +4 -1
  641. package/ReactCommon/react/renderer/components/image/CMakeLists.txt +29 -0
  642. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +4 -1
  643. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +4 -1
  644. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +16 -2
  645. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.h +4 -1
  646. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/RCTLegacyViewManagerInteropCoordinator.mm +16 -11
  647. package/ReactCommon/react/renderer/components/modal/Android.mk +2 -1
  648. package/ReactCommon/react/renderer/components/modal/BUCK +4 -1
  649. package/ReactCommon/react/renderer/components/modal/CMakeLists.txt +31 -0
  650. package/ReactCommon/react/renderer/components/modal/ModalHostViewComponentDescriptor.h +1 -1
  651. package/ReactCommon/react/renderer/components/modal/ModalHostViewShadowNode.h +1 -1
  652. package/ReactCommon/react/renderer/components/modal/ModalHostViewState.h +1 -1
  653. package/ReactCommon/react/renderer/components/progressbar/Android.mk +2 -2
  654. package/ReactCommon/react/renderer/components/progressbar/BUCK +4 -1
  655. package/ReactCommon/react/renderer/components/progressbar/CMakeLists.txt +34 -0
  656. package/ReactCommon/react/renderer/components/progressbar/android/react/renderer/components/progressbar/conversions.h +1 -1
  657. package/ReactCommon/react/renderer/components/root/Android.mk +2 -2
  658. package/ReactCommon/react/renderer/components/root/BUCK +4 -1
  659. package/ReactCommon/react/renderer/components/root/CMakeLists.txt +26 -0
  660. package/ReactCommon/react/renderer/components/safeareaview/BUCK +4 -1
  661. package/ReactCommon/react/renderer/components/scrollview/Android.mk +2 -2
  662. package/ReactCommon/react/renderer/components/scrollview/BUCK +4 -1
  663. package/ReactCommon/react/renderer/components/scrollview/CMakeLists.txt +28 -0
  664. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.cpp +2 -2
  665. package/ReactCommon/react/renderer/components/scrollview/ScrollViewEventEmitter.h +1 -1
  666. package/ReactCommon/react/renderer/components/slider/Android.mk +2 -2
  667. package/ReactCommon/react/renderer/components/slider/BUCK +4 -1
  668. package/ReactCommon/react/renderer/components/slider/CMakeLists.txt +38 -0
  669. package/ReactCommon/react/renderer/components/switch/Android.mk +2 -2
  670. package/ReactCommon/react/renderer/components/switch/BUCK +4 -1
  671. package/ReactCommon/react/renderer/components/switch/CMakeLists.txt +44 -0
  672. package/ReactCommon/react/renderer/components/text/Android.mk +2 -1
  673. package/ReactCommon/react/renderer/components/text/BUCK +4 -1
  674. package/ReactCommon/react/renderer/components/text/CMakeLists.txt +33 -0
  675. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.h +1 -1
  676. package/ReactCommon/react/renderer/components/textinput/Android.mk +2 -1
  677. package/ReactCommon/react/renderer/components/textinput/BUCK +4 -1
  678. package/ReactCommon/react/renderer/components/textinput/CMakeLists.txt +40 -0
  679. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +6 -6
  680. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputShadowNode.h +1 -1
  681. package/ReactCommon/react/renderer/components/textinput/iostextinput/BUCK +4 -1
  682. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +1 -1
  683. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +1 -1
  684. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +3 -4
  685. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +2 -2
  686. package/ReactCommon/react/renderer/components/unimplementedview/BUCK +4 -1
  687. package/ReactCommon/react/renderer/components/unimplementedview/CMakeLists.txt +27 -0
  688. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +41 -6
  689. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -0
  690. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +5 -0
  691. package/ReactCommon/react/renderer/components/view/Android.mk +2 -1
  692. package/ReactCommon/react/renderer/components/view/BUCK +5 -3
  693. package/ReactCommon/react/renderer/components/view/CMakeLists.txt +26 -0
  694. package/ReactCommon/react/renderer/components/view/PointerEvent.cpp +35 -0
  695. package/ReactCommon/react/renderer/components/view/PointerEvent.h +59 -0
  696. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +76 -2
  697. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +14 -1
  698. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
  699. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.h +1 -1
  700. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +46 -22
  701. package/ReactCommon/react/renderer/components/view/ViewProps.h +18 -7
  702. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -3
  703. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +46 -3
  704. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +13 -1
  705. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +38 -27
  706. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  707. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -1
  708. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +33 -0
  709. package/ReactCommon/react/renderer/components/view/conversions.h +5 -6
  710. package/ReactCommon/react/renderer/components/view/primitives.h +96 -3
  711. package/ReactCommon/react/renderer/components/view/propsConversions.h +191 -0
  712. package/ReactCommon/react/renderer/components/view/tests/LayoutTest.cpp +201 -24
  713. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +3 -3
  714. package/ReactCommon/react/renderer/core/Android.mk +2 -2
  715. package/ReactCommon/react/renderer/core/BUCK +4 -3
  716. package/ReactCommon/react/renderer/core/CMakeLists.txt +22 -0
  717. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +12 -0
  718. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +21 -0
  719. package/ReactCommon/react/renderer/core/EventDispatcher.h +15 -0
  720. package/ReactCommon/react/renderer/core/EventEmitter.cpp +15 -12
  721. package/ReactCommon/react/renderer/core/EventEmitter.h +5 -6
  722. package/ReactCommon/react/renderer/core/EventListener.cpp +39 -0
  723. package/ReactCommon/react/renderer/core/EventListener.h +44 -0
  724. package/ReactCommon/react/renderer/core/Props.cpp +5 -2
  725. package/ReactCommon/react/renderer/core/Props.h +2 -1
  726. package/ReactCommon/react/renderer/core/RawProps.h +1 -1
  727. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +1 -1
  728. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +7 -6
  729. package/ReactCommon/react/renderer/core/RawPropsParser.h +0 -1
  730. package/ReactCommon/react/renderer/core/propsConversions.h +6 -5
  731. package/ReactCommon/react/renderer/core/tests/FindNodeAtPointTest.cpp +10 -12
  732. package/ReactCommon/react/renderer/core/tests/LayoutableShadowNodeTest.cpp +3 -3
  733. package/ReactCommon/react/renderer/debug/Android.mk +2 -1
  734. package/ReactCommon/react/renderer/debug/BUCK +4 -1
  735. package/ReactCommon/react/renderer/debug/CMakeLists.txt +15 -0
  736. package/ReactCommon/react/renderer/debug/debugStringConvertibleUtils.h +3 -3
  737. package/ReactCommon/react/renderer/element/BUCK +4 -1
  738. package/ReactCommon/react/renderer/element/tests/ElementTest.cpp +3 -3
  739. package/ReactCommon/react/renderer/graphics/Android.mk +2 -2
  740. package/ReactCommon/react/renderer/graphics/BUCK +4 -1
  741. package/ReactCommon/react/renderer/graphics/CMakeLists.txt +25 -0
  742. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +1 -1
  743. package/ReactCommon/react/renderer/graphics/Transform.cpp +8 -0
  744. package/ReactCommon/react/renderer/graphics/Transform.h +9 -3
  745. package/ReactCommon/react/renderer/graphics/conversions.h +1 -11
  746. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +1 -1
  747. package/ReactCommon/react/renderer/imagemanager/Android.mk +2 -1
  748. package/ReactCommon/react/renderer/imagemanager/BUCK +4 -1
  749. package/ReactCommon/react/renderer/imagemanager/CMakeLists.txt +34 -0
  750. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTImageManager.mm +1 -1
  751. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  752. package/ReactCommon/react/renderer/leakchecker/Android.mk +1 -0
  753. package/ReactCommon/react/renderer/leakchecker/BUCK +4 -1
  754. package/ReactCommon/react/renderer/leakchecker/CMakeLists.txt +18 -0
  755. package/ReactCommon/react/renderer/mapbuffer/Android.mk +1 -0
  756. package/ReactCommon/react/renderer/mapbuffer/BUCK +4 -1
  757. package/ReactCommon/react/renderer/mapbuffer/CMakeLists.txt +15 -0
  758. package/ReactCommon/react/renderer/mapbuffer/MapBuffer.h +8 -8
  759. package/ReactCommon/react/renderer/mounting/Android.mk +2 -2
  760. package/ReactCommon/react/renderer/mounting/BUCK +4 -1
  761. package/ReactCommon/react/renderer/mounting/CMakeLists.txt +31 -0
  762. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +2 -2
  763. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +3 -3
  764. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  765. package/ReactCommon/react/renderer/mounting/MountingTransaction.cpp +1 -1
  766. package/ReactCommon/react/renderer/mounting/MountingTransaction.h +2 -2
  767. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +4 -1
  768. package/ReactCommon/react/renderer/mounting/ShadowTreeRevision.h +0 -2
  769. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +1 -1
  770. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +7 -10
  771. package/ReactCommon/react/renderer/mounting/TelemetryController.h +7 -7
  772. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +1 -1
  773. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +1 -0
  774. package/ReactCommon/react/renderer/runtimescheduler/BUCK +4 -1
  775. package/ReactCommon/react/renderer/runtimescheduler/CMakeLists.txt +21 -0
  776. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +55 -40
  777. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +26 -1
  778. package/ReactCommon/react/renderer/runtimescheduler/Task.h +3 -2
  779. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +48 -3
  780. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +9 -0
  781. package/ReactCommon/react/renderer/scheduler/Android.mk +2 -2
  782. package/ReactCommon/react/renderer/scheduler/BUCK +4 -1
  783. package/ReactCommon/react/renderer/scheduler/CMakeLists.txt +34 -0
  784. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +41 -6
  785. package/ReactCommon/react/renderer/scheduler/Scheduler.h +10 -1
  786. package/ReactCommon/react/renderer/telemetry/Android.mk +2 -2
  787. package/ReactCommon/react/renderer/telemetry/BUCK +4 -1
  788. package/ReactCommon/react/renderer/telemetry/CMakeLists.txt +27 -0
  789. package/ReactCommon/react/renderer/templateprocessor/Android.mk +2 -2
  790. package/ReactCommon/react/renderer/templateprocessor/BUCK +4 -1
  791. package/ReactCommon/react/renderer/templateprocessor/CMakeLists.txt +26 -0
  792. package/ReactCommon/react/renderer/textlayoutmanager/Android.mk +2 -2
  793. package/ReactCommon/react/renderer/textlayoutmanager/BUCK +4 -1
  794. package/ReactCommon/react/renderer/textlayoutmanager/CMakeLists.txt +45 -0
  795. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.cpp +142 -10
  796. package/ReactCommon/react/renderer/textlayoutmanager/platform/android/react/renderer/textlayoutmanager/TextLayoutManager.h +13 -11
  797. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.cpp +0 -2
  798. package/ReactCommon/react/renderer/textlayoutmanager/platform/cxx/TextLayoutManager.h +0 -1
  799. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +26 -9
  800. package/ReactCommon/react/renderer/uimanager/Android.mk +2 -2
  801. package/ReactCommon/react/renderer/uimanager/BUCK +4 -1
  802. package/ReactCommon/react/renderer/uimanager/CMakeLists.txt +32 -0
  803. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +8 -9
  804. package/ReactCommon/react/renderer/uimanager/UIManager.h +10 -13
  805. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +6 -5
  806. package/ReactCommon/react/test_utils/BUCK +4 -1
  807. package/ReactCommon/react/test_utils/MockSurfaceHandler.h +2 -2
  808. package/ReactCommon/react/utils/Android.mk +2 -3
  809. package/ReactCommon/react/utils/BUCK +4 -1
  810. package/ReactCommon/react/utils/CMakeLists.txt +24 -0
  811. package/ReactCommon/react/utils/ContextContainer.h +2 -2
  812. package/ReactCommon/react/utils/ManagedObjectWrapper.h +4 -0
  813. package/ReactCommon/react/utils/SimpleThreadSafeCache.h +2 -2
  814. package/ReactCommon/react/utils/Telemetry.h +2 -2
  815. package/ReactCommon/reactperflogger/Android.mk +1 -0
  816. package/ReactCommon/reactperflogger/BUCK +4 -1
  817. package/ReactCommon/reactperflogger/CMakeLists.txt +14 -0
  818. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  819. package/ReactCommon/runtimeexecutor/BUCK +4 -1
  820. package/ReactCommon/runtimeexecutor/CMakeLists.txt +17 -0
  821. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  822. package/ReactCommon/yoga/Android.mk +1 -0
  823. package/ReactCommon/yoga/CMakeLists.txt +16 -0
  824. package/ReactCommon/yoga/Yoga-umbrella.h +21 -0
  825. package/ReactCommon/yoga/Yoga.modulemap +6 -0
  826. package/ReactCommon/yoga/Yoga.podspec +21 -7
  827. package/ReactCommon/yoga/yoga/Yoga.cpp +1 -1
  828. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-javadoc.jar +0 -0
  829. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-javadoc.jar.md5 +1 -0
  830. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-javadoc.jar.sha1 +1 -0
  831. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-javadoc.jar.sha256 +1 -0
  832. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-javadoc.jar.sha512 +1 -0
  833. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-sources.jar +0 -0
  834. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-sources.jar.md5 +1 -0
  835. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-sources.jar.sha1 +1 -0
  836. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-sources.jar.sha256 +1 -0
  837. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug-sources.jar.sha512 +1 -0
  838. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug.aar +0 -0
  839. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug.aar.md5 +1 -0
  840. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug.aar.sha1 +1 -0
  841. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug.aar.sha256 +1 -0
  842. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-debug.aar.sha512 +1 -0
  843. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-javadoc.jar +0 -0
  844. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-javadoc.jar.md5 +1 -0
  845. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-javadoc.jar.sha1 +1 -0
  846. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-javadoc.jar.sha256 +1 -0
  847. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-javadoc.jar.sha512 +1 -0
  848. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-sources.jar +0 -0
  849. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-sources.jar.md5 +1 -0
  850. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-sources.jar.sha1 +1 -0
  851. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-sources.jar.sha256 +1 -0
  852. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release-sources.jar.sha512 +1 -0
  853. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release.aar +0 -0
  854. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release.aar.md5 +1 -0
  855. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release.aar.sha1 +1 -0
  856. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release.aar.sha256 +1 -0
  857. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1-release.aar.sha512 +1 -0
  858. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.module +246 -0
  859. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.module.md5 +1 -0
  860. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.module.sha1 +1 -0
  861. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.module.sha256 +1 -0
  862. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.module.sha512 +1 -0
  863. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.pom +44 -0
  864. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.pom.md5 +1 -0
  865. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.pom.sha1 +1 -0
  866. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.pom.sha256 +1 -0
  867. package/android/com/facebook/react/hermes-engine/0.69.0-rc.1/hermes-engine-0.69.0-rc.1.pom.sha512 +1 -0
  868. package/android/com/facebook/react/hermes-engine/maven-metadata.xml +13 -0
  869. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.md5 +1 -0
  870. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha1 +1 -0
  871. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha256 +1 -0
  872. package/android/com/facebook/react/hermes-engine/maven-metadata.xml.sha512 +1 -0
  873. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-javadoc.jar +0 -0
  874. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-javadoc.jar.md5 +1 -0
  875. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-javadoc.jar.sha1 +1 -0
  876. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-javadoc.jar.sha256 +1 -0
  877. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-javadoc.jar.sha512 +1 -0
  878. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-sources.jar +0 -0
  879. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-sources.jar.md5 +1 -0
  880. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-sources.jar.sha1 +1 -0
  881. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-sources.jar.sha256 +1 -0
  882. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug-sources.jar.sha512 +1 -0
  883. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug.aar +0 -0
  884. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug.aar.md5 +1 -0
  885. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug.aar.sha1 +1 -0
  886. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug.aar.sha256 +1 -0
  887. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-debug.aar.sha512 +1 -0
  888. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-javadoc.jar +0 -0
  889. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-javadoc.jar.md5 +1 -0
  890. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-javadoc.jar.sha1 +1 -0
  891. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-javadoc.jar.sha256 +1 -0
  892. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-javadoc.jar.sha512 +1 -0
  893. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1-sources.jar → 0.69.0-rc.1/react-native-0.69.0-rc.1-release-sources.jar} +0 -0
  894. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-sources.jar.md5 +1 -0
  895. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-sources.jar.sha1 +1 -0
  896. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-sources.jar.sha256 +1 -0
  897. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release-sources.jar.sha512 +1 -0
  898. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1.aar → 0.69.0-rc.1/react-native-0.69.0-rc.1-release.aar} +0 -0
  899. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release.aar.md5 +1 -0
  900. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release.aar.sha1 +1 -0
  901. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release.aar.sha256 +1 -0
  902. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1-release.aar.sha512 +1 -0
  903. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.module +670 -0
  904. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.module.md5 +1 -0
  905. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.module.sha1 +1 -0
  906. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.module.sha256 +1 -0
  907. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.module.sha512 +1 -0
  908. package/android/com/facebook/react/react-native/{0.68.1/react-native-0.68.1.pom → 0.69.0-rc.1/react-native-0.69.0-rc.1.pom} +32 -3
  909. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.pom.md5 +1 -0
  910. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.pom.sha1 +1 -0
  911. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.pom.sha256 +1 -0
  912. package/android/com/facebook/react/react-native/0.69.0-rc.1/react-native-0.69.0-rc.1.pom.sha512 +1 -0
  913. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -4
  914. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  915. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  916. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -1
  917. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -1
  918. package/flow/{use-subscription.js → use-sync-external-store.js} +4 -4
  919. package/index.js +30 -25
  920. package/jest/preprocessor.js +24 -107
  921. package/jest/preprocessor_DO_NOT_USE.js +122 -0
  922. package/package.json +26 -22
  923. package/react-native.config.js +1 -3
  924. package/react.gradle +47 -23
  925. package/scripts/{find-node.sh → find-node-for-xcode.sh} +11 -0
  926. package/scripts/generate-artifacts.js +16 -6
  927. package/scripts/packager.sh +1 -1
  928. package/scripts/react-native-xcode.sh +0 -4
  929. package/scripts/react_native_pods.rb +121 -17
  930. package/scripts/react_native_pods_utils/script_phases.rb +2 -2
  931. package/scripts/react_native_pods_utils/script_phases.sh +4 -5
  932. package/scripts/xcode/with-environment.sh +47 -0
  933. package/sdks/hermes-engine.podspec +53 -0
  934. package/sdks/hermesc/linux64-bin/hermesc +0 -0
  935. package/sdks/hermesc/osx-bin/hermesc +0 -0
  936. package/sdks/hermesc/win64-bin/hermesc.exe +0 -0
  937. package/sdks/hermesc/win64-bin/icudt64.dll +0 -0
  938. package/sdks/hermesc/win64-bin/icuin64.dll +0 -0
  939. package/sdks/hermesc/win64-bin/icuio64.dll +0 -0
  940. package/sdks/hermesc/win64-bin/icutest64.dll +0 -0
  941. package/sdks/hermesc/win64-bin/icutu64.dll +0 -0
  942. package/sdks/hermesc/win64-bin/icuuc64.dll +0 -0
  943. package/sdks/hermesc/win64-bin/msvcp140.dll +0 -0
  944. package/sdks/hermesc/win64-bin/vcruntime140.dll +0 -0
  945. package/sdks/hermesc/win64-bin/vcruntime140_1.dll +0 -0
  946. package/template/Gemfile +1 -1
  947. package/template/_flowconfig +1 -2
  948. package/template/_gitignore +5 -3
  949. package/template/_ruby-version +1 -1
  950. package/template/android/app/build.gradle +11 -12
  951. package/template/android/app/src/main/java/com/helloworld/MainActivity.java +9 -1
  952. package/template/android/app/src/main/java/com/helloworld/newarchitecture/MainApplicationReactNativeHost.java +2 -2
  953. package/template/android/app/src/main/jni/Android.mk +2 -3
  954. package/template/android/build.gradle +2 -6
  955. package/template/android/settings.gradle +2 -0
  956. package/template/ios/HelloWorld/AppDelegate.mm +26 -1
  957. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +7 -5
  958. package/template/ios/Podfile +1 -1
  959. package/template/ios/_xcode.env +11 -0
  960. package/template/package.json +4 -4
  961. package/third-party-podspecs/DoubleConversion.podspec +1 -1
  962. package/third-party-podspecs/glog.podspec +1 -1
  963. package/Libraries/Components/SegmentedControlIOS/RCTSegmentedControlNativeComponent.js +0 -44
  964. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.android.js +0 -45
  965. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +0 -123
  966. package/Libraries/Components/View/ReactNativeViewViewConfig.js +0 -360
  967. package/Libraries/Components/View/ReactNativeViewViewConfigAndroid.js +0 -83
  968. package/Libraries/ReactNative/UIManagerInjection.js +0 -15
  969. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +0 -24527
  970. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +0 -8309
  971. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +0 -8961
  972. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +0 -24948
  973. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +0 -8400
  974. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +0 -9049
  975. package/React/Views/RCTWeakViewHolder.h +0 -19
  976. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +0 -388
  977. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +0 -33
  978. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/react/common/mapbuffer/ReadableMapBuffer.cpp +0 -48
  979. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/AsyncEventBeatV2.h +0 -40
  980. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/BUCK +0 -21
  981. package/ReactAndroid/src/main/jni/first-party/hermes/Android.mk +0 -10
  982. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +0 -731
  983. package/ReactAndroid/src/main/third-party/java/asm/BUCK +0 -75
  984. package/ReactAndroid/src/main/third-party/java/assertj/BUCK +0 -14
  985. package/ReactAndroid/src/main/third-party/java/buck-android-support/BUCK +0 -11
  986. package/ReactAndroid/src/main/third-party/java/buck-android-support/buck-android-support.jar +0 -0
  987. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +0 -14
  988. package/ReactAndroid/src/main/third-party/java/javapoet/BUCK +0 -14
  989. package/ReactAndroid/src/main/third-party/java/jsr-305/BUCK +0 -13
  990. package/ReactAndroid/src/main/third-party/java/jsr-330/BUCK +0 -13
  991. package/ReactAndroid/src/main/third-party/java/junit/BUCK +0 -36
  992. package/ReactAndroid/src/main/third-party/java/mockito/BUCK +0 -36
  993. package/ReactAndroid/src/main/third-party/java/mockito2/BUCK +0 -75
  994. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +0 -46
  995. package/ReactAndroid/src/main/third-party/java/okio/BUCK +0 -24
  996. package/ReactAndroid/src/main/third-party/java/robolectric/BUCK +0 -218
  997. package/ReactAndroid/src/main/third-party/java/sqlite/BUCK +0 -23
  998. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -13
  999. package/ReactAndroid/src/main/third-party/kotlin/BUCK +0 -91
  1000. package/ReactCommon/butter/optional.h +0 -38
  1001. package/ReactCommon/common.mk +0 -29
  1002. package/ReactCommon/react/renderer/mounting/MountingTransactionMetadata.h +0 -32
  1003. package/ReactCommon/react/utils/LayoutManager.h +0 -150
  1004. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.md5 +0 -1
  1005. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha1 +0 -1
  1006. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha256 +0 -1
  1007. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1-sources.jar.sha512 +0 -1
  1008. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.md5 +0 -1
  1009. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha1 +0 -1
  1010. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha256 +0 -1
  1011. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.aar.sha512 +0 -1
  1012. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module +0 -272
  1013. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.md5 +0 -1
  1014. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha1 +0 -1
  1015. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha256 +0 -1
  1016. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.module.sha512 +0 -1
  1017. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.md5 +0 -1
  1018. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha1 +0 -1
  1019. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha256 +0 -1
  1020. package/android/com/facebook/react/react-native/0.68.1/react-native-0.68.1.pom.sha512 +0 -1
  1021. package/flow/Promise.js +0 -47
  1022. package/template/Gemfile.lock +0 -100
@@ -12,12 +12,15 @@ cxx_library(
12
12
  compiler_flags = [
13
13
  "-Wall",
14
14
  "-Werror",
15
- "-std=c++14",
15
+ "-std=c++17",
16
16
  "-fexceptions",
17
17
  "-fno-data-sections",
18
18
  ],
19
19
  force_static = True,
20
- labels = ["supermodule:xplat/default/public.react_native.infra"],
20
+ labels = [
21
+ "pfh:ReactNative_CommonInfrastructurePlaceholder",
22
+ "supermodule:xplat/default/public.react_native.infra",
23
+ ],
21
24
  visibility = [
22
25
  "PUBLIC",
23
26
  ],
@@ -0,0 +1,42 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/Base.h>
11
+
12
+ #include <string>
13
+ #include <string_view>
14
+
15
+ namespace facebook::react {
16
+
17
+ template <>
18
+ struct Bridging<std::string> {
19
+ static std::string fromJs(jsi::Runtime &rt, const jsi::String &value) {
20
+ return value.utf8(rt);
21
+ }
22
+
23
+ static jsi::String toJs(jsi::Runtime &rt, const std::string &value) {
24
+ return jsi::String::createFromUtf8(rt, value);
25
+ }
26
+ };
27
+
28
+ template <>
29
+ struct Bridging<std::string_view> {
30
+ static jsi::String toJs(jsi::Runtime &rt, std::string_view value) {
31
+ return jsi::String::createFromUtf8(
32
+ rt, reinterpret_cast<const uint8_t *>(value.data()), value.length());
33
+ }
34
+ };
35
+
36
+ template <>
37
+ struct Bridging<const char *> : Bridging<std::string_view> {};
38
+
39
+ template <size_t N>
40
+ struct Bridging<char[N]> : Bridging<std::string_view> {};
41
+
42
+ } // namespace facebook::react
@@ -0,0 +1,27 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ #
3
+ # This source code is licensed under the MIT license found in the
4
+ # LICENSE file in the root directory of this source tree.
5
+
6
+ LOCAL_PATH := $(call my-dir)
7
+
8
+ include $(CLEAR_VARS)
9
+
10
+ LOCAL_MODULE := react_bridging
11
+
12
+ LOCAL_SRC_FILES := $(wildcard $(LOCAL_PATH)/*.cpp)
13
+
14
+ LOCAL_C_INCLUDES := $(LOCAL_PATH)
15
+ LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../
16
+
17
+ LOCAL_CFLAGS += -fexceptions -frtti -std=c++17 -Wall
18
+
19
+ LOCAL_STATIC_LIBRARIES :=
20
+
21
+ LOCAL_SHARED_LIBRARIES := jsi
22
+
23
+ include $(BUILD_STATIC_LIBRARY)
24
+
25
+ $(call import-module,butter)
26
+ $(call import-module,folly)
27
+ $(call import-module,jsi)
@@ -0,0 +1,108 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/Base.h>
11
+
12
+ #include <array>
13
+ #include <deque>
14
+ #include <initializer_list>
15
+ #include <list>
16
+ #include <tuple>
17
+ #include <utility>
18
+ #include <vector>
19
+
20
+ namespace facebook::react {
21
+
22
+ namespace array_detail {
23
+
24
+ template <typename T, size_t N>
25
+ struct BridgingStatic {
26
+ static jsi::Array toJs(
27
+ jsi::Runtime &rt,
28
+ const T &array,
29
+ const std::shared_ptr<CallInvoker> &jsInvoker) {
30
+ return toJs(rt, array, jsInvoker, std::make_index_sequence<N>{});
31
+ }
32
+
33
+ private:
34
+ template <size_t... Index>
35
+ static jsi::Array toJs(
36
+ facebook::jsi::Runtime &rt,
37
+ const T &array,
38
+ const std::shared_ptr<CallInvoker> &jsInvoker,
39
+ std::index_sequence<Index...>) {
40
+ return jsi::Array::createWithElements(
41
+ rt, bridging::toJs(rt, std::get<Index>(array), jsInvoker)...);
42
+ }
43
+ };
44
+
45
+ template <typename T>
46
+ struct BridgingDynamic {
47
+ static jsi::Array toJs(
48
+ jsi::Runtime &rt,
49
+ const T &list,
50
+ const std::shared_ptr<CallInvoker> &jsInvoker) {
51
+ jsi::Array result(rt, list.size());
52
+ size_t index = 0;
53
+
54
+ for (const auto &item : list) {
55
+ result.setValueAtIndex(rt, index++, bridging::toJs(rt, item, jsInvoker));
56
+ }
57
+
58
+ return result;
59
+ }
60
+ };
61
+
62
+ } // namespace array_detail
63
+
64
+ template <typename T, size_t N>
65
+ struct Bridging<std::array<T, N>>
66
+ : array_detail::BridgingStatic<std::array<T, N>, N> {};
67
+
68
+ template <typename T1, typename T2>
69
+ struct Bridging<std::pair<T1, T2>>
70
+ : array_detail::BridgingStatic<std::pair<T1, T2>, 2> {};
71
+
72
+ template <typename... Types>
73
+ struct Bridging<std::tuple<Types...>>
74
+ : array_detail::BridgingStatic<std::tuple<Types...>, sizeof...(Types)> {};
75
+
76
+ template <typename T>
77
+ struct Bridging<std::deque<T>> : array_detail::BridgingDynamic<std::deque<T>> {
78
+ };
79
+
80
+ template <typename T>
81
+ struct Bridging<std::initializer_list<T>>
82
+ : array_detail::BridgingDynamic<std::initializer_list<T>> {};
83
+
84
+ template <typename T>
85
+ struct Bridging<std::list<T>> : array_detail::BridgingDynamic<std::list<T>> {};
86
+
87
+ template <typename T>
88
+ struct Bridging<std::vector<T>>
89
+ : array_detail::BridgingDynamic<std::vector<T>> {
90
+ static std::vector<T> fromJs(
91
+ facebook::jsi::Runtime &rt,
92
+ const jsi::Array &array,
93
+ const std::shared_ptr<CallInvoker> &jsInvoker) {
94
+ size_t length = array.length(rt);
95
+
96
+ std::vector<T> vector;
97
+ vector.reserve(length);
98
+
99
+ for (size_t i = 0; i < length; i++) {
100
+ vector.push_back(
101
+ bridging::fromJs<T>(rt, array.getValueAtIndex(rt, i), jsInvoker));
102
+ }
103
+
104
+ return vector;
105
+ }
106
+ };
107
+
108
+ } // namespace facebook::react
@@ -0,0 +1,57 @@
1
+ load("//tools/build_defs/oss:rn_defs.bzl", "ANDROID", "APPLE", "CXX", "IOS", "MACOSX", "fb_xplat_cxx_test", "react_native_xplat_shared_library_target", "react_native_xplat_target", "rn_xplat_cxx_library")
2
+
3
+ rn_xplat_cxx_library(
4
+ name = "bridging",
5
+ srcs = glob(["*.cpp"]),
6
+ header_namespace = "react/bridging",
7
+ exported_headers = glob(["*.h"]),
8
+ compiler_flags_enable_exceptions = True,
9
+ compiler_flags_enable_rtti = True,
10
+ labels = [
11
+ "pfh:ReactNative_CommonInfrastructurePlaceholder",
12
+ "supermodule:xplat/default/public.react_native.infra",
13
+ ],
14
+ platforms = (ANDROID, APPLE, CXX),
15
+ tests = [":tests"],
16
+ visibility = ["PUBLIC"],
17
+ deps = [
18
+ "//xplat/folly:headers_only",
19
+ ],
20
+ exported_deps = [
21
+ react_native_xplat_target("butter:butter"),
22
+ react_native_xplat_target("callinvoker:callinvoker"),
23
+ react_native_xplat_shared_library_target("jsi:jsi"),
24
+ ],
25
+ )
26
+
27
+ rn_xplat_cxx_library(
28
+ name = "testlib",
29
+ header_namespace = "react/bridging",
30
+ exported_headers = glob(["tests/*.h"]),
31
+ platforms = (ANDROID, APPLE, CXX),
32
+ visibility = ["PUBLIC"],
33
+ exported_deps = [
34
+ ":bridging",
35
+ "//xplat/third-party/gmock:gtest",
36
+ ],
37
+ )
38
+
39
+ fb_xplat_cxx_test(
40
+ name = "tests",
41
+ srcs = glob(["tests/*.cpp"]),
42
+ headers = glob(["tests/*.h"]),
43
+ apple_sdks = (IOS, MACOSX),
44
+ compiler_flags = [
45
+ "-fexceptions",
46
+ "-frtti",
47
+ "-std=c++17",
48
+ "-Wall",
49
+ ],
50
+ contacts = ["oncall+react_native@xmail.facebook.com"],
51
+ platforms = (ANDROID, APPLE, CXX),
52
+ deps = [
53
+ ":bridging",
54
+ "//xplat/hermes/API:HermesAPI",
55
+ "//xplat/third-party/gmock:gtest",
56
+ ],
57
+ )
@@ -0,0 +1,154 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/Convert.h>
11
+
12
+ #include <ReactCommon/CallInvoker.h>
13
+ #include <folly/Function.h>
14
+ #include <jsi/jsi.h>
15
+
16
+ #include <cstdint>
17
+ #include <memory>
18
+ #include <type_traits>
19
+
20
+ namespace facebook::react {
21
+
22
+ template <typename T, typename = void>
23
+ struct Bridging;
24
+
25
+ template <>
26
+ struct Bridging<void> {
27
+ // Highly generic code may result in "casting" to void.
28
+ static void fromJs(jsi::Runtime &, const jsi::Value &) {}
29
+ };
30
+
31
+ namespace bridging {
32
+ namespace detail {
33
+
34
+ template <typename F>
35
+ struct function_wrapper;
36
+
37
+ template <typename C, typename R, typename... Args>
38
+ struct function_wrapper<R (C::*)(Args...)> {
39
+ using type = folly::Function<R(Args...)>;
40
+ };
41
+
42
+ template <typename C, typename R, typename... Args>
43
+ struct function_wrapper<R (C::*)(Args...) const> {
44
+ using type = folly::Function<R(Args...)>;
45
+ };
46
+
47
+ template <typename T, typename = void>
48
+ struct bridging_wrapper {
49
+ using type = remove_cvref_t<T>;
50
+ };
51
+
52
+ // Convert lambda types to move-only function types since we can't specialize
53
+ // Bridging templates for arbitrary lambdas.
54
+ template <typename T>
55
+ struct bridging_wrapper<
56
+ T,
57
+ std::void_t<decltype(&remove_cvref_t<T>::operator())>>
58
+ : function_wrapper<decltype(&remove_cvref_t<T>::operator())> {};
59
+
60
+ } // namespace detail
61
+
62
+ template <typename T>
63
+ using bridging_t = typename detail::bridging_wrapper<T>::type;
64
+
65
+ template <typename R, typename T, std::enable_if_t<is_jsi_v<T>, int> = 0>
66
+ auto fromJs(jsi::Runtime &rt, T &&value, const std::shared_ptr<CallInvoker> &)
67
+ -> decltype(static_cast<R>(convert(rt, std::forward<T>(value)))) {
68
+ return convert(rt, std::forward<T>(value));
69
+ }
70
+
71
+ template <typename R, typename T>
72
+ auto fromJs(jsi::Runtime &rt, T &&value, const std::shared_ptr<CallInvoker> &)
73
+ -> decltype(Bridging<remove_cvref_t<R>>::fromJs(
74
+ rt,
75
+ convert(rt, std::forward<T>(value)))) {
76
+ return Bridging<remove_cvref_t<R>>::fromJs(
77
+ rt, convert(rt, std::forward<T>(value)));
78
+ }
79
+
80
+ template <typename R, typename T>
81
+ auto fromJs(
82
+ jsi::Runtime &rt,
83
+ T &&value,
84
+ const std::shared_ptr<CallInvoker> &jsInvoker)
85
+ -> decltype(Bridging<remove_cvref_t<R>>::fromJs(
86
+ rt,
87
+ convert(rt, std::forward<T>(value)),
88
+ jsInvoker)) {
89
+ return Bridging<remove_cvref_t<R>>::fromJs(
90
+ rt, convert(rt, std::forward<T>(value)), jsInvoker);
91
+ }
92
+
93
+ template <typename T, std::enable_if_t<is_jsi_v<T>, int> = 0>
94
+ auto toJs(
95
+ jsi::Runtime &rt,
96
+ T &&value,
97
+ const std::shared_ptr<CallInvoker> & = nullptr)
98
+ -> decltype(convert(rt, std::forward<T>(value))) {
99
+ return convert(rt, std::forward<T>(value));
100
+ }
101
+
102
+ template <typename T>
103
+ auto toJs(
104
+ jsi::Runtime &rt,
105
+ T &&value,
106
+ const std::shared_ptr<CallInvoker> & = nullptr)
107
+ -> decltype(Bridging<bridging_t<T>>::toJs(rt, std::forward<T>(value))) {
108
+ return Bridging<bridging_t<T>>::toJs(rt, std::forward<T>(value));
109
+ }
110
+
111
+ template <typename T>
112
+ auto toJs(
113
+ jsi::Runtime &rt,
114
+ T &&value,
115
+ const std::shared_ptr<CallInvoker> &jsInvoker)
116
+ -> decltype(Bridging<bridging_t<T>>::toJs(
117
+ rt,
118
+ std::forward<T>(value),
119
+ jsInvoker)) {
120
+ return Bridging<bridging_t<T>>::toJs(rt, std::forward<T>(value), jsInvoker);
121
+ }
122
+
123
+ template <typename, typename = jsi::Value, typename = void>
124
+ inline constexpr bool supportsFromJs = false;
125
+
126
+ template <typename T, typename Arg = jsi::Value>
127
+ inline constexpr bool supportsFromJs<
128
+ T,
129
+ Arg,
130
+ std::void_t<decltype(fromJs<T>(
131
+ std::declval<jsi::Runtime &>(),
132
+ std::declval<Arg>(),
133
+ nullptr))>> = true;
134
+
135
+ template <typename, typename = jsi::Value, typename = void>
136
+ inline constexpr bool supportsToJs = false;
137
+
138
+ template <typename T, typename Ret = jsi::Value>
139
+ inline constexpr bool supportsToJs<
140
+ T,
141
+ Ret,
142
+ std::void_t<decltype(toJs(
143
+ std::declval<jsi::Runtime &>(),
144
+ std::declval<T>(),
145
+ nullptr))>> =
146
+ std::is_convertible_v<
147
+ decltype(toJs(
148
+ std::declval<jsi::Runtime &>(),
149
+ std::declval<T>(),
150
+ nullptr)),
151
+ Ret>;
152
+
153
+ } // namespace bridging
154
+ } // namespace facebook::react
@@ -0,0 +1,25 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/Base.h>
11
+
12
+ namespace facebook::react {
13
+
14
+ template <>
15
+ struct Bridging<bool> {
16
+ static bool fromJs(jsi::Runtime &rt, const jsi::Value &value) {
17
+ return value.asBool();
18
+ }
19
+
20
+ static jsi::Value toJs(jsi::Runtime &, bool value) {
21
+ return value;
22
+ }
23
+ };
24
+
25
+ } // namespace facebook::react
@@ -0,0 +1,19 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/AString.h>
11
+ #include <react/bridging/Array.h>
12
+ #include <react/bridging/Bool.h>
13
+ #include <react/bridging/Class.h>
14
+ #include <react/bridging/Error.h>
15
+ #include <react/bridging/Function.h>
16
+ #include <react/bridging/Number.h>
17
+ #include <react/bridging/Object.h>
18
+ #include <react/bridging/Promise.h>
19
+ #include <react/bridging/Value.h>
@@ -0,0 +1,17 @@
1
+ # Copyright (c) Meta Platforms, Inc. and affiliates.
2
+ #
3
+ # This source code is licensed under the MIT license found in the
4
+ # LICENSE file in the root directory of this source tree.
5
+
6
+ cmake_minimum_required(VERSION 3.13)
7
+ set(CMAKE_VERBOSE_MAKEFILE on)
8
+
9
+ add_compile_options(-fexceptions -frtti -std=c++17 -Wall -DLOG_TAG=\"ReactNative\")
10
+
11
+ file(GLOB react_bridging_SRC CONFIGURE_DEPENDS *.cpp)
12
+
13
+ add_library(react_bridging STATIC ${react_bridging_SRC})
14
+
15
+ target_include_directories(react_bridging PUBLIC ${REACT_COMMON_DIR})
16
+
17
+ target_link_libraries(react_bridging jsi)
@@ -0,0 +1,103 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <jsi/jsi.h>
11
+ #include <react/bridging/LongLivedObject.h>
12
+
13
+ #include <memory>
14
+
15
+ namespace facebook {
16
+ namespace react {
17
+
18
+ // Helper for passing jsi::Function arg to other methods.
19
+ class CallbackWrapper : public LongLivedObject {
20
+ private:
21
+ CallbackWrapper(
22
+ jsi::Function &&callback,
23
+ jsi::Runtime &runtime,
24
+ std::shared_ptr<CallInvoker> jsInvoker)
25
+ : longLivedObjectCollection_(),
26
+ callback_(std::move(callback)),
27
+ runtime_(runtime),
28
+ jsInvoker_(std::move(jsInvoker)) {}
29
+
30
+ CallbackWrapper(
31
+ std::shared_ptr<LongLivedObjectCollection> longLivedObjectCollection,
32
+ jsi::Function &&callback,
33
+ jsi::Runtime &runtime,
34
+ std::shared_ptr<CallInvoker> jsInvoker)
35
+ : longLivedObjectCollection_(longLivedObjectCollection),
36
+ callback_(std::move(callback)),
37
+ runtime_(runtime),
38
+ jsInvoker_(std::move(jsInvoker)) {}
39
+
40
+ // Use a weak_ptr to avoid a retain cycle: LongLivedObjectCollection owns all
41
+ // CallbackWrappers. So, CallbackWrapper cannot own its
42
+ // LongLivedObjectCollection.
43
+ std::weak_ptr<LongLivedObjectCollection> longLivedObjectCollection_;
44
+ jsi::Function callback_;
45
+ jsi::Runtime &runtime_;
46
+ std::shared_ptr<CallInvoker> jsInvoker_;
47
+
48
+ public:
49
+ static std::weak_ptr<CallbackWrapper> createWeak(
50
+ jsi::Function &&callback,
51
+ jsi::Runtime &runtime,
52
+ std::shared_ptr<CallInvoker> jsInvoker) {
53
+ auto wrapper = std::shared_ptr<CallbackWrapper>(
54
+ new CallbackWrapper(std::move(callback), runtime, jsInvoker));
55
+ LongLivedObjectCollection::get().add(wrapper);
56
+ return wrapper;
57
+ }
58
+
59
+ static std::weak_ptr<CallbackWrapper> createWeak(
60
+ std::shared_ptr<LongLivedObjectCollection> longLivedObjectCollection,
61
+ jsi::Function &&callback,
62
+ jsi::Runtime &runtime,
63
+ std::shared_ptr<CallInvoker> jsInvoker) {
64
+ auto wrapper = std::shared_ptr<CallbackWrapper>(new CallbackWrapper(
65
+ longLivedObjectCollection, std::move(callback), runtime, jsInvoker));
66
+ longLivedObjectCollection->add(wrapper);
67
+ return wrapper;
68
+ }
69
+
70
+ // Delete the enclosed jsi::Function
71
+ void destroy() {
72
+ allowRelease();
73
+ }
74
+
75
+ jsi::Function &callback() {
76
+ return callback_;
77
+ }
78
+
79
+ jsi::Runtime &runtime() {
80
+ return runtime_;
81
+ }
82
+
83
+ CallInvoker &jsInvoker() {
84
+ return *(jsInvoker_);
85
+ }
86
+
87
+ std::shared_ptr<CallInvoker> jsInvokerPtr() {
88
+ return jsInvoker_;
89
+ }
90
+
91
+ void allowRelease() override {
92
+ if (auto longLivedObjectCollection = longLivedObjectCollection_.lock()) {
93
+ if (longLivedObjectCollection != nullptr) {
94
+ longLivedObjectCollection->remove(this);
95
+ return;
96
+ }
97
+ }
98
+ LongLivedObject::allowRelease();
99
+ }
100
+ };
101
+
102
+ } // namespace react
103
+ } // namespace facebook
@@ -0,0 +1,71 @@
1
+ /*
2
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
3
+ *
4
+ * This source code is licensed under the MIT license found in the
5
+ * LICENSE file in the root directory of this source tree.
6
+ */
7
+
8
+ #pragma once
9
+
10
+ #include <react/bridging/Base.h>
11
+
12
+ namespace facebook::react::bridging {
13
+
14
+ template <
15
+ typename T,
16
+ typename C,
17
+ typename R,
18
+ typename... Args,
19
+ typename... JSArgs>
20
+ T callFromJs(
21
+ jsi::Runtime &rt,
22
+ R (C::*method)(jsi::Runtime &, Args...),
23
+ const std::shared_ptr<CallInvoker> &jsInvoker,
24
+ C *instance,
25
+ JSArgs &&...args) {
26
+ static_assert(
27
+ sizeof...(Args) == sizeof...(JSArgs), "Incorrect arguments length");
28
+ static_assert(
29
+ (supportsFromJs<Args, JSArgs> && ...), "Incompatible arguments");
30
+
31
+ if constexpr (std::is_void_v<T>) {
32
+ (instance->*method)(
33
+ rt, fromJs<Args>(rt, std::forward<JSArgs>(args), jsInvoker)...);
34
+
35
+ } else if constexpr (std::is_void_v<R>) {
36
+ static_assert(
37
+ std::is_same_v<T, jsi::Value>,
38
+ "Void functions may only return undefined");
39
+
40
+ (instance->*method)(
41
+ rt, fromJs<Args>(rt, std::forward<JSArgs>(args), jsInvoker)...);
42
+ return jsi::Value();
43
+
44
+ } else if constexpr (is_jsi_v<T>) {
45
+ static_assert(supportsToJs<R, T>, "Incompatible return type");
46
+
47
+ return toJs(
48
+ rt,
49
+ (instance->*method)(
50
+ rt, fromJs<Args>(rt, std::forward<JSArgs>(args), jsInvoker)...),
51
+ jsInvoker);
52
+
53
+ } else {
54
+ static_assert(std::is_convertible_v<R, T>, "Incompatible return type");
55
+
56
+ return (instance->*method)(
57
+ rt, fromJs<Args>(rt, std::forward<JSArgs>(args), jsInvoker)...);
58
+ }
59
+ }
60
+
61
+ template <typename R, typename... Args>
62
+ constexpr size_t getParameterCount(R (*)(Args...)) {
63
+ return sizeof...(Args);
64
+ }
65
+
66
+ template <typename C, typename R, typename... Args>
67
+ constexpr size_t getParameterCount(R (C::*)(Args...)) {
68
+ return sizeof...(Args);
69
+ }
70
+
71
+ } // namespace facebook::react::bridging