first commit

This commit is contained in:
2026-03-10 16:18:05 +00:00
commit 11f9c069b5
31635 changed files with 3187747 additions and 0 deletions

View File

@@ -0,0 +1,91 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ColorPropConverter;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSBottomTabsManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSBottomTabsManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSBottomTabsManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "tabBarHidden":
mViewManager.setTabBarHidden(view, value == null ? false : (boolean) value);
break;
case "nativeContainerBackgroundColor":
mViewManager.setNativeContainerBackgroundColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarBackgroundColor":
mViewManager.setTabBarBackgroundColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemTitleFontFamily":
mViewManager.setTabBarItemTitleFontFamily(view, value == null ? null : (String) value);
break;
case "tabBarItemTitleFontSize":
mViewManager.setTabBarItemTitleFontSize(view, value == null ? 0f : ((Double) value).floatValue());
break;
case "tabBarItemTitleFontSizeActive":
mViewManager.setTabBarItemTitleFontSizeActive(view, value == null ? 0f : ((Double) value).floatValue());
break;
case "tabBarItemTitleFontWeight":
mViewManager.setTabBarItemTitleFontWeight(view, value == null ? null : (String) value);
break;
case "tabBarItemTitleFontStyle":
mViewManager.setTabBarItemTitleFontStyle(view, value == null ? null : (String) value);
break;
case "tabBarItemTitleFontColor":
mViewManager.setTabBarItemTitleFontColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemTitleFontColorActive":
mViewManager.setTabBarItemTitleFontColorActive(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemIconColor":
mViewManager.setTabBarItemIconColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemIconColorActive":
mViewManager.setTabBarItemIconColorActive(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemActiveIndicatorColor":
mViewManager.setTabBarItemActiveIndicatorColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemActiveIndicatorEnabled":
mViewManager.setTabBarItemActiveIndicatorEnabled(view, value == null ? true : (boolean) value);
break;
case "tabBarItemRippleColor":
mViewManager.setTabBarItemRippleColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemLabelVisibilityMode":
mViewManager.setTabBarItemLabelVisibilityMode(view, (String) value);
break;
case "tabBarTintColor":
mViewManager.setTabBarTintColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarMinimizeBehavior":
mViewManager.setTabBarMinimizeBehavior(view, (String) value);
break;
case "tabBarControllerMode":
mViewManager.setTabBarControllerMode(view, (String) value);
break;
case "controlNavigationStateInJS":
mViewManager.setControlNavigationStateInJS(view, value == null ? false : (boolean) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,37 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSBottomTabsManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setTabBarHidden(T view, boolean value);
void setNativeContainerBackgroundColor(T view, @Nullable Integer value);
void setTabBarBackgroundColor(T view, @Nullable Integer value);
void setTabBarItemTitleFontFamily(T view, @Nullable String value);
void setTabBarItemTitleFontSize(T view, float value);
void setTabBarItemTitleFontSizeActive(T view, float value);
void setTabBarItemTitleFontWeight(T view, @Nullable String value);
void setTabBarItemTitleFontStyle(T view, @Nullable String value);
void setTabBarItemTitleFontColor(T view, @Nullable Integer value);
void setTabBarItemTitleFontColorActive(T view, @Nullable Integer value);
void setTabBarItemIconColor(T view, @Nullable Integer value);
void setTabBarItemIconColorActive(T view, @Nullable Integer value);
void setTabBarItemActiveIndicatorColor(T view, @Nullable Integer value);
void setTabBarItemActiveIndicatorEnabled(T view, boolean value);
void setTabBarItemRippleColor(T view, @Nullable Integer value);
void setTabBarItemLabelVisibilityMode(T view, @Nullable String value);
void setTabBarTintColor(T view, @Nullable Integer value);
void setTabBarMinimizeBehavior(T view, @Nullable String value);
void setTabBarControllerMode(T view, @Nullable String value);
void setControlNavigationStateInJS(T view, boolean value);
}

View File

@@ -0,0 +1,114 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ColorPropConverter;
import com.facebook.react.bridge.DynamicFromObject;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSBottomTabsScreenManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSBottomTabsScreenManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSBottomTabsScreenManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "isFocused":
mViewManager.setIsFocused(view, value == null ? false : (boolean) value);
break;
case "tabKey":
mViewManager.setTabKey(view, value == null ? null : (String) value);
break;
case "title":
mViewManager.setTitle(view, value == null ? null : (String) value);
break;
case "isTitleUndefined":
mViewManager.setIsTitleUndefined(view, value == null ? true : (boolean) value);
break;
case "badgeValue":
mViewManager.setBadgeValue(view, value == null ? null : (String) value);
break;
case "tabBarItemTestID":
mViewManager.setTabBarItemTestID(view, value == null ? null : (String) value);
break;
case "tabBarItemAccessibilityLabel":
mViewManager.setTabBarItemAccessibilityLabel(view, value == null ? null : (String) value);
break;
case "orientation":
mViewManager.setOrientation(view, (String) value);
break;
case "drawableIconResourceName":
mViewManager.setDrawableIconResourceName(view, value == null ? null : (String) value);
break;
case "imageIconResource":
mViewManager.setImageIconResource(view, (ReadableMap) value);
break;
case "tabBarItemBadgeTextColor":
mViewManager.setTabBarItemBadgeTextColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tabBarItemBadgeBackgroundColor":
mViewManager.setTabBarItemBadgeBackgroundColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "standardAppearance":
mViewManager.setStandardAppearance(view, new DynamicFromObject(value));
break;
case "scrollEdgeAppearance":
mViewManager.setScrollEdgeAppearance(view, new DynamicFromObject(value));
break;
case "iconType":
mViewManager.setIconType(view, (String) value);
break;
case "iconImageSource":
mViewManager.setIconImageSource(view, (ReadableMap) value);
break;
case "iconResourceName":
mViewManager.setIconResourceName(view, value == null ? null : (String) value);
break;
case "selectedIconImageSource":
mViewManager.setSelectedIconImageSource(view, (ReadableMap) value);
break;
case "selectedIconResourceName":
mViewManager.setSelectedIconResourceName(view, value == null ? null : (String) value);
break;
case "systemItem":
mViewManager.setSystemItem(view, (String) value);
break;
case "specialEffects":
mViewManager.setSpecialEffects(view, (ReadableMap) value);
break;
case "overrideScrollViewContentInsetAdjustmentBehavior":
mViewManager.setOverrideScrollViewContentInsetAdjustmentBehavior(view, value == null ? true : (boolean) value);
break;
case "bottomScrollEdgeEffect":
mViewManager.setBottomScrollEdgeEffect(view, (String) value);
break;
case "leftScrollEdgeEffect":
mViewManager.setLeftScrollEdgeEffect(view, (String) value);
break;
case "rightScrollEdgeEffect":
mViewManager.setRightScrollEdgeEffect(view, (String) value);
break;
case "topScrollEdgeEffect":
mViewManager.setTopScrollEdgeEffect(view, (String) value);
break;
case "userInterfaceStyle":
mViewManager.setUserInterfaceStyle(view, (String) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,46 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.Dynamic;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSBottomTabsScreenManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setIsFocused(T view, boolean value);
void setTabKey(T view, @Nullable String value);
void setTitle(T view, @Nullable String value);
void setIsTitleUndefined(T view, boolean value);
void setBadgeValue(T view, @Nullable String value);
void setTabBarItemTestID(T view, @Nullable String value);
void setTabBarItemAccessibilityLabel(T view, @Nullable String value);
void setOrientation(T view, @Nullable String value);
void setDrawableIconResourceName(T view, @Nullable String value);
void setImageIconResource(T view, @Nullable ReadableMap value);
void setTabBarItemBadgeTextColor(T view, @Nullable Integer value);
void setTabBarItemBadgeBackgroundColor(T view, @Nullable Integer value);
void setStandardAppearance(T view, Dynamic value);
void setScrollEdgeAppearance(T view, Dynamic value);
void setIconType(T view, @Nullable String value);
void setIconImageSource(T view, @Nullable ReadableMap value);
void setIconResourceName(T view, @Nullable String value);
void setSelectedIconImageSource(T view, @Nullable ReadableMap value);
void setSelectedIconResourceName(T view, @Nullable String value);
void setSystemItem(T view, @Nullable String value);
void setSpecialEffects(T view, @Nullable ReadableMap value);
void setOverrideScrollViewContentInsetAdjustmentBehavior(T view, boolean value);
void setBottomScrollEdgeEffect(T view, @Nullable String value);
void setLeftScrollEdgeEffect(T view, @Nullable String value);
void setRightScrollEdgeEffect(T view, @Nullable String value);
void setTopScrollEdgeEffect(T view, @Nullable String value);
void setUserInterfaceStyle(T view, @Nullable String value);
}

View File

@@ -0,0 +1,37 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSSafeAreaViewManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSSafeAreaViewManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSSafeAreaViewManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "edges":
mViewManager.setEdges(view, (ReadableMap) value);
break;
case "insetType":
mViewManager.setInsetType(view, (String) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,20 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSSafeAreaViewManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setEdges(T view, @Nullable ReadableMap value);
void setInsetType(T view, @Nullable String value);
}

View File

@@ -0,0 +1,27 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenContainerManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenContainerManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenContainerManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
super.setProperty(view, propName, value);
}
}

