1e650bfb3S猫头猫import useColors from '@/hooks/useColors'; 2e650bfb3S猫头猫import rpx from '@/utils/rpx'; 3e650bfb3S猫头猫import Color from 'color'; 4e650bfb3S猫头猫import React from 'react'; 5e650bfb3S猫头猫import {StyleSheet, TextInput, TextInputProps} from 'react-native'; 6e650bfb3S猫头猫 7e650bfb3S猫头猫interface IInputProps extends TextInputProps { 8e650bfb3S猫头猫 fontColor?: string; 9*ab5f994aSmaotoumao hasHorizontalPadding?: boolean; 10e650bfb3S猫头猫} 11e650bfb3S猫头猫 12e650bfb3S猫头猫export default function Input(props: IInputProps) { 13*ab5f994aSmaotoumao const {fontColor, hasHorizontalPadding = true} = props; 14e650bfb3S猫头猫 const colors = useColors(); 15e650bfb3S猫头猫 16e650bfb3S猫头猫 const currentColor = fontColor ?? colors.text; 17e650bfb3S猫头猫 18e650bfb3S猫头猫 const defaultStyle = { 19e650bfb3S猫头猫 color: currentColor, 20e650bfb3S猫头猫 }; 21e650bfb3S猫头猫 22e650bfb3S猫头猫 return ( 23e650bfb3S猫头猫 <TextInput 24e650bfb3S猫头猫 placeholderTextColor={Color(currentColor).alpha(0.7).toString()} 25e650bfb3S猫头猫 {...props} 26e650bfb3S猫头猫 style={[ 27*ab5f994aSmaotoumao hasHorizontalPadding 28e650bfb3S猫头猫 ? styles.container 29e650bfb3S猫头猫 : styles.containerWithoutPadding, 30e650bfb3S猫头猫 defaultStyle, 31e650bfb3S猫头猫 props?.style, 32e650bfb3S猫头猫 ]} 33e650bfb3S猫头猫 /> 34e650bfb3S猫头猫 ); 35e650bfb3S猫头猫} 36e650bfb3S猫头猫 37e650bfb3S猫头猫const styles = StyleSheet.create({ 38e650bfb3S猫头猫 container: { 39e650bfb3S猫头猫 paddingVertical: 0, 40e650bfb3S猫头猫 paddingHorizontal: rpx(24), 41e650bfb3S猫头猫 }, 42e650bfb3S猫头猫 containerWithoutPadding: { 43e650bfb3S猫头猫 padding: 0, 44e650bfb3S猫头猫 }, 45e650bfb3S猫头猫}); 46