32 lines
787 B
TypeScript
32 lines
787 B
TypeScript
import React from 'react';
|
|
import { View, Text, StyleSheet } from 'react-native';
|
|
import { spacing, borderRadius, fontSize, fontWeight } from '../../theme';
|
|
|
|
interface BadgeProps {
|
|
label: string;
|
|
color: string;
|
|
textColor?: string;
|
|
}
|
|
|
|
export default function Badge({ label, color, textColor = '#fff' }: BadgeProps) {
|
|
return (
|
|
<View style={[styles.badge, { backgroundColor: color + '22', borderColor: color }]}>
|
|
<Text style={[styles.text, { color }]}>{label}</Text>
|
|
</View>
|
|
);
|
|
}
|
|
|
|
const styles = StyleSheet.create({
|
|
badge: {
|
|
paddingHorizontal: spacing.m,
|
|
paddingVertical: spacing.xs,
|
|
borderRadius: borderRadius.xl,
|
|
borderWidth: 1,
|
|
alignSelf: 'flex-start',
|
|
},
|
|
text: {
|
|
fontSize: fontSize.xs,
|
|
fontWeight: fontWeight.semibold,
|
|
},
|
|
});
|