View File

@@ -0,0 +1,17 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenContainerManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
// No props
}

View File

@@ -0,0 +1,27 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenContentWrapperManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenContentWrapperManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenContentWrapperManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
super.setProperty(view, propName, value);
}
}

View File

@@ -0,0 +1,17 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenContentWrapperManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
// No props
}

View File

@@ -0,0 +1,27 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenFooterManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenFooterManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenFooterManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
super.setProperty(view, propName, value);
}
}

View File

@@ -0,0 +1,17 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenFooterManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
// No props
}

View File

@@ -0,0 +1,153 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ColorPropConverter;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "screenId":
mViewManager.setScreenId(view, value == null ? "" : (String) value);
break;
case "sheetAllowedDetents":
mViewManager.setSheetAllowedDetents(view, (ReadableArray) value);
break;
case "sheetLargestUndimmedDetent":
mViewManager.setSheetLargestUndimmedDetent(view, value == null ? -1 : ((Double) value).intValue());
break;
case "sheetGrabberVisible":
mViewManager.setSheetGrabberVisible(view, value == null ? false : (boolean) value);
break;
case "sheetCornerRadius":
mViewManager.setSheetCornerRadius(view, value == null ? -1f : ((Double) value).floatValue());
break;
case "sheetExpandsWhenScrolledToEdge":
mViewManager.setSheetExpandsWhenScrolledToEdge(view, value == null ? false : (boolean) value);
break;
case "sheetInitialDetent":
mViewManager.setSheetInitialDetent(view, value == null ? 0 : ((Double) value).intValue());
break;
case "sheetElevation":
mViewManager.setSheetElevation(view, value == null ? 24 : ((Double) value).intValue());
break;
case "sheetShouldOverflowTopInset":
mViewManager.setSheetShouldOverflowTopInset(view, value == null ? false : (boolean) value);
break;
case "sheetDefaultResizeAnimationEnabled":
mViewManager.setSheetDefaultResizeAnimationEnabled(view, value == null ? true : (boolean) value);
break;
case "customAnimationOnSwipe":
mViewManager.setCustomAnimationOnSwipe(view, value == null ? false : (boolean) value);
break;
case "fullScreenSwipeEnabled":
mViewManager.setFullScreenSwipeEnabled(view, (String) value);
break;
case "fullScreenSwipeShadowEnabled":
mViewManager.setFullScreenSwipeShadowEnabled(view, value == null ? true : (boolean) value);
break;
case "homeIndicatorHidden":
mViewManager.setHomeIndicatorHidden(view, value == null ? false : (boolean) value);
break;
case "preventNativeDismiss":
mViewManager.setPreventNativeDismiss(view, value == null ? false : (boolean) value);
break;
case "gestureEnabled":
mViewManager.setGestureEnabled(view, value == null ? true : (boolean) value);
break;
case "statusBarColor":
mViewManager.setStatusBarColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "statusBarHidden":
mViewManager.setStatusBarHidden(view, value == null ? false : (boolean) value);
break;
case "screenOrientation":
mViewManager.setScreenOrientation(view, value == null ? null : (String) value);
break;
case "statusBarAnimation":
mViewManager.setStatusBarAnimation(view, value == null ? null : (String) value);
break;
case "statusBarStyle":
mViewManager.setStatusBarStyle(view, value == null ? null : (String) value);
break;
case "statusBarTranslucent":
mViewManager.setStatusBarTranslucent(view, value == null ? false : (boolean) value);
break;
case "gestureResponseDistance":
mViewManager.setGestureResponseDistance(view, (ReadableMap) value);
break;
case "stackPresentation":
mViewManager.setStackPresentation(view, (String) value);
break;
case "stackAnimation":
mViewManager.setStackAnimation(view, (String) value);
break;
case "transitionDuration":
mViewManager.setTransitionDuration(view, value == null ? 500 : ((Double) value).intValue());
break;
case "replaceAnimation":
mViewManager.setReplaceAnimation(view, (String) value);
break;
case "swipeDirection":
mViewManager.setSwipeDirection(view, (String) value);
break;
case "hideKeyboardOnSwipe":
mViewManager.setHideKeyboardOnSwipe(view, value == null ? false : (boolean) value);
break;
case "activityState":
mViewManager.setActivityState(view, value == null ? -1f : ((Double) value).floatValue());
break;
case "navigationBarColor":
mViewManager.setNavigationBarColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "navigationBarTranslucent":
mViewManager.setNavigationBarTranslucent(view, value == null ? false : (boolean) value);
break;
case "navigationBarHidden":
mViewManager.setNavigationBarHidden(view, value == null ? false : (boolean) value);
break;
case "nativeBackButtonDismissalEnabled":
mViewManager.setNativeBackButtonDismissalEnabled(view, value == null ? false : (boolean) value);
break;
case "bottomScrollEdgeEffect":
mViewManager.setBottomScrollEdgeEffect(view, (String) value);
break;
case "leftScrollEdgeEffect":
mViewManager.setLeftScrollEdgeEffect(view, (String) value);
break;
case "rightScrollEdgeEffect":
mViewManager.setRightScrollEdgeEffect(view, (String) value);
break;
case "topScrollEdgeEffect":
mViewManager.setTopScrollEdgeEffect(view, (String) value);
break;
case "synchronousShadowStateUpdatesEnabled":
mViewManager.setSynchronousShadowStateUpdatesEnabled(view, value == null ? false : (boolean) value);
break;
case "androidResetScreenShadowStateOnOrientationChangeEnabled":
mViewManager.setAndroidResetScreenShadowStateOnOrientationChangeEnabled(view, value == null ? true : (boolean) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,59 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.bridge.ReadableMap;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setScreenId(T view, @Nullable String value);
void setSheetAllowedDetents(T view, @Nullable ReadableArray value);
void setSheetLargestUndimmedDetent(T view, int value);
void setSheetGrabberVisible(T view, boolean value);
void setSheetCornerRadius(T view, float value);
void setSheetExpandsWhenScrolledToEdge(T view, boolean value);
void setSheetInitialDetent(T view, int value);
void setSheetElevation(T view, int value);
void setSheetShouldOverflowTopInset(T view, boolean value);
void setSheetDefaultResizeAnimationEnabled(T view, boolean value);
void setCustomAnimationOnSwipe(T view, boolean value);
void setFullScreenSwipeEnabled(T view, @Nullable String value);
void setFullScreenSwipeShadowEnabled(T view, boolean value);
void setHomeIndicatorHidden(T view, boolean value);
void setPreventNativeDismiss(T view, boolean value);
void setGestureEnabled(T view, boolean value);
void setStatusBarColor(T view, @Nullable Integer value);
void setStatusBarHidden(T view, boolean value);
void setScreenOrientation(T view, @Nullable String value);
void setStatusBarAnimation(T view, @Nullable String value);
void setStatusBarStyle(T view, @Nullable String value);
void setStatusBarTranslucent(T view, boolean value);
void setGestureResponseDistance(T view, @Nullable ReadableMap value);
void setStackPresentation(T view, @Nullable String value);
void setStackAnimation(T view, @Nullable String value);
void setTransitionDuration(T view, int value);
void setReplaceAnimation(T view, @Nullable String value);
void setSwipeDirection(T view, @Nullable String value);
void setHideKeyboardOnSwipe(T view, boolean value);
void setActivityState(T view, float value);
void setNavigationBarColor(T view, @Nullable Integer value);
void setNavigationBarTranslucent(T view, boolean value);
void setNavigationBarHidden(T view, boolean value);
void setNativeBackButtonDismissalEnabled(T view, boolean value);
void setBottomScrollEdgeEffect(T view, @Nullable String value);
void setLeftScrollEdgeEffect(T view, @Nullable String value);
void setRightScrollEdgeEffect(T view, @Nullable String value);
void setTopScrollEdgeEffect(T view, @Nullable String value);
void setSynchronousShadowStateUpdatesEnabled(T view, boolean value);
void setAndroidResetScreenShadowStateOnOrientationChangeEnabled(T view, boolean value);
}

