diff --git a/packages/react-native-codegen/BUCK b/packages/react-native-codegen/BUCK index 663916dc6d1..c02c149ec89 100644 --- a/packages/react-native-codegen/BUCK +++ b/packages/react-native-codegen/BUCK @@ -1,9 +1,10 @@ load("@fbsource//tools/build_defs:default_platform_defs.bzl", "ANDROID", "APPLE") load("@fbsource//tools/build_defs:fb_native_wrapper.bzl", "fb_native") load("@fbsource//tools/build_defs:fb_xplat_cxx_binary.bzl", "fb_xplat_cxx_binary") -load("@fbsource//tools/build_defs/oss:rn_defs.bzl", "rn_xplat_cxx_library") +load("@fbsource//tools/build_defs/oss:rn_defs.bzl", "rn_android_library", "rn_xplat_cxx_library") load("@fbsource//tools/build_defs/third_party:yarn_defs.bzl", "yarn_workspace") load("@fbsource//xplat/js/react-native-github/packages/react-native-codegen:DEFS.bzl", "rn_codegen") +load("//tools/build_defs/oss:rn_defs.bzl", "react_native_target") fb_native.sh_binary( name = "write_to_json", @@ -71,6 +72,21 @@ fb_xplat_cxx_binary( ], ) +rn_android_library( + name = "rn_codegen_library_java", + srcs = glob(["**/*.java"]), + visibility = [ + "PUBLIC", + ], + deps = [ + react_native_target("java/com/facebook/react/bridge:bridge"), + react_native_target("java/com/facebook/react/common:common"), + react_native_target("java/com/facebook/react/views/view:view"), + react_native_target("java/com/facebook/react/uimanager:uimanager"), + ":generated_components_java-codegen_tests", + ], +) + rn_xplat_cxx_library( name = "rn_codegen_library", srcs = ["buck_tests/emptyFile.cpp"], diff --git a/packages/react-native-codegen/buck_tests/java/ArrayPropsNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/ArrayPropsNativeComponentViewManager.java new file mode 100644 index 00000000000..232b346cda7 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/ArrayPropsNativeComponentViewManager.java @@ -0,0 +1,50 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.bridge.ReadableArray; +import com.facebook.react.viewmanagers.ArrayPropsNativeComponentDelegate; +import com.facebook.react.viewmanagers.ArrayPropsNativeComponentInterface; + +public class ArrayPropsNativeComponentViewManager extends SimpleViewManager + implements ArrayPropsNativeComponentInterface { + + public static final String REACT_CLASS = "ArrayPropsNativeComponent"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + ArrayPropsNativeComponentDelegate delegate = new ArrayPropsNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setNames(ViewGroup view, ReadableArray value) {} + + @Override + public void setDisableds(ViewGroup view, ReadableArray value) {} + + @Override + public void setProgress(ViewGroup view, ReadableArray value) {} + + @Override + public void setRadii(ViewGroup view, ReadableArray value) {} + + @Override + public void setColors(ViewGroup view, ReadableArray value) {} + + @Override + public void setSrcs(ViewGroup view, ReadableArray value) {} + + @Override + public void setPoints(ViewGroup view, ReadableArray value) {} + + @Override + public void setSizes(ViewGroup view, ReadableArray value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/BooleanPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/BooleanPropNativeComponentViewManager.java index 37c93140094..20cce99232d 100644 --- a/packages/react-native-codegen/buck_tests/java/BooleanPropNativeComponentViewManager.java +++ b/packages/react-native-codegen/buck_tests/java/BooleanPropNativeComponentViewManager.java @@ -1,9 +1,27 @@ package com.facebook.react.uimanager; import android.view.ViewGroup; +import com.facebook.react.viewmanagers.BooleanPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.BooleanPropNativeComponentInterface; -public class BooleanPropNativeComponentViewManager extends BaseViewManager - implements BooleanPropNativeComponentInterface { +public class BooleanPropNativeComponentViewManager extends SimpleViewManager + implements BooleanPropNativeComponentInterface { + public static final String REACT_CLASS = "BooleanPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + BooleanPropNativeComponentDelegate delegate = + new BooleanPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } @Override public void setDisabled(ViewGroup view, boolean value) {} diff --git a/packages/react-native-codegen/buck_tests/java/ColorPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/ColorPropNativeComponentViewManager.java new file mode 100644 index 00000000000..ad57ca29c64 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/ColorPropNativeComponentViewManager.java @@ -0,0 +1,28 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.ColorPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.ColorPropNativeComponentInterface; + +public class ColorPropNativeComponentViewManager extends SimpleViewManager + implements ColorPropNativeComponentInterface { + + public static final String REACT_CLASS = "ColorPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + ColorPropNativeComponentDelegate delegate = new ColorPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setTintColor(ViewGroup view, Integer value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/EnumPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/EnumPropNativeComponentViewManager.java new file mode 100644 index 00000000000..4a86eb35f5a --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/EnumPropNativeComponentViewManager.java @@ -0,0 +1,28 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.EnumPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.EnumPropNativeComponentInterface; + +public class EnumPropNativeComponentViewManager extends SimpleViewManager + implements EnumPropNativeComponentInterface { + + public static final String REACT_CLASS = "EnumPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + EnumPropNativeComponentDelegate delegate = new EnumPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setAlignment(ViewGroup view, String value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/EventNestedObjectPropsNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/EventNestedObjectPropsNativeComponentViewManager.java new file mode 100644 index 00000000000..4079d9fc1d0 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/EventNestedObjectPropsNativeComponentViewManager.java @@ -0,0 +1,29 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.EventNestedObjectPropsNativeComponentDelegate; +import com.facebook.react.viewmanagers.EventNestedObjectPropsNativeComponentInterface; + +public class EventNestedObjectPropsNativeComponentViewManager extends SimpleViewManager + implements EventNestedObjectPropsNativeComponentInterface { + + public static final String REACT_CLASS = "EventNestedObjectPropsNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + EventNestedObjectPropsNativeComponentDelegate delegate = + new EventNestedObjectPropsNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setDisabled(ViewGroup view, boolean value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/EventPropsNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/EventPropsNativeComponentViewManager.java new file mode 100644 index 00000000000..db321ddf502 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/EventPropsNativeComponentViewManager.java @@ -0,0 +1,28 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.EventPropsNativeComponentDelegate; +import com.facebook.react.viewmanagers.EventPropsNativeComponentInterface; + +public class EventPropsNativeComponentViewManager extends SimpleViewManager + implements EventPropsNativeComponentInterface { + + public static final String REACT_CLASS = "EventPropsNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + EventPropsNativeComponentDelegate delegate = new EventPropsNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setDisabled(ViewGroup view, boolean value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/FloatPropsNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/FloatPropsNativeComponentViewManager.java new file mode 100644 index 00000000000..c2b056b8aac --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/FloatPropsNativeComponentViewManager.java @@ -0,0 +1,43 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.FloatPropsNativeComponentDelegate; +import com.facebook.react.viewmanagers.FloatPropsNativeComponentInterface; + +public class FloatPropsNativeComponentViewManager extends SimpleViewManager + implements FloatPropsNativeComponentInterface { + + public static final String REACT_CLASS = "FloatPropsNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + FloatPropsNativeComponentDelegate delegate = new FloatPropsNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setBlurRadius(ViewGroup view, Float value) {} + + @Override + public void setBlurRadius2(ViewGroup view, Float value) {} + + @Override + public void setBlurRadius3(ViewGroup view, Float value) {} + + @Override + public void setBlurRadius4(ViewGroup view, Float value) {} + + @Override + public void setBlurRadius5(ViewGroup view, Float value) {} + + @Override + public void setBlurRadius6(ViewGroup view, Float value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/ImagePropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/ImagePropNativeComponentViewManager.java new file mode 100644 index 00000000000..66cea1404b0 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/ImagePropNativeComponentViewManager.java @@ -0,0 +1,29 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.viewmanagers.ImagePropNativeComponentDelegate; +import com.facebook.react.viewmanagers.ImagePropNativeComponentInterface; + +public class ImagePropNativeComponentViewManager extends SimpleViewManager + implements ImagePropNativeComponentInterface { + + public static final String REACT_CLASS = "ImagePropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + ImagePropNativeComponentDelegate delegate = new ImagePropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setThumbImage(ViewGroup view, ReadableMap value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/IntegerPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/IntegerPropNativeComponentViewManager.java new file mode 100644 index 00000000000..c85e93e8886 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/IntegerPropNativeComponentViewManager.java @@ -0,0 +1,35 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.IntegerPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.IntegerPropNativeComponentInterface; + +public class IntegerPropNativeComponentViewManager extends SimpleViewManager + implements IntegerPropNativeComponentInterface { + + public static final String REACT_CLASS = "IntegerPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + IntegerPropNativeComponentDelegate delegate = + new IntegerPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setProgress1(ViewGroup view, int value) {} + + @Override + public void setProgress2(ViewGroup view, int value) {} + + @Override + public void setProgress3(ViewGroup view, int value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/InterfaceOnlyNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/InterfaceOnlyNativeComponentViewManager.java new file mode 100644 index 00000000000..c03d488b519 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/InterfaceOnlyNativeComponentViewManager.java @@ -0,0 +1,29 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.InterfaceOnlyNativeComponentDelegate; +import com.facebook.react.viewmanagers.InterfaceOnlyNativeComponentInterface; + +public class InterfaceOnlyNativeComponentViewManager extends SimpleViewManager + implements InterfaceOnlyNativeComponentInterface { + + public static final String REACT_CLASS = "InterfaceOnlyNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + InterfaceOnlyNativeComponentDelegate delegate = + new InterfaceOnlyNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setAccessibilityHint(ViewGroup view, String value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/MultiNativePropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/MultiNativePropNativeComponentViewManager.java new file mode 100644 index 00000000000..fe964023df7 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/MultiNativePropNativeComponentViewManager.java @@ -0,0 +1,39 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.viewmanagers.MultiNativePropNativeComponentDelegate; +import com.facebook.react.viewmanagers.MultiNativePropNativeComponentInterface; + +public class MultiNativePropNativeComponentViewManager extends SimpleViewManager + implements MultiNativePropNativeComponentInterface { + + public static final String REACT_CLASS = "MultiNativePropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + MultiNativePropNativeComponentDelegate delegate = + new MultiNativePropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setThumbImage(ViewGroup view, ReadableMap value) {} + + @Override + public void setColor(ViewGroup view, Integer value) {} + + @Override + public void setThumbTintColor(ViewGroup view, Integer value) {} + + @Override + public void setPoint(ViewGroup view, ReadableMap value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/NoPropsNoEventsNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/NoPropsNoEventsNativeComponentViewManager.java new file mode 100644 index 00000000000..df5987cee8d --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/NoPropsNoEventsNativeComponentViewManager.java @@ -0,0 +1,26 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.NoPropsNoEventsNativeComponentDelegate; +import com.facebook.react.viewmanagers.NoPropsNoEventsNativeComponentInterface; + +public class NoPropsNoEventsNativeComponentViewManager extends SimpleViewManager + implements NoPropsNoEventsNativeComponentInterface { + + public static final String REACT_CLASS = "NoPropsNoEventsNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + NoPropsNoEventsNativeComponentDelegate delegate = + new NoPropsNoEventsNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } +} diff --git a/packages/react-native-codegen/buck_tests/java/PointPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/PointPropNativeComponentViewManager.java new file mode 100644 index 00000000000..1f045b7df24 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/PointPropNativeComponentViewManager.java @@ -0,0 +1,29 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.bridge.ReadableMap; +import com.facebook.react.viewmanagers.PointPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.PointPropNativeComponentInterface; + +public class PointPropNativeComponentViewManager extends SimpleViewManager + implements PointPropNativeComponentInterface { + + public static final String REACT_CLASS = "PointPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + PointPropNativeComponentDelegate delegate = new PointPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setStartPoint(ViewGroup view, ReadableMap value) {} +} diff --git a/packages/react-native-codegen/buck_tests/java/StringPropNativeComponentViewManager.java b/packages/react-native-codegen/buck_tests/java/StringPropNativeComponentViewManager.java new file mode 100644 index 00000000000..04619659f07 --- /dev/null +++ b/packages/react-native-codegen/buck_tests/java/StringPropNativeComponentViewManager.java @@ -0,0 +1,31 @@ +package com.facebook.react.uimanager; + +import android.view.ViewGroup; +import com.facebook.react.viewmanagers.StringPropNativeComponentDelegate; +import com.facebook.react.viewmanagers.StringPropNativeComponentInterface; + +public class StringPropNativeComponentViewManager extends SimpleViewManager + implements StringPropNativeComponentInterface { + + public static final String REACT_CLASS = "StringPropNativeComponentView"; + + @Override + public String getName() { + return REACT_CLASS; + } + + private void test() { + StringPropNativeComponentDelegate delegate = new StringPropNativeComponentDelegate(); + } + + @Override + public ViewGroup createViewInstance(ThemedReactContext context) { + throw new IllegalStateException(); + } + + @Override + public void setAccessibilityHint(ViewGroup view, String value) {} + + @Override + public void setAccessibilityRole(ViewGroup view, String value) {} +}