react-native 0.0.0-263478b91 → 0.0.0-268efb102

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 (866) hide show
  1. package/Libraries/ActionSheetIOS/ActionSheetIOS.js +14 -1
  2. package/Libraries/ActionSheetIOS/NativeActionSheetManager.js +2 -0
  3. package/Libraries/Animated/AnimatedEvent.js +23 -4
  4. package/Libraries/Animated/AnimatedMock.js +1 -7
  5. package/Libraries/Animated/NativeAnimatedHelper.js +3 -3
  6. package/Libraries/Animated/animations/Animation.js +1 -0
  7. package/Libraries/Animated/animations/DecayAnimation.js +2 -0
  8. package/Libraries/Animated/animations/SpringAnimation.js +1 -0
  9. package/Libraries/Animated/animations/TimingAnimation.js +3 -0
  10. package/Libraries/Animated/createAnimatedComponent.js +5 -1
  11. package/Libraries/Animated/createAnimatedComponentInjection.js +48 -0
  12. package/Libraries/Animated/createAnimatedComponent_EXPERIMENTAL.js +48 -0
  13. package/Libraries/Animated/nodes/AnimatedValue.js +6 -0
  14. package/Libraries/Animated/nodes/AnimatedWithChildren.js +1 -0
  15. package/Libraries/Animated/useAnimatedProps.js +211 -0
  16. package/Libraries/BatchedBridge/MessageQueue.js +15 -10
  17. package/Libraries/BatchedBridge/NativeModules.js +5 -1
  18. package/Libraries/Blob/FileReader.js +1 -1
  19. package/Libraries/Blob/RCTBlobManager.h +2 -1
  20. package/Libraries/Blob/RCTBlobManager.mm +1 -3
  21. package/Libraries/Blob/React-RCTBlob.podspec +1 -1
  22. package/Libraries/Blob/URL.js +1 -1
  23. package/Libraries/BugReporting/BugReporting.js +2 -0
  24. package/Libraries/BugReporting/getReactData.js +1 -1
  25. package/Libraries/Components/Button.js +18 -2
  26. package/Libraries/Components/DatePicker/DatePickerIOS.ios.js +3 -6
  27. package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +4 -7
  28. package/Libraries/Components/Keyboard/KeyboardAvoidingView.js +1 -1
  29. package/Libraries/Components/Pressable/useAndroidRippleForView.js +18 -15
  30. package/Libraries/Components/ScrollView/ScrollView.js +22 -5
  31. package/Libraries/Components/ScrollView/ScrollViewNativeComponent.js +1 -0
  32. package/Libraries/Components/ScrollView/ScrollViewNativeComponentType.js +2 -0
  33. package/Libraries/Components/ScrollView/ScrollViewStickyHeader.js +268 -252
  34. package/Libraries/Components/ScrollView/ScrollViewViewConfig.js +2 -0
  35. package/Libraries/Components/SegmentedControlIOS/SegmentedControlIOS.ios.js +14 -6
  36. package/Libraries/Components/Slider/Slider.js +13 -1
  37. package/Libraries/Components/StatusBar/StatusBar.js +6 -14
  38. package/Libraries/Components/Switch/Switch.js +18 -6
  39. package/Libraries/Components/TextInput/AndroidTextInputNativeComponent.js +4 -4
  40. package/Libraries/Components/TextInput/AndroidTextInputViewConfig.js +1 -0
  41. package/Libraries/Components/TextInput/TextInput.js +32 -4
  42. package/Libraries/Components/TextInput/TextInputState.js +1 -1
  43. package/Libraries/Components/Touchable/Touchable.js +14 -0
  44. package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
  45. package/Libraries/Components/Touchable/TouchableOpacity.js +11 -2
  46. package/Libraries/Components/View/ReactNativeStyleAttributes.js +131 -64
  47. package/Libraries/Components/View/ViewAccessibility.js +2 -0
  48. package/Libraries/Components/View/ViewNativeComponent.js +0 -10
  49. package/Libraries/Core/Devtools/parseErrorStack.js +0 -10
  50. package/Libraries/Core/Devtools/parseHermesStack.js +1 -1
  51. package/Libraries/Core/ExceptionsManager.js +49 -39
  52. package/Libraries/{Components/View/ViewInjection.js → Core/ExtendedError.js} +8 -2
  53. package/Libraries/Core/ReactFiberErrorDialog.js +44 -34
  54. package/Libraries/Core/ReactNativeVersion.js +1 -1
  55. package/Libraries/Core/Timers/JSTimers.js +37 -28
  56. package/Libraries/Core/Timers/immediateShim.js +67 -0
  57. package/Libraries/Core/Timers/queueMicrotask.js +41 -0
  58. package/Libraries/Core/polyfillPromise.js +1 -1
  59. package/Libraries/Core/setUpBatchedBridge.js +1 -1
  60. package/Libraries/Core/setUpGlobals.js +2 -0
  61. package/Libraries/Core/setUpRegeneratorRuntime.js +25 -8
  62. package/Libraries/Core/setUpTimers.js +65 -6
  63. package/Libraries/DeprecatedPropTypes/DeprecatedImagePropType.android.js +131 -0
  64. package/Libraries/DeprecatedPropTypes/{DeprecatedImagePropType.js → DeprecatedImagePropType.ios.js} +0 -0
  65. package/Libraries/DeprecatedPropTypes/DeprecatedTextInputPropTypes.js +5 -5
  66. package/Libraries/DeprecatedPropTypes/DeprecatedViewAccessibility.js +1 -0
  67. package/Libraries/EventEmitter/NativeEventEmitter.js +2 -0
  68. package/Libraries/Image/Image.android.js +20 -130
  69. package/Libraries/Image/Image.ios.js +12 -7
  70. package/Libraries/Image/ImageBackground.js +10 -8
  71. package/Libraries/Image/ImageInjection.js +28 -0
  72. package/Libraries/Image/ImageProps.js +28 -0
  73. package/Libraries/Image/ImageSource.js +108 -65
  74. package/Libraries/Image/React-RCTImage.podspec +1 -1
  75. package/Libraries/Inspector/Inspector.js +6 -0
  76. package/Libraries/Interaction/InteractionManager.js +3 -0
  77. package/Libraries/Interaction/PanResponder.js +1 -1
  78. package/Libraries/LinkingIOS/React-RCTLinking.podspec +1 -1
  79. package/Libraries/Lists/CellRenderMask.js +145 -0
  80. package/Libraries/Lists/FlatList.js +43 -26
  81. package/Libraries/Lists/VirtualizedList.js +3 -1
  82. package/Libraries/Lists/VirtualizedSectionList.js +3 -0
  83. package/Libraries/Lists/__flowtests__/SectionList-flowtest.js +4 -4
  84. package/Libraries/LogBox/Data/LogBoxData.js +21 -19
  85. package/Libraries/LogBox/UI/LogBoxImages/alert-triangle.png +0 -0
  86. package/Libraries/LogBox/UI/LogBoxImages/chevron-left.png +0 -0
  87. package/Libraries/LogBox/UI/LogBoxImages/chevron-right.png +0 -0
  88. package/Libraries/LogBox/UI/LogBoxImages/close.png +0 -0
  89. package/Libraries/LogBox/UI/LogBoxImages/loader.png +0 -0
  90. package/Libraries/LogBox/UI/LogBoxInspectorSourceMapStatus.js +1 -0
  91. package/Libraries/Modal/Modal.js +1 -0
  92. package/Libraries/NativeAnimation/Nodes/RCTPropsAnimatedNode.m +0 -3
  93. package/Libraries/NativeAnimation/RCTNativeAnimatedModule.mm +6 -3
  94. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.h +1 -1
  95. package/Libraries/NativeAnimation/RCTNativeAnimatedNodesManager.m +1 -1
  96. package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +32 -28
  97. package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -1
  98. package/Libraries/Network/RCTHTTPRequestHandler.h +5 -0
  99. package/Libraries/Network/RCTHTTPRequestHandler.mm +19 -7
  100. package/Libraries/Network/React-RCTNetwork.podspec +1 -1
  101. package/Libraries/Network/XMLHttpRequest.js +4 -1
  102. package/Libraries/NewAppScreen/components/Header.js +1 -0
  103. package/Libraries/NewAppScreen/components/logo.png +0 -0
  104. package/Libraries/Performance/QuickPerformanceLogger.js +3 -1
  105. package/Libraries/PermissionsAndroid/NativePermissionsAndroid.js +4 -1
  106. package/Libraries/PermissionsAndroid/PermissionsAndroid.js +6 -0
  107. package/Libraries/Pressability/Pressability.js +1 -0
  108. package/Libraries/Pressability/PressabilityPerformanceEventEmitter.js +1 -0
  109. package/Libraries/PushNotificationIOS/RCTPushNotificationManager.mm +0 -1
  110. package/Libraries/PushNotificationIOS/React-RCTPushNotification.podspec +1 -1
  111. package/Libraries/ReactNative/AppContainer.js +1 -0
  112. package/Libraries/ReactNative/AppRegistry.js +3 -1
  113. package/Libraries/ReactNative/I18nManager.js +12 -3
  114. package/Libraries/ReactNative/PaperUIManager.js +1 -0
  115. package/Libraries/ReactNative/renderApplication.js +8 -3
  116. package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +2 -3
  117. package/Libraries/Reliability/UserFlow.js +7 -0
  118. package/Libraries/Renderer/REVISION +1 -1
  119. package/Libraries/Renderer/implementations/ReactFabric-dev.fb.js +5686 -4572
  120. package/Libraries/Renderer/implementations/ReactFabric-dev.js +4324 -3826
  121. package/Libraries/Renderer/implementations/ReactFabric-prod.fb.js +2196 -1859
  122. package/Libraries/Renderer/implementations/ReactFabric-prod.js +196 -210
  123. package/Libraries/Renderer/implementations/ReactFabric-profiling.fb.js +2694 -2070
  124. package/Libraries/Renderer/implementations/ReactFabric-profiling.js +647 -375
  125. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.fb.js +5474 -4460
  126. package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +4109 -3636
  127. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.fb.js +1375 -1166
  128. package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +162 -193
  129. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.fb.js +2197 -1708
  130. package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +618 -364
  131. package/Libraries/Renderer/shims/ReactFabric.js +5 -4
  132. package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
  133. package/Libraries/Renderer/shims/ReactNative.js +3 -1
  134. package/Libraries/Renderer/shims/ReactNativeTypes.js +7 -4
  135. package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
  136. package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
  137. package/Libraries/Settings/React-RCTSettings.podspec +1 -1
  138. package/Libraries/Settings/Settings.ios.js +4 -0
  139. package/Libraries/Storage/AsyncStorage.js +1 -0
  140. package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +16 -1
  141. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.ios.js +8 -1
  142. package/Libraries/StyleSheet/PlatformColorValueTypesIOS.js +2 -0
  143. package/Libraries/StyleSheet/StyleSheet.js +3 -5
  144. package/Libraries/StyleSheet/normalizeColor.js +2 -2
  145. package/Libraries/SurfaceHostingComponent/RCTSurfaceHostingComponent.mm +1 -1
  146. package/Libraries/Text/Text.js +11 -0
  147. package/Libraries/Text/TextInput/RCTBaseTextInputView.m +10 -12
  148. package/Libraries/Text/TextInput/RCTInputAccessoryViewContent.m +4 -11
  149. package/Libraries/Text/TextProps.js +5 -7
  150. package/Libraries/TurboModule/TurboModuleRegistry.js +1 -10
  151. package/Libraries/TypeSafety/RCTTypeSafety.podspec +1 -1
  152. package/Libraries/UTFSequence.js +1 -1
  153. package/Libraries/Utilities/Dimensions.js +9 -14
  154. package/Libraries/Utilities/FeatureDetection.js +31 -0
  155. package/Libraries/Utilities/HMRClient.js +13 -6
  156. package/Libraries/Utilities/MatrixMath.js +1 -1
  157. package/Libraries/Utilities/NativeDeviceInfo.js +1 -1
  158. package/Libraries/Utilities/PerformanceLoggerContext.js +1 -1
  159. package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +1 -0
  160. package/Libraries/Utilities/deprecatedPropType.js +2 -2
  161. package/Libraries/Utilities/useMergeRefs.js +44 -0
  162. package/Libraries/Utilities/useRefEffect.js +45 -0
  163. package/Libraries/Utilities/useWindowDimensions.js +7 -2
  164. package/Libraries/Vibration/React-RCTVibration.podspec +1 -1
  165. package/Libraries/YellowBox/YellowBoxDeprecated.js +1 -0
  166. package/Libraries/promiseRejectionTrackingOptions.js +2 -0
  167. package/Libraries/vendor/emitter/_EventSubscriptionVendor.js +1 -1
  168. package/README.md +5 -5
  169. package/React/Base/RCTAssert.h +11 -11
  170. package/React/Base/RCTBridge+Private.h +8 -2
  171. package/React/Base/RCTBridge.h +12 -3
  172. package/React/Base/RCTBridge.m +24 -12
  173. package/React/Base/RCTBridgeModule.h +36 -12
  174. package/React/Base/RCTBundleURLProvider.h +26 -1
  175. package/React/Base/RCTBundleURLProvider.mm +79 -15
  176. package/React/Base/RCTCallableJSModules.m +47 -0
  177. package/React/Base/RCTConstants.h +6 -7
  178. package/React/Base/RCTConstants.m +12 -12
  179. package/React/Base/RCTConvert.h +1 -1
  180. package/React/Base/RCTConvert.m +31 -7
  181. package/React/Base/RCTCxxConvert.h +1 -1
  182. package/React/Base/RCTDefines.h +12 -3
  183. package/React/Base/RCTEventDispatcherProtocol.h +3 -2
  184. package/React/{Views/RCTPickerManager.h → Base/RCTInitializing.h} +4 -2
  185. package/React/Base/RCTJSThread.h +29 -0
  186. package/React/Base/RCTJSThread.m +19 -0
  187. package/React/Base/RCTModuleData.h +7 -3
  188. package/React/Base/RCTModuleData.mm +41 -1
  189. package/React/Base/RCTMultipartStreamReader.m +0 -2
  190. package/React/Base/RCTRootView.h +15 -0
  191. package/React/Base/RCTRootView.m +15 -0
  192. package/React/Base/RCTTouchHandler.m +4 -9
  193. package/React/Base/RCTUtils.h +3 -0
  194. package/React/Base/RCTUtils.m +14 -7
  195. package/React/Base/RCTVersion.m +1 -1
  196. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.h +12 -0
  197. package/React/Base/Surface/SurfaceHostingView/RCTSurfaceHostingProxyRootView.mm +45 -1
  198. package/React/CoreModules/BUCK +4 -3
  199. package/React/CoreModules/RCTAccessibilityManager.mm +1 -1
  200. package/React/CoreModules/RCTActionSheetManager.mm +14 -5
  201. package/React/CoreModules/RCTAsyncLocalStorage.mm +4 -0
  202. package/React/CoreModules/RCTDevLoadingView.mm +6 -21
  203. package/React/CoreModules/RCTDevMenu.mm +8 -11
  204. package/React/CoreModules/RCTDevSettings.h +2 -1
  205. package/React/CoreModules/RCTDevSettings.mm +63 -53
  206. package/React/CoreModules/RCTDevSplitBundleLoader.mm +1 -6
  207. package/React/CoreModules/RCTDeviceInfo.mm +4 -4
  208. package/React/CoreModules/RCTEventDispatcher.h +2 -1
  209. package/React/CoreModules/RCTEventDispatcher.mm +17 -28
  210. package/React/CoreModules/RCTKeyboardObserver.mm +1 -1
  211. package/React/CoreModules/RCTLogBox.mm +14 -10
  212. package/React/CoreModules/RCTPerfMonitor.mm +9 -4
  213. package/React/CoreModules/RCTRedBox.mm +1 -5
  214. package/React/CoreModules/RCTTiming.h +2 -1
  215. package/React/CoreModules/RCTTiming.mm +1 -3
  216. package/React/CoreModules/React-CoreModules.podspec +1 -1
  217. package/React/CxxBridge/RCTCxxBridge.mm +49 -12
  218. package/React/DevSupport/RCTPackagerConnection.h +3 -0
  219. package/React/DevSupport/RCTPackagerConnection.mm +19 -8
  220. package/React/FBReactNativeSpec/FBReactNativeSpec.podspec +12 -4
  221. package/React/Fabric/Mounting/ComponentViews/Modal/RCTModalHostViewComponentView.mm +1 -2
  222. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.h +0 -1
  223. package/React/Fabric/Mounting/ComponentViews/RCTFabricComponentsPlugins.mm +0 -1
  224. package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +97 -85
  225. package/React/Fabric/Mounting/ComponentViews/Text/RCTParagraphComponentView.mm +1 -0
  226. package/React/Fabric/Mounting/ComponentViews/TextInput/RCTTextInputComponentView.mm +45 -17
  227. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.h +6 -0
  228. package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +109 -5
  229. package/React/Fabric/Mounting/RCTComponentViewFactory.mm +1 -0
  230. package/React/Fabric/Mounting/RCTMountingManager.h +3 -0
  231. package/React/Fabric/Mounting/RCTMountingManager.mm +22 -3
  232. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.h +2 -0
  233. package/React/Fabric/Mounting/UIView+ComponentViewProtocol.mm +12 -0
  234. package/React/Fabric/RCTConversions.h +3 -0
  235. package/React/Fabric/RCTScheduler.mm +23 -7
  236. package/React/Fabric/RCTSurfacePresenter.mm +28 -37
  237. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.h +4 -2
  238. package/React/Fabric/RCTSurfacePresenterBridgeAdapter.mm +1 -1
  239. package/React/Fabric/RCTSurfaceRegistry.h +1 -1
  240. package/React/Fabric/RCTSurfaceTouchHandler.mm +6 -20
  241. package/React/Fabric/Surface/RCTFabricSurface.mm +3 -0
  242. package/React/Modules/RCTEventEmitter.h +1 -2
  243. package/React/Modules/RCTEventEmitter.m +8 -11
  244. package/React/Modules/RCTI18nUtil.h +14 -6
  245. package/React/Modules/RCTI18nUtil.m +1 -47
  246. package/React/Profiler/RCTProfileTrampoline-arm.S +1 -1
  247. package/React/Profiler/RCTProfileTrampoline-arm64.S +2 -2
  248. package/React/React-RCTFabric.podspec +3 -3
  249. package/React/Views/RCTFont.mm +54 -38
  250. package/React/Views/RCTModalHostView.h +1 -1
  251. package/React/Views/RCTModalHostView.m +16 -0
  252. package/React/Views/RCTModalHostViewManager.m +1 -0
  253. package/React/Views/RCTView.h +7 -7
  254. package/React/Views/RCTView.m +32 -49
  255. package/React/Views/RCTViewManager.m +14 -4
  256. package/React/Views/SafeAreaView/RCTSafeAreaView.m +1 -5
  257. package/React/Views/ScrollView/RCTScrollView.h +1 -0
  258. package/React/Views/ScrollView/RCTScrollView.m +123 -36
  259. package/React/Views/ScrollView/RCTScrollViewManager.m +4 -7
  260. package/React/Views/UIView+React.m +2 -11
  261. package/React/third-party.xcconfig +1 -1
  262. package/React-Core.podspec +2 -2
  263. package/ReactAndroid/Android-prebuilt.mk +8 -0
  264. package/ReactAndroid/README.md +1 -1
  265. package/ReactAndroid/build.gradle +82 -18
  266. package/ReactAndroid/gradle.properties +5 -5
  267. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/BUCK +1 -1
  268. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/ReactAppInstrumentationTestCase.java +1 -1
  269. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/idledetection/BUCK +1 -1
  270. package/ReactAndroid/src/androidTest/java/com/facebook/react/testing/rule/BUCK +5 -5
  271. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/BUCK +0 -2
  272. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/core/BUCK +5 -5
  273. package/ReactAndroid/src/androidTest/js/BUCK +26 -0
  274. package/ReactAndroid/src/androidTest/js/TestBundle.js +0 -12
  275. package/ReactAndroid/src/main/java/com/facebook/hermes/instrumentation/Android.mk +2 -2
  276. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/Android.mk +4 -4
  277. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/HermesExecutorFactory.java +1 -1
  278. package/ReactAndroid/src/main/java/com/facebook/hermes/reactexecutor/RuntimeConfig.java +0 -6
  279. package/ReactAndroid/src/main/java/com/facebook/proguard/annotations/BUCK +2 -2
  280. package/ReactAndroid/src/main/java/com/facebook/react/BUCK +1 -0
  281. package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +1 -0
  282. package/ReactAndroid/src/main/java/com/facebook/react/ReactAndroidHWInputDeviceHelper.java +5 -0
  283. package/ReactAndroid/src/main/java/com/facebook/react/ReactFragment.java +6 -2
  284. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +123 -64
  285. package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.java +28 -0
  286. package/ReactAndroid/src/main/java/com/facebook/react/ReactNativeHost.java +13 -0
  287. package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +25 -3
  288. package/ReactAndroid/src/main/java/com/facebook/react/animated/BUCK +1 -1
  289. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedModule.java +2 -2
  290. package/ReactAndroid/src/main/java/com/facebook/react/animated/NativeAnimatedNodesManager.java +5 -5
  291. package/ReactAndroid/src/main/java/com/facebook/react/bridge/BackgroundExecutor.java +3 -2
  292. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.java +4 -0
  293. package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +11 -5
  294. package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaModuleWrapper.java +37 -0
  295. package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.java +22 -0
  296. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContext.java +3 -6
  297. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactContextBaseJavaModule.java +1 -1
  298. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.java +39 -0
  299. package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactMarkerConstants.java +3 -1
  300. package/ReactAndroid/src/main/java/com/facebook/react/bridge/{ReactSoftException.java → ReactSoftExceptionLogger.java} +8 -3
  301. package/ReactAndroid/src/main/java/com/facebook/react/bridge/RuntimeScheduler.java +21 -0
  302. package/ReactAndroid/src/main/java/com/facebook/react/bridge/SoftAssertions.java +8 -7
  303. package/ReactAndroid/src/main/java/com/facebook/react/bridge/UIManager.java +10 -0
  304. package/ReactAndroid/src/main/java/com/facebook/react/common/BUCK +2 -2
  305. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/BUCK +3 -0
  306. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBuffer.java +1 -2
  307. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/ReadableMapBufferSoLoader.java +33 -0
  308. package/ReactAndroid/src/main/java/com/facebook/react/common/mapbuffer/jni/BUCK +1 -1
  309. package/ReactAndroid/src/main/java/com/facebook/react/config/ReactFeatureFlags.java +40 -36
  310. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BUCK +1 -1
  311. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.java +275 -0
  312. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.java +97 -0
  313. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevServerHelper.java +9 -58
  314. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.java +163 -328
  315. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.java +3 -72
  316. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/PackagerStatusCheck.java +100 -0
  317. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/RedBoxHandler.java +1 -1
  318. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.java +1 -1
  319. package/ReactAndroid/src/main/java/com/facebook/react/fabric/Binding.java +10 -0
  320. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricComponents.java +4 -3
  321. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricJSIModuleProvider.java +6 -67
  322. package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +154 -74
  323. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/EventEmitterWrapper.java +36 -1
  324. package/ReactAndroid/src/main/java/com/facebook/react/fabric/events/FabricEventEmitter.java +14 -2
  325. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Android.mk +2 -2
  326. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/BUCK +1 -2
  327. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.cpp +129 -40
  328. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/Binding.h +18 -2
  329. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/CoreComponentsRegistry.cpp +0 -6
  330. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.cpp +22 -2
  331. package/ReactAndroid/src/main/java/com/facebook/react/fabric/jni/EventEmitterWrapper.h +4 -0
  332. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountItemDispatcher.java +53 -7
  333. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/MountingManager.java +27 -7
  334. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +136 -35
  335. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/IntBufferBatchMountItem.java +2 -1
  336. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/PreAllocateViewMountItem.java +5 -5
  337. package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/mountitems/SendAccessibilityEvent.java +2 -2
  338. package/ReactAndroid/src/main/java/com/facebook/react/jscexecutor/Android.mk +2 -2
  339. package/ReactAndroid/src/main/java/com/facebook/react/jstasks/HeadlessJsTaskContext.java +2 -2
  340. package/ReactAndroid/src/main/java/com/facebook/react/modules/accessibilityinfo/BUCK +1 -1
  341. package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/BUCK +1 -1
  342. package/ReactAndroid/src/main/java/com/facebook/react/modules/appstate/BUCK +1 -1
  343. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BUCK +1 -1
  344. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/BlobProvider.java +35 -7
  345. package/ReactAndroid/src/main/java/com/facebook/react/modules/blob/jni/Android.mk +2 -2
  346. package/ReactAndroid/src/main/java/com/facebook/react/modules/bundleloader/BUCK +1 -1
  347. package/ReactAndroid/src/main/java/com/facebook/react/modules/camera/BUCK +1 -1
  348. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/BUCK +1 -1
  349. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/{JavaScriptTimerManager.java → JavaScriptTimerExecutor.java} +1 -1
  350. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/JavaTimerManager.java +7 -7
  351. package/ReactAndroid/src/main/java/com/facebook/react/modules/core/TimingModule.java +2 -2
  352. package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/BUCK +1 -1
  353. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/BUCK +1 -1
  354. package/ReactAndroid/src/main/java/com/facebook/react/modules/deviceinfo/DeviceInfoModule.java +10 -6
  355. package/ReactAndroid/src/main/java/com/facebook/react/modules/dialog/BUCK +1 -1
  356. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/BUCK +1 -1
  357. package/ReactAndroid/src/main/java/com/facebook/react/modules/i18nmanager/I18nManagerModule.java +7 -1
  358. package/ReactAndroid/src/main/java/com/facebook/react/modules/image/BUCK +1 -1
  359. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/BUCK +1 -1
  360. package/ReactAndroid/src/main/java/com/facebook/react/modules/intent/IntentModule.java +23 -19
  361. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/BUCK +1 -1
  362. package/ReactAndroid/src/main/java/com/facebook/react/modules/network/ForwardingCookieHandler.java +1 -4
  363. package/ReactAndroid/src/main/java/com/facebook/react/modules/permissions/BUCK +1 -1
  364. package/ReactAndroid/src/main/java/com/facebook/react/modules/share/BUCK +1 -1
  365. package/ReactAndroid/src/main/java/com/facebook/react/modules/sound/BUCK +1 -1
  366. package/ReactAndroid/src/main/java/com/facebook/react/modules/statusbar/BUCK +1 -1
  367. package/ReactAndroid/src/main/java/com/facebook/react/modules/storage/BUCK +1 -1
  368. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/BUCK +2 -2
  369. package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.java +1 -1
  370. package/ReactAndroid/src/main/java/com/facebook/react/modules/toast/BUCK +1 -1
  371. package/ReactAndroid/src/main/java/com/facebook/react/modules/vibration/BUCK +1 -1
  372. package/ReactAndroid/src/main/java/com/facebook/react/modules/websocket/BUCK +1 -1
  373. package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/ReconnectingWebSocket.java +11 -9
  374. package/ReactAndroid/src/main/java/com/facebook/react/shell/BUCK +0 -2
  375. package/ReactAndroid/src/main/java/com/facebook/react/shell/MainReactPackage.java +0 -9
  376. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/TurboModuleManager.java +4 -2
  377. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.cpp +39 -11
  378. package/ReactAndroid/src/main/java/com/facebook/react/turbomodule/core/jni/ReactCommon/TurboModuleManager.h +9 -2
  379. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/DisplayMetricsHolder.java +7 -28
  380. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.java +14 -5
  381. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +10 -13
  382. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/PixelUtil.java +1 -6
  383. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.java +5 -6
  384. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactClippingProhibitedView.java +26 -0
  385. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactOverflowView.java +25 -0
  386. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TouchTargetHelper.java +162 -66
  387. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -4
  388. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerHelper.java +9 -9
  389. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +10 -1
  390. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +6 -5
  391. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ViewManagersPropertyCache.java +16 -1
  392. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/Event.java +53 -19
  393. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/LockFreeEventDispatcherImpl.java +236 -0
  394. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/RCTModernEventEmitter.java +8 -0
  395. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/ReactEventEmitter.java +20 -6
  396. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchEvent.java +34 -5
  397. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/TouchesHelper.java +1 -1
  398. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/interfaces/ViewProps.java +9 -4
  399. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/BUCK +1 -1
  400. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.cpp +2 -1
  401. package/ReactAndroid/src/main/java/com/facebook/react/uimanager/jni/ComponentNameResolverManager.h +10 -15
  402. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/BUCK +1 -1
  403. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerClosedEvent.java +0 -6
  404. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerOpenedEvent.java +0 -6
  405. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerSlideEvent.java +0 -6
  406. package/ReactAndroid/src/main/java/com/facebook/react/views/drawer/events/DrawerStateChangedEvent.java +0 -6
  407. package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageManager.java +5 -5
  408. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/BUCK +1 -1
  409. package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.java +7 -11
  410. package/ReactAndroid/src/main/java/com/facebook/react/views/progressbar/BUCK +1 -1
  411. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/BUCK +1 -0
  412. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +15 -1
  413. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollViewManager.java +5 -0
  414. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +42 -5
  415. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewHelper.java +18 -3
  416. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollViewManager.java +5 -0
  417. package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ScrollEvent.java +9 -7
  418. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/BUCK +1 -1
  419. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderEvent.java +0 -5
  420. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSliderManager.java +4 -7
  421. package/ReactAndroid/src/main/java/com/facebook/react/views/slider/ReactSlidingCompleteEvent.java +0 -5
  422. package/ReactAndroid/src/main/java/com/facebook/react/views/swiperefresh/BUCK +1 -1
  423. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/BUCK +1 -1
  424. package/ReactAndroid/src/main/java/com/facebook/react/views/switchview/ReactSwitchEvent.java +0 -6
  425. package/ReactAndroid/src/main/java/com/facebook/react/views/text/CustomStyleSpan.java +6 -8
  426. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactFontManager.java +59 -44
  427. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextAnchorViewManager.java +0 -4
  428. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextShadowNode.java +23 -2
  429. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextView.java +19 -0
  430. package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTypefaceUtils.java +41 -59
  431. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextAttributeProps.java +20 -51
  432. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.java +31 -12
  433. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManagerMapBuffer.java +31 -11
  434. package/ReactAndroid/src/main/java/com/facebook/react/views/text/TypefaceStyle.java +72 -0
  435. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/BUCK +1 -0
  436. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditText.java +16 -6
  437. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactEditTextInputConnectionWrapper.java +3 -0
  438. package/ReactAndroid/src/main/java/com/facebook/react/views/textinput/ReactTextInputManager.java +117 -62
  439. package/ReactAndroid/src/main/java/com/facebook/react/views/view/CanvasUtil.java +92 -0
  440. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewBackgroundDrawable.java +39 -8
  441. package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.java +49 -2
  442. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJNIVanilla.cpp +2 -7
  443. package/ReactAndroid/src/main/jni/first-party/yogajni/jni/YGJTypesVanilla.h +8 -4
  444. package/ReactAndroid/src/main/jni/react/jni/Android.mk +5 -3
  445. package/ReactAndroid/src/main/jni/react/jni/BUCK +5 -2
  446. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +64 -3
  447. package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +9 -2
  448. package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +18 -0
  449. package/{ReactCommon/react/renderer/components/picker/iospicker/primitives.h → ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h} +6 -10
  450. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.cpp +21 -0
  451. package/ReactAndroid/src/main/jni/react/jni/JReactSoftExceptionLogger.h +28 -0
  452. package/{ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerComponentDescriptor.h → ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.cpp} +8 -7
  453. package/ReactAndroid/src/main/jni/react/jni/JRuntimeScheduler.h +30 -0
  454. package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
  455. package/ReactAndroid/src/main/jni/react/jni/ProxyExecutor.h +1 -0
  456. package/ReactAndroid/src/main/jni/third-party/folly/Android.mk +3 -1
  457. package/ReactAndroid/src/main/jni/third-party/libevent/Android.mk +0 -1
  458. package/ReactAndroid/src/main/libraries/fresco/fresco-react-native/BUCK +26 -26
  459. package/ReactAndroid/src/main/libraries/soloader/java/com/facebook/soloader/BUCK +5 -5
  460. package/ReactAndroid/src/main/res/devsupport/values/strings.xml +2 -1
  461. package/ReactAndroid/src/main/res/views/uimanager/values/strings_unlocalized.xml +0 -12
  462. package/ReactAndroid/src/main/third-party/android/androidx/BUCK +63 -2
  463. package/ReactAndroid/src/main/third-party/java/infer-annotations/BUCK +2 -2
  464. package/ReactAndroid/src/main/third-party/java/okhttp/BUCK +4 -4
  465. package/ReactAndroid/src/main/third-party/java/okio/BUCK +2 -2
  466. package/ReactAndroid/src/main/third-party/java/robolectric/{4.4/BUCK → BUCK} +0 -0
  467. package/ReactAndroid/src/main/third-party/java/testing-support-lib/BUCK +0 -31
  468. package/ReactAndroid/src/test/java/com/facebook/react/RootViewTest.java +2 -2
  469. package/ReactAndroid/src/test/java/com/facebook/react/bridge/BUCK +1 -1
  470. package/ReactAndroid/src/test/java/com/facebook/react/bridge/ReactTestHelper.java +1 -0
  471. package/ReactAndroid/src/test/java/com/facebook/react/modules/BUCK +1 -0
  472. package/ReactAndroid/src/test/java/com/facebook/react/modules/deviceinfo/DeviceInfoModuleTest.java +168 -0
  473. package/ReactAndroid/src/test/java/com/facebook/react/views/textinput/ReactTextInputPropertyTest.java +4 -0
  474. package/ReactCommon/React-Fabric.podspec +11 -11
  475. package/ReactCommon/ReactCommon.podspec +3 -2
  476. package/ReactCommon/callinvoker/BUCK +2 -2
  477. package/ReactCommon/callinvoker/React-callinvoker.podspec +1 -1
  478. package/ReactCommon/cxxreact/Android.mk +2 -1
  479. package/ReactCommon/cxxreact/BUCK +1 -3
  480. package/ReactCommon/cxxreact/CxxNativeModule.cpp +28 -0
  481. package/ReactCommon/cxxreact/CxxNativeModule.h +9 -0
  482. package/ReactCommon/cxxreact/Instance.cpp +5 -8
  483. package/ReactCommon/cxxreact/Instance.h +1 -1
  484. package/ReactCommon/cxxreact/React-cxxreact.podspec +4 -3
  485. package/ReactCommon/cxxreact/ReactNativeVersion.h +1 -1
  486. package/ReactCommon/hermes/React-hermes.podspec +2 -2
  487. package/ReactCommon/hermes/executor/Android.mk +4 -4
  488. package/ReactCommon/hermes/inspector/Android.mk +1 -2
  489. package/ReactCommon/hermes/inspector/tools/msggen/package.json +7 -4
  490. package/ReactCommon/hermes/inspector/tools/msggen/yarn.lock +13 -10
  491. package/ReactCommon/jsi/Android.mk +1 -1
  492. package/ReactCommon/jsi/BUCK +0 -2
  493. package/ReactCommon/jsi/React-jsi.podspec +3 -3
  494. package/ReactCommon/jsi/jsi/jsilib-posix.cpp +1 -11
  495. package/ReactCommon/jsiexecutor/Android.mk +2 -2
  496. package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +2 -2
  497. package/ReactCommon/logger/Android.mk +23 -0
  498. package/ReactCommon/logger/BUCK +43 -0
  499. package/ReactCommon/logger/React-logger.podspec +40 -0
  500. package/ReactCommon/logger/react_native_log.cpp +52 -0
  501. package/ReactCommon/logger/react_native_log.h +33 -0
  502. package/ReactCommon/react/nativemodule/core/Android.mk +2 -2
  503. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.cpp +1 -0
  504. package/ReactCommon/react/nativemodule/core/ReactCommon/LongLivedObject.h +3 -2
  505. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +46 -1
  506. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +10 -0
  507. package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleUtils.h +37 -1
  508. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.cpp +24 -22
  509. package/ReactCommon/react/nativemodule/core/platform/android/ReactCommon/JavaTurboModule.h +11 -8
  510. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.h +7 -5
  511. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModule.mm +61 -42
  512. package/ReactCommon/react/nativemodule/core/platform/ios/RCTTurboModuleManager.mm +55 -35
  513. package/ReactCommon/react/nativemodule/samples/BUCK +2 -2
  514. package/ReactCommon/react/nativemodule/samples/platform/android/Android.mk +1 -1
  515. package/ReactCommon/react/renderer/animations/BUCK +1 -0
  516. package/ReactCommon/react/renderer/animations/LayoutAnimationCallbackWrapper.h +34 -0
  517. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.cpp +5 -27
  518. package/ReactCommon/react/renderer/animations/LayoutAnimationDriver.h +8 -14
  519. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +920 -1127
  520. package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.h +80 -245
  521. package/ReactCommon/react/renderer/animations/conversions.h +212 -0
  522. package/ReactCommon/react/renderer/animations/primitives.h +104 -0
  523. package/ReactCommon/react/renderer/animations/tests/LayoutAnimationTest.cpp +18 -10
  524. package/ReactCommon/react/renderer/animations/utils.cpp +71 -0
  525. package/ReactCommon/react/renderer/animations/utils.h +80 -0
  526. package/ReactCommon/react/renderer/attributedstring/AttributedString.h +0 -1
  527. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.cpp +7 -3
  528. package/ReactCommon/react/renderer/attributedstring/ParagraphAttributes.h +12 -2
  529. package/ReactCommon/react/renderer/attributedstring/TextAttributes.cpp +7 -2
  530. package/ReactCommon/react/renderer/attributedstring/TextAttributes.h +3 -1
  531. package/ReactCommon/react/renderer/attributedstring/conversions.h +162 -11
  532. package/ReactCommon/react/renderer/attributedstring/primitives.h +34 -1
  533. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.cpp +2 -2
  534. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorProviderRegistry.h +1 -0
  535. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.cpp +12 -6
  536. package/ReactCommon/react/renderer/componentregistry/ComponentDescriptorRegistry.h +4 -1
  537. package/ReactCommon/react/renderer/componentregistry/componentNameByReactViewName.cpp +2 -1
  538. package/ReactCommon/react/renderer/components/image/Android.mk +1 -1
  539. package/ReactCommon/react/renderer/components/image/ImageProps.cpp +28 -9
  540. package/ReactCommon/react/renderer/components/image/ImageProps.h +5 -1
  541. package/ReactCommon/react/renderer/components/image/conversions.h +9 -2
  542. package/ReactCommon/react/renderer/components/inputaccessory/BUCK +1 -1
  543. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/BUCK +1 -1
  544. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropComponentDescriptor.mm +0 -1
  545. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.cpp +2 -1
  546. package/ReactCommon/react/renderer/components/legacyviewmanagerinterop/LegacyViewManagerInteropViewProps.h +2 -0
  547. package/ReactCommon/react/renderer/components/root/BUCK +1 -0
  548. package/ReactCommon/react/renderer/components/root/RootProps.cpp +12 -2
  549. package/ReactCommon/react/renderer/components/root/RootProps.h +6 -1
  550. package/ReactCommon/react/renderer/components/root/RootShadowNode.cpp +2 -1
  551. package/ReactCommon/react/renderer/components/root/RootShadowNode.h +2 -0
  552. package/ReactCommon/react/renderer/components/root/tests/RootShadowNodeTest.cpp +35 -3
  553. package/ReactCommon/react/renderer/components/safeareaview/BUCK +1 -1
  554. package/ReactCommon/react/renderer/components/scrollview/Android.mk +1 -1
  555. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.cpp +54 -4
  556. package/ReactCommon/react/renderer/components/scrollview/ScrollViewProps.h +10 -5
  557. package/ReactCommon/react/renderer/components/scrollview/conversions.h +5 -0
  558. package/ReactCommon/react/renderer/components/text/Android.mk +1 -1
  559. package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +32 -0
  560. package/ReactCommon/react/renderer/components/text/BaseTextProps.h +5 -1
  561. package/ReactCommon/react/renderer/components/text/BaseTextShadowNode.cpp +2 -3
  562. package/ReactCommon/react/renderer/components/text/ParagraphComponentDescriptor.h +1 -16
  563. package/ReactCommon/react/renderer/components/text/ParagraphProps.cpp +10 -4
  564. package/ReactCommon/react/renderer/components/text/ParagraphProps.h +5 -1
  565. package/ReactCommon/react/renderer/components/text/ParagraphShadowNode.cpp +3 -3
  566. package/ReactCommon/react/renderer/components/text/RawTextProps.cpp +3 -2
  567. package/ReactCommon/react/renderer/components/text/RawTextProps.h +5 -1
  568. package/ReactCommon/react/renderer/components/text/RawTextShadowNode.h +36 -2
  569. package/ReactCommon/react/renderer/components/text/TextProps.cpp +6 -3
  570. package/ReactCommon/react/renderer/components/text/TextProps.h +5 -1
  571. package/ReactCommon/react/renderer/components/text/TextShadowNode.h +23 -0
  572. package/ReactCommon/react/renderer/components/textinput/Android.mk +1 -1
  573. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.cpp +58 -91
  574. package/ReactCommon/react/renderer/components/textinput/androidtextinput/react/renderer/components/androidtextinput/AndroidTextInputProps.h +10 -6
  575. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.cpp +46 -22
  576. package/ReactCommon/react/renderer/components/textinput/iostextinput/TextInputProps.h +6 -5
  577. package/ReactCommon/react/renderer/components/textinput/iostextinput/conversions.h +19 -7
  578. package/ReactCommon/react/renderer/components/textinput/iostextinput/primitives.h +6 -0
  579. package/ReactCommon/react/renderer/components/textinput/iostextinput/propsConversions.h +63 -2
  580. package/ReactCommon/react/renderer/components/unimplementedview/Android.mk +1 -1
  581. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.cpp +4 -2
  582. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewComponentDescriptor.h +5 -2
  583. package/ReactCommon/react/renderer/components/unimplementedview/UnimplementedViewProps.h +1 -0
  584. package/ReactCommon/react/renderer/components/view/AccessibilityPrimitives.h +28 -0
  585. package/ReactCommon/react/renderer/components/view/AccessibilityProps.cpp +24 -1
  586. package/ReactCommon/react/renderer/components/view/AccessibilityProps.h +4 -1
  587. package/ReactCommon/react/renderer/components/view/Android.mk +3 -2
  588. package/ReactCommon/react/renderer/components/view/BUCK +1 -0
  589. package/ReactCommon/react/renderer/components/view/Touch.h +1 -32
  590. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.cpp +19 -5
  591. package/ReactCommon/react/renderer/components/view/TouchEventEmitter.h +2 -1
  592. package/ReactCommon/react/renderer/components/view/ViewComponentDescriptor.h +0 -22
  593. package/ReactCommon/react/renderer/components/view/ViewEventEmitter.cpp +1 -1
  594. package/ReactCommon/react/renderer/components/view/ViewProps.cpp +62 -14
  595. package/ReactCommon/react/renderer/components/view/ViewProps.h +7 -1
  596. package/ReactCommon/react/renderer/components/view/ViewPropsInterpolation.h +5 -10
  597. package/ReactCommon/react/renderer/components/view/ViewShadowNode.cpp +5 -12
  598. package/ReactCommon/react/renderer/components/view/ViewShadowNode.h +1 -1
  599. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.cpp +58 -33
  600. package/ReactCommon/react/renderer/components/view/YogaLayoutableShadowNode.h +2 -8
  601. package/ReactCommon/react/renderer/components/view/YogaStylableProps.cpp +3 -2
  602. package/ReactCommon/react/renderer/components/view/YogaStylableProps.h +2 -0
  603. package/ReactCommon/react/renderer/components/view/accessibilityPropsConversions.h +77 -6
  604. package/ReactCommon/react/renderer/components/view/conversions.h +57 -14
  605. package/ReactCommon/react/renderer/components/view/primitives.h +5 -4
  606. package/ReactCommon/react/renderer/components/view/propsConversions.h +163 -28
  607. package/ReactCommon/react/renderer/components/view/tests/ViewTest.cpp +7 -2
  608. package/ReactCommon/react/renderer/core/Android.mk +1 -1
  609. package/ReactCommon/react/renderer/core/BUCK +1 -0
  610. package/ReactCommon/react/renderer/core/BatchedEventQueue.cpp +2 -34
  611. package/ReactCommon/react/renderer/core/BatchedEventQueue.h +2 -9
  612. package/ReactCommon/react/renderer/core/ComponentDescriptor.h +5 -2
  613. package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +19 -21
  614. package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +4 -0
  615. package/ReactCommon/react/renderer/core/EventDispatcher.cpp +5 -10
  616. package/ReactCommon/react/renderer/core/EventDispatcher.h +3 -8
  617. package/ReactCommon/react/renderer/core/EventEmitter.cpp +21 -11
  618. package/ReactCommon/react/renderer/core/EventEmitter.h +6 -1
  619. package/ReactCommon/react/renderer/core/EventPipe.h +2 -0
  620. package/ReactCommon/react/renderer/core/EventQueue.cpp +35 -32
  621. package/ReactCommon/react/renderer/core/EventQueue.h +12 -6
  622. package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +82 -0
  623. package/ReactCommon/react/renderer/core/EventQueueProcessor.h +36 -0
  624. package/ReactCommon/react/renderer/core/LayoutableShadowNode.cpp +1 -1
  625. package/ReactCommon/react/renderer/core/LayoutableShadowNode.h +0 -6
  626. package/ReactCommon/react/renderer/core/Props.cpp +10 -2
  627. package/ReactCommon/react/renderer/core/Props.h +6 -1
  628. package/ReactCommon/react/renderer/core/PropsParserContext.h +29 -0
  629. package/ReactCommon/react/renderer/core/RawEvent.cpp +4 -2
  630. package/ReactCommon/react/renderer/core/RawEvent.h +40 -3
  631. package/ReactCommon/react/renderer/core/RawProps.cpp +2 -1
  632. package/ReactCommon/react/renderer/core/RawProps.h +3 -1
  633. package/ReactCommon/react/renderer/core/RawPropsKey.cpp +10 -2
  634. package/ReactCommon/react/renderer/core/RawPropsKeyMap.cpp +1 -1
  635. package/ReactCommon/react/renderer/core/RawPropsParser.cpp +1 -1
  636. package/ReactCommon/react/renderer/core/RawPropsParser.h +11 -2
  637. package/ReactCommon/react/renderer/core/ReactEventPriority.h +43 -0
  638. package/ReactCommon/react/renderer/core/ReactPrimitives.h +0 -2
  639. package/ReactCommon/react/renderer/core/ShadowNode.cpp +9 -12
  640. package/ReactCommon/react/renderer/core/ShadowNode.h +4 -0
  641. package/ReactCommon/react/renderer/core/ShadowNodeFamily.h +1 -0
  642. package/ReactCommon/react/renderer/core/ShadowNodeTraits.h +17 -1
  643. package/ReactCommon/react/renderer/core/propsConversions.h +19 -9
  644. package/ReactCommon/react/renderer/core/tests/ComponentDescriptorTest.cpp +16 -4
  645. package/ReactCommon/react/renderer/core/tests/EventQueueProcessorTest.cpp +134 -0
  646. package/ReactCommon/react/renderer/core/tests/RawPropsTest.cpp +97 -29
  647. package/ReactCommon/react/renderer/core/tests/TestComponent.h +6 -2
  648. package/ReactCommon/react/renderer/core/tests/traitCastTest.cpp +31 -0
  649. package/ReactCommon/react/renderer/debug/DebugStringConvertible.h +9 -9
  650. package/ReactCommon/react/renderer/graphics/Android.mk +5 -2
  651. package/ReactCommon/react/renderer/graphics/BUCK +12 -1
  652. package/ReactCommon/react/renderer/graphics/React-graphics.podspec +3 -2
  653. package/ReactCommon/react/renderer/graphics/Transform.cpp +2 -2
  654. package/ReactCommon/react/renderer/graphics/Transform.h +1 -1
  655. package/ReactCommon/react/renderer/graphics/conversions.h +34 -19
  656. package/ReactCommon/react/renderer/graphics/platform/android/react/renderer/graphics/PlatformColorParser.h +67 -0
  657. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.cpp +8 -0
  658. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/Color.h +1 -0
  659. package/ReactCommon/react/renderer/graphics/platform/cxx/react/renderer/graphics/PlatformColorParser.h +29 -0
  660. package/ReactCommon/react/renderer/graphics/platform/ios/Color.cpp +8 -0
  661. package/ReactCommon/react/renderer/graphics/platform/ios/Color.h +43 -1
  662. package/ReactCommon/react/renderer/graphics/platform/ios/PlatformColorParser.h +34 -0
  663. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.h +12 -0
  664. package/ReactCommon/react/renderer/graphics/platform/ios/RCTPlatformColorUtils.mm +206 -0
  665. package/ReactCommon/react/renderer/imagemanager/BUCK +1 -1
  666. package/ReactCommon/react/renderer/imagemanager/platform/ios/RCTSyncImageManager.mm +1 -1
  667. package/ReactCommon/react/renderer/leakchecker/LeakChecker.cpp +6 -9
  668. package/ReactCommon/react/renderer/leakchecker/LeakChecker.h +1 -4
  669. package/ReactCommon/react/renderer/mapbuffer/BUCK +2 -2
  670. package/ReactCommon/react/renderer/mounting/Android.mk +2 -1
  671. package/ReactCommon/react/renderer/mounting/Differentiator.cpp +3 -10
  672. package/ReactCommon/react/renderer/mounting/Differentiator.h +1 -2
  673. package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +1 -7
  674. package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
  675. package/ReactCommon/react/renderer/mounting/MountingOverrideDelegate.h +1 -1
  676. package/ReactCommon/react/renderer/mounting/ShadowTree.cpp +7 -5
  677. package/ReactCommon/react/renderer/mounting/ShadowTree.h +2 -1
  678. package/ReactCommon/react/renderer/mounting/ShadowView.cpp +2 -0
  679. package/ReactCommon/react/renderer/mounting/ShadowView.h +1 -0
  680. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.cpp +12 -0
  681. package/ReactCommon/react/renderer/mounting/ShadowViewMutation.h +10 -1
  682. package/ReactCommon/react/renderer/mounting/StubViewTree.cpp +10 -3
  683. package/ReactCommon/react/renderer/mounting/TelemetryController.cpp +1 -1
  684. package/ReactCommon/react/renderer/mounting/stubs.cpp +3 -3
  685. package/ReactCommon/react/renderer/mounting/tests/MountingTest.cpp +22 -21
  686. package/ReactCommon/react/renderer/mounting/tests/ShadowTreeLifeCycleTest.cpp +12 -5
  687. package/ReactCommon/react/renderer/mounting/tests/StackingContextTest.cpp +2 -2
  688. package/ReactCommon/react/renderer/mounting/tests/StateReconciliationTest.cpp +6 -3
  689. package/ReactCommon/react/renderer/runtimescheduler/Android.mk +2 -1
  690. package/ReactCommon/react/renderer/runtimescheduler/BUCK +1 -0
  691. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.cpp +75 -33
  692. package/ReactCommon/react/renderer/runtimescheduler/RuntimeScheduler.h +54 -10
  693. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.cpp +8 -7
  694. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerBinding.h +8 -5
  695. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.cpp +30 -0
  696. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerCallInvoker.h +34 -0
  697. package/ReactCommon/react/renderer/runtimescheduler/RuntimeSchedulerClock.h +4 -2
  698. package/ReactCommon/react/renderer/runtimescheduler/SchedulerPriority.h +4 -2
  699. package/ReactCommon/react/renderer/runtimescheduler/Task.cpp +11 -5
  700. package/ReactCommon/react/renderer/runtimescheduler/Task.h +5 -3
  701. package/ReactCommon/react/renderer/runtimescheduler/primitives.h +4 -2
  702. package/ReactCommon/react/renderer/runtimescheduler/tests/RuntimeSchedulerTest.cpp +157 -0
  703. package/ReactCommon/react/renderer/runtimescheduler/tests/StubQueue.h +6 -0
  704. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.cpp +13 -12
  705. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeat.h +4 -4
  706. package/ReactCommon/react/renderer/{components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.cpp → scheduler/InspectorData.h} +10 -2
  707. package/ReactCommon/react/renderer/scheduler/Scheduler.cpp +64 -37
  708. package/ReactCommon/react/renderer/scheduler/Scheduler.h +18 -3
  709. package/ReactCommon/react/renderer/scheduler/SchedulerDelegate.h +9 -1
  710. package/ReactCommon/react/renderer/scheduler/SchedulerToolbox.h +1 -6
  711. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +49 -35
  712. package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +12 -12
  713. package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +1 -0
  714. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.cpp +11 -4
  715. package/ReactCommon/react/renderer/scheduler/SynchronousEventBeat.h +4 -1
  716. package/ReactCommon/react/renderer/templateprocessor/UITemplateProcessor.cpp +5 -5
  717. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.h +2 -0
  718. package/ReactCommon/react/renderer/textlayoutmanager/platform/ios/RCTAttributedTextUtils.mm +22 -0
  719. package/ReactCommon/react/renderer/timeline/BUCK +6 -6
  720. package/ReactCommon/react/renderer/uimanager/UIManager.cpp +29 -16
  721. package/ReactCommon/react/renderer/uimanager/UIManager.h +3 -1
  722. package/ReactCommon/react/renderer/uimanager/UIManagerAnimationDelegate.h +1 -1
  723. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.cpp +61 -2
  724. package/ReactCommon/react/renderer/uimanager/UIManagerBinding.h +13 -1
  725. package/ReactCommon/react/renderer/uimanager/UIManagerDelegate.h +10 -2
  726. package/ReactCommon/react/test_utils/BUCK +3 -0
  727. package/ReactCommon/react/{renderer/core/Constants.h → test_utils/MockSurfaceHandler.h} +9 -7
  728. package/ReactCommon/react/test_utils/shadowTreeGeneration.h +18 -4
  729. package/ReactCommon/react/utils/Android.mk +3 -1
  730. package/ReactCommon/react/utils/BUCK +1 -0
  731. package/ReactCommon/react/utils/ContextContainer.h +0 -27
  732. package/ReactCommon/reactperflogger/React-perflogger.podspec +1 -1
  733. package/ReactCommon/runtimeexecutor/React-runtimeexecutor.podspec +1 -1
  734. package/ReactCommon/runtimeexecutor/ReactCommon/RuntimeExecutor.h +12 -0
  735. package/ReactCommon/yoga/yoga/Yoga.cpp +2 -6
  736. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar +0 -0
  737. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.md5 +1 -0
  738. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha1 +1 -0
  739. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha256 +1 -0
  740. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.aar.sha512 +1 -0
  741. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module +272 -0
  742. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.md5 +1 -0
  743. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha1 +1 -0
  744. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha256 +1 -0
  745. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.module.sha512 +1 -0
  746. package/android/com/facebook/react/react-native/{0.0.0-263478b91/react-native-0.0.0-263478b91.pom → 0.0.0-268efb102/react-native-0.0.0-268efb102.pom} +22 -11
  747. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.md5 +1 -0
  748. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha1 +1 -0
  749. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha256 +1 -0
  750. package/android/com/facebook/react/react-native/0.0.0-268efb102/react-native-0.0.0-268efb102.pom.sha512 +1 -0
  751. package/android/com/facebook/react/react-native/maven-metadata.xml +4 -3
  752. package/android/com/facebook/react/react-native/maven-metadata.xml.md5 +1 -1
  753. package/android/com/facebook/react/react-native/maven-metadata.xml.sha1 +1 -1
  754. package/android/com/facebook/react/react-native/maven-metadata.xml.sha256 +1 -0
  755. package/android/com/facebook/react/react-native/maven-metadata.xml.sha512 +1 -0
  756. package/flow/HermesInternalType.js +114 -0
  757. package/flow/global.js +68 -0
  758. package/flow-typed/npm/react-test-renderer_v16.x.x.js +79 -0
  759. package/index.js +65 -40
  760. package/jest/preprocessor.js +75 -7
  761. package/jest/renderer.js +3 -7
  762. package/jest/setup.js +2 -1
  763. package/package.json +58 -19
  764. package/react.gradle +47 -25
  765. package/scripts/find-node.sh +6 -0
  766. package/scripts/generate-specs-cli.js +20 -2
  767. package/scripts/ios-configure-glog.sh +4 -0
  768. package/scripts/react-native-xcode.sh +5 -1
  769. package/scripts/react_native_pods.rb +213 -43
  770. package/template/_flowconfig +1 -1
  771. package/template/_gitignore +1 -0
  772. package/template/android/app/build.gradle +12 -7
  773. package/template/android/app/src/main/res/values/styles.xml +0 -1
  774. package/template/android/build.gradle +5 -6
  775. package/template/android/gradle/wrapper/gradle-wrapper.properties +1 -1
  776. package/template/android/gradle.properties +1 -1
  777. package/template/ios/HelloWorld.xcodeproj/project.pbxproj +2 -0
  778. package/template/ios/Podfile +1 -0
  779. package/template/package.json +3 -4
  780. package/third-party-podspecs/RCT-Folly.podspec +14 -10
  781. package/third-party-podspecs/boost.podspec +23 -0
  782. package/Libraries/BUCK +0 -24
  783. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.android.js +0 -87
  784. package/Libraries/Components/DatePickerAndroid/DatePickerAndroid.ios.js +0 -30
  785. package/Libraries/Components/DatePickerAndroid/DatePickerAndroidTypes.js +0 -30
  786. package/Libraries/Components/Picker/AndroidDialogPickerNativeComponent.js +0 -83
  787. package/Libraries/Components/Picker/AndroidDropdownPickerNativeComponent.js +0 -82
  788. package/Libraries/Components/Picker/Picker.js +0 -168
  789. package/Libraries/Components/Picker/PickerAndroid.android.js +0 -143
  790. package/Libraries/Components/Picker/PickerAndroid.ios.js +0 -12
  791. package/Libraries/Components/Picker/PickerIOS.android.js +0 -14
  792. package/Libraries/Components/Picker/PickerIOS.ios.js +0 -163
  793. package/Libraries/Components/Picker/RCTPickerNativeComponent.js +0 -86
  794. package/Libraries/Components/StaticContainer.react.js +0 -51
  795. package/Libraries/Components/StatusBar/StatusBarIOS.js +0 -38
  796. package/Libraries/Components/Touchable/ensurePositiveDelayProps.js +0 -25
  797. package/Libraries/Interaction/InteractionMixin.js +0 -53
  798. package/Libraries/ReactNative/queryLayoutByID.js +0 -58
  799. package/Libraries/StyleSheet/StyleSheetValidation.js +0 -100
  800. package/Libraries/Text/TextInjection.js +0 -15
  801. package/React/Base/RCTJSInvokerModule.h +0 -17
  802. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.h +0 -19
  803. package/React/Fabric/Mounting/ComponentViews/Picker/RCTPickerComponentView.mm +0 -206
  804. package/React/Views/RCTPicker.h +0 -23
  805. package/React/Views/RCTPicker.m +0 -122
  806. package/React/Views/RCTPickerManager.m +0 -59
  807. package/ReactAndroid/release.gradle +0 -87
  808. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/DatePickerDialogTestCase.java +0 -172
  809. package/ReactAndroid/src/androidTest/java/com/facebook/react/tests/ReactPickerTestCase.java +0 -196
  810. package/ReactAndroid/src/androidTest/js/DatePickerDialogTestModule.js +0 -45
  811. package/ReactAndroid/src/androidTest/js/PickerAndroidTestModule.js +0 -89
  812. package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerImpl.java +0 -82
  813. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/BUCK +0 -27
  814. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogFragment.java +0 -137
  815. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerDialogModule.java +0 -153
  816. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DatePickerMode.java +0 -15
  817. package/ReactAndroid/src/main/java/com/facebook/react/modules/datepicker/DismissableDatePickerDialog.java +0 -117
  818. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerDelegate.java +0 -48
  819. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDialogPickerManagerInterface.java +0 -23
  820. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerDelegate.java +0 -48
  821. package/ReactAndroid/src/main/java/com/facebook/react/viewmanagers/AndroidDropdownPickerManagerInterface.java +0 -22
  822. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/BUCK +0 -30
  823. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDialogPickerManager.java +0 -51
  824. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactDropdownPickerManager.java +0 -50
  825. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPicker.java +0 -196
  826. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerAdapter.java +0 -95
  827. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerItem.java +0 -43
  828. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/ReactPickerManager.java +0 -99
  829. package/ReactAndroid/src/main/java/com/facebook/react/views/picker/events/PickerItemSelectEvent.java +0 -42
  830. package/ReactCommon/react/renderer/components/picker/Android.mk +0 -37
  831. package/ReactCommon/react/renderer/components/picker/BUCK +0 -98
  832. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.cpp +0 -23
  833. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerEventEmitter.h +0 -27
  834. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.cpp +0 -28
  835. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerProps.h +0 -77
  836. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDialogPickerShadowNode.h +0 -29
  837. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerComponentDescriptor.h +0 -21
  838. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.cpp +0 -23
  839. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerEventEmitter.h +0 -27
  840. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.cpp +0 -28
  841. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerProps.h +0 -77
  842. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.cpp +0 -17
  843. package/ReactCommon/react/renderer/components/picker/androidpicker/react/renderer/components/androidpicker/AndroidDropdownPickerShadowNode.h +0 -29
  844. package/ReactCommon/react/renderer/components/picker/iospicker/BUCK +0 -59
  845. package/ReactCommon/react/renderer/components/picker/iospicker/PickerComponentDescriptor.h +0 -26
  846. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.cpp +0 -23
  847. package/ReactCommon/react/renderer/components/picker/iospicker/PickerEventEmitter.h +0 -28
  848. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.cpp +0 -46
  849. package/ReactCommon/react/renderer/components/picker/iospicker/PickerProps.h +0 -36
  850. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.cpp +0 -16
  851. package/ReactCommon/react/renderer/components/picker/iospicker/PickerShadowNode.h +0 -33
  852. package/ReactCommon/react/renderer/components/picker/iospicker/PickerState.h +0 -19
  853. package/ReactCommon/react/renderer/components/picker/iospicker/conversions.h +0 -48
  854. package/ReactCommon/react/renderer/core/Constants.cpp +0 -24
  855. package/ReactCommon/react/renderer/mounting/DifferentiatorFlatteningClassic.cpp +0 -1564
  856. package/ReactCommon/react/renderer/mounting/DifferentiatorFlatteningClassic.h +0 -45
  857. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeatV2.cpp +0 -58
  858. package/ReactCommon/react/renderer/scheduler/AsynchronousEventBeatV2.h +0 -41
  859. package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar +0 -0
  860. package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar.md5 +0 -1
  861. package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.aar.sha1 +0 -1
  862. package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.pom.md5 +0 -1
  863. package/android/com/facebook/react/react-native/0.0.0-263478b91/react-native-0.0.0-263478b91.pom.sha1 +0 -1
  864. package/scripts/generate-specs.sh +0 -100
  865. package/template/_editorconfig +0 -3
  866. package/template/_gitattributes +0 -3