View File

@@ -0,0 +1,128 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ColorPropConverter;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenStackHeaderConfigManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenStackHeaderConfigManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenStackHeaderConfigManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "backgroundColor":
mViewManager.setBackgroundColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "backTitle":
mViewManager.setBackTitle(view, value == null ? null : (String) value);
break;
case "backTitleFontFamily":
mViewManager.setBackTitleFontFamily(view, value == null ? null : (String) value);
break;
case "backTitleFontSize":
mViewManager.setBackTitleFontSize(view, value == null ? 0 : ((Double) value).intValue());
break;
case "backTitleVisible":
mViewManager.setBackTitleVisible(view, value == null ? true : (boolean) value);
break;
case "color":
mViewManager.setColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "direction":
mViewManager.setDirection(view, (String) value);
break;
case "hidden":
mViewManager.setHidden(view, value == null ? false : (boolean) value);
break;
case "hideShadow":
mViewManager.setHideShadow(view, value == null ? false : (boolean) value);
break;
case "largeTitle":
mViewManager.setLargeTitle(view, value == null ? false : (boolean) value);
break;
case "largeTitleFontFamily":
mViewManager.setLargeTitleFontFamily(view, value == null ? null : (String) value);
break;
case "largeTitleFontSize":
mViewManager.setLargeTitleFontSize(view, value == null ? 0 : ((Double) value).intValue());
break;
case "largeTitleFontWeight":
mViewManager.setLargeTitleFontWeight(view, value == null ? null : (String) value);
break;
case "largeTitleBackgroundColor":
mViewManager.setLargeTitleBackgroundColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "largeTitleHideShadow":
mViewManager.setLargeTitleHideShadow(view, value == null ? false : (boolean) value);
break;
case "largeTitleColor":
mViewManager.setLargeTitleColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "translucent":
mViewManager.setTranslucent(view, value == null ? false : (boolean) value);
break;
case "title":
mViewManager.setTitle(view, value == null ? null : (String) value);
break;
case "titleFontFamily":
mViewManager.setTitleFontFamily(view, value == null ? null : (String) value);
break;
case "titleFontSize":
mViewManager.setTitleFontSize(view, value == null ? 0 : ((Double) value).intValue());
break;
case "titleFontWeight":
mViewManager.setTitleFontWeight(view, value == null ? null : (String) value);
break;
case "titleColor":
mViewManager.setTitleColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "disableBackButtonMenu":
mViewManager.setDisableBackButtonMenu(view, value == null ? false : (boolean) value);
break;
case "backButtonDisplayMode":
mViewManager.setBackButtonDisplayMode(view, (String) value);
break;
case "hideBackButton":
mViewManager.setHideBackButton(view, value == null ? false : (boolean) value);
break;
case "backButtonInCustomView":
mViewManager.setBackButtonInCustomView(view, value == null ? false : (boolean) value);
break;
case "blurEffect":
mViewManager.setBlurEffect(view, (String) value);
break;
case "topInsetEnabled":
mViewManager.setTopInsetEnabled(view, value == null ? false : (boolean) value);
break;
case "headerLeftBarButtonItems":
mViewManager.setHeaderLeftBarButtonItems(view, (ReadableArray) value);
break;
case "headerRightBarButtonItems":
mViewManager.setHeaderRightBarButtonItems(view, (ReadableArray) value);
break;
case "synchronousShadowStateUpdatesEnabled":
mViewManager.setSynchronousShadowStateUpdatesEnabled(view, value == null ? false : (boolean) value);
break;
case "userInterfaceStyle":
mViewManager.setUserInterfaceStyle(view, (String) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,50 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenStackHeaderConfigManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setBackgroundColor(T view, @Nullable Integer value);
void setBackTitle(T view, @Nullable String value);
void setBackTitleFontFamily(T view, @Nullable String value);
void setBackTitleFontSize(T view, int value);
void setBackTitleVisible(T view, boolean value);
void setColor(T view, @Nullable Integer value);
void setDirection(T view, @Nullable String value);
void setHidden(T view, boolean value);
void setHideShadow(T view, boolean value);
void setLargeTitle(T view, boolean value);
void setLargeTitleFontFamily(T view, @Nullable String value);
void setLargeTitleFontSize(T view, int value);
void setLargeTitleFontWeight(T view, @Nullable String value);
void setLargeTitleBackgroundColor(T view, @Nullable Integer value);
void setLargeTitleHideShadow(T view, boolean value);
void setLargeTitleColor(T view, @Nullable Integer value);
void setTranslucent(T view, boolean value);
void setTitle(T view, @Nullable String value);
void setTitleFontFamily(T view, @Nullable String value);
void setTitleFontSize(T view, int value);
void setTitleFontWeight(T view, @Nullable String value);
void setTitleColor(T view, @Nullable Integer value);
void setDisableBackButtonMenu(T view, boolean value);
void setBackButtonDisplayMode(T view, @Nullable String value);
void setHideBackButton(T view, boolean value);
void setBackButtonInCustomView(T view, boolean value);
void setBlurEffect(T view, @Nullable String value);
void setTopInsetEnabled(T view, boolean value);
void setHeaderLeftBarButtonItems(T view, @Nullable ReadableArray value);
void setHeaderRightBarButtonItems(T view, @Nullable ReadableArray value);
void setSynchronousShadowStateUpdatesEnabled(T view, boolean value);
void setUserInterfaceStyle(T view, @Nullable String value);
}

