From a15e8f318d697e2fe8d78302cc9b4f867404fa21 Mon Sep 17 00:00:00 2001 From: David Vacca Date: Fri, 23 Feb 2024 15:22:45 -0800 Subject: [PATCH] Mark interop classes and interfaces as Unstable Summary: Mark interop classes and interfaces as Unstable bypass-github-export-checks changelog: [internal] internal Reviewed By: fkgozali, arushikesarwani94 Differential Revision: D54128912 fbshipit-source-id: 56956fc38bac01f461bf686fda0f05a7a105008e --- packages/react-native/ReactAndroid/api/ReactAndroid.api | 8 -------- .../java/com/facebook/react/fabric/interop/UIBlock.kt | 3 +++ .../facebook/react/fabric/interop/UIBlockViewResolver.kt | 2 ++ .../facebook/react/bridge/interop/FakeRCTEventEmitter.kt | 2 ++ .../react/bridge/interop/InteropModuleRegistryTest.kt | 1 + .../fabric/internal/interop/InteropUiBlockListenerTest.kt | 2 ++ .../java/com/facebook/testutils/fakes/FakeUIManager.kt | 2 ++ 7 files changed, 12 insertions(+), 8 deletions(-) diff --git a/packages/react-native/ReactAndroid/api/ReactAndroid.api b/packages/react-native/ReactAndroid/api/ReactAndroid.api index 14c0f00797b..91f7ca364ca 100644 --- a/packages/react-native/ReactAndroid/api/ReactAndroid.api +++ b/packages/react-native/ReactAndroid/api/ReactAndroid.api @@ -2626,14 +2626,6 @@ public class com/facebook/react/fabric/events/FabricEventEmitter : com/facebook/ public fun receiveTouches (Ljava/lang/String;Lcom/facebook/react/bridge/WritableArray;Lcom/facebook/react/bridge/WritableArray;)V } -public abstract interface class com/facebook/react/fabric/interop/UIBlock { - public abstract fun execute (Lcom/facebook/react/fabric/interop/UIBlockViewResolver;)V -} - -public abstract interface class com/facebook/react/fabric/interop/UIBlockViewResolver { - public abstract fun resolveView (I)Landroid/view/View; -} - public abstract interface class com/facebook/react/fabric/mounting/LayoutMetricsConversions { public static fun getMaxSize (I)F public static fun getMinSize (I)F diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt index 702d096ea66..020ce08340a 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlock.kt @@ -9,6 +9,8 @@ package com.facebook.react.fabric.interop +import com.facebook.react.common.annotations.UnstableReactNativeAPI + /** * Interop Interface added to support `addUiBlock` and `prependUIBlock` methods in Fabric. * Historically those methods were only available in `UIManagerModule` (Paper, the old renderer). @@ -17,6 +19,7 @@ package com.facebook.react.fabric.interop * @deprecated When developing new libraries for Fabric you should instead use [UIManagerListener] * or View Commands to achieve a same results. */ +@UnstableReactNativeAPI @Deprecated("Use UIManagerListener or View Commands instead of addUIBlock and prependUIBlock.") public fun interface UIBlock { /** diff --git a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt index 7fd8389b858..5cbcd2f2f8f 100644 --- a/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt +++ b/packages/react-native/ReactAndroid/src/main/java/com/facebook/react/fabric/interop/UIBlockViewResolver.kt @@ -8,6 +8,7 @@ package com.facebook.react.fabric.interop import android.view.View +import com.facebook.react.common.annotations.UnstableReactNativeAPI /** * This interface is used as receiver parameter for [UIBlock]. @@ -17,6 +18,7 @@ import android.view.View * @deprecated When developing new libraries for Fabric you should instead use [UIManagerListener] * or View Commands to achieve a same results. */ +@UnstableReactNativeAPI @Deprecated("Use UIManagerListener or View Commands instead of addUIBlock and prependUIBlock.") public interface UIBlockViewResolver { /** diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/FakeRCTEventEmitter.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/FakeRCTEventEmitter.kt index dd8b7ac6989..46f96d0b6bf 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/FakeRCTEventEmitter.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/FakeRCTEventEmitter.kt @@ -11,8 +11,10 @@ package com.facebook.react.bridge.interop import com.facebook.react.bridge.WritableArray import com.facebook.react.bridge.WritableMap +import com.facebook.react.common.annotations.UnstableReactNativeAPI import com.facebook.react.uimanager.events.RCTEventEmitter +@UnstableReactNativeAPI class FakeRCTEventEmitter : RCTEventEmitter { override fun receiveEvent(targetReactTag: Int, eventName: String, event: WritableMap?) = Unit diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/InteropModuleRegistryTest.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/InteropModuleRegistryTest.kt index 3d9c188b250..97fa6ee9e0a 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/InteropModuleRegistryTest.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/bridge/interop/InteropModuleRegistryTest.kt @@ -19,6 +19,7 @@ import org.junit.Assert.assertTrue import org.junit.Before import org.junit.Test +@OptIn(UnstableReactNativeAPI::class) class InteropModuleRegistryTest { lateinit var underTest: InteropModuleRegistry diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListenerTest.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListenerTest.kt index d875aa83ef8..e61021c5b2c 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListenerTest.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/react/fabric/internal/interop/InteropUiBlockListenerTest.kt @@ -7,10 +7,12 @@ package com.facebook.react.fabric.internal.interop +import com.facebook.react.common.annotations.UnstableReactNativeAPI import com.facebook.testutils.fakes.FakeUIManager import org.junit.Assert.assertEquals import org.junit.Test +@OptIn(UnstableReactNativeAPI::class) class InteropUiBlockListenerTest { @Test diff --git a/packages/react-native/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeUIManager.kt b/packages/react-native/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeUIManager.kt index 65db10c1e85..520119603b6 100644 --- a/packages/react-native/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeUIManager.kt +++ b/packages/react-native/ReactAndroid/src/test/java/com/facebook/testutils/fakes/FakeUIManager.kt @@ -15,8 +15,10 @@ import com.facebook.react.bridge.ReadableMap import com.facebook.react.bridge.UIManager import com.facebook.react.bridge.UIManagerListener import com.facebook.react.bridge.WritableMap +import com.facebook.react.common.annotations.UnstableReactNativeAPI import com.facebook.react.fabric.interop.UIBlockViewResolver +@OptIn(UnstableReactNativeAPI::class) class FakeUIManager : UIManager, UIBlockViewResolver { // The number of times resolveView was called