1e650bfb3S猫头猫import React from 'react'; 2fe32deaaS猫头猫import {StyleProp, StyleSheet, ViewStyle} from 'react-native'; 3e650bfb3S猫头猫import rpx from '@/utils/rpx'; 4e650bfb3S猫头猫import ThemeText from './themeText'; 5e650bfb3S猫头猫import {iconSizeConst} from '@/constants/uiConst'; 6e650bfb3S猫头猫import useColors from '@/hooks/useColors'; 7e650bfb3S猫头猫import {TouchableOpacity} from 'react-native-gesture-handler'; 8*5589cdf3S猫头猫import Icon, {IIconName} from '@/components/base/icon.tsx'; 9e650bfb3S猫头猫 10e650bfb3S猫头猫interface IProps { 11*5589cdf3S猫头猫 icon: IIconName; 12e650bfb3S猫头猫 onPress?: () => void; 13fe32deaaS猫头猫 containerStyle?: StyleProp<ViewStyle>; 14e650bfb3S猫头猫 children?: string; 15e650bfb3S猫头猫} 16e650bfb3S猫头猫export default function (props: IProps) { 17fe32deaaS猫头猫 const {icon, children, onPress, containerStyle} = props; 18e650bfb3S猫头猫 const colors = useColors(); 19e650bfb3S猫头猫 20e650bfb3S猫头猫 return ( 21fe32deaaS猫头猫 <TouchableOpacity 2291eb8fa8S猫头猫 activeOpacity={0.7} 23fe32deaaS猫头猫 style={[style.container, containerStyle]} 24fe32deaaS猫头猫 onPress={onPress}> 25e650bfb3S猫头猫 <Icon name={icon} size={iconSizeConst.light} color={colors.text} /> 26e650bfb3S猫头猫 <ThemeText style={style.text} fontSize={'content'}> 27e650bfb3S猫头猫 {children} 28e650bfb3S猫头猫 </ThemeText> 29e650bfb3S猫头猫 </TouchableOpacity> 30e650bfb3S猫头猫 ); 31e650bfb3S猫头猫} 32e650bfb3S猫头猫 33e650bfb3S猫头猫const style = StyleSheet.create({ 34e650bfb3S猫头猫 container: { 35e650bfb3S猫头猫 flexDirection: 'row', 36e650bfb3S猫头猫 alignItems: 'center', 37e650bfb3S猫头猫 paddingHorizontal: rpx(16), 38e650bfb3S猫头猫 paddingVertical: rpx(8), 39e650bfb3S猫头猫 }, 40e650bfb3S猫头猫 text: { 41e650bfb3S猫头猫 marginLeft: rpx(8), 42e650bfb3S猫头猫 }, 43e650bfb3S猫头猫}); 44