View File

@@ -0,0 +1,39 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenStackHeaderSubviewManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenStackHeaderSubviewManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenStackHeaderSubviewManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "type":
mViewManager.setType(view, (String) value);
break;
case "hidesSharedBackground":
mViewManager.setHidesSharedBackground(view, value == null ? false : (boolean) value);
break;
case "synchronousShadowStateUpdatesEnabled":
mViewManager.setSynchronousShadowStateUpdatesEnabled(view, value == null ? false : (boolean) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,20 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenStackHeaderSubviewManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setType(T view, @Nullable String value);
void setHidesSharedBackground(T view, boolean value);
void setSynchronousShadowStateUpdatesEnabled(T view, boolean value);
}

View File

@@ -0,0 +1,33 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSScreenStackManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSScreenStackManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSScreenStackManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "iosPreventReattachmentOfDismissedScreens":
mViewManager.setIosPreventReattachmentOfDismissedScreens(view, value == null ? false : (boolean) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,17 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSScreenStackManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setIosPreventReattachmentOfDismissedScreens(T view, boolean value);
}

View File

@@ -0,0 +1,107 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.bridge.ColorPropConverter;
import com.facebook.react.bridge.ReadableArray;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSSearchBarManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSSearchBarManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSSearchBarManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "hideWhenScrolling":
mViewManager.setHideWhenScrolling(view, value == null ? true : (boolean) value);
break;
case "autoCapitalize":
mViewManager.setAutoCapitalize(view, (String) value);
break;
case "placeholder":
mViewManager.setPlaceholder(view, value == null ? null : (String) value);
break;
case "placement":
mViewManager.setPlacement(view, (String) value);
break;
case "allowToolbarIntegration":
mViewManager.setAllowToolbarIntegration(view, value == null ? true : (boolean) value);
break;
case "obscureBackground":
mViewManager.setObscureBackground(view, (String) value);
break;
case "hideNavigationBar":
mViewManager.setHideNavigationBar(view, (String) value);
break;
case "cancelButtonText":
mViewManager.setCancelButtonText(view, value == null ? null : (String) value);
break;
case "barTintColor":
mViewManager.setBarTintColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "tintColor":
mViewManager.setTintColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "textColor":
mViewManager.setTextColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "autoFocus":
mViewManager.setAutoFocus(view, value == null ? false : (boolean) value);
break;
case "disableBackButtonOverride":
mViewManager.setDisableBackButtonOverride(view, value == null ? false : (boolean) value);
break;
case "inputType":
mViewManager.setInputType(view, value == null ? null : (String) value);
break;
case "hintTextColor":
mViewManager.setHintTextColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "headerIconColor":
mViewManager.setHeaderIconColor(view, ColorPropConverter.getColor(value, view.getContext()));
break;
case "shouldShowHintSearchIcon":
mViewManager.setShouldShowHintSearchIcon(view, value == null ? true : (boolean) value);
break;
default:
super.setProperty(view, propName, value);
}
}
@Override
public void receiveCommand(T view, String commandName, ReadableArray args) {
switch (commandName) {
case "blur":
mViewManager.blur(view);
break;
case "focus":
mViewManager.focus(view);
break;
case "clearText":
mViewManager.clearText(view);
break;
case "toggleCancelButton":
mViewManager.toggleCancelButton(view, args.getBoolean(0));
break;
case "setText":
mViewManager.setText(view, args.getString(0));
break;
case "cancelSearch":
mViewManager.cancelSearch(view);
break;
}
}
}

