Sha256: a0d92d38554307b9c6709e90d0b3f65e7a8c55156bf481c3aba78798706df737
Contents?: true
Size: 886 Bytes
Versions: 1
Compression:
Stored size: 886 Bytes
Contents
import { forwardRef, useEffect, useImperativeHandle, useRef, InputHTMLAttributes, } from 'react' export default forwardRef(function TextInput( { type = 'text', className = '', isFocused = false, ...props }: InputHTMLAttributes<HTMLInputElement> & { isFocused?: boolean }, ref, ) { const localRef = useRef<HTMLInputElement>(null) useImperativeHandle(ref, () => ({ focus: () => localRef.current?.focus(), })) useEffect(() => { if (isFocused) { localRef.current?.focus() } }, []) return ( <input {...props} type={type} className={ 'border-gray-300 dark:border-gray-700 dark:bg-gray-900 dark:text-gray-300 focus:border-indigo-500 dark:focus:border-indigo-600 focus:ring-indigo-500 dark:focus:ring-indigo-600 rounded-md shadow-sm ' + className } ref={localRef} /> ) })
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
kaze-0.6.0 | stubs/inertia-react-ts/app/javascript/Components/TextInput.tsx |