Sha256: 205b5c32c1cc4eaf7650386387e56392bdd02c07038afaf595f8f2d8e0dcadd7
Contents?: true
Size: 862 Bytes
Versions: 2
Compression:
Stored size: 862 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
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
kaze-0.8.0 | stubs/inertia-react-ts/app/javascript/Components/TextInput.tsx |
kaze-0.7.0 | stubs/inertia-react-ts/app/javascript/Components/TextInput.tsx |