View File

@@ -0,0 +1,40 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSSearchBarManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setHideWhenScrolling(T view, boolean value);
void setAutoCapitalize(T view, @Nullable String value);
void setPlaceholder(T view, @Nullable String value);
void setPlacement(T view, @Nullable String value);
void setAllowToolbarIntegration(T view, boolean value);
void setObscureBackground(T view, @Nullable String value);
void setHideNavigationBar(T view, @Nullable String value);
void setCancelButtonText(T view, @Nullable String value);
void setBarTintColor(T view, @Nullable Integer value);
void setTintColor(T view, @Nullable Integer value);
void setTextColor(T view, @Nullable Integer value);
void setAutoFocus(T view, boolean value);
void setDisableBackButtonOverride(T view, boolean value);
void setInputType(T view, @Nullable String value);
void setHintTextColor(T view, @Nullable Integer value);
void setHeaderIconColor(T view, @Nullable Integer value);
void setShouldShowHintSearchIcon(T view, boolean value);
void blur(T view);
void focus(T view);
void clearText(T view);
void toggleCancelButton(T view, boolean flag);
void setText(T view, String text);
void cancelSearch(T view);
}

View File

@@ -0,0 +1,27 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSStackHostManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSStackHostManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSStackHostManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
super.setProperty(view, propName, value);
}
}

