react-native-tvos 0.83.2-0 → 0.84.0-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Libraries/Animated/AnimatedEvent.js +2 -2
- package/Libraries/Animated/animations/Animation.js +1 -3
- package/Libraries/Animated/createAnimatedComponent.js +8 -5
- package/Libraries/Animated/nodes/AnimatedColor.js +1 -1
- package/Libraries/Animated/nodes/AnimatedInterpolation.js +40 -4
- package/Libraries/Animated/nodes/AnimatedNode.js +3 -3
- package/Libraries/Animated/nodes/AnimatedObject.js +16 -11
- package/Libraries/Animated/nodes/AnimatedProps.js +43 -12
- package/Libraries/Animated/nodes/AnimatedStyle.js +12 -12
- package/Libraries/Animated/nodes/AnimatedValue.js +6 -3
- package/Libraries/Animated/nodes/AnimatedValueXY.js +1 -1
- package/Libraries/AppDelegate/RCTReactNativeFactory.h +3 -0
- package/Libraries/AppDelegate/RCTReactNativeFactory.mm +33 -31
- package/Libraries/AppDelegate/RCTRootViewFactory.h +10 -4
- package/Libraries/AppDelegate/RCTRootViewFactory.mm +21 -5
- package/Libraries/BatchedBridge/MessageQueue.js +24 -22
- package/Libraries/Blob/RCTBlobPlugins.mm +14 -14
- package/Libraries/Blob/URL.js +34 -3
- package/Libraries/Blob/URLSearchParams.js +1 -0
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.d.ts +9 -1
- package/Libraries/Components/AccessibilityInfo/AccessibilityInfo.js +6 -1
- package/Libraries/Components/Button.js +2 -5
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroid.android.js +1 -1
- package/Libraries/Components/DrawerAndroid/DrawerLayoutAndroidTypes.js +4 -4
- package/Libraries/Components/Keyboard/Keyboard.js +2 -2
- package/Libraries/Components/Pressable/Pressable.js +8 -8
- package/Libraries/Components/TextInput/TextInput.flow.js +13 -13
- package/Libraries/Components/TextInput/TextInput.js +33 -34
- package/Libraries/Components/Touchable/PooledClass.js +2 -2
- package/Libraries/Components/Touchable/TouchableBounce.js +6 -6
- package/Libraries/Components/Touchable/TouchableNativeFeedback.js +1 -1
- package/Libraries/Components/Touchable/TouchableWithoutFeedback.js +9 -9
- package/Libraries/Components/View/ViewPropTypes.js +16 -6
- package/Libraries/Core/Devtools/loadBundleFromServer.js +6 -3
- package/Libraries/Core/Devtools/symbolicateStackTrace.js +1 -1
- package/Libraries/Core/ExceptionsManager.js +3 -3
- package/Libraries/Core/RawEventEmitter.js +1 -1
- package/Libraries/Core/ReactFiberErrorDialog.js +1 -1
- package/Libraries/Core/ReactNativeVersion.js +2 -2
- package/Libraries/Core/setUpDeveloperTools.js +1 -1
- package/Libraries/Core/setUpErrorHandling.js +1 -1
- package/Libraries/EventEmitter/NativeEventEmitter.js +2 -2
- package/Libraries/Image/Image.android.js +2 -2
- package/Libraries/Image/Image.ios.js +2 -2
- package/Libraries/Image/ImageProps.js +1 -1
- package/Libraries/Image/ImageTypes.flow.js +2 -2
- package/Libraries/Image/RCTImagePlugins.h +1 -0
- package/Libraries/Image/RCTImagePlugins.mm +30 -17
- package/Libraries/Interaction/InteractionManager.js +3 -3
- package/Libraries/Interaction/PanResponder.js +1 -1
- package/Libraries/LayoutAnimation/LayoutAnimation.js +1 -1
- package/Libraries/Linking/Linking.js +1 -1
- package/Libraries/LinkingIOS/RCTLinkingPlugins.mm +10 -13
- package/Libraries/Lists/FlatList.js +2 -2
- package/Libraries/LogBox/Data/LogBoxData.js +31 -4
- package/Libraries/LogBox/Data/LogBoxLog.js +2 -2
- package/Libraries/LogBox/Data/LogBoxSymbolication.js +1 -1
- package/Libraries/LogBox/Data/parseLogBoxLog.js +5 -5
- package/Libraries/LogBox/LogBox.js +7 -7
- package/Libraries/NativeAnimation/RCTAnimationPlugins.mm +14 -14
- package/Libraries/NativeAnimation/RCTNativeAnimatedTurboModule.mm +7 -0
- package/Libraries/NativeAnimation/React-RCTAnimation.podspec +1 -0
- package/Libraries/NativeComponent/BaseViewConfig.android.js +12 -0
- package/Libraries/NativeComponent/StaticViewConfigValidator.js +4 -4
- package/Libraries/NativeComponent/ViewConfigIgnore.js +1 -1
- package/Libraries/Network/RCTInspectorNetworkReporter.mm +26 -3
- package/Libraries/Network/RCTNetworkPlugins.mm +22 -16
- package/Libraries/Network/RCTNetworking.android.js +3 -3
- package/Libraries/Network/RCTNetworking.ios.js +2 -2
- package/Libraries/Network/RCTNetworking.js.flow +2 -2
- package/Libraries/Pressability/Pressability.js +9 -9
- package/Libraries/PushNotificationIOS/RCTPushNotificationPlugins.mm +10 -13
- package/Libraries/ReactNative/AppRegistry.flow.js +1 -1
- package/Libraries/ReactNative/BridgelessUIManager.js +1 -1
- package/Libraries/ReactNative/FabricUIManager.js +1 -1
- package/Libraries/ReactNative/PaperUIManager.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstance.js +1 -1
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactFabricPublicInstanceUtils.js +2 -2
- package/Libraries/ReactNative/ReactFabricPublicInstance/ReactNativeAttributePayload.js +1 -1
- package/Libraries/ReactNative/RendererImplementation.js +1 -1
- package/Libraries/ReactNative/getNativeComponentAttributes.js +1 -1
- package/Libraries/ReactPrivate/ReactNativePrivateInterface.js +1 -2
- package/Libraries/Renderer/implementations/ReactFabric-dev.js +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-prod.js +3 -3
- package/Libraries/Renderer/implementations/ReactFabric-profiling.js +3 -3
- package/Libraries/Renderer/implementations/ReactNativeRenderer-dev.js +11 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-prod.js +11 -4
- package/Libraries/Renderer/implementations/ReactNativeRenderer-profiling.js +11 -4
- package/Libraries/Renderer/shims/ReactFabric.js +3 -1
- package/Libraries/Renderer/shims/ReactFeatureFlags.js +3 -1
- package/Libraries/Renderer/shims/ReactNative.js +2 -2
- package/Libraries/Renderer/shims/ReactNativeTypes.js +3 -1
- package/Libraries/Renderer/shims/ReactNativeViewConfigRegistry.js +3 -1
- package/Libraries/Renderer/shims/createReactNativeComponentClass.js +3 -1
- package/Libraries/Settings/RCTSettingsManager.mm +1 -1
- package/Libraries/Settings/RCTSettingsPlugins.mm +10 -13
- package/Libraries/Settings/Settings.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.android.js +2 -2
- package/Libraries/StyleSheet/PlatformColorValueTypes.ios.js +1 -1
- package/Libraries/StyleSheet/PlatformColorValueTypes.js.flow +4 -2
- package/Libraries/StyleSheet/StyleSheetExports.js +1 -1
- package/Libraries/StyleSheet/StyleSheetTypes.d.ts +99 -4
- package/Libraries/StyleSheet/StyleSheetTypes.js +6 -8
- package/Libraries/StyleSheet/processFilter.js +1 -1
- package/Libraries/Text/Text.js +46 -6
- package/Libraries/Text/TextInput/RCTBaseTextInputView.mm +3 -2
- package/Libraries/Text/TextNativeComponent.js +1 -1
- package/Libraries/Text/TextProps.js +7 -7
- package/Libraries/TypeSafety/RCTTypedModuleConstants.h +36 -1
- package/Libraries/Types/CodegenTypes.js +1 -1
- package/Libraries/Types/CoreEventTypes.js +31 -0
- package/Libraries/Types/ReactDevToolsTypes.js +2 -2
- package/Libraries/Utilities/Appearance.js +2 -2
- package/Libraries/Utilities/DevLoadingView.js +8 -1
- package/Libraries/Utilities/DevSettings.js +3 -3
- package/Libraries/Utilities/HMRClient.js +4 -3
- package/Libraries/Utilities/RCTLog.js +3 -3
- package/Libraries/Utilities/ReactNativeTestTools.js +1 -1
- package/Libraries/Utilities/SceneTracker.js +1 -1
- package/Libraries/Utilities/codegenNativeCommands.js +1 -1
- package/Libraries/Utilities/deepFreezeAndThrowOnMutationInDev.js +3 -3
- package/Libraries/Utilities/logError.js +1 -1
- package/Libraries/Utilities/stringifySafe.js +7 -7
- package/Libraries/Utilities/useRefEffect.js +1 -1
- package/Libraries/Vibration/RCTVibrationPlugins.mm +10 -13
- package/Libraries/WebSocket/WebSocketInterceptor.js +3 -3
- package/Libraries/promiseRejectionTrackingOptions.js +8 -8
- package/Libraries/vendor/core/ErrorUtils.js +10 -10
- package/Libraries/vendor/emitter/EventEmitter.js +6 -6
- package/README.md +56 -18
- package/React/Base/RCTAssert.m +2 -2
- package/React/Base/RCTBridge.h +0 -4
- package/React/Base/RCTBridge.mm +1 -12
- package/React/Base/RCTBundleManager.h +59 -7
- package/React/Base/RCTBundleManager.m +112 -1
- package/React/Base/RCTBundleURLProvider.h +24 -0
- package/React/Base/RCTBundleURLProvider.mm +49 -4
- package/React/Base/RCTConvert.mm +2 -0
- package/React/Base/RCTModuleData.mm +2 -2
- package/React/Base/RCTUtils.h +4 -0
- package/React/Base/RCTUtils.mm +60 -3
- package/React/Base/RCTVersion.m +2 -2
- package/React/CoreModules/CoreModulesPlugins.mm +97 -35
- package/React/CoreModules/PlatformStubs/RCTStatusBarManager.mm +1 -1
- package/React/CoreModules/RCTAccessibilityManager.mm +18 -1
- package/React/CoreModules/RCTAppState.mm +1 -1
- package/React/CoreModules/RCTDevLoadingView.mm +116 -36
- package/React/CoreModules/RCTDevSettings.h +36 -1
- package/React/CoreModules/RCTDevSettings.mm +44 -8
- package/React/CoreModules/RCTExceptionsManager.mm +5 -2
- package/React/CoreModules/RCTPlatform.mm +3 -2
- package/React/CoreModules/RCTStatusBarManager.mm +1 -1
- package/React/CxxBridge/RCTCxxBridge.mm +1 -2
- package/React/CxxModule/RCTCxxMethod.mm +1 -1
- package/React/CxxModule/RCTCxxUtils.mm +2 -12
- package/React/DevSupport/RCTDevLoadingViewProtocol.h +4 -1
- package/React/DevSupport/RCTPackagerConnection.h +4 -2
- package/React/DevSupport/RCTPackagerConnection.mm +30 -33
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec-generated.mm +9 -2
- package/React/FBReactNativeSpec/FBReactNativeSpec/FBReactNativeSpec.h +62 -17
- package/React/FBReactNativeSpec/FBReactNativeSpecJSI.h +529 -494
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/EventEmitters.h +1 -0
- package/React/FBReactNativeSpec/react/renderer/components/FBReactNativeSpec/Props.h +14 -0
- package/React/Fabric/Mounting/ComponentViews/LegacyViewManagerInterop/RCTLegacyViewManagerInteropComponentView.mm +11 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTEnhancedScrollView.mm +6 -0
- package/React/Fabric/Mounting/ComponentViews/ScrollView/RCTScrollViewComponentView.mm +2 -0
- package/React/Fabric/Mounting/ComponentViews/View/RCTViewComponentView.mm +39 -2
- package/React/Fabric/Mounting/ComponentViews/VirtualView/RCTVirtualViewComponentView.mm +5 -7
- package/React/Fabric/Mounting/ComponentViews/VirtualViewExperimental/RCTVirtualViewExperimentalComponentView.mm +5 -7
- package/React/Fabric/RCTSurfaceTouchHandler.mm +1 -1
- package/React/Fabric/Surface/RCTFabricSurface.mm +1 -1
- package/React/Inspector/RCTCxxInspectorWebSocketAdapter.mm +6 -2
- package/React/Modules/RCTEventEmitter.m +1 -0
- package/React/Views/RCTModalHostView.h +2 -0
- package/React/Views/RCTTVView.m +2 -0
- package/ReactAndroid/api/ReactAndroid.api +14 -73
- package/ReactAndroid/build.gradle.kts +2 -0
- package/ReactAndroid/gradle.properties +1 -1
- package/ReactAndroid/hermes-engine/build.gradle.kts +97 -29
- package/ReactAndroid/src/main/java/com/facebook/react/NativeModuleRegistryBuilder.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/ReactActivity.java +3 -0
- package/ReactAndroid/src/main/java/com/facebook/react/ReactDelegate.kt +10 -13
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManager.java +1 -119
- package/ReactAndroid/src/main/java/com/facebook/react/ReactInstanceManagerBuilder.kt +0 -10
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt +4 -29
- package/ReactAndroid/src/main/java/com/facebook/react/ReactRootView.java +43 -2
- package/ReactAndroid/src/main/java/com/facebook/react/ViewManagerOnDemandReactPackage.kt +53 -4
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstance.kt +0 -18
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CatalystInstanceImpl.java +6 -96
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/JavaMethodWrapper.kt +17 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ModuleHolder.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NativeModuleRegistry.kt +1 -33
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/Promise.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/PromiseImpl.kt +6 -6
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReadableNativeArray.kt +1 -12
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgelessDevSupportManager.kt +4 -5
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/ChangeBundleLocationDialog.kt +11 -10
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/CxxInspectorPackagerConnection.kt +99 -9
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevLoadingViewImplementation.kt +58 -13
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DefaultDevSupportManagerFactory.kt +10 -60
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerBase.kt +7 -7
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/DevSupportManagerFactory.kt +1 -4
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingSequence.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/FrameTimingsObserver.kt +144 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/InspectorNetworkHelper.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingState.kt +17 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/inspector/TracingStateListener.kt +15 -0
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/{interfaces → inspector}/TracingStateProvider.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevLoadingViewManager.kt +6 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/DevSupportManager.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/RedBoxHandler.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorInspectorTargetBinding.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayManager.kt +31 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorOverlayView.kt +7 -6
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/perfmonitor/PerfMonitorUpdateListener.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/FabricUIManager.java +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/fabric/mounting/SurfaceMountingManager.java +2 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlags.kt +63 -45
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxAccessor.kt +106 -76
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsCxxInterop.kt +22 -16
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsDefaults.kt +23 -17
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsLocalAccessor.kt +117 -84
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Experimental_Android.kt +3 -1
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsOverrides_RNOSS_Stable_Android.kt +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/internal/featureflags/ReactNativeFeatureFlagsProvider.kt +22 -16
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManager.kt +5 -43
- package/ReactAndroid/src/main/java/com/facebook/react/internal/turbomodule/core/TurboModuleManagerDelegate.kt +0 -3
- package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt +36 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt +3 -27
- package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt +7 -2
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkEventUtil.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/modules/network/NetworkingModule.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/modules/systeminfo/ReactNativeVersion.kt +2 -2
- package/ReactAndroid/src/main/java/com/facebook/react/packagerconnection/PackagerConnectionSettings.kt +15 -8
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/BridgelessCatalystInstance.kt +0 -9
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImpl.kt +46 -12
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostImplDevHelper.kt +3 -3
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactHostInspectorTarget.kt +11 -17
- package/ReactAndroid/src/main/java/com/facebook/react/runtime/ReactSurfaceView.kt +52 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BackgroundStyleApplicator.kt +92 -3
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/BaseViewManager.java +62 -8
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSKeyDispatcher.kt +65 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSPointerDispatcher.java +19 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/JSTouchDispatcher.kt +1 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyManager.java +5 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeViewHierarchyOptimizer.java +9 -91
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAccessibilityDelegate.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactAxOrderHelper.kt +47 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNode.java +0 -2
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/ReactShadowNodeImpl.java +4 -23
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/TransformHelper.kt +1 -7
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIImplementation.java +1 -11
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIManagerModule.java +1 -47
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/UIViewOperationQueue.java +0 -16
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/drawable/OutlineDrawable.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/FabricEventDispatcher.kt +3 -36
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyDownEvent.kt +23 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyEvent.kt +156 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/KeyUpEvent.kt +24 -0
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/events/PointerEvent.kt +29 -4
- package/ReactAndroid/src/main/java/com/facebook/react/views/image/ReactImageView.kt +12 -9
- package/ReactAndroid/src/main/java/com/facebook/react/views/modal/ReactModalHostView.kt +1 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactHorizontalScrollView.java +36 -3
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/ReactScrollView.java +21 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/scroll/VirtualViewContainerStateExperimental.kt +7 -0
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/ReactTextViewAccessibilityDelegate.kt +31 -15
- package/ReactAndroid/src/main/java/com/facebook/react/views/text/TextLayoutManager.kt +127 -32
- package/ReactAndroid/src/main/java/com/facebook/react/views/view/ReactViewGroup.kt +11 -1
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/view/ReactVirtualView.kt +3 -11
- package/ReactAndroid/src/main/java/com/facebook/react/views/virtual/viewexperimental/ReactVirtualViewExperimental.kt +3 -12
- package/ReactAndroid/src/main/jni/react/devsupport/JCxxInspectorPackagerConnectionWebSocket.cpp +29 -2
- package/ReactAndroid/src/main/jni/react/fabric/FabricMountingManager.cpp +98 -3
- package/ReactAndroid/src/main/jni/react/fabric/FabricUIManagerBinding.cpp +62 -26
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.cpp +145 -103
- package/ReactAndroid/src/main/jni/react/featureflags/JReactNativeFeatureFlagsCxxInterop.h +31 -22
- package/ReactAndroid/src/main/jni/react/hermes/reactexecutor/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/jni/CMakeLists.txt +1 -3
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.cpp +5 -23
- package/ReactAndroid/src/main/jni/react/jni/CatalystInstanceImpl.h +2 -7
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapperBase.h +0 -24
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/jni/JSLoader.h +2 -1
- package/ReactAndroid/src/main/jni/react/jni/JavaModuleWrapper.cpp +0 -1
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.cpp +1 -29
- package/ReactAndroid/src/main/jni/react/jni/ModuleRegistryBuilder.h +1 -2
- package/ReactAndroid/src/main/jni/react/jni/OnLoad.cpp +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/hermes/jni/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/jni/CMakeLists.txt +0 -4
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.cpp +145 -17
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactHostInspectorTarget.h +193 -19
- package/ReactAndroid/src/main/jni/react/runtime/jni/JReactInstance.cpp +2 -1
- package/ReactAndroid/src/main/jni/react/tracing/PerformanceTracerCxxInterop.cpp +1 -1
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.cpp +62 -63
- package/ReactAndroid/src/main/jni/react/turbomodule/ReactCommon/TurboModuleManager.h +5 -7
- package/ReactAndroid/src/main/jni/third-party/folly/CMakeLists.txt +1 -0
- package/ReactAndroid/src/main/res/devsupport/drawable/ic_perf_issue.xml +10 -0
- package/ReactAndroid/src/main/res/devsupport/layout/dev_loading_view.xml +41 -15
- package/ReactAndroid/src/main/res/devsupport/layout/fps_view.xml +1 -1
- package/ReactAndroid/src/main/res/devsupport/values/strings.xml +1 -0
- package/ReactAndroid/src/main/res/views/uimanager/values-ne/strings.xml +16 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.h +2 -0
- package/ReactApple/RCTAnimatedModuleProvider/RCTAnimatedModuleProvider.mm +38 -5
- package/ReactCommon/cmake-utils/react-native-flags.cmake +3 -0
- package/ReactCommon/cxxreact/JSBigString.h +14 -5
- package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +4 -5
- package/ReactCommon/cxxreact/ReactMarker.cpp +0 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +4 -4
- package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +1 -1
- package/ReactCommon/hermes/React-hermes.podspec +1 -0
- package/ReactCommon/hermes/executor/CMakeLists.txt +0 -4
- package/ReactCommon/hermes/executor/HermesExecutorFactory.cpp +2 -0
- package/ReactCommon/hermes/inspector-modern/CMakeLists.txt +0 -4
- package/ReactCommon/jsi/jsi/jsi.cpp +6 -1
- package/ReactCommon/jsi/jsi/jsi.h +73 -0
- package/ReactCommon/jsi/jsi/test/testlib.cpp +2 -2
- package/ReactCommon/jsiexecutor/CMakeLists.txt +3 -1
- package/ReactCommon/jsiexecutor/React-jsiexecutor.podspec +3 -0
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.cpp +2 -43
- package/ReactCommon/jsiexecutor/jsireact/JSIExecutor.h +3 -8
- package/ReactCommon/jsinspector-modern/ConsoleTask.cpp +27 -0
- package/ReactCommon/jsinspector-modern/ConsoleTask.h +38 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.cpp +46 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskContext.h +102 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.cpp +55 -0
- package/ReactCommon/jsinspector-modern/ConsoleTaskOrchestrator.h +48 -0
- package/ReactCommon/jsinspector-modern/HostAgent.cpp +9 -10
- package/ReactCommon/jsinspector-modern/HostAgent.h +2 -2
- package/ReactCommon/jsinspector-modern/HostTarget.cpp +7 -6
- package/ReactCommon/jsinspector-modern/HostTarget.h +73 -16
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.cpp +40 -8
- package/ReactCommon/jsinspector-modern/HostTargetTraceRecording.h +42 -5
- package/ReactCommon/jsinspector-modern/HostTargetTracing.cpp +54 -21
- package/ReactCommon/jsinspector-modern/InstanceAgent.cpp +2 -11
- package/ReactCommon/jsinspector-modern/InstanceTarget.h +2 -2
- package/ReactCommon/jsinspector-modern/PerfMonitorV2.cpp +9 -1
- package/ReactCommon/jsinspector-modern/PerfMonitorV2.h +4 -1
- package/ReactCommon/jsinspector-modern/RuntimeAgent.cpp +3 -2
- package/ReactCommon/jsinspector-modern/RuntimeAgent.h +1 -1
- package/ReactCommon/jsinspector-modern/RuntimeTarget.cpp +12 -0
- package/ReactCommon/jsinspector-modern/RuntimeTarget.h +16 -13
- package/ReactCommon/jsinspector-modern/RuntimeTargetConsole.cpp +106 -1
- package/ReactCommon/jsinspector-modern/TracingAgent.cpp +30 -18
- package/ReactCommon/jsinspector-modern/TracingAgent.h +5 -4
- package/ReactCommon/jsinspector-modern/tests/ConsoleCreateTaskTest.cpp +131 -0
- package/ReactCommon/jsinspector-modern/tests/HostTargetTest.cpp +53 -0
- package/ReactCommon/jsinspector-modern/tests/InspectorMocks.h +20 -0
- package/ReactCommon/jsinspector-modern/tests/NetworkReporterTest.cpp +25 -55
- package/ReactCommon/jsinspector-modern/tests/ReactInstanceIntegrationTest.cpp +1 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.cpp +116 -0
- package/ReactCommon/jsinspector-modern/tests/TracingTest.h +95 -0
- package/ReactCommon/jsinspector-modern/tracing/FrameTimingSequence.h +60 -0
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfile.h +43 -0
- package/ReactCommon/jsinspector-modern/tracing/HostTracingProfileSerializer.cpp +144 -0
- package/ReactCommon/jsinspector-modern/tracing/{TraceRecordingStateSerializer.h → HostTracingProfileSerializer.h} +16 -8
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.cpp +67 -16
- package/ReactCommon/jsinspector-modern/tracing/PerformanceTracer.h +21 -2
- package/ReactCommon/jsinspector-modern/tracing/TargetTracingAgent.h +5 -0
- package/ReactCommon/jsinspector-modern/tracing/TimeWindowedBuffer.h +158 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEvent.h +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.cpp +104 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventGenerator.h +59 -0
- package/ReactCommon/jsinspector-modern/tracing/TraceEventSerializer.cpp +2 -1
- package/ReactCommon/jsinspector-modern/tracing/TraceRecordingState.h +18 -7
- package/ReactCommon/jsinspector-modern/tracing/TracingCategory.h +139 -0
- package/ReactCommon/jsinspector-modern/tracing/tests/TimeWindowedBufferTest.cpp +352 -0
- package/ReactCommon/jsitooling/React-jsitooling.podspec +4 -0
- package/ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.cpp +54 -0
- package/{ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.h → ReactCommon/jsitooling/react/runtime/JSRuntimeBindings.h} +4 -6
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.cpp +43 -31
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlags.h +55 -40
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.cpp +234 -180
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsAccessor.h +24 -18
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDefaults.h +43 -31
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsDynamicProvider.h +91 -64
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSExperimental.h +5 -1
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsOverridesOSSStable.h +0 -4
- package/ReactCommon/react/featureflags/ReactNativeFeatureFlagsProvider.h +12 -9
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModule.h +7 -2
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.cpp +30 -10
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboModuleBinding.h +17 -6
- package/ReactCommon/react/nativemodule/core/iostests/RCTTurboModuleTests.mm +0 -1
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTInteropTurboModule.mm +1 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.h +0 -4
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModule.mm +43 -60
- package/ReactCommon/react/nativemodule/core/platform/ios/ReactCommon/RCTTurboModuleManager.mm +11 -36
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.cpp +53 -38
- package/ReactCommon/react/nativemodule/featureflags/NativeReactNativeFeatureFlags.h +22 -16
- package/ReactCommon/react/nativemodule/samples/ReactCommon-Samples.podspec +1 -0
- package/ReactCommon/react/nativemodule/samples/platform/android/NativeSampleTurboModuleSpec.java +24 -3
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.h +76 -13
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTNativeSampleTurboModuleSpec.mm +74 -64
- package/ReactCommon/react/nativemodule/samples/platform/ios/ReactCommon/RCTSampleTurboModule.mm +17 -13
- package/ReactCommon/react/networking/NetworkReporter.cpp +26 -22
- package/ReactCommon/react/networking/React-networking.podspec +0 -1
- package/ReactCommon/react/performance/cdpmetrics/CdpPerfIssuesReporter.cpp +4 -2
- package/ReactCommon/react/performance/timeline/CMakeLists.txt +1 -0
- package/ReactCommon/react/performance/timeline/PerformanceEntryReporter.cpp +10 -2
- package/ReactCommon/react/performance/timeline/React-performancetimeline.podspec +1 -0
- package/ReactCommon/react/renderer/animated/AnimatedModule.cpp +104 -78
- package/ReactCommon/react/renderer/animated/AnimatedModule.h +10 -2
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.cpp +174 -75
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManager.h +19 -1
- package/ReactCommon/react/renderer/animated/NativeAnimatedNodesManagerProvider.cpp +68 -46
- package/ReactCommon/react/renderer/animated/drivers/FrameAnimationDriver.cpp +1 -0
- package/ReactCommon/react/renderer/animated/internal/AnimatedMountingOverrideDelegate.cpp +1 -1
- package/ReactCommon/react/renderer/animated/nodes/ColorAnimatedNode.cpp +0 -1
- package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.cpp +103 -4
- package/ReactCommon/react/renderer/animated/nodes/InterpolationAnimatedNode.h +9 -0
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.cpp +5 -1
- package/ReactCommon/react/renderer/animated/nodes/PropsAnimatedNode.h +9 -0
- package/ReactCommon/react/renderer/animated/nodes/RoundAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/nodes/ValueAnimatedNode.cpp +1 -1
- package/ReactCommon/react/renderer/animated/tests/AnimatedNodeTests.cpp +67 -0
- package/ReactCommon/react/renderer/animated/tests/AnimationDriverTests.cpp +59 -0
- package/ReactCommon/react/renderer/animated/tests/AnimationTestsBase.h +2 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropSerializer.cpp +715 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +388 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +191 -2
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +100 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +298 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsSerializer.h +17 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +90 -94
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.h +23 -5
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.cpp +75 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackendCommitHook.h +32 -0
- package/ReactCommon/react/renderer/animations/LayoutAnimationKeyFrameManager.cpp +2 -2
- package/ReactCommon/react/renderer/attributedstring/AttributedStringBox.h +3 -0
- package/ReactCommon/react/renderer/components/image/ImageProps.cpp +2 -2
- package/ReactCommon/react/renderer/components/image/ImageProps.h +2 -2
- package/ReactCommon/react/renderer/components/image/ImageShadowNode.cpp +9 -2
- package/ReactCommon/react/renderer/components/image/conversions.h +5 -0
- package/ReactCommon/react/renderer/components/text/BaseTextProps.cpp +2 -1
- package/ReactCommon/react/renderer/components/view/platform/android/react/renderer/components/view/HostPlatformViewProps.cpp +5 -1
- package/ReactCommon/react/renderer/core/ConcreteComponentDescriptor.h +21 -1
- package/ReactCommon/react/renderer/core/ConcreteShadowNode.h +14 -0
- package/ReactCommon/react/renderer/core/DynamicEventPayload.cpp +10 -0
- package/ReactCommon/react/renderer/core/DynamicEventPayload.h +6 -1
- package/ReactCommon/react/renderer/core/DynamicPointerEvent.cpp +30 -0
- package/ReactCommon/react/renderer/core/DynamicPointerEvent.h +29 -0
- package/ReactCommon/react/renderer/core/EventDispatcher.cpp +1 -1
- package/ReactCommon/react/renderer/core/EventEmitter.cpp +11 -14
- package/ReactCommon/react/renderer/core/EventQueueProcessor.cpp +3 -3
- package/ReactCommon/react/renderer/core/Props.cpp +23 -8
- package/ReactCommon/react/renderer/core/Props.h +6 -4
- package/ReactCommon/react/renderer/core/ShadowNode.cpp +4 -10
- package/ReactCommon/react/renderer/core/tests/ShadowNodeTest.cpp +32 -0
- package/ReactCommon/react/renderer/css/CSSSyntaxParser.h +7 -0
- package/ReactCommon/react/renderer/debug/CMakeLists.txt +7 -0
- package/ReactCommon/react/renderer/debug/flags.h +3 -2
- package/ReactCommon/react/renderer/graphics/BlendMode.h +2 -0
- package/ReactCommon/react/renderer/graphics/Filter.h +2 -0
- package/ReactCommon/react/renderer/imagemanager/ImageManager.h +3 -0
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.cpp +23 -12
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageFetcher.h +8 -3
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageManager.cpp +16 -4
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/ImageRequestParams.h +9 -4
- package/ReactCommon/react/renderer/imagemanager/platform/android/react/renderer/imagemanager/conversions.h +8 -4
- package/ReactCommon/react/renderer/imagemanager/platform/ios/react/renderer/imagemanager/RCTSyncImageManager.mm +1 -1
- package/ReactCommon/react/renderer/imagemanager/primitives.h +15 -6
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.cpp +0 -11
- package/ReactCommon/react/renderer/mounting/MountingCoordinator.h +0 -4
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.cpp +0 -20
- package/ReactCommon/react/renderer/scheduler/SurfaceHandler.h +3 -3
- package/ReactCommon/react/renderer/scheduler/SurfaceManager.cpp +2 -3
- package/ReactCommon/react/renderer/uimanager/UIManager.cpp +6 -0
- package/ReactCommon/react/renderer/uimanager/UIManagerAnimationBackend.h +1 -0
- package/ReactCommon/react/runtime/CMakeLists.txt +0 -4
- package/ReactCommon/react/runtime/PlatformTimerRegistry.h +2 -0
- package/ReactCommon/react/runtime/ReactInstance.cpp +21 -14
- package/ReactCommon/react/runtime/ReactInstance.h +5 -1
- package/ReactCommon/react/runtime/TimerManager.cpp +11 -53
- package/ReactCommon/react/runtime/TimerManager.h +7 -12
- package/ReactCommon/react/runtime/hermes/CMakeLists.txt +0 -4
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.h +3 -2
- package/ReactCommon/react/runtime/platform/ios/ReactCommon/RCTHost.mm +10 -6
- package/ReactCommon/yoga/yoga/algorithm/FlexDirection.h +6 -6
- package/ReactCommon/yoga/yoga/algorithm/SizingMode.h +4 -4
- package/ReactCommon/yoga/yoga/style/Style.h +8 -8
- package/ReactCommon/yoga/yoga/style/StyleLength.h +7 -0
- package/ReactCommon/yoga/yoga/style/StyleSizeLength.h +7 -0
- package/flow/HermesInternalType.js +6 -6
- package/flow/bom.js.flow +35 -28
- package/flow/cssom.js.flow +3 -3
- package/flow/dom.js.flow +34 -33
- package/index.js +3 -0
- package/index.js.flow +8 -0
- package/jest/mock.js +2 -2
- package/jest/mockComponent.js +1 -1
- package/jest/setup.js +1 -1
- package/package.json +11 -11
- package/react-native.config.js +0 -17
- package/scripts/cocoapods/new_architecture.rb +7 -1
- package/scripts/cocoapods/spm.rb +28 -10
- package/scripts/cocoapods/utils.rb +4 -4
- package/scripts/codegen/generate-artifacts-executor/generateRCTThirdPartyComponents.js +5 -5
- package/scripts/codegen/generate-artifacts-executor/generateSchemaInfos.js +7 -6
- package/scripts/ios-configure-glog.sh +24 -1
- package/scripts/react_native_pods.rb +13 -0
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +53 -36
- package/sdks/hermes-engine/hermes-utils.rb +8 -15
- package/sdks/hermes-engine/version.properties +1 -1
- package/src/private/animated/NativeAnimatedHelper.js +130 -125
- package/src/private/animated/NativeAnimatedValidation.js +7 -4
- package/src/private/animated/createAnimatedPropsHook.js +13 -5
- package/src/private/animated/createAnimatedPropsMemoHook.js +10 -10
- package/src/private/components/virtualview/VirtualView.js +16 -9
- package/src/private/components/virtualview/logger/VirtualViewLogger.js +21 -0
- package/src/private/components/virtualview/logger/VirtualViewLoggerTypes.js +24 -0
- package/src/private/devsupport/devmenu/elementinspector/ElementProperties.js +1 -1
- package/src/private/devsupport/devmenu/elementinspector/Inspector.js +6 -25
- package/src/private/devsupport/devmenu/elementinspector/InspectorPanel.js +1 -27
- package/src/private/devsupport/devmenu/elementinspector/XHRInterceptor.js +3 -2
- package/src/private/featureflags/ReactNativeFeatureFlags.js +63 -42
- package/src/private/featureflags/ReactNativeFeatureFlagsBase.js +3 -3
- package/src/private/featureflags/specs/NativeReactNativeFeatureFlags.js +12 -9
- package/src/private/renderer/errorhandling/ErrorHandlers.js +7 -4
- package/src/private/specs_DEPRECATED/modules/NativeAccessibilityManager.js +1 -1
- package/src/private/specs_DEPRECATED/modules/NativeAnimatedModule.js +4 -0
- package/src/private/specs_DEPRECATED/modules/NativeDevLoadingView.js +1 -0
- package/src/private/webapis/dom/events/CustomEvent.js +3 -3
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentElementInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/internals/ReactNativeDocumentInstanceHandle.js +1 -1
- package/src/private/webapis/dom/nodes/specs/NativeDOM.js +29 -29
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js +1 -1
- package/src/private/webapis/dom/oldstylecollections/HTMLCollection.js.flow +2 -0
- package/src/private/webapis/dom/oldstylecollections/NodeList.js +2 -2
- package/src/private/webapis/dom/oldstylecollections/NodeList.js.flow +4 -1
- package/src/private/webapis/geometry/DOMRectReadOnly.js +1 -1
- package/src/private/webapis/html/events/MessageEvent.js +3 -3
- package/src/private/webapis/idlecallbacks/specs/NativeIdleCallbacks.js +3 -3
- package/src/private/webapis/intersectionobserver/IntersectionObserver.js +53 -5
- package/src/private/webapis/intersectionobserver/internals/IntersectionObserverManager.js +2 -2
- package/src/private/webapis/intersectionobserver/specs/NativeIntersectionObserver.js +4 -4
- package/src/private/webapis/microtasks/specs/NativeMicrotasks.js +1 -1
- package/src/private/webapis/mutationobserver/MutationObserver.js +1 -1
- package/src/private/webapis/mutationobserver/MutationRecord.js +1 -1
- package/src/private/webapis/mutationobserver/specs/NativeMutationObserver.js +4 -4
- package/src/private/webapis/performance/Performance.js +1 -1
- package/src/private/webapis/performance/UserTiming.js +1 -1
- package/src/private/webapis/performance/specs/NativePerformance.js +3 -3
- package/src/private/webapis/structuredClone/structuredClone.js +3 -3
- package/src/types/globals.d.ts +30 -1
- package/third-party-podspecs/RCT-Folly.podspec +1 -0
- package/third-party-podspecs/glog.podspec +1 -0
- package/React/CxxModule/RCTCxxModule.h +0 -29
- package/React/CxxModule/RCTCxxModule.mm +0 -87
- package/ReactAndroid/src/main/java/com/facebook/react/LazyReactPackage.kt +0 -146
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CallbackImpl.kt +0 -45
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapper.kt +0 -25
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/CxxModuleWrapperBase.kt +0 -61
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/NotThreadSafeBridgeIdleDebugListener.kt +0 -36
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/OnBatchCompleteListener.kt +0 -21
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactCxxErrorHandler.kt +0 -54
- package/ReactAndroid/src/main/java/com/facebook/react/bridge/ReactInstanceManagerInspectorTarget.kt +0 -78
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/BridgeDevSupportManager.kt +0 -105
- package/ReactAndroid/src/main/java/com/facebook/react/devsupport/interfaces/TracingState.kt +0 -19
- package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/DidJSUpdateUiDuringFrameDetector.kt +0 -157
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/NativeKind.kt +0 -32
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/debug/NotThreadSafeViewHierarchyUpdateDebugListener.kt +0 -30
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationController.kt +0 -87
- package/ReactAndroid/src/main/java/com/facebook/react/uimanager/layoutanimation/LayoutAnimationListener.kt +0 -23
- package/ReactAndroid/src/main/jni/react/jni/CxxModuleWrapper.h +0 -37
- package/ReactAndroid/src/main/jni/react/jni/JReactCxxErrorHandler.cpp +0 -20
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.cpp +0 -175
- package/ReactAndroid/src/main/jni/react/jni/ReactInstanceManagerInspectorTarget.h +0 -75
- package/ReactCommon/jsinspector-modern/tracing/TraceRecordingStateSerializer.cpp +0 -68
- package/ReactCommon/jsinspector-modern/tracing/TracingState.h +0 -24
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.cpp +0 -212
- package/ReactCommon/react/nativemodule/core/ReactCommon/TurboCxxModule.h +0 -40
- package/src/private/devsupport/devmenu/elementinspector/NetworkOverlay.js +0 -628
- package/src/private/devsupport/devmenu/perfmonitor/PerformanceOverlay.js +0 -66
- package/tvosCommands.js +0 -51
- /package/ReactCommon/jsi/jsi/{hermes.h → hermes-interfaces.h} +0 -0
|
@@ -11,7 +11,6 @@ import de.undercouch.gradle.tasks.download.Download
|
|
|
11
11
|
import org.apache.tools.ant.taskdefs.condition.Os
|
|
12
12
|
|
|
13
13
|
plugins {
|
|
14
|
-
id("maven-publish")
|
|
15
14
|
id("signing")
|
|
16
15
|
alias(libs.plugins.android.library)
|
|
17
16
|
alias(libs.plugins.download)
|
|
@@ -152,28 +151,55 @@ val installCMake by
|
|
|
152
151
|
)
|
|
153
152
|
}
|
|
154
153
|
|
|
154
|
+
fun configureBuildForHermesCommandLineArgs(
|
|
155
|
+
hermesBuildDir: File,
|
|
156
|
+
jsiDir: File,
|
|
157
|
+
enableDebugger: Boolean,
|
|
158
|
+
): List<String> {
|
|
159
|
+
var cmakeCommandLine =
|
|
160
|
+
windowsAwareCommandLine(
|
|
161
|
+
cmakeBinaryPath,
|
|
162
|
+
// Suppress all warnings as this is the Hermes build and we can't fix them.
|
|
163
|
+
"--log-level=ERROR",
|
|
164
|
+
"-Wno-dev",
|
|
165
|
+
"-S",
|
|
166
|
+
".",
|
|
167
|
+
"-B",
|
|
168
|
+
hermesBuildDir.toString(),
|
|
169
|
+
"-DJSI_DIR=" + jsiDir.absolutePath,
|
|
170
|
+
"-DCMAKE_BUILD_TYPE=Release",
|
|
171
|
+
)
|
|
172
|
+
if (enableDebugger) {
|
|
173
|
+
cmakeCommandLine = cmakeCommandLine + "-DHERMES_ENABLE_DEBUGGER=True"
|
|
174
|
+
}
|
|
175
|
+
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
|
176
|
+
cmakeCommandLine = cmakeCommandLine + "-GNMake Makefiles"
|
|
177
|
+
}
|
|
178
|
+
if (hermesV1Enabled) {
|
|
179
|
+
cmakeCommandLine = cmakeCommandLine + "-DHERMESVM_HEAP_HV_MODE=HEAP_HV_PREFER32"
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
return cmakeCommandLine
|
|
183
|
+
}
|
|
184
|
+
|
|
185
|
+
fun buildHermesCCommandLineArgs() =
|
|
186
|
+
listOf(
|
|
187
|
+
cmakeBinaryPath,
|
|
188
|
+
"--build",
|
|
189
|
+
hermesBuildDir.toString(),
|
|
190
|
+
"--target",
|
|
191
|
+
"hermesc",
|
|
192
|
+
"-j",
|
|
193
|
+
ndkBuildJobs,
|
|
194
|
+
)
|
|
195
|
+
|
|
155
196
|
val configureBuildForHermes by
|
|
156
197
|
tasks.registering(CustomExecTask::class) {
|
|
157
198
|
dependsOn(installCMake)
|
|
158
199
|
workingDir(hermesDir)
|
|
159
200
|
inputs.dir(hermesDir)
|
|
160
201
|
outputs.files(hermesBuildOutputFileTree)
|
|
161
|
-
|
|
162
|
-
windowsAwareCommandLine(
|
|
163
|
-
cmakeBinaryPath,
|
|
164
|
-
// Suppress all warnings as this is the Hermes build and we can't fix them.
|
|
165
|
-
"--log-level=ERROR",
|
|
166
|
-
"-Wno-dev",
|
|
167
|
-
"-S",
|
|
168
|
-
".",
|
|
169
|
-
"-B",
|
|
170
|
-
hermesBuildDir.toString(),
|
|
171
|
-
"-DJSI_DIR=" + jsiDir.absolutePath,
|
|
172
|
-
"-DCMAKE_BUILD_TYPE=Release",
|
|
173
|
-
)
|
|
174
|
-
if (Os.isFamily(Os.FAMILY_WINDOWS)) {
|
|
175
|
-
cmakeCommandLine = cmakeCommandLine + "-GNMake Makefiles"
|
|
176
|
-
}
|
|
202
|
+
val cmakeCommandLine = configureBuildForHermesCommandLineArgs(hermesBuildDir, jsiDir, false)
|
|
177
203
|
commandLine(cmakeCommandLine)
|
|
178
204
|
standardOutputFile.set(project.file("$buildDir/configure-hermesc.log"))
|
|
179
205
|
}
|
|
@@ -184,22 +210,69 @@ val buildHermesC by
|
|
|
184
210
|
workingDir(hermesDir)
|
|
185
211
|
inputs.files(hermesBuildOutputFileTree)
|
|
186
212
|
outputs.file(hermesCOutputBinary)
|
|
213
|
+
val cmakeCommandLine = buildHermesCCommandLineArgs()
|
|
214
|
+
commandLine(cmakeCommandLine)
|
|
215
|
+
standardOutputFile.set(project.file("$buildDir/build-hermesc.log"))
|
|
216
|
+
errorOutputFile.set(project.file("$buildDir/build-hermesc.error.log"))
|
|
217
|
+
}
|
|
218
|
+
|
|
219
|
+
val prepareHeadersForPrefab by
|
|
220
|
+
tasks.registering(Copy::class) {
|
|
221
|
+
dependsOn(buildHermesC)
|
|
222
|
+
from("$hermesDir/API")
|
|
223
|
+
from("$hermesDir/public")
|
|
224
|
+
include("**/*.h")
|
|
225
|
+
exclude("jsi/**")
|
|
226
|
+
into(prefabHeadersDir)
|
|
227
|
+
}
|
|
228
|
+
|
|
229
|
+
val buildHermesLib by
|
|
230
|
+
tasks.registering(CustomExecTask::class) {
|
|
231
|
+
dependsOn(buildHermesC)
|
|
232
|
+
workingDir(hermesDir)
|
|
233
|
+
inputs.files(hermesBuildOutputFileTree)
|
|
187
234
|
commandLine(
|
|
188
235
|
cmakeBinaryPath,
|
|
189
236
|
"--build",
|
|
190
237
|
hermesBuildDir.toString(),
|
|
191
238
|
"--target",
|
|
192
|
-
"
|
|
239
|
+
"hermesvm",
|
|
193
240
|
"-j",
|
|
194
241
|
ndkBuildJobs,
|
|
195
242
|
)
|
|
243
|
+
standardOutputFile.set(project.file("$buildDir/build-hermes-lib.log"))
|
|
244
|
+
errorOutputFile.set(project.file("$buildDir/build-hermes-lib.error.log"))
|
|
245
|
+
}
|
|
246
|
+
|
|
247
|
+
// The repeated tasks below named "*WithDebugger" are required by Fantom.
|
|
248
|
+
// Hermes V1 by default builds with the debugger disabled, while Fantom needs
|
|
249
|
+
// it to be enabled as it does a debug build of React Native.
|
|
250
|
+
val configureBuildForHermesWithDebugger by
|
|
251
|
+
tasks.registering(CustomExecTask::class) {
|
|
252
|
+
dependsOn(installCMake)
|
|
253
|
+
workingDir(hermesDir)
|
|
254
|
+
inputs.dir(hermesDir)
|
|
255
|
+
outputs.files(hermesBuildOutputFileTree)
|
|
256
|
+
val cmakeCommandLine = configureBuildForHermesCommandLineArgs(hermesBuildDir, jsiDir, true)
|
|
257
|
+
commandLine(cmakeCommandLine)
|
|
258
|
+
standardOutputFile.set(project.file("$buildDir/configure-hermesc.log"))
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
val buildHermesCWithDebugger by
|
|
262
|
+
tasks.registering(CustomExecTask::class) {
|
|
263
|
+
dependsOn(configureBuildForHermesWithDebugger)
|
|
264
|
+
workingDir(hermesDir)
|
|
265
|
+
inputs.files(hermesBuildOutputFileTree)
|
|
266
|
+
outputs.file(hermesCOutputBinary)
|
|
267
|
+
val cmakeCommandLine = buildHermesCCommandLineArgs()
|
|
268
|
+
commandLine(cmakeCommandLine)
|
|
196
269
|
standardOutputFile.set(project.file("$buildDir/build-hermesc.log"))
|
|
197
270
|
errorOutputFile.set(project.file("$buildDir/build-hermesc.error.log"))
|
|
198
271
|
}
|
|
199
272
|
|
|
200
|
-
val
|
|
273
|
+
val prepareHeadersForPrefabWithDebugger by
|
|
201
274
|
tasks.registering(Copy::class) {
|
|
202
|
-
dependsOn(
|
|
275
|
+
dependsOn(buildHermesCWithDebugger)
|
|
203
276
|
from("$hermesDir/API")
|
|
204
277
|
from("$hermesDir/public")
|
|
205
278
|
include("**/*.h")
|
|
@@ -207,9 +280,9 @@ val prepareHeadersForPrefab by
|
|
|
207
280
|
into(prefabHeadersDir)
|
|
208
281
|
}
|
|
209
282
|
|
|
210
|
-
val
|
|
283
|
+
val buildHermesLibWithDebugger by
|
|
211
284
|
tasks.registering(CustomExecTask::class) {
|
|
212
|
-
dependsOn(
|
|
285
|
+
dependsOn(buildHermesCWithDebugger)
|
|
213
286
|
workingDir(hermesDir)
|
|
214
287
|
inputs.files(hermesBuildOutputFileTree)
|
|
215
288
|
commandLine(
|
|
@@ -367,13 +440,6 @@ android {
|
|
|
367
440
|
jniLibs.excludes.add("**/libfbjni.so")
|
|
368
441
|
}
|
|
369
442
|
|
|
370
|
-
publishing {
|
|
371
|
-
multipleVariants {
|
|
372
|
-
withSourcesJar()
|
|
373
|
-
allVariants()
|
|
374
|
-
}
|
|
375
|
-
}
|
|
376
|
-
|
|
377
443
|
prefab { create("hermesvm") { headers = prefabHeadersDir.absolutePath } }
|
|
378
444
|
}
|
|
379
445
|
|
|
@@ -383,6 +449,8 @@ afterEvaluate {
|
|
|
383
449
|
// download/unzip Hermes from Github then.
|
|
384
450
|
tasks.getByName("configureBuildForHermes").dependsOn(unzipHermes)
|
|
385
451
|
tasks.getByName("prepareHeadersForPrefab").dependsOn(unzipHermes)
|
|
452
|
+
tasks.getByName("configureBuildForHermesWithDebugger").dependsOn(unzipHermes)
|
|
453
|
+
tasks.getByName("prepareHeadersForPrefabWithDebugger").dependsOn(unzipHermes)
|
|
386
454
|
}
|
|
387
455
|
tasks.getByName("preBuild").dependsOn(buildHermesC)
|
|
388
456
|
tasks.getByName("preBuild").dependsOn(prepareHeadersForPrefab)
|
|
@@ -41,10 +41,7 @@ public class NativeModuleRegistryBuilder(
|
|
|
41
41
|
// We use an iterable instead of an iterator here to ensure thread safety, and that this list
|
|
42
42
|
// cannot be modified
|
|
43
43
|
val moduleHolders =
|
|
44
|
-
|
|
45
|
-
if (reactPackage is LazyReactPackage) {
|
|
46
|
-
reactPackage.getNativeModuleIterator(reactApplicationContext)
|
|
47
|
-
} else if (reactPackage is BaseReactPackage) {
|
|
44
|
+
if (reactPackage is BaseReactPackage) {
|
|
48
45
|
reactPackage.getNativeModuleIterator(reactApplicationContext)
|
|
49
46
|
} else {
|
|
50
47
|
ReactPackageHelper.getNativeModuleIterator(reactPackage, reactApplicationContext)
|
|
@@ -124,6 +124,9 @@ public abstract class ReactActivity extends AppCompatActivity
|
|
|
124
124
|
// as super.onBackPressed() will call all enabled callbacks in the dispatcher.
|
|
125
125
|
mBackPressedCallback.setEnabled(false);
|
|
126
126
|
super.onBackPressed();
|
|
127
|
+
// Re-enable callback to ensure custom back handling works after activity resume
|
|
128
|
+
// Without this, the callback remains disabled when the app returns from background
|
|
129
|
+
mBackPressedCallback.setEnabled(true);
|
|
127
130
|
}
|
|
128
131
|
|
|
129
132
|
@Override
|
|
@@ -68,9 +68,9 @@ public open class ReactDelegate {
|
|
|
68
68
|
launchOptions: Bundle?,
|
|
69
69
|
) {
|
|
70
70
|
this.activity = activity
|
|
71
|
-
mainComponentName = appKey
|
|
71
|
+
this.mainComponentName = appKey
|
|
72
72
|
this.launchOptions = launchOptions
|
|
73
|
-
doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
73
|
+
this.doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
74
74
|
this.reactNativeHost = reactNativeHost
|
|
75
75
|
}
|
|
76
76
|
|
|
@@ -81,9 +81,9 @@ public open class ReactDelegate {
|
|
|
81
81
|
launchOptions: Bundle?,
|
|
82
82
|
) {
|
|
83
83
|
this.activity = activity
|
|
84
|
-
mainComponentName = appKey
|
|
84
|
+
this.mainComponentName = appKey
|
|
85
85
|
this.launchOptions = launchOptions
|
|
86
|
-
doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
86
|
+
this.doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
87
87
|
this.reactHost = reactHost
|
|
88
88
|
}
|
|
89
89
|
|
|
@@ -95,11 +95,11 @@ public open class ReactDelegate {
|
|
|
95
95
|
launchOptions: Bundle?,
|
|
96
96
|
fabricEnabled: Boolean,
|
|
97
97
|
) {
|
|
98
|
-
isFabricEnabled = fabricEnabled
|
|
98
|
+
this.isFabricEnabled = fabricEnabled
|
|
99
99
|
this.activity = activity
|
|
100
|
-
mainComponentName = appKey
|
|
100
|
+
this.mainComponentName = appKey
|
|
101
101
|
this.launchOptions = launchOptions
|
|
102
|
-
doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
102
|
+
this.doubleTapReloadRecognizer = DoubleTapReloadRecognizer()
|
|
103
103
|
this.reactNativeHost = reactNativeHost
|
|
104
104
|
}
|
|
105
105
|
|
|
@@ -178,13 +178,10 @@ public open class ReactDelegate {
|
|
|
178
178
|
if (
|
|
179
179
|
ReactNativeNewArchitectureFeatureFlags.enableBridgelessArchitecture() && reactHost != null
|
|
180
180
|
) {
|
|
181
|
-
reactHost?.onBackPressed()
|
|
181
|
+
return reactHost?.onBackPressed() == true
|
|
182
|
+
} else if (reactNativeHost?.hasInstance() == true) {
|
|
183
|
+
reactNativeHost?.reactInstanceManager?.onBackPressed()
|
|
182
184
|
return true
|
|
183
|
-
} else {
|
|
184
|
-
if (reactNativeHost?.hasInstance() == true) {
|
|
185
|
-
reactNativeHost?.reactInstanceManager?.onBackPressed()
|
|
186
|
-
return true
|
|
187
|
-
}
|
|
188
185
|
}
|
|
189
186
|
return false
|
|
190
187
|
}
|
|
@@ -57,11 +57,8 @@ import com.facebook.react.bridge.JSExceptionHandler;
|
|
|
57
57
|
import com.facebook.react.bridge.JavaScriptExecutor;
|
|
58
58
|
import com.facebook.react.bridge.JavaScriptExecutorFactory;
|
|
59
59
|
import com.facebook.react.bridge.NativeModuleRegistry;
|
|
60
|
-
import com.facebook.react.bridge.NotThreadSafeBridgeIdleDebugListener;
|
|
61
60
|
import com.facebook.react.bridge.ReactApplicationContext;
|
|
62
61
|
import com.facebook.react.bridge.ReactContext;
|
|
63
|
-
import com.facebook.react.bridge.ReactCxxErrorHandler;
|
|
64
|
-
import com.facebook.react.bridge.ReactInstanceManagerInspectorTarget;
|
|
65
62
|
import com.facebook.react.bridge.ReactMarker;
|
|
66
63
|
import com.facebook.react.bridge.ReactMarkerConstants;
|
|
67
64
|
import com.facebook.react.bridge.ReactNoCrashSoftException;
|
|
@@ -77,16 +74,11 @@ import com.facebook.react.common.SurfaceDelegateFactory;
|
|
|
77
74
|
import com.facebook.react.common.annotations.internal.LegacyArchitecture;
|
|
78
75
|
import com.facebook.react.common.annotations.internal.LegacyArchitectureLogLevel;
|
|
79
76
|
import com.facebook.react.common.annotations.internal.LegacyArchitectureLogger;
|
|
80
|
-
import com.facebook.react.common.build.ReactBuildConfig;
|
|
81
77
|
import com.facebook.react.devsupport.DevSupportManagerFactory;
|
|
82
|
-
import com.facebook.react.devsupport.InspectorFlags;
|
|
83
78
|
import com.facebook.react.devsupport.ReactInstanceDevHelper;
|
|
84
|
-
import com.facebook.react.devsupport.inspector.InspectorNetworkHelper;
|
|
85
|
-
import com.facebook.react.devsupport.inspector.InspectorNetworkRequestListener;
|
|
86
79
|
import com.facebook.react.devsupport.interfaces.DevBundleDownloadListener;
|
|
87
80
|
import com.facebook.react.devsupport.interfaces.DevLoadingViewManager;
|
|
88
81
|
import com.facebook.react.devsupport.interfaces.DevSupportManager;
|
|
89
|
-
import com.facebook.react.devsupport.interfaces.DevSupportManager.PausedInDebuggerOverlayCommandListener;
|
|
90
82
|
import com.facebook.react.devsupport.interfaces.PackagerStatusCallback;
|
|
91
83
|
import com.facebook.react.devsupport.interfaces.PausedInDebuggerOverlayManager;
|
|
92
84
|
import com.facebook.react.devsupport.interfaces.RedBoxHandler;
|
|
@@ -102,7 +94,6 @@ import com.facebook.react.modules.core.DefaultHardwareBackBtnHandler;
|
|
|
102
94
|
import com.facebook.react.modules.core.DeviceEventManagerModule;
|
|
103
95
|
import com.facebook.react.modules.core.ReactChoreographer;
|
|
104
96
|
import com.facebook.react.modules.debug.interfaces.DeveloperSettings;
|
|
105
|
-
import com.facebook.react.modules.systeminfo.AndroidInfoHelpers;
|
|
106
97
|
import com.facebook.react.packagerconnection.RequestHandler;
|
|
107
98
|
import com.facebook.react.uimanager.DisplayMetricsHolder;
|
|
108
99
|
import com.facebook.react.uimanager.ReactRoot;
|
|
@@ -114,8 +105,6 @@ import com.facebook.react.views.imagehelper.ResourceDrawableIdHelper;
|
|
|
114
105
|
import com.facebook.soloader.SoLoader;
|
|
115
106
|
import com.facebook.systrace.Systrace;
|
|
116
107
|
import com.facebook.systrace.SystraceMessage;
|
|
117
|
-
import java.lang.ref.WeakReference;
|
|
118
|
-
import java.lang.reflect.Method;
|
|
119
108
|
import java.util.ArrayList;
|
|
120
109
|
import java.util.Collection;
|
|
121
110
|
import java.util.Collections;
|
|
@@ -183,13 +172,11 @@ public class ReactInstanceManager {
|
|
|
183
172
|
private final boolean mUseDeveloperSupport;
|
|
184
173
|
private final boolean mRequireActivity;
|
|
185
174
|
private final boolean mKeepActivity;
|
|
186
|
-
private final @Nullable NotThreadSafeBridgeIdleDebugListener mBridgeIdleDebugListener;
|
|
187
175
|
private final Object mReactContextLock = new Object();
|
|
188
176
|
private @Nullable volatile ReactContext mCurrentReactContext;
|
|
189
177
|
private final Context mApplicationContext;
|
|
190
178
|
private @Nullable @ThreadConfined(UI) DefaultHardwareBackBtnHandler mDefaultBackButtonImpl;
|
|
191
179
|
private @Nullable Activity mCurrentActivity;
|
|
192
|
-
private @Nullable ReactInstanceManagerInspectorTarget mInspectorTarget;
|
|
193
180
|
private final Collection<com.facebook.react.ReactInstanceEventListener>
|
|
194
181
|
mReactInstanceEventListeners =
|
|
195
182
|
Collections.synchronizedList(
|
|
@@ -246,7 +233,6 @@ public class ReactInstanceManager {
|
|
|
246
233
|
DevSupportManagerFactory devSupportManagerFactory,
|
|
247
234
|
boolean requireActivity,
|
|
248
235
|
boolean keepActivity,
|
|
249
|
-
@Nullable NotThreadSafeBridgeIdleDebugListener bridgeIdleDebugListener,
|
|
250
236
|
LifecycleState initialLifecycleState,
|
|
251
237
|
JSExceptionHandler jSExceptionHandler,
|
|
252
238
|
@Nullable RedBoxHandler redBoxHandler,
|
|
@@ -292,7 +278,6 @@ public class ReactInstanceManager {
|
|
|
292
278
|
devLoadingViewManager,
|
|
293
279
|
pausedInDebuggerOverlayManager);
|
|
294
280
|
Systrace.endSection(TRACE_TAG_REACT);
|
|
295
|
-
mBridgeIdleDebugListener = bridgeIdleDebugListener;
|
|
296
281
|
mLifecycleState = initialLifecycleState;
|
|
297
282
|
mMemoryPressureRouter = new MemoryPressureRouter(applicationContext);
|
|
298
283
|
mJSExceptionHandler = jSExceptionHandler;
|
|
@@ -316,8 +301,6 @@ public class ReactInstanceManager {
|
|
|
316
301
|
mDevSupportManager.startInspector();
|
|
317
302
|
}
|
|
318
303
|
|
|
319
|
-
registerCxxErrorHandlerFunc();
|
|
320
|
-
|
|
321
304
|
// Using `if (true)` just to prevent tests / lint errors.
|
|
322
305
|
if (true) {
|
|
323
306
|
// Legacy architecture of React Native is deprecated and can't be initialized anymore.
|
|
@@ -414,24 +397,6 @@ public class ReactInstanceManager {
|
|
|
414
397
|
mDevSupportManager.handleException(e);
|
|
415
398
|
}
|
|
416
399
|
|
|
417
|
-
private void registerCxxErrorHandlerFunc() {
|
|
418
|
-
if (!ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE) {
|
|
419
|
-
Class[] parameterTypes = new Class[1];
|
|
420
|
-
parameterTypes[0] = Exception.class;
|
|
421
|
-
Method handleCxxErrorFunc = null;
|
|
422
|
-
try {
|
|
423
|
-
handleCxxErrorFunc = ReactInstanceManager.class.getMethod("handleCxxError", parameterTypes);
|
|
424
|
-
} catch (NoSuchMethodException e) {
|
|
425
|
-
FLog.e("ReactInstanceHolder", "Failed to set cxx error handler function", e);
|
|
426
|
-
}
|
|
427
|
-
ReactCxxErrorHandler.setHandleErrorFunc(this, handleCxxErrorFunc);
|
|
428
|
-
}
|
|
429
|
-
}
|
|
430
|
-
|
|
431
|
-
private void unregisterCxxErrorHandlerFunc() {
|
|
432
|
-
ReactCxxErrorHandler.setHandleErrorFunc(null, null);
|
|
433
|
-
}
|
|
434
|
-
|
|
435
400
|
static void initializeSoLoaderIfNecessary(Context applicationContext) {
|
|
436
401
|
// Call SoLoader.initialize here, this is required for apps that does not use exopackage and
|
|
437
402
|
// does not use SoLoader for loading other native code except from the one used by React Native
|
|
@@ -811,7 +776,6 @@ public class ReactInstanceManager {
|
|
|
811
776
|
|
|
812
777
|
moveToBeforeCreateLifecycleState();
|
|
813
778
|
mMemoryPressureRouter.destroy(mApplicationContext);
|
|
814
|
-
unregisterCxxErrorHandlerFunc();
|
|
815
779
|
|
|
816
780
|
mCreateReactContextThread = null;
|
|
817
781
|
synchronized (mAttachedReactRoots) {
|
|
@@ -830,15 +794,6 @@ public class ReactInstanceManager {
|
|
|
830
794
|
}
|
|
831
795
|
}
|
|
832
796
|
|
|
833
|
-
// If the host has been invalidated, now that the current context/instance
|
|
834
|
-
// has been destroyed, we can safely destroy the host's inspector target.
|
|
835
|
-
if (mInstanceManagerInvalidated) {
|
|
836
|
-
if (mInspectorTarget != null) {
|
|
837
|
-
mInspectorTarget.close();
|
|
838
|
-
mInspectorTarget = null;
|
|
839
|
-
}
|
|
840
|
-
}
|
|
841
|
-
|
|
842
797
|
mHasStartedCreatingInitialContext = false;
|
|
843
798
|
if (!mKeepActivity) {
|
|
844
799
|
mCurrentActivity = null;
|
|
@@ -1462,8 +1417,7 @@ public class ReactInstanceManager {
|
|
|
1462
1417
|
.setJSExecutor(jsExecutor)
|
|
1463
1418
|
.setRegistry(nativeModuleRegistry)
|
|
1464
1419
|
.setJSBundleLoader(jsBundleLoader)
|
|
1465
|
-
.setJSExceptionHandler(exceptionHandler)
|
|
1466
|
-
.setInspectorTarget(getOrCreateInspectorTarget());
|
|
1420
|
+
.setJSExceptionHandler(exceptionHandler);
|
|
1467
1421
|
|
|
1468
1422
|
ReactMarker.logMarker(CREATE_CATALYST_INSTANCE_START);
|
|
1469
1423
|
// CREATE_CATALYST_INSTANCE_END is in JSCExecutor.cpp
|
|
@@ -1517,9 +1471,6 @@ public class ReactInstanceManager {
|
|
|
1517
1471
|
catalystInstance.setFabricUIManager(uiManager);
|
|
1518
1472
|
}
|
|
1519
1473
|
}
|
|
1520
|
-
if (mBridgeIdleDebugListener != null) {
|
|
1521
|
-
catalystInstance.addBridgeIdleDebugListener(mBridgeIdleDebugListener);
|
|
1522
|
-
}
|
|
1523
1474
|
if (BuildConfig.ENABLE_PERFETTO || Systrace.isTracing(TRACE_TAG_REACT)) {
|
|
1524
1475
|
catalystInstance.setGlobalVariable("__RCTProfileIsProfiling", "true");
|
|
1525
1476
|
}
|
|
@@ -1572,73 +1523,4 @@ public class ReactInstanceManager {
|
|
|
1572
1523
|
nativeModuleRegistryBuilder.processPackage(reactPackage);
|
|
1573
1524
|
SystraceMessage.endSection(TRACE_TAG_REACT).flush();
|
|
1574
1525
|
}
|
|
1575
|
-
|
|
1576
|
-
private static class InspectorTargetDelegateImpl
|
|
1577
|
-
implements ReactInstanceManagerInspectorTarget.TargetDelegate {
|
|
1578
|
-
// This weak reference breaks the cycle between the C++ HostTarget and the
|
|
1579
|
-
// Java ReactInstanceManager, preventing memory leaks in apps that create
|
|
1580
|
-
// multiple ReactInstanceManagers over time.
|
|
1581
|
-
private WeakReference<ReactInstanceManager> mReactInstanceManagerWeak;
|
|
1582
|
-
|
|
1583
|
-
public InspectorTargetDelegateImpl(ReactInstanceManager inspectorTarget) {
|
|
1584
|
-
mReactInstanceManagerWeak = new WeakReference<ReactInstanceManager>(inspectorTarget);
|
|
1585
|
-
}
|
|
1586
|
-
|
|
1587
|
-
@Override
|
|
1588
|
-
public Map<String, String> getMetadata() {
|
|
1589
|
-
ReactInstanceManager reactInstanceManager = mReactInstanceManagerWeak.get();
|
|
1590
|
-
|
|
1591
|
-
return AndroidInfoHelpers.getInspectorHostMetadata(
|
|
1592
|
-
reactInstanceManager != null ? reactInstanceManager.mApplicationContext : null);
|
|
1593
|
-
}
|
|
1594
|
-
|
|
1595
|
-
@Override
|
|
1596
|
-
public void onReload() {
|
|
1597
|
-
UiThreadUtil.runOnUiThread(
|
|
1598
|
-
() -> {
|
|
1599
|
-
ReactInstanceManager reactInstanceManager = mReactInstanceManagerWeak.get();
|
|
1600
|
-
if (reactInstanceManager != null) {
|
|
1601
|
-
reactInstanceManager.mDevSupportManager.handleReloadJS();
|
|
1602
|
-
}
|
|
1603
|
-
});
|
|
1604
|
-
}
|
|
1605
|
-
|
|
1606
|
-
@Override
|
|
1607
|
-
public void onSetPausedInDebuggerMessage(@Nullable String message) {
|
|
1608
|
-
ReactInstanceManager reactInstanceManager = mReactInstanceManagerWeak.get();
|
|
1609
|
-
if (reactInstanceManager == null) {
|
|
1610
|
-
return;
|
|
1611
|
-
}
|
|
1612
|
-
if (message == null) {
|
|
1613
|
-
reactInstanceManager.mDevSupportManager.hidePausedInDebuggerOverlay();
|
|
1614
|
-
} else {
|
|
1615
|
-
reactInstanceManager.mDevSupportManager.showPausedInDebuggerOverlay(
|
|
1616
|
-
message,
|
|
1617
|
-
new PausedInDebuggerOverlayCommandListener() {
|
|
1618
|
-
@Override
|
|
1619
|
-
public void onResume() {
|
|
1620
|
-
UiThreadUtil.assertOnUiThread();
|
|
1621
|
-
if (reactInstanceManager.mInspectorTarget != null) {
|
|
1622
|
-
reactInstanceManager.mInspectorTarget.sendDebuggerResumeCommand();
|
|
1623
|
-
}
|
|
1624
|
-
}
|
|
1625
|
-
});
|
|
1626
|
-
}
|
|
1627
|
-
}
|
|
1628
|
-
|
|
1629
|
-
@Override
|
|
1630
|
-
public void loadNetworkResource(String url, InspectorNetworkRequestListener listener) {
|
|
1631
|
-
InspectorNetworkHelper.loadNetworkResource(url, listener);
|
|
1632
|
-
}
|
|
1633
|
-
}
|
|
1634
|
-
|
|
1635
|
-
private @Nullable ReactInstanceManagerInspectorTarget getOrCreateInspectorTarget() {
|
|
1636
|
-
if (mInspectorTarget == null && InspectorFlags.getFuseboxEnabled()) {
|
|
1637
|
-
|
|
1638
|
-
mInspectorTarget =
|
|
1639
|
-
new ReactInstanceManagerInspectorTarget(new InspectorTargetDelegateImpl(this));
|
|
1640
|
-
}
|
|
1641
|
-
|
|
1642
|
-
return mInspectorTarget;
|
|
1643
|
-
}
|
|
1644
1526
|
}
|
|
@@ -19,7 +19,6 @@ import com.facebook.react.ReactInstanceManager.initializeSoLoaderIfNecessary
|
|
|
19
19
|
import com.facebook.react.bridge.JSBundleLoader
|
|
20
20
|
import com.facebook.react.bridge.JSExceptionHandler
|
|
21
21
|
import com.facebook.react.bridge.JavaScriptExecutorFactory
|
|
22
|
-
import com.facebook.react.bridge.NotThreadSafeBridgeIdleDebugListener
|
|
23
22
|
import com.facebook.react.bridge.UIManagerProvider
|
|
24
23
|
import com.facebook.react.common.LifecycleState
|
|
25
24
|
import com.facebook.react.common.SurfaceDelegateFactory
|
|
@@ -49,7 +48,6 @@ public class ReactInstanceManagerBuilder {
|
|
|
49
48
|
private var jsBundleAssetUrl: String? = null
|
|
50
49
|
private var jsBundleLoader: JSBundleLoader? = null
|
|
51
50
|
private var jsMainModulePath: String? = null
|
|
52
|
-
private var bridgeIdleDebugListener: NotThreadSafeBridgeIdleDebugListener? = null
|
|
53
51
|
private var application: Application? = null
|
|
54
52
|
private var useDeveloperSupport = false
|
|
55
53
|
private var devSupportManagerFactory: DevSupportManagerFactory? = null
|
|
@@ -145,13 +143,6 @@ public class ReactInstanceManagerBuilder {
|
|
|
145
143
|
return this
|
|
146
144
|
}
|
|
147
145
|
|
|
148
|
-
public fun setBridgeIdleDebugListener(
|
|
149
|
-
bridgeIdleDebugListener: NotThreadSafeBridgeIdleDebugListener
|
|
150
|
-
): ReactInstanceManagerBuilder {
|
|
151
|
-
this.bridgeIdleDebugListener = bridgeIdleDebugListener
|
|
152
|
-
return this
|
|
153
|
-
}
|
|
154
|
-
|
|
155
146
|
/** Required. This must be your `Application` instance. */
|
|
156
147
|
public fun setApplication(application: Application): ReactInstanceManagerBuilder {
|
|
157
148
|
this.application = application
|
|
@@ -359,7 +350,6 @@ public class ReactInstanceManagerBuilder {
|
|
|
359
350
|
devSupportManagerFactory ?: DefaultDevSupportManagerFactory(),
|
|
360
351
|
requireActivity,
|
|
361
352
|
keepActivity,
|
|
362
|
-
bridgeIdleDebugListener,
|
|
363
353
|
checkNotNull(initialLifecycleState) { "Initial lifecycle state was not set" },
|
|
364
354
|
jsExceptionHandler,
|
|
365
355
|
redBoxHandler,
|
|
@@ -27,7 +27,7 @@ internal object ReactPackageHelper {
|
|
|
27
27
|
): Iterable<ModuleHolder> {
|
|
28
28
|
FLog.d(
|
|
29
29
|
ReactConstants.TAG,
|
|
30
|
-
"${reactPackage.javaClass.simpleName} is not a
|
|
30
|
+
"${reactPackage.javaClass.simpleName} is not a BaseReactPackage, falling back to old version.",
|
|
31
31
|
)
|
|
32
32
|
@Suppress("DEPRECATION")
|
|
33
33
|
val nativeModules = reactPackage.createNativeModules(reactApplicationContext)
|
package/ReactAndroid/src/main/java/com/facebook/react/ReactPackageTurboModuleManagerDelegate.kt
CHANGED
|
@@ -8,8 +8,6 @@
|
|
|
8
8
|
package com.facebook.react
|
|
9
9
|
|
|
10
10
|
import com.facebook.jni.HybridData
|
|
11
|
-
import com.facebook.react.bridge.CxxModuleWrapper
|
|
12
|
-
import com.facebook.react.bridge.ModuleSpec
|
|
13
11
|
import com.facebook.react.bridge.NativeModule
|
|
14
12
|
import com.facebook.react.bridge.ReactApplicationContext
|
|
15
13
|
import com.facebook.react.internal.featureflags.ReactNativeNewArchitectureFeatureFlags
|
|
@@ -17,7 +15,6 @@ import com.facebook.react.internal.turbomodule.core.TurboModuleManagerDelegate
|
|
|
17
15
|
import com.facebook.react.module.annotations.ReactModule
|
|
18
16
|
import com.facebook.react.module.model.ReactModuleInfo
|
|
19
17
|
import com.facebook.react.turbomodule.core.interfaces.TurboModule
|
|
20
|
-
import javax.inject.Provider
|
|
21
18
|
|
|
22
19
|
public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManagerDelegate {
|
|
23
20
|
internal fun interface ModuleProvider {
|
|
@@ -61,26 +58,6 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
61
58
|
continue
|
|
62
59
|
}
|
|
63
60
|
|
|
64
|
-
@Suppress("DEPRECATION")
|
|
65
|
-
if (shouldSupportLegacyPackages() && reactPackage is LazyReactPackage) {
|
|
66
|
-
// TODO(T145105887): Output warnings that LazyReactPackage was used
|
|
67
|
-
val lazyPkg = reactPackage
|
|
68
|
-
val moduleSpecs: List<ModuleSpec> =
|
|
69
|
-
lazyPkg.internal_getNativeModules(reactApplicationContext)
|
|
70
|
-
val moduleSpecProviderMap: MutableMap<String?, Provider<out NativeModule>> = mutableMapOf()
|
|
71
|
-
for (moduleSpec in moduleSpecs) {
|
|
72
|
-
moduleSpecProviderMap[moduleSpec.getName()] = moduleSpec.getProvider()
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
val moduleProvider = ModuleProvider { moduleName: String ->
|
|
76
|
-
moduleSpecProviderMap[moduleName]?.get()
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
moduleProviders.add(moduleProvider)
|
|
80
|
-
packageModuleInfos[moduleProvider] = lazyPkg.reactModuleInfoProvider.getReactModuleInfos()
|
|
81
|
-
continue
|
|
82
|
-
}
|
|
83
|
-
|
|
84
61
|
if (shouldSupportLegacyPackages()) {
|
|
85
62
|
// TODO(T145105887): Output warnings that ReactPackage was used
|
|
86
63
|
@Suppress("DEPRECATION")
|
|
@@ -103,7 +80,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
103
80
|
moduleClass.name,
|
|
104
81
|
reactModule.canOverrideExistingModule,
|
|
105
82
|
true,
|
|
106
|
-
|
|
83
|
+
false,
|
|
107
84
|
ReactModuleInfo.classIsTurboModule(moduleClass),
|
|
108
85
|
)
|
|
109
86
|
else
|
|
@@ -112,7 +89,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
112
89
|
moduleClass.name,
|
|
113
90
|
module.canOverrideExistingModule(),
|
|
114
91
|
true,
|
|
115
|
-
|
|
92
|
+
false,
|
|
116
93
|
ReactModuleInfo.classIsTurboModule(moduleClass),
|
|
117
94
|
)
|
|
118
95
|
|
|
@@ -128,8 +105,6 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
128
105
|
}
|
|
129
106
|
}
|
|
130
107
|
|
|
131
|
-
override fun unstable_shouldEnableLegacyModuleInterop(): Boolean = shouldEnableLegacyModuleInterop
|
|
132
|
-
|
|
133
108
|
override fun getModule(moduleName: String): TurboModule? {
|
|
134
109
|
var resolvedModule: NativeModule? = null
|
|
135
110
|
|
|
@@ -176,7 +151,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
176
151
|
}
|
|
177
152
|
|
|
178
153
|
override fun getLegacyModule(moduleName: String): NativeModule? {
|
|
179
|
-
if (!
|
|
154
|
+
if (!shouldEnableLegacyModuleInterop) {
|
|
180
155
|
return null
|
|
181
156
|
}
|
|
182
157
|
|
|
@@ -214,7 +189,7 @@ public abstract class ReactPackageTurboModuleManagerDelegate : TurboModuleManage
|
|
|
214
189
|
}
|
|
215
190
|
}
|
|
216
191
|
|
|
217
|
-
private fun shouldSupportLegacyPackages(): Boolean =
|
|
192
|
+
private fun shouldSupportLegacyPackages(): Boolean = shouldEnableLegacyModuleInterop
|
|
218
193
|
|
|
219
194
|
public abstract class Builder {
|
|
220
195
|
private var packages: List<ReactPackage>? = null
|