@@ -18,7 +18,6 @@ import com.facebook.proguard.annotations.DoNotStripAny;
18
18
  */
19
19
  @DoNotStripAny
20
20
  public class ReactFeatureFlags {
21
-
22
21
  /**
23
22
  * Should this application use TurboModules? If yes, then any module that inherits {@link
24
23
  * com.facebook.react.turbomodule.core.interfaces.TurboModule} will NOT be passed in to C++
@@ -27,50 +26,57 @@ public class ReactFeatureFlags {
27
26
  public static volatile boolean useTurboModules = false;
28
27
 
29
28
  /**
30
- * Should application use the new TM callback manager in Cxx? This is assumed to be a sane
31
- * default, but it's new. We will delete once (1) we know it's safe to ship and (2) we have
32
- * quantified impact.
29
+ * Should this application use the new (Fabric) Renderer? If yes, all rendering in this app will
30
+ * use Fabric instead of the legacy renderer.
31
+ */
32
+ public static volatile boolean enableFabricRenderer = false;
33
+
34
+ /**
35
+ * After TurboModules and Fabric are enabled, we need to ensure that the legacy NativeModule isn't
36
+ * isn't used. So, turn this flag on to trigger warnings whenever the legacy NativeModule system
37
+ * is used.
33
38
  */
34
- public static volatile boolean useTurboModulesRAIICallbackManager = false;
39
+ public static volatile boolean warnOnLegacyNativeModuleSystemUse = false;
35
40
 
36
41
  /** Should we dispatch TurboModule methods with promise returns to the NativeModules thread? */
37
42
  public static volatile boolean enableTurboModulePromiseAsyncDispatch = false;
38
43
 
39
- /** This feature flag enables logs for Fabric */
40
- public static boolean enableFabricLogs = false;
41
-
42
44
  /**
43
- * Temporary feature flat to control a fix in the transition to layoutOnlyViews TODO T61185028:
44
- * remove this when bug is fixed
45
+ * Experiment:
46
+ *
47
+ * <p>Bridge and Bridgeless mode can run concurrently. This means that there can be two
48
+ * TurboModule systems alive at the same time.
49
+ *
50
+ * <p>The TurboModule system stores all JS callbacks in a global LongLivedObjectCollection. This
51
+ * collection is cleared when the JS VM is torn down. Implication: Tearing down the bridge JSVM
52
+ * invalidates the bridgeless JSVM's callbacks, and vice versa.
53
+ *
54
+ * <p>useGlobalCallbackCleanupScopeUsingRetainJSCallback => Use a retainJSCallbacks lambda to
55
+ * store jsi::Functions into the global LongLivedObjectCollection
56
+ *
57
+ * <p>useTurboModuleManagerCallbackCleanupScope => Use a retainJSCallbacks labmda to store
58
+ * jsi::Functions into a LongLivedObjectCollection owned by the TurboModuleManager
45
59
  */
46
- public static boolean enableTransitionLayoutOnlyViewCleanup = false;
60
+ public static boolean useGlobalCallbackCleanupScopeUsingRetainJSCallback = false;
61
+
62
+ public static boolean useTurboModuleManagerCallbackCleanupScope = false;
63
+
64
+ /** This feature flag enables logs for Fabric */
65
+ public static boolean enableFabricLogs = false;
47
66
 
48
67
  /** Feature flag to configure eager initialization of Fabric */
49
68
  public static boolean eagerInitializeFabric = false;
50
69
 
51
- /** Feature flag to configure eager initialization classes of Fabric */
52
- public static boolean eagerInitializeFabricClasses = false;
53
-
54
70
  /** Enables Static ViewConfig in RN Android native code. */
55
71
  public static boolean enableExperimentalStaticViewConfigs = false;
56
72
 
73
+ public static boolean enableRuntimeScheduler = false;
74
+
57
75
  /** Enables a more aggressive cleanup during destruction of ReactContext */
58
76
  public static boolean enableReactContextCleanupFix = false;
59
77
 
60
- /** Enables JS Responder in Fabric */
61
- public static boolean enableJSResponder = false;
62
-
63
- /** An interface used to compute flags on demand. */
64
- public interface FlagProvider {
65
- boolean get();
66
- }
67
-
68
- /** Should the RuntimeExecutor call JSIExecutor::flush()? */
69
- private static FlagProvider enableRuntimeExecutorFlushingProvider = null;
70
-
71
- public static void setEnableRuntimeExecutorFlushingFlagProvider(FlagProvider provider) {
72
- enableRuntimeExecutorFlushingProvider = provider;
73
- }
78
+ /** Feature flag to configure eager initialization of MapBuffer So file */
79
+ public static boolean enableEagerInitializeMapBufferSoFile = false;
74
80
 
75
81
  private static boolean mapBufferSerializationEnabled = false;
76
82
 
@@ -83,14 +89,12 @@ public class ReactFeatureFlags {
83
89
  return mapBufferSerializationEnabled;
84
90
  }
85
91
 
86
- public static boolean enableRuntimeExecutorFlushing() {
87
- if (enableRuntimeExecutorFlushingProvider != null) {
88
- return enableRuntimeExecutorFlushingProvider.get();
89
- }
90
-
91
- return false;
92
- }
93
-
94
92
  /** Enables Fabric for LogBox */
95
93
  public static boolean enableFabricInLogBox = false;
94
+
95
+ public static boolean enableLockFreeEventDispatcher = false;
96
+
97
+ public static boolean enableAggressiveEventEmitterCleanup = false;
98
+
99
+ public static boolean insertZReorderBarriersOnViewGroupChildren = true;
96
100
  }