View File

@@ -0,0 +1,17 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSStackHostManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
// No props
}

View File

@@ -0,0 +1,36 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaDelegate.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.BaseViewManager;
import com.facebook.react.uimanager.BaseViewManagerDelegate;
import com.facebook.react.uimanager.LayoutShadowNode;
@SuppressWarnings("deprecation")
public class RNSStackScreenManagerDelegate<T extends View, U extends BaseViewManager<T, ? extends LayoutShadowNode> & RNSStackScreenManagerInterface<T>> extends BaseViewManagerDelegate<T, U> {
public RNSStackScreenManagerDelegate(U viewManager) {
super(viewManager);
}
@Override
public void setProperty(T view, String propName, @Nullable Object value) {
switch (propName) {
case "activityMode":
mViewManager.setActivityMode(view, (String) value);
break;
case "screenKey":
mViewManager.setScreenKey(view, value == null ? null : (String) value);
break;
default:
super.setProperty(view, propName, value);
}
}
}

View File

@@ -0,0 +1,19 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GeneratePropsJavaInterface.js
*/
package com.facebook.react.viewmanagers;
import android.view.View;
import androidx.annotation.Nullable;
import com.facebook.react.uimanager.ViewManagerWithGeneratedInterface;
public interface RNSStackScreenManagerInterface<T extends View> extends ViewManagerWithGeneratedInterface {
void setActivityMode(T view, @Nullable String value);
void setScreenKey(T view, @Nullable String value);
}

