import { View, type ViewProps } from "react-native"; import { SafeAreaView, type Edge } from "react-native-safe-area-context"; import { cn } from "@/lib/utils"; export interface ScreenContainerProps extends ViewProps { /** * SafeArea edges to apply. Defaults to ["top", "left", "right"]. * Bottom is typically handled by Tab Bar. */ edges?: Edge[]; /** * Tailwind className for the content area. */ className?: string; /** * Additional className for the outer container (background layer). */ containerClassName?: string; /** * Additional className for the SafeAreaView (content layer). */ safeAreaClassName?: string; } /** * A container component that properly handles SafeArea and background colors. * * The outer View extends to full screen (including status bar area) with the background color, * while the inner SafeAreaView ensures content is within safe bounds. * * Usage: * ```tsx * * * Welcome * * * ``` */ export function ScreenContainer({ children, edges = ["top", "left", "right"], className, containerClassName, safeAreaClassName, style, ...props }: ScreenContainerProps) { return ( {children} ); }