@@ -40,7 +40,7 @@ rn_android_library(
40
40
  react_native_target("res:devsupport"),
41
41
  ],
42
42
  exported_deps = [
43
- react_native_root_target("Libraries:FBReactNativeSpec"),
43
+ react_native_root_target(":FBReactNativeSpec"),
44
44
  ],
45
45
  )
46
46
 
@@ -0,0 +1,275 @@
1
+ /*
2
+ * Copyright (c) Facebook, Inc. and its 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
+ package com.facebook.react.devsupport;
9
+
10
+ import android.content.Context;
11
+ import android.widget.Toast;
12
+ import androidx.annotation.Nullable;
13
+ import com.facebook.common.logging.FLog;
14
+ import com.facebook.debug.holder.PrinterHolder;
15
+ import com.facebook.debug.tags.ReactDebugOverlayTags;
16
+ import com.facebook.infer.annotation.Assertions;
17
+ import com.facebook.react.bridge.CatalystInstance;
18
+ import com.facebook.react.bridge.JSBundleLoader;
19
+ import com.facebook.react.bridge.JavaJSExecutor;
20
+ import com.facebook.react.bridge.JavaScriptExecutorFactory;
21
+ import com.facebook.react.bridge.ReactMarker;
22
+ import com.facebook.react.bridge.ReactMarkerConstants;
23
+ import com.facebook.react.bridge.UiThreadUtil;
24
+ import com.facebook.react.common.ReactConstants;
25
+ import com.facebook.react.common.futures.SimpleSettableFuture;
26
+ import com.facebook.react.devsupport.interfaces.DevBundleDownloadListener;
27
+ import com.facebook.react.devsupport.interfaces.DevOptionHandler;
28
+ import com.facebook.react.devsupport.interfaces.DevSplitBundleCallback;
29
+ import com.facebook.react.packagerconnection.RequestHandler;
30
+ import java.io.File;
31
+ import java.io.IOException;
32
+ import java.util.Map;
33
+ import java.util.concurrent.ExecutionException;
34
+ import java.util.concurrent.TimeUnit;
35
+ import java.util.concurrent.TimeoutException;
36
+
37
+ /**
38
+ * Interface for accessing and interacting with development features. Following features
39
+ * are supported through this manager class:
40
+ * 1) Displaying JS errors (aka RedBox)
41
+ * 2) Displaying developers menu (Reload JS, Debug JS)
42
+ * 3) Communication with developer server in order to download updated JS bundle
43
+ * 4) Starting/stopping broadcast receiver for js reload signals
44
+ * 5) Starting/stopping motion sensor listener that recognize shake gestures which in turn may
45
+ * trigger developers menu.
46
+ * 6) Launching developers settings view
47
+ *
48
+ * This class automatically monitors the state of registered views and activities to which they are
49
+ * bound to make sure that we don't display overlay or that we we don't listen for sensor events
50
+ * when app is backgrounded.
51
+ *
52
+ * {@link com.facebook.react.ReactInstanceManager} implementation is responsible for instantiating
53
+ * this class as well as for populating with a reference to {@link CatalystInstance} whenever
54
+ * instance manager recreates it (through {@link #onNewReactContextCreated). Also, instance manager
55
+ * is responsible for enabling/disabling dev support in case when app is backgrounded or when all
56
+ * the views has been detached from the instance (through {@link #setDevSupportEnabled} method).
57
+ *
58
+ * IMPORTANT: In order for developer support to work correctly it is required that the
59
+ * manifest of your application contain the following entries:
60
+ * {@code <activity android:name="com.facebook.react.devsupport.DevSettingsActivity"/>}
61
+ * {@code <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>}
62
+ */
63
+ public final class BridgeDevSupportManager extends DevSupportManagerBase {
64
+ private boolean mIsSamplingProfilerEnabled = false;
65
+
66
+ public BridgeDevSupportManager(
67
+ Context applicationContext,
68
+ ReactInstanceDevHelper reactInstanceManagerHelper,
69
+ @Nullable String packagerPathForJSBundleName,
70
+ boolean enableOnCreate,
71
+ @Nullable RedBoxHandler redBoxHandler,
72
+ @Nullable DevBundleDownloadListener devBundleDownloadListener,
73
+ int minNumShakes,
74
+ @Nullable Map<String, RequestHandler> customPackagerCommandHandlers) {
75
+ super(
76
+ applicationContext,
77
+ reactInstanceManagerHelper,
78
+ packagerPathForJSBundleName,
79
+ enableOnCreate,
80
+ redBoxHandler,
81
+ devBundleDownloadListener,
82
+ minNumShakes,
83
+ customPackagerCommandHandlers);
84
+
85
+ if (getDevSettings().isStartSamplingProfilerOnInit()) {
86
+ // Only start the profiler. If its already running, there is an error
87
+ if (!mIsSamplingProfilerEnabled) {
88
+ toggleJSSamplingProfiler();
89
+ } else {
90
+ Toast.makeText(
91
+ applicationContext,
92
+ "JS Sampling Profiler was already running, so did not start the sampling profiler",
93
+ Toast.LENGTH_LONG)
94
+ .show();
95
+ }
96
+ }
97
+
98
+ addCustomDevOption(
99
+ mIsSamplingProfilerEnabled
100
+ ? applicationContext.getString(
101
+ com.facebook.react.R.string.catalyst_sample_profiler_disable)
102
+ : applicationContext.getString(
103
+ com.facebook.react.R.string.catalyst_sample_profiler_enable),
104
+ new DevOptionHandler() {
105
+ @Override
106
+ public void onOptionSelected() {
107
+ toggleJSSamplingProfiler();
108
+ }
109
+ });
110
+
111
+ if (!getDevSettings().isDeviceDebugEnabled()) {
112
+ // For remote debugging, we open up Chrome running the app in a web worker.
113
+ // Note that this requires async communication, which will not work for Turbo Modules.
114
+ addCustomDevOption(
115
+ getDevSettings().isRemoteJSDebugEnabled()
116
+ ? applicationContext.getString(com.facebook.react.R.string.catalyst_debug_stop)
117
+ : applicationContext.getString(com.facebook.react.R.string.catalyst_debug),
118
+ new DevOptionHandler() {
119
+ @Override
120
+ public void onOptionSelected() {
121
+ getDevSettings().setRemoteJSDebugEnabled(!getDevSettings().isRemoteJSDebugEnabled());
122
+ handleReloadJS();
123
+ }
124
+ });
125
+ }
126
+ }
127
+
128
+ @Override
129
+ protected String getUniqueTag() {
130
+ return "Bridge";
131
+ }
132
+
133
+ @Override
134
+ public void loadSplitBundleFromServer(
135
+ final String bundlePath, final DevSplitBundleCallback callback) {
136
+ fetchSplitBundleAndCreateBundleLoader(
137
+ bundlePath,
138
+ new CallbackWithBundleLoader() {
139
+ @Override
140
+ public void onSuccess(JSBundleLoader bundleLoader) {
141
+ bundleLoader.loadScript(getCurrentContext().getCatalystInstance());
142
+ getCurrentContext()
143
+ .getJSModule(HMRClient.class)
144
+ .registerBundle(getDevServerHelper().getDevServerSplitBundleURL(bundlePath));
145
+ callback.onSuccess();
146
+ }
147
+
148
+ @Override
149
+ public void onError(String url, Throwable cause) {
150
+ callback.onError(url, cause);
151
+ }
152
+ });
153
+ }
154
+
155
+ private WebsocketJavaScriptExecutor.JSExecutorConnectCallback getExecutorConnectCallback(
156
+ final SimpleSettableFuture<Boolean> future) {
157
+ return new WebsocketJavaScriptExecutor.JSExecutorConnectCallback() {
158
+ @Override
159
+ public void onSuccess() {
160
+ future.set(true);
161
+ hideDevLoadingView();
162
+ }
163
+
164
+ @Override
165
+ public void onFailure(final Throwable cause) {
166
+ hideDevLoadingView();
167
+ FLog.e(ReactConstants.TAG, "Failed to connect to debugger!", cause);
168
+ future.setException(
169
+ new IOException(
170
+ getApplicationContext().getString(com.facebook.react.R.string.catalyst_debug_error),
171
+ cause));
172
+ }
173
+ };
174
+ }
175
+
176
+ private void reloadJSInProxyMode() {
177
+ // When using js proxy, there is no need to fetch JS bundle as proxy executor will do that
178
+ // anyway
179
+ getDevServerHelper().launchJSDevtools();
180
+
181
+ JavaJSExecutor.Factory factory =
182
+ new JavaJSExecutor.Factory() {
183
+ @Override
184
+ public JavaJSExecutor create() throws Exception {
185
+ WebsocketJavaScriptExecutor executor = new WebsocketJavaScriptExecutor();
186
+ SimpleSettableFuture<Boolean> future = new SimpleSettableFuture<>();
187
+ executor.connect(
188
+ getDevServerHelper().getWebsocketProxyURL(), getExecutorConnectCallback(future));
189
+ // TODO(t9349129) Don't use timeout
190
+ try {
191
+ future.get(90, TimeUnit.SECONDS);
192
+ return executor;
193
+ } catch (ExecutionException e) {
194
+ throw (Exception) e.getCause();
195
+ } catch (InterruptedException | TimeoutException e) {
196
+ throw new RuntimeException(e);
197
+ }
198
+ }
199
+ };
200
+ getReactInstanceDevHelper().onReloadWithJSDebugger(factory);
201
+ }
202
+
203
+ @Override
204
+ public void handleReloadJS() {
205
+
206
+ UiThreadUtil.assertOnUiThread();
207
+
208
+ ReactMarker.logMarker(
209
+ ReactMarkerConstants.RELOAD,
210
+ getDevSettings().getPackagerConnectionSettings().getDebugServerHost());
211
+
212
+ // dismiss redbox if exists
213
+ hideRedboxDialog();
214
+
215
+ if (getDevSettings().isRemoteJSDebugEnabled()) {
216
+ PrinterHolder.getPrinter()
217
+ .logMessage(ReactDebugOverlayTags.RN_CORE, "RNCore: load from Proxy");
218
+ showDevLoadingViewForRemoteJSEnabled();
219
+ reloadJSInProxyMode();
220
+ } else {
221
+ PrinterHolder.getPrinter()
222
+ .logMessage(ReactDebugOverlayTags.RN_CORE, "RNCore: load from Server");
223
+ String bundleURL =
224
+ getDevServerHelper()
225
+ .getDevServerBundleURL(Assertions.assertNotNull(getJSAppBundleName()));
226
+ reloadJSFromServer(bundleURL);
227
+ }
228
+ }
229
+
230
+ /** Starts of stops the sampling profiler */
231
+ private void toggleJSSamplingProfiler() {
232
+ JavaScriptExecutorFactory javaScriptExecutorFactory =
233
+ getReactInstanceDevHelper().getJavaScriptExecutorFactory();
234
+ if (!mIsSamplingProfilerEnabled) {
235
+ try {
236
+ javaScriptExecutorFactory.startSamplingProfiler();
237
+ Toast.makeText(getApplicationContext(), "Starting Sampling Profiler", Toast.LENGTH_SHORT)
238
+ .show();
239
+ } catch (UnsupportedOperationException e) {
240
+ Toast.makeText(
241
+ getApplicationContext(),
242
+ javaScriptExecutorFactory.toString() + " does not support Sampling Profiler",
243
+ Toast.LENGTH_LONG)
244
+ .show();
245
+ } finally {
246
+ mIsSamplingProfilerEnabled = true;
247
+ }
248
+ } else {
249
+ try {
250
+ final String outputPath =
251
+ File.createTempFile(
252
+ "sampling-profiler-trace", ".cpuprofile", getApplicationContext().getCacheDir())
253
+ .getPath();
254
+ javaScriptExecutorFactory.stopSamplingProfiler(outputPath);
255
+ Toast.makeText(
256
+ getApplicationContext(),
257
+ "Saved results from Profiler to " + outputPath,
258
+ Toast.LENGTH_LONG)
259
+ .show();
260
+ } catch (IOException e) {
261
+ FLog.e(
262
+ ReactConstants.TAG,
263
+ "Could not create temporary file for saving results from Sampling Profiler");
264
+ } catch (UnsupportedOperationException e) {
265
+ Toast.makeText(
266
+ getApplicationContext(),
267
+ javaScriptExecutorFactory.toString() + "does not support Sampling Profiler",
268
+ Toast.LENGTH_LONG)
269
+ .show();
270
+ } finally {
271
+ mIsSamplingProfilerEnabled = false;
272
+ }
273
+ }
274
+ }
275
+ }
@@ -0,0 +1,97 @@
1
+ /*
2
+ * Copyright (c) Facebook, Inc. and its 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
+ package com.facebook.react.devsupport;
9
+
10
+ import android.content.Context;
11
+ import androidx.annotation.Nullable;
12
+ import com.facebook.react.devsupport.interfaces.DevBundleDownloadListener;
13
+ import com.facebook.react.devsupport.interfaces.DevSupportManager;
14
+ import com.facebook.react.packagerconnection.RequestHandler;
15
+ import java.lang.reflect.Constructor;
16
+ import java.util.Map;
17
+
18
+ /**
19
+ * A simple factory that creates instances of {@link DevSupportManager} implementations. Uses
20
+ * reflection to create BridgeDevSupportManager if it exists. This allows ProGuard to strip that
21
+ * class and its dependencies in release builds. If the class isn't found, {@link
22
+ * DisabledDevSupportManager} is returned instead.
23
+ */
24
+ public class DefaultDevSupportManagerFactory implements DevSupportManagerFactory {
25
+
26
+ private static final String DEVSUPPORT_IMPL_PACKAGE = "com.facebook.react.devsupport";
27
+ private static final String DEVSUPPORT_IMPL_CLASS = "BridgeDevSupportManager";
28
+
29
+ public DevSupportManager create(
30
+ Context applicationContext,
31
+ ReactInstanceDevHelper reactInstanceDevHelper,
32
+ @Nullable String packagerPathForJSBundleName,
33
+ boolean enableOnCreate,
34
+ int minNumShakes) {
35
+
36
+ return create(
37
+ applicationContext,
38
+ reactInstanceDevHelper,
39
+ packagerPathForJSBundleName,
40
+ enableOnCreate,
41
+ null,
42
+ null,
43
+ minNumShakes,
44
+ null);
45
+ }
46
+
47
+ @Override
48
+ public DevSupportManager create(
49
+ Context applicationContext,
50
+ ReactInstanceDevHelper reactInstanceManagerHelper,
51
+ @Nullable String packagerPathForJSBundleName,
52
+ boolean enableOnCreate,
53
+ @Nullable RedBoxHandler redBoxHandler,
54
+ @Nullable DevBundleDownloadListener devBundleDownloadListener,
55
+ int minNumShakes,
56
+ @Nullable Map<String, RequestHandler> customPackagerCommandHandlers) {
57
+ if (!enableOnCreate) {
58
+ return new DisabledDevSupportManager();
59
+ }
60
+ try {
61
+ // ProGuard is surprisingly smart in this case and will keep a class if it detects a call to
62
+ // Class.forName() with a static string. So instead we generate a quasi-dynamic string to
63
+ // confuse it.
64
+ String className =
65
+ new StringBuilder(DEVSUPPORT_IMPL_PACKAGE)
66
+ .append(".")
67
+ .append(DEVSUPPORT_IMPL_CLASS)
68
+ .toString();
69
+ Class<?> devSupportManagerClass = Class.forName(className);
70
+ Constructor constructor =
71
+ devSupportManagerClass.getConstructor(
72
+ Context.class,
73
+ ReactInstanceDevHelper.class,
74
+ String.class,
75
+ boolean.class,
76
+ RedBoxHandler.class,
77
+ DevBundleDownloadListener.class,
78
+ int.class,
79
+ Map.class);
80
+ return (DevSupportManager)
81
+ constructor.newInstance(
82
+ applicationContext,
83
+ reactInstanceManagerHelper,
84
+ packagerPathForJSBundleName,
85
+ true,
86
+ redBoxHandler,
87
+ devBundleDownloadListener,
88
+ minNumShakes,
89
+ customPackagerCommandHandlers);
90
+ } catch (Exception e) {
91
+ throw new RuntimeException(
92
+ "Requested enabled DevSupportManager, but BridgeDevSupportManager class was not found"
93
+ + " or could not be created",
94
+ e);
95
+ }
96
+ }
97
+ }
@@ -41,7 +41,6 @@ import okhttp3.OkHttpClient;
41
41
  import okhttp3.Request;