View File

@@ -0,0 +1,56 @@
package com.swmansion.rnscreens
import android.content.Context
import android.view.ViewGroup
import androidx.annotation.UiThread
import com.facebook.react.bridge.ReactContext
import com.facebook.react.uimanager.StateWrapper
import com.facebook.react.uimanager.UIManagerModule
import com.swmansion.rnscreens.utils.PaddingBundle
import kotlin.math.abs
abstract class FabricEnabledHeaderConfigViewGroup(
context: Context,
) : ViewGroup(context) {
private var lastPaddingStart = 0
private var lastPaddingEnd = 0
private var lastHeight = 0
fun setStateWrapper(wrapper: StateWrapper?) = Unit
fun updateHeaderConfigState(
width: Int,
height: Int,
paddingStart: Int,
paddingEnd: Int,
) {
// Implementation of this method differs between Fabric & Paper!
updateState(width, height, paddingStart, paddingEnd)
}
// Implementation of this method differs between Fabric & Paper!
@UiThread
private fun updateState(
width: Int,
height: Int,
paddingStart: Int,
paddingEnd: Int,
) {
// Note that on Paper we do not convert these props from px to dip. This is done internally by RN.
if (abs(lastPaddingStart - paddingStart) < DELTA && abs(lastPaddingEnd - paddingEnd) < DELTA && abs(lastHeight - height) < DELTA) {
return
}
lastPaddingStart = paddingStart
lastPaddingEnd = paddingEnd
lastHeight = height
val reactContext = context as? ReactContext
val uiManagerModule = reactContext?.getNativeModule(UIManagerModule::class.java)
uiManagerModule?.setViewLocalData(this.id, PaddingBundle(height.toFloat(), paddingStart.toFloat(), paddingEnd.toFloat()))
}
companion object {
private const val DELTA = 0.9
}
}

