import { ChangeEvent, forwardRef, InputHTMLAttributes } from 'react' interface InputProps extends InputHTMLAttributes { value: string onChange: (e: ChangeEvent) => void type?: string maxLength?: number className?: string disabled?: boolean prefixClassname?: string wrapperClassName?: string hasError?: boolean prefix?: string prefixClassName?: string suffix?: string } const Input = forwardRef((props, ref) => { const { type, value, onChange, maxLength, className, hasError, wrapperClassName = 'w-full', disabled, prefix, prefixClassName, suffix, } = props return ( <>
{prefix ? (
{prefix}
) : null} {suffix ? ( {suffix} ) : null} {maxLength ? (

{`${value.length}/${maxLength}`}

) : null}
) }) Input.displayName = 'Input' export default Input