react-native-tvos 0.83.1-0 → 0.84.0-0rc0
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 +3 -3
- 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 +3 -3
- 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 +40 -4
- 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 +1 -12
- 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/systeminfo/ReactNativeVersion.kt +3 -3
- 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 +19 -21
- 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/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/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/cxxreact/JSBigString.h +14 -5
- package/ReactCommon/cxxreact/JSIndexedRAMBundle.cpp +4 -5
- package/ReactCommon/cxxreact/ReactMarker.cpp +0 -1
- package/ReactCommon/cxxreact/ReactNativeVersion.h +5 -5
- package/ReactCommon/devtoolsruntimesettings/DevToolsRuntimeSettings.cpp +1 -1
- package/ReactCommon/hermes/React-hermes.podspec +1 -0
- 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 +307 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedProps.h +323 -1
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsBuilder.h +133 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.cpp +100 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsRegistry.h +246 -0
- package/ReactCommon/react/renderer/animationbackend/AnimatedPropsSerializer.h +17 -0
- package/ReactCommon/react/renderer/animationbackend/AnimationBackend.cpp +93 -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/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/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 +12 -12
- 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/generateSchemaInfos.js +7 -6
- package/scripts/ios-configure-glog.sh +6 -1
- package/scripts/react_native_pods.rb +8 -0
- package/sdks/.hermesv1version +1 -1
- package/sdks/.hermesversion +1 -1
- package/sdks/hermes-engine/hermes-engine.podspec +39 -31
- package/sdks/hermes-engine/hermes-utils.rb +7 -14
- package/sdks/hermes-engine/version.properties +2 -2
- 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/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/ReactCommon/jsi/jsi/{hermes.h → hermes-interfaces.h} +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*
|
|
7
|
-
* @generated SignedSource<<
|
|
7
|
+
* @generated SignedSource<<995c1c3035757935dc7a4c4d6778e43e>>
|
|
8
8
|
*/
|
|
9
9
|
|
|
10
10
|
/**
|
|
@@ -29,22 +29,26 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
29
29
|
|
|
30
30
|
@DoNotStrip public fun cxxNativeAnimatedEnabled(): Boolean
|
|
31
31
|
|
|
32
|
-
@DoNotStrip public fun cxxNativeAnimatedRemoveJsSync(): Boolean
|
|
33
|
-
|
|
34
32
|
@DoNotStrip public fun disableEarlyViewCommandExecution(): Boolean
|
|
35
33
|
|
|
36
|
-
@DoNotStrip public fun
|
|
34
|
+
@DoNotStrip public fun disableImageViewPreallocationAndroid(): Boolean
|
|
37
35
|
|
|
38
36
|
@DoNotStrip public fun disableMountItemReorderingAndroid(): Boolean
|
|
39
37
|
|
|
40
38
|
@DoNotStrip public fun disableOldAndroidAttachmentMetricsWorkarounds(): Boolean
|
|
41
39
|
|
|
40
|
+
@DoNotStrip public fun disableSubviewClippingAndroid(): Boolean
|
|
41
|
+
|
|
42
42
|
@DoNotStrip public fun disableTextLayoutManagerCacheAndroid(): Boolean
|
|
43
43
|
|
|
44
|
+
@DoNotStrip public fun disableViewPreallocationAndroid(): Boolean
|
|
45
|
+
|
|
44
46
|
@DoNotStrip public fun enableAccessibilityOrder(): Boolean
|
|
45
47
|
|
|
46
48
|
@DoNotStrip public fun enableAccumulatedUpdatesInRawPropsAndroid(): Boolean
|
|
47
49
|
|
|
50
|
+
@DoNotStrip public fun enableAndroidAntialiasedBorderRadiusClipping(): Boolean
|
|
51
|
+
|
|
48
52
|
@DoNotStrip public fun enableAndroidLinearText(): Boolean
|
|
49
53
|
|
|
50
54
|
@DoNotStrip public fun enableAndroidTextMeasurementOptimizations(): Boolean
|
|
@@ -63,6 +67,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
63
67
|
|
|
64
68
|
@DoNotStrip public fun enableEagerRootViewAttachment(): Boolean
|
|
65
69
|
|
|
70
|
+
@DoNotStrip public fun enableExclusivePropsUpdateAndroid(): Boolean
|
|
71
|
+
|
|
66
72
|
@DoNotStrip public fun enableFabricLogs(): Boolean
|
|
67
73
|
|
|
68
74
|
@DoNotStrip public fun enableFabricRenderer(): Boolean
|
|
@@ -75,6 +81,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
75
81
|
|
|
76
82
|
@DoNotStrip public fun enableImagePrefetchingAndroid(): Boolean
|
|
77
83
|
|
|
84
|
+
@DoNotStrip public fun enableImagePrefetchingJNIBatchingAndroid(): Boolean
|
|
85
|
+
|
|
78
86
|
@DoNotStrip public fun enableImagePrefetchingOnUiThreadAndroid(): Boolean
|
|
79
87
|
|
|
80
88
|
@DoNotStrip public fun enableImmediateUpdateModeForContentOffsetChanges(): Boolean
|
|
@@ -103,8 +111,6 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
103
111
|
|
|
104
112
|
@DoNotStrip public fun enablePropsUpdateReconciliationAndroid(): Boolean
|
|
105
113
|
|
|
106
|
-
@DoNotStrip public fun enableResourceTimingAPI(): Boolean
|
|
107
|
-
|
|
108
114
|
@DoNotStrip public fun enableSwiftUIBasedFilters(): Boolean
|
|
109
115
|
|
|
110
116
|
@DoNotStrip public fun enableViewCulling(): Boolean
|
|
@@ -119,8 +125,6 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
119
125
|
|
|
120
126
|
@DoNotStrip public fun enableViewRecyclingForView(): Boolean
|
|
121
127
|
|
|
122
|
-
@DoNotStrip public fun enableVirtualViewClippingWithoutScrollViewClipping(): Boolean
|
|
123
|
-
|
|
124
128
|
@DoNotStrip public fun enableVirtualViewContainerStateExperimental(): Boolean
|
|
125
129
|
|
|
126
130
|
@DoNotStrip public fun enableVirtualViewDebugFeatures(): Boolean
|
|
@@ -133,6 +137,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
133
137
|
|
|
134
138
|
@DoNotStrip public fun fixMappingOfEventPrioritiesBetweenFabricAndReact(): Boolean
|
|
135
139
|
|
|
140
|
+
@DoNotStrip public fun fixTextClippingAndroid15useBoundsForWidth(): Boolean
|
|
141
|
+
|
|
136
142
|
@DoNotStrip public fun fuseboxAssertSingleHostState(): Boolean
|
|
137
143
|
|
|
138
144
|
@DoNotStrip public fun fuseboxEnabledRelease(): Boolean
|
|
@@ -153,12 +159,18 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
153
159
|
|
|
154
160
|
@DoNotStrip public fun shouldPressibilityUseW3CPointerEventsForHover(): Boolean
|
|
155
161
|
|
|
162
|
+
@DoNotStrip public fun shouldResetClickableWhenRecyclingView(): Boolean
|
|
163
|
+
|
|
164
|
+
@DoNotStrip public fun shouldResetOnClickListenerWhenRecyclingView(): Boolean
|
|
165
|
+
|
|
166
|
+
@DoNotStrip public fun shouldSetEnabledBasedOnAccessibilityState(): Boolean
|
|
167
|
+
|
|
168
|
+
@DoNotStrip public fun shouldSetIsClickableByDefault(): Boolean
|
|
169
|
+
|
|
156
170
|
@DoNotStrip public fun shouldTriggerResponderTransferOnScrollAndroid(): Boolean
|
|
157
171
|
|
|
158
172
|
@DoNotStrip public fun skipActivityIdentityAssertionOnHostPause(): Boolean
|
|
159
173
|
|
|
160
|
-
@DoNotStrip public fun sweepActiveTouchOnChildNativeGesturesAndroid(): Boolean
|
|
161
|
-
|
|
162
174
|
@DoNotStrip public fun traceTurboModulePromiseRejectionsOnAndroid(): Boolean
|
|
163
175
|
|
|
164
176
|
@DoNotStrip public fun updateRuntimeShadowNodeReferencesOnCommit(): Boolean
|
|
@@ -167,14 +179,8 @@ public interface ReactNativeFeatureFlagsProvider {
|
|
|
167
179
|
|
|
168
180
|
@DoNotStrip public fun useFabricInterop(): Boolean
|
|
169
181
|
|
|
170
|
-
@DoNotStrip public fun useNativeEqualsInNativeReadableArrayAndroid(): Boolean
|
|
171
|
-
|
|
172
|
-
@DoNotStrip public fun useNativeTransformHelperAndroid(): Boolean
|
|
173
|
-
|
|
174
182
|
@DoNotStrip public fun useNativeViewConfigsInBridgelessMode(): Boolean
|
|
175
183
|
|
|
176
|
-
@DoNotStrip public fun useOptimizedEventBatchingOnAndroid(): Boolean
|
|
177
|
-
|
|
178
184
|
@DoNotStrip public fun useRawPropsJsiValue(): Boolean
|
|
179
185
|
|
|
180
186
|
@DoNotStrip public fun useShadowNodeStateOnClone(): Boolean
|
|
@@ -11,7 +11,6 @@ import androidx.annotation.GuardedBy
|
|
|
11
11
|
import com.facebook.common.logging.FLog
|
|
12
12
|
import com.facebook.jni.HybridData
|
|
13
13
|
import com.facebook.proguard.annotations.DoNotStrip
|
|
14
|
-
import com.facebook.react.bridge.CxxModuleWrapper
|
|
15
14
|
import com.facebook.react.bridge.NativeModule
|
|
16
15
|
import com.facebook.react.bridge.RuntimeExecutor
|
|
17
16
|
import com.facebook.react.common.annotations.FrameworkAPI
|
|
@@ -53,7 +52,6 @@ public class TurboModuleManager(
|
|
|
53
52
|
@DoNotStrip
|
|
54
53
|
private val mHybridData: HybridData =
|
|
55
54
|
initHybrid(
|
|
56
|
-
runtimeExecutor,
|
|
57
55
|
jsCallInvokerHolder as CallInvokerHolderImpl,
|
|
58
56
|
nativeMethodCallInvokerHolder as NativeMethodCallInvokerHolderImpl,
|
|
59
57
|
delegate,
|
|
@@ -61,7 +59,7 @@ public class TurboModuleManager(
|
|
|
61
59
|
|
|
62
60
|
init {
|
|
63
61
|
|
|
64
|
-
installJSIBindings(
|
|
62
|
+
installJSIBindings(runtimeExecutor)
|
|
65
63
|
|
|
66
64
|
eagerInitModuleNames = delegate?.getEagerInitModuleNames() ?: emptyList()
|
|
67
65
|
|
|
@@ -73,7 +71,7 @@ public class TurboModuleManager(
|
|
|
73
71
|
ModuleProvider { moduleName: String -> delegate.getModule(moduleName) as NativeModule? }
|
|
74
72
|
|
|
75
73
|
legacyModuleProvider =
|
|
76
|
-
if (delegate == null
|
|
74
|
+
if (delegate == null) nullProvider
|
|
77
75
|
else
|
|
78
76
|
ModuleProvider { moduleName: String ->
|
|
79
77
|
val nativeModule = delegate.getLegacyModule(moduleName)
|
|
@@ -94,9 +92,6 @@ public class TurboModuleManager(
|
|
|
94
92
|
private fun isLegacyModule(moduleName: String): Boolean =
|
|
95
93
|
delegate?.unstable_isLegacyModuleRegistered(moduleName) == true
|
|
96
94
|
|
|
97
|
-
private fun shouldEnableLegacyModuleInterop(): Boolean =
|
|
98
|
-
delegate?.unstable_shouldEnableLegacyModuleInterop() == true
|
|
99
|
-
|
|
100
95
|
// used from TurboModuleManager.cpp
|
|
101
96
|
@Suppress("unused")
|
|
102
97
|
@DoNotStrip
|
|
@@ -110,39 +105,7 @@ public class TurboModuleManager(
|
|
|
110
105
|
}
|
|
111
106
|
|
|
112
107
|
val module = getModule(moduleName)
|
|
113
|
-
return if (module !is
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
// used from TurboModuleManager.cpp
|
|
117
|
-
@Suppress("unused")
|
|
118
|
-
@DoNotStrip
|
|
119
|
-
private fun getLegacyCxxModule(moduleName: String): CxxModuleWrapper? {
|
|
120
|
-
/*
|
|
121
|
-
* This API is invoked from global.nativeModuleProxy.
|
|
122
|
-
* Only call getModule if the native module is a legacy module.
|
|
123
|
-
*/
|
|
124
|
-
if (!isLegacyModule(moduleName)) {
|
|
125
|
-
return null
|
|
126
|
-
}
|
|
127
|
-
|
|
128
|
-
val module = getModule(moduleName)
|
|
129
|
-
return if (module is CxxModuleWrapper && module !is TurboModule) module else null
|
|
130
|
-
}
|
|
131
|
-
|
|
132
|
-
// used from TurboModuleManager.cpp
|
|
133
|
-
@Suppress("unused")
|
|
134
|
-
@DoNotStrip
|
|
135
|
-
private fun getTurboLegacyCxxModule(moduleName: String): CxxModuleWrapper? {
|
|
136
|
-
/*
|
|
137
|
-
* This API is invoked from global.__turboModuleProxy.
|
|
138
|
-
* Only call getModule if the native module is a turbo module.
|
|
139
|
-
*/
|
|
140
|
-
if (!isTurboModule(moduleName)) {
|
|
141
|
-
return null
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
val module = getModule(moduleName)
|
|
145
|
-
return if (module is CxxModuleWrapper && module is TurboModule) module else null
|
|
108
|
+
return if (module !is TurboModule) module else null
|
|
146
109
|
}
|
|
147
110
|
|
|
148
111
|
// used from TurboModuleManager.cpp
|
|
@@ -158,7 +121,7 @@ public class TurboModuleManager(
|
|
|
158
121
|
}
|
|
159
122
|
|
|
160
123
|
val module = getModule(moduleName)
|
|
161
|
-
return if (module
|
|
124
|
+
return if (module is TurboModule) module else null
|
|
162
125
|
}
|
|
163
126
|
|
|
164
127
|
/**
|
|
@@ -314,13 +277,12 @@ public class TurboModuleManager(
|
|
|
314
277
|
}
|
|
315
278
|
|
|
316
279
|
private external fun initHybrid(
|
|
317
|
-
runtimeExecutor: RuntimeExecutor,
|
|
318
280
|
jsCallInvokerHolder: CallInvokerHolderImpl,
|
|
319
281
|
nativeMethodCallInvoker: NativeMethodCallInvokerHolderImpl,
|
|
320
282
|
tmmDelegate: TurboModuleManagerDelegate?,
|
|
321
283
|
): HybridData
|
|
322
284
|
|
|
323
|
-
private external fun installJSIBindings(
|
|
285
|
+
private external fun installJSIBindings(runtimeExecutor: RuntimeExecutor)
|
|
324
286
|
|
|
325
287
|
override fun invalidate() {
|
|
326
288
|
/*
|
|
@@ -48,9 +48,6 @@ public abstract class TurboModuleManagerDelegate {
|
|
|
48
48
|
|
|
49
49
|
public open fun getEagerInitModuleNames(): List<String> = emptyList()
|
|
50
50
|
|
|
51
|
-
/** Can the TurboModule system create legacy modules? */
|
|
52
|
-
public open fun unstable_shouldEnableLegacyModuleInterop(): Boolean = false
|
|
53
|
-
|
|
54
51
|
// TODO(T171231381): Consider removing this method: could we just use the static initializer
|
|
55
52
|
// of derived classes instead?
|
|
56
53
|
@Synchronized protected fun maybeLoadOtherSoLibraries(): Unit = Unit
|
package/ReactAndroid/src/main/java/com/facebook/react/modules/appearance/AppearanceModule.kt
CHANGED
|
@@ -28,13 +28,42 @@ constructor(
|
|
|
28
28
|
|
|
29
29
|
private var lastEmittedColorScheme: String? = null
|
|
30
30
|
|
|
31
|
+
private val schemeChangeListener: () -> Unit = {
|
|
32
|
+
val activity = reactApplicationContext.getCurrentActivity()
|
|
33
|
+
onConfigurationChanged(activity ?: reactApplicationContext)
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
init {
|
|
37
|
+
// Register as a listener for color scheme changes if override is provided
|
|
38
|
+
overrideColorScheme?.addSchemeChangeListener(schemeChangeListener)
|
|
39
|
+
}
|
|
40
|
+
|
|
31
41
|
/** Optional override to the current color scheme */
|
|
32
|
-
public
|
|
42
|
+
public interface OverrideColorScheme {
|
|
33
43
|
/**
|
|
34
44
|
* Color scheme will use the return value instead of the current system configuration. Available
|
|
35
45
|
* scheme: {light, dark}
|
|
36
46
|
*/
|
|
37
47
|
public fun getScheme(): String
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Register a listener to be notified when the color scheme changes. The listener will be
|
|
51
|
+
* invoked whenever the underlying theme preference changes.
|
|
52
|
+
*
|
|
53
|
+
* Default implementation does nothing. Override this method if you want to support dynamic
|
|
54
|
+
* color scheme updates.
|
|
55
|
+
*/
|
|
56
|
+
public fun addSchemeChangeListener(listener: () -> Unit) {
|
|
57
|
+
// no-op
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/**
|
|
61
|
+
* Unregisters a previously added color scheme change listener. Default implementation is a
|
|
62
|
+
* no-op; override to remove the listener from your source.
|
|
63
|
+
*/
|
|
64
|
+
public fun removeSchemeChangeListener(listener: () -> Unit) {
|
|
65
|
+
// no-op
|
|
66
|
+
}
|
|
38
67
|
}
|
|
39
68
|
|
|
40
69
|
private fun colorSchemeForCurrentConfiguration(context: Context): String {
|
|
@@ -98,6 +127,12 @@ constructor(
|
|
|
98
127
|
Companion.invalidatePlatformColorCache?.run()
|
|
99
128
|
}
|
|
100
129
|
|
|
130
|
+
public override fun invalidate() {
|
|
131
|
+
overrideColorScheme?.removeSchemeChangeListener(schemeChangeListener)
|
|
132
|
+
invalidatePlatformColorCache()
|
|
133
|
+
super.invalidate()
|
|
134
|
+
}
|
|
135
|
+
|
|
101
136
|
public companion object {
|
|
102
137
|
public const val NAME: String = NativeAppearanceSpec.NAME
|
|
103
138
|
private const val APPEARANCE_CHANGED_EVENT_NAME = "appearanceChanged"
|
package/ReactAndroid/src/main/java/com/facebook/react/modules/debug/FpsDebugFrameCallback.kt
CHANGED
|
@@ -26,8 +26,6 @@ internal class FpsDebugFrameCallback(private val reactContext: ReactContext) :
|
|
|
26
26
|
Choreographer.FrameCallback {
|
|
27
27
|
|
|
28
28
|
private var choreographer: Choreographer? = null
|
|
29
|
-
private val didJSUpdateUiDuringFrameDetector: DidJSUpdateUiDuringFrameDetector =
|
|
30
|
-
DidJSUpdateUiDuringFrameDetector()
|
|
31
29
|
private var firstFrameTime: Long = -1
|
|
32
30
|
private var lastFrameTime: Long = -1
|
|
33
31
|
private var numFrameCallbacks = 0
|
|
@@ -40,11 +38,7 @@ internal class FpsDebugFrameCallback(private val reactContext: ReactContext) :
|
|
|
40
38
|
if (firstFrameTime == -1L) {
|
|
41
39
|
firstFrameTime = l
|
|
42
40
|
}
|
|
43
|
-
val lastFrameStartTime = lastFrameTime
|
|
44
41
|
lastFrameTime = l
|
|
45
|
-
if (didJSUpdateUiDuringFrameDetector.getDidJSHitFrameAndCleanup(lastFrameStartTime, l)) {
|
|
46
|
-
numFrameCallbacksWithBatchDispatches++
|
|
47
|
-
}
|
|
48
42
|
numFrameCallbacks++
|
|
49
43
|
val expectedNumFrames = expectedNumFrames
|
|
50
44
|
val framesDropped = expectedNumFrames - expectedNumFramesPrev - 1
|
|
@@ -61,17 +55,9 @@ internal class FpsDebugFrameCallback(private val reactContext: ReactContext) :
|
|
|
61
55
|
// removeBridgeIdleDebugListener for Bridgeless
|
|
62
56
|
@Suppress("DEPRECATION")
|
|
63
57
|
if (!ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE) {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
reactContext.catalystInstance.addBridgeIdleDebugListener(didJSUpdateUiDuringFrameDetector)
|
|
68
|
-
isRunningOnFabric = false
|
|
69
|
-
} else {
|
|
70
|
-
// T172641976 Consider either implementing a mechanism similar to addBridgeIdleDebugListener
|
|
71
|
-
// for Fabric or point users to use RNDT.
|
|
72
|
-
isRunningOnFabric = true
|
|
73
|
-
}
|
|
74
|
-
uiManagerModule?.setViewHierarchyUpdateDebugListener(didJSUpdateUiDuringFrameDetector)
|
|
58
|
+
// T172641976 Consider either implementing a mechanism similar to addBridgeIdleDebugListener
|
|
59
|
+
// for Fabric or point users to use RNDT.
|
|
60
|
+
isRunningOnFabric = true
|
|
75
61
|
}
|
|
76
62
|
this.targetFps = targetFps
|
|
77
63
|
UiThreadUtil.runOnUiThread {
|
|
@@ -82,16 +68,6 @@ internal class FpsDebugFrameCallback(private val reactContext: ReactContext) :
|
|
|
82
68
|
|
|
83
69
|
fun stop() {
|
|
84
70
|
@Suppress("DEPRECATION")
|
|
85
|
-
if (!ReactBuildConfig.UNSTABLE_ENABLE_MINIFY_LEGACY_ARCHITECTURE) {
|
|
86
|
-
val uiManagerModule =
|
|
87
|
-
reactContext.getNativeModule(com.facebook.react.uimanager.UIManagerModule::class.java)
|
|
88
|
-
if (!reactContext.isBridgeless) {
|
|
89
|
-
reactContext.catalystInstance.removeBridgeIdleDebugListener(
|
|
90
|
-
didJSUpdateUiDuringFrameDetector
|
|
91
|
-
)
|
|
92
|
-
}
|
|
93
|
-
uiManagerModule?.setViewHierarchyUpdateDebugListener(null)
|
|
94
|
-
}
|
|
95
71
|
UiThreadUtil.runOnUiThread {
|
|
96
72
|
choreographer = Choreographer.getInstance()
|
|
97
73
|
choreographer?.removeFrameCallback(this)
|
package/ReactAndroid/src/main/java/com/facebook/react/modules/devloading/DevLoadingModule.kt
CHANGED
|
@@ -30,9 +30,14 @@ internal class DevLoadingModule(reactContext: ReactApplicationContext) :
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
override fun showMessage(
|
|
33
|
+
override fun showMessage(
|
|
34
|
+
message: String,
|
|
35
|
+
color: Double?,
|
|
36
|
+
backgroundColor: Double?,
|
|
37
|
+
dismissButton: Boolean?,
|
|
38
|
+
) {
|
|
34
39
|
UiThreadUtil.runOnUiThread {
|
|
35
|
-
devLoadingViewManager?.showMessage(message, color, backgroundColor)
|
|
40
|
+
devLoadingViewManager?.showMessage(message, color, backgroundColor, dismissButton)
|
|
36
41
|
}
|
|
37
42
|
}
|
|
38
43
|
|
|
@@ -52,6 +52,29 @@ internal object NetworkEventUtil {
|
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
54
|
|
|
55
|
+
@Deprecated("Compatibility overload")
|
|
56
|
+
@JvmStatic
|
|
57
|
+
fun onCreateRequest(
|
|
58
|
+
devToolsRequestId: String,
|
|
59
|
+
requestUrl: String,
|
|
60
|
+
requestMethod: String,
|
|
61
|
+
requestHeaders: Map<String, String>,
|
|
62
|
+
requestBody: String,
|
|
63
|
+
encodedDataLength: Long,
|
|
64
|
+
) {
|
|
65
|
+
if (ReactNativeFeatureFlags.enableNetworkEventReporting()) {
|
|
66
|
+
InspectorNetworkReporter.reportRequestStart(
|
|
67
|
+
devToolsRequestId,
|
|
68
|
+
requestUrl,
|
|
69
|
+
requestMethod,
|
|
70
|
+
requestHeaders,
|
|
71
|
+
requestBody,
|
|
72
|
+
encodedDataLength,
|
|
73
|
+
)
|
|
74
|
+
InspectorNetworkReporter.reportConnectionTiming(devToolsRequestId, requestHeaders)
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
|
|
55
78
|
@JvmStatic
|
|
56
79
|
fun onDataSend(
|
|
57
80
|
reactContext: ReactApplicationContext?,
|
|
@@ -19,15 +19,16 @@ public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
|
19
19
|
private val preferences: SharedPreferences =
|
|
20
20
|
PreferenceManager.getDefaultSharedPreferences(appContext)
|
|
21
21
|
public val packageName: String = appContext.packageName
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
22
|
+
|
|
23
|
+
init {
|
|
24
|
+
resetDebugServerHost()
|
|
25
|
+
}
|
|
25
26
|
|
|
26
27
|
public open var debugServerHost: String
|
|
27
28
|
get() {
|
|
28
29
|
// Check cached host first. If empty try to detect emulator type and use default
|
|
29
30
|
// hostname for those
|
|
30
|
-
|
|
31
|
+
_cachedOrOverrideHost?.let {
|
|
31
32
|
return it
|
|
32
33
|
}
|
|
33
34
|
|
|
@@ -44,19 +45,19 @@ public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
|
44
45
|
)
|
|
45
46
|
}
|
|
46
47
|
|
|
47
|
-
|
|
48
|
+
_cachedOrOverrideHost = host
|
|
48
49
|
return host
|
|
49
50
|
}
|
|
50
51
|
set(host) {
|
|
51
52
|
if (host.isEmpty()) {
|
|
52
|
-
|
|
53
|
+
_cachedOrOverrideHost = null
|
|
53
54
|
} else {
|
|
54
|
-
|
|
55
|
+
_cachedOrOverrideHost = host
|
|
55
56
|
}
|
|
56
57
|
}
|
|
57
58
|
|
|
58
59
|
public open fun resetDebugServerHost() {
|
|
59
|
-
|
|
60
|
+
_cachedOrOverrideHost = null
|
|
60
61
|
}
|
|
61
62
|
|
|
62
63
|
public fun setPackagerOptionsUpdater(queryMapper: (Map<String, String>) -> Map<String, String>) {
|
|
@@ -76,5 +77,11 @@ public open class PackagerConnectionSettings(private val appContext: Context) {
|
|
|
76
77
|
private companion object {
|
|
77
78
|
private val TAG = PackagerConnectionSettings::class.java.simpleName
|
|
78
79
|
private const val PREFS_DEBUG_SERVER_HOST_KEY = "debug_http_host"
|
|
80
|
+
|
|
81
|
+
// The state for this class needs to be retained in the companion object.
|
|
82
|
+
// That's necessary in the case when there are multiple instances of PackagerConnectionSettings
|
|
83
|
+
private var _cachedOrOverrideHost: String? = null
|
|
84
|
+
private val _additionalOptionsForPackager: MutableMap<String, String> = mutableMapOf()
|
|
85
|
+
private var _packagerOptionsUpdater: (Map<String, String>) -> Map<String, String> = { it }
|
|
79
86
|
}
|
|
80
87
|
}
|
|
@@ -19,7 +19,6 @@ import com.facebook.react.bridge.NativeArray
|
|
|
19
19
|
import com.facebook.react.bridge.NativeArrayInterface
|
|
20
20
|
import com.facebook.react.bridge.NativeModule
|
|
21
21
|
import com.facebook.react.bridge.NativeModuleRegistry
|
|
22
|
-
import com.facebook.react.bridge.NotThreadSafeBridgeIdleDebugListener
|
|
23
22
|
import com.facebook.react.bridge.RuntimeExecutor
|
|
24
23
|
import com.facebook.react.bridge.RuntimeScheduler
|
|
25
24
|
import com.facebook.react.bridge.UIManager
|
|
@@ -140,14 +139,6 @@ internal class BridgelessCatalystInstance(private val reactHost: ReactHostImpl)
|
|
|
140
139
|
override val sourceURL: String
|
|
141
140
|
get() = throw UnsupportedOperationException("Unimplemented method 'getSourceURL'")
|
|
142
141
|
|
|
143
|
-
override fun addBridgeIdleDebugListener(listener: NotThreadSafeBridgeIdleDebugListener) {
|
|
144
|
-
throw UnsupportedOperationException("Unimplemented method 'addBridgeIdleDebugListener'")
|
|
145
|
-
}
|
|
146
|
-
|
|
147
|
-
override fun removeBridgeIdleDebugListener(listener: NotThreadSafeBridgeIdleDebugListener) {
|
|
148
|
-
throw UnsupportedOperationException("Unimplemented method 'removeBridgeIdleDebugListener'")
|
|
149
|
-
}
|
|
150
|
-
|
|
151
142
|
override fun registerSegment(segmentId: Int, path: String) {
|
|
152
143
|
throw UnsupportedOperationException("Unimplemented method 'registerSegment'")
|
|
153
144
|
}
|
|
@@ -43,8 +43,11 @@ import com.facebook.react.devsupport.DevMenuConfiguration
|
|
|
43
43
|
import com.facebook.react.devsupport.DevSupportManagerBase
|
|
44
44
|
import com.facebook.react.devsupport.DevSupportManagerFactory
|
|
45
45
|
import com.facebook.react.devsupport.InspectorFlags
|
|
46
|
+
import com.facebook.react.devsupport.inspector.FrameTimingsObserver
|
|
46
47
|
import com.facebook.react.devsupport.inspector.InspectorNetworkHelper
|
|
47
48
|
import com.facebook.react.devsupport.inspector.InspectorNetworkRequestListener
|
|
49
|
+
import com.facebook.react.devsupport.inspector.TracingState
|
|
50
|
+
import com.facebook.react.devsupport.inspector.TracingStateListener
|
|
48
51
|
import com.facebook.react.devsupport.interfaces.BundleLoadCallback
|
|
49
52
|
import com.facebook.react.devsupport.interfaces.DevSupportManager
|
|
50
53
|
import com.facebook.react.devsupport.interfaces.DevSupportManager.PausedInDebuggerOverlayCommandListener
|
|
@@ -147,6 +150,7 @@ public class ReactHostImpl(
|
|
|
147
150
|
private val beforeDestroyListeners: MutableList<() -> Unit> = CopyOnWriteArrayList()
|
|
148
151
|
|
|
149
152
|
internal var reactHostInspectorTarget: ReactHostInspectorTarget? = null
|
|
153
|
+
private var frameTimingsObserver: FrameTimingsObserver? = null
|
|
150
154
|
|
|
151
155
|
@Volatile private var hostInvalidated = false
|
|
152
156
|
|
|
@@ -1262,10 +1266,6 @@ public class ReactHostImpl(
|
|
|
1262
1266
|
val method = "getOrCreateReloadTask()"
|
|
1263
1267
|
stateTracker.enterState(method)
|
|
1264
1268
|
|
|
1265
|
-
// Log how React Native is destroyed
|
|
1266
|
-
// TODO(T136397487): Remove after Venice is shipped to 100%
|
|
1267
|
-
raiseSoftException(method, reason)
|
|
1268
|
-
|
|
1269
1269
|
reloadTask?.let {
|
|
1270
1270
|
return it
|
|
1271
1271
|
}
|
|
@@ -1417,10 +1417,6 @@ public class ReactHostImpl(
|
|
|
1417
1417
|
val method = "getOrCreateDestroyTask()"
|
|
1418
1418
|
stateTracker.enterState(method)
|
|
1419
1419
|
|
|
1420
|
-
// Log how React Native is destroyed
|
|
1421
|
-
// TODO(T136397487): Remove after Venice is shipped to 100%
|
|
1422
|
-
raiseSoftException(method, reason, ex)
|
|
1423
|
-
|
|
1424
1420
|
destroyTask?.let {
|
|
1425
1421
|
return it
|
|
1426
1422
|
}
|
|
@@ -1442,8 +1438,7 @@ public class ReactHostImpl(
|
|
|
1442
1438
|
// If the host has been invalidated, now that the current context/instance
|
|
1443
1439
|
// has been unregistered, we can safely destroy the host's inspector
|
|
1444
1440
|
// target.
|
|
1445
|
-
|
|
1446
|
-
reactHostInspectorTarget = null
|
|
1441
|
+
destroyReactHostInspectorTarget()
|
|
1447
1442
|
}
|
|
1448
1443
|
|
|
1449
1444
|
// Step 1: Destroy DevSupportManager
|
|
@@ -1554,13 +1549,52 @@ public class ReactHostImpl(
|
|
|
1554
1549
|
|
|
1555
1550
|
internal fun getOrCreateReactHostInspectorTarget(): ReactHostInspectorTarget? {
|
|
1556
1551
|
if (reactHostInspectorTarget == null && InspectorFlags.getFuseboxEnabled()) {
|
|
1557
|
-
|
|
1558
|
-
reactHostInspectorTarget = ReactHostInspectorTarget(this)
|
|
1552
|
+
reactHostInspectorTarget = createReactHostInspectorTarget()
|
|
1559
1553
|
}
|
|
1560
1554
|
|
|
1561
1555
|
return reactHostInspectorTarget
|
|
1562
1556
|
}
|
|
1563
1557
|
|
|
1558
|
+
private fun createReactHostInspectorTarget(): ReactHostInspectorTarget {
|
|
1559
|
+
// NOTE: ReactHostInspectorTarget only retains a weak reference to `this`.
|
|
1560
|
+
val inspectorTarget = ReactHostInspectorTarget(this)
|
|
1561
|
+
inspectorTarget.registerTracingStateListener(
|
|
1562
|
+
TracingStateListener { state: TracingState, _screenshotsEnabled: Boolean ->
|
|
1563
|
+
when (state) {
|
|
1564
|
+
TracingState.ENABLED_IN_BACKGROUND_MODE,
|
|
1565
|
+
TracingState.ENABLED_IN_CDP_MODE -> {
|
|
1566
|
+
currentActivity?.window?.let { window ->
|
|
1567
|
+
val observer =
|
|
1568
|
+
FrameTimingsObserver(
|
|
1569
|
+
window,
|
|
1570
|
+
_screenshotsEnabled,
|
|
1571
|
+
{ frameTimingsSequence ->
|
|
1572
|
+
inspectorTarget.recordFrameTimings(frameTimingsSequence)
|
|
1573
|
+
},
|
|
1574
|
+
)
|
|
1575
|
+
observer.start()
|
|
1576
|
+
frameTimingsObserver = observer
|
|
1577
|
+
}
|
|
1578
|
+
}
|
|
1579
|
+
TracingState.DISABLED -> {
|
|
1580
|
+
frameTimingsObserver?.stop()
|
|
1581
|
+
frameTimingsObserver = null
|
|
1582
|
+
}
|
|
1583
|
+
}
|
|
1584
|
+
}
|
|
1585
|
+
)
|
|
1586
|
+
|
|
1587
|
+
return inspectorTarget
|
|
1588
|
+
}
|
|
1589
|
+
|
|
1590
|
+
private fun destroyReactHostInspectorTarget() {
|
|
1591
|
+
frameTimingsObserver?.stop()
|
|
1592
|
+
frameTimingsObserver = null
|
|
1593
|
+
|
|
1594
|
+
reactHostInspectorTarget?.close()
|
|
1595
|
+
reactHostInspectorTarget = null
|
|
1596
|
+
}
|
|
1597
|
+
|
|
1564
1598
|
@ThreadConfined(ThreadConfined.UI)
|
|
1565
1599
|
internal fun unregisterInstanceFromInspector(reactInstance: ReactInstance?) {
|
|
1566
1600
|
if (reactInstance != null) {
|
|
@@ -16,8 +16,8 @@ import com.facebook.react.bridge.ReactContext
|
|
|
16
16
|
import com.facebook.react.common.annotations.FrameworkAPI
|
|
17
17
|
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
18
18
|
import com.facebook.react.devsupport.ReactInstanceDevHelper
|
|
19
|
-
import com.facebook.react.devsupport.
|
|
20
|
-
import com.facebook.react.devsupport.
|
|
19
|
+
import com.facebook.react.devsupport.inspector.TracingState
|
|
20
|
+
import com.facebook.react.devsupport.inspector.TracingStateProvider
|
|
21
21
|
import com.facebook.react.devsupport.perfmonitor.PerfMonitorDevHelper
|
|
22
22
|
import com.facebook.react.devsupport.perfmonitor.PerfMonitorInspectorTarget
|
|
23
23
|
import com.facebook.react.interfaces.TaskInterface
|
|
@@ -81,6 +81,6 @@ internal class ReactHostImplDevHelper(private val delegate: ReactHostImpl) :
|
|
|
81
81
|
delegate.loadBundle(bundleLoader)
|
|
82
82
|
|
|
83
83
|
override fun getTracingState(): TracingState {
|
|
84
|
-
return delegate.reactHostInspectorTarget?.getTracingState() ?: TracingState.
|
|
84
|
+
return delegate.reactHostInspectorTarget?.getTracingState() ?: TracingState.ENABLED_IN_CDP_MODE
|
|
85
85
|
}
|
|
86
86
|
}
|
|
@@ -12,7 +12,9 @@ import com.facebook.proguard.annotations.DoNotStripAny
|
|
|
12
12
|
import com.facebook.react.bridge.UiThreadUtil
|
|
13
13
|
import com.facebook.react.common.annotations.FrameworkAPI
|
|
14
14
|
import com.facebook.react.common.annotations.UnstableReactNativeAPI
|
|
15
|
-
import com.facebook.react.devsupport.
|
|
15
|
+
import com.facebook.react.devsupport.inspector.FrameTimingSequence
|
|
16
|
+
import com.facebook.react.devsupport.inspector.TracingState
|
|
17
|
+
import com.facebook.react.devsupport.inspector.TracingStateListener
|
|
16
18
|
import com.facebook.react.devsupport.perfmonitor.PerfMonitorInspectorTarget
|
|
17
19
|
import com.facebook.react.devsupport.perfmonitor.PerfMonitorUpdateListener
|
|
18
20
|
import com.facebook.soloader.SoLoader
|
|
@@ -41,37 +43,29 @@ internal class ReactHostInspectorTarget(reactHostImpl: ReactHostImpl) :
|
|
|
41
43
|
|
|
42
44
|
external fun stopAndDiscardBackgroundTrace()
|
|
43
45
|
|
|
44
|
-
external fun
|
|
46
|
+
external override fun getTracingState(): TracingState
|
|
45
47
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
48
|
+
external fun registerTracingStateListener(listener: TracingStateListener): Long
|
|
49
|
+
|
|
50
|
+
external fun unregisterTracingStateListener(subscriptionId: Long)
|
|
51
|
+
|
|
52
|
+
external fun recordFrameTimings(frameTimingSequence: FrameTimingSequence)
|
|
49
53
|
|
|
50
54
|
override fun addPerfMonitorListener(listener: PerfMonitorUpdateListener) {
|
|
51
55
|
perfMonitorListeners.add(listener)
|
|
56
|
+
registerTracingStateListener { state, _ -> listener.onRecordingStateChanged(state) }
|
|
52
57
|
}
|
|
53
58
|
|
|
54
59
|
override fun pauseAndAnalyzeBackgroundTrace(): Boolean {
|
|
55
|
-
|
|
56
|
-
perfMonitorListeners.forEach { listener ->
|
|
57
|
-
listener.onRecordingStateChanged(TracingState.DISABLED)
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
return emitted
|
|
60
|
+
return stopAndMaybeEmitBackgroundTrace()
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
override fun resumeBackgroundTrace() {
|
|
64
64
|
startBackgroundTrace()
|
|
65
|
-
perfMonitorListeners.forEach { listener ->
|
|
66
|
-
listener.onRecordingStateChanged(TracingState.ENABLEDINBACKGROUNDMODE)
|
|
67
|
-
}
|
|
68
65
|
}
|
|
69
66
|
|
|
70
67
|
override fun stopBackgroundTrace() {
|
|
71
68
|
stopAndDiscardBackgroundTrace()
|
|
72
|
-
perfMonitorListeners.forEach { listener ->
|
|
73
|
-
listener.onRecordingStateChanged(TracingState.DISABLED)
|
|
74
|
-
}
|
|
75
69
|
}
|
|
76
70
|
|
|
77
71
|
fun handleNativePerfIssueAdded(
|