View File

@@ -0,0 +1,19 @@
package com.swmansion.rnscreens
import android.content.Context
import android.view.ViewGroup
import com.facebook.react.uimanager.StateWrapper
abstract class FabricEnabledHeaderSubviewViewGroup(
context: Context?,
) : ViewGroup(context) {
fun setStateWrapper(wrapper: StateWrapper?) = Unit
// Fabric only
protected fun updateSubviewFrameState(
width: Int,
height: Int,
offsetX: Int,
offsetY: Int,
) = Unit
}

View File

@@ -0,0 +1,19 @@
package com.swmansion.rnscreens
import android.view.ViewGroup
import com.facebook.react.bridge.ReactContext
import com.facebook.react.uimanager.StateWrapper
abstract class FabricEnabledViewGroup(
context: ReactContext?,
) : ViewGroup(context) {
fun setStateWrapper(wrapper: StateWrapper?) = Unit
protected fun updateScreenSizeFabric(
width: Int,
height: Int,
headerHeight: Int,
) {
// do nothing
}
}

View File

@@ -0,0 +1,23 @@
package com.swmansion.rnscreens
import com.facebook.react.fabric.FabricUIManager
class NativeProxy {
// do nothing on Paper
fun nativeAddMutationsListener(fabricUIManager: FabricUIManager) = Unit
fun cleanupExpiredMountingCoordinators() = Unit
fun invalidateNative() = Unit
companion object {
fun addScreenToMap(
tag: Int,
view: Screen,
) = Unit
fun removeScreenFromMap(tag: Int) = Unit
fun clearMapOnInvalidate() = Unit
}
}

View File

@@ -0,0 +1,35 @@
/**
* This code was generated by [react-native-codegen](https://www.npmjs.com/package/react-native-codegen).
*
* Do not edit this file as changes may cause incorrect behavior and will be lost
* once the code is regenerated.
*
* @generated by codegen project: GenerateModuleJavaSpec.js
*
* @nolint
*/
package com.swmansion.rnscreens;
import com.facebook.proguard.annotations.DoNotStrip;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;
import com.facebook.react.turbomodule.core.interfaces.TurboModule;
import javax.annotation.Nonnull;
public abstract class NativeScreensModuleSpec extends ReactContextBaseJavaModule implements TurboModule {
public static final String NAME = "RNSModule";
public NativeScreensModuleSpec(ReactApplicationContext reactContext) {
super(reactContext);
}
@Override
public @Nonnull String getName() {
return NAME;
}
}