import { useTheme } from "@/providers/ThemeProvider";
import Styles from "@/constants/Styles";
import { View, StyleProp, ViewStyle } from "react-native";
import Text from "./Text";

type Props = {
   category: 'error' | 'success' | 'warning' | 'primary' | 'secondary'
   text: string
   size: 'small' | 'default'
   style?: StyleProp<ViewStyle>
}
export default function LabelStatus({ category, text, size, style }: Props) {
   const { colors } = useTheme();

   const backgroundColor = {
      primary: colors.primary,
      success: colors.success,
      warning: colors.warning,
      error: colors.error,
      secondary: 'gray',
   }[category] || 'gray'; // Removed ColorsStatus[category]?.backgroundColor as ColorsStatus is removed

   return (
      <View style={[
         size == "small" ? Styles.labelStatusSmall : Styles.labelStatus,
         { backgroundColor },
         Styles.round05,
         Styles.contentItemCenter,
         style
      ]}>
         <Text style={[size == "small" ? Styles.textSmallSemiBold : Styles.textMediumSemiBold, Styles.cWhite, { textAlign: 'center' }]}>{text}</Text>
      </View>
   )
}