42
42
  import okhttp3.RequestBody;
43
43
  import okhttp3.Response;
44
- import okhttp3.ResponseBody;
45
44
  import okio.Okio;
46
45
  import okio.Sink;
47
46
  import org.json.JSONArray;
@@ -63,8 +62,6 @@ import org.json.JSONObject;
63
62
  public class DevServerHelper {
64
63
  public static final String RELOAD_APP_EXTRA_JS_PROXY = "jsproxy";
65
64
 
66
- private static final String PACKAGER_OK_STATUS = "packager-status:running";
67
-
68
65
  private static final int HTTP_CONNECT_TIMEOUT_MS = 5000;
69
66
 
70
67
  private static final String DEBUGGER_MSG_DISABLE = "{ \"id\":1,\"method\":\"Debugger.disable\" }";
@@ -113,6 +110,7 @@ public class DevServerHelper {
113
110
  private final DevInternalSettings mSettings;
114
111
  private final OkHttpClient mClient;
115
112
  private final BundleDownloader mBundleDownloader;
113
+ private final PackagerStatusCheck mPackagerStatusCheck;
116
114
  private final String mPackageName;
117
115
 
118
116
  private @Nullable JSPackagerClient mPackagerClient;
@@ -132,7 +130,7 @@ public class DevServerHelper {
132
130
  .writeTimeout(0, TimeUnit.MILLISECONDS)
133
131
  .build();
134
132
  mBundleDownloader = new BundleDownloader(mClient);
135
-
133
+ mPackagerStatusCheck = new PackagerStatusCheck(mClient);
136
134
  mPackageName = packageName;
137
135
  }
138
136
 
@@ -477,60 +475,13 @@ public class DevServerHelper {
477
475
  }
478
476
 
479
477
  public void isPackagerRunning(final PackagerStatusCallback callback) {
480
- String statusURL =
481
- createPackagerStatusURL(mSettings.getPackagerConnectionSettings().getDebugServerHost());
482
- Request request = new Request.Builder().url(statusURL).build();
483
-
484
- mClient
485
- .newCall(request)
486
- .enqueue(
487
- new Callback() {
488
- @Override
489
- public void onFailure(Call call, IOException e) {
490
- FLog.w(
491
- ReactConstants.TAG,
492
- "The packager does not seem to be running as we got an IOException requesting "
493
- + "its status: "
494
- + e.getMessage());
495
- callback.onPackagerStatusFetched(false);
496
- }
497
-
498
- @Override
499
- public void onResponse(Call call, Response response) throws IOException {
500
- if (!response.isSuccessful()) {
501
- FLog.e(
502
- ReactConstants.TAG,
503
- "Got non-success http code from packager when requesting status: "
504
- + response.code());
505
- callback.onPackagerStatusFetched(false);
506
- return;
507
- }
508
- ResponseBody body = response.body();
509
- if (body == null) {
510
- FLog.e(
511
- ReactConstants.TAG,
512
- "Got null body response from packager when requesting status");
513
- callback.onPackagerStatusFetched(false);
514
- return;
515
- }
516
- String bodyString =
517
- body.string(); // cannot call body.string() twice, stored it into variable.
518
- // https://github.com/square/okhttp/issues/1240#issuecomment-68142603
519
- if (!PACKAGER_OK_STATUS.equals(bodyString)) {
520
- FLog.e(
521
- ReactConstants.TAG,
522
- "Got unexpected response from packager when requesting status: "
523
- + bodyString);
524
- callback.onPackagerStatusFetched(false);
525
- return;
526
- }
527
- callback.onPackagerStatusFetched(true);
528
- }
529
- });
530
- }
531
-
532
- private static String createPackagerStatusURL(String host) {
533
- return String.format(Locale.US, "http://%s/status", host);
478
+ String host = mSettings.getPackagerConnectionSettings().getDebugServerHost();
479
+ if (host == null) {
480
+ FLog.w(ReactConstants.TAG, "No packager host configured.");
481
+ callback.onPackagerStatusFetched(false);
482
+ } else {
483
+ mPackagerStatusCheck.run(host, callback);
484
+ }
534
485
  }
535
486
 
536
487
  private String createLaunchJSDevtoolsCommandUrl() {