Для Input и Search
- перенести
...restProps в корневой элемент
- для внутреннего инпута определить специфичные для него свойства и деструктуризировать их
Свойства для внтуреннего инпута
Свойства
Те, что из InputHTMLAttributes:
- Общие
autoComplete
disabled
list
maxLength
minLength
name
pattern
placeholder
readOnly
required
value
form
- Только
<Input />
type
step
min
max
multiple
Некоторые из HTMLAttributes:
id
inputMode
defaultValue
autoFocus
tabIndex
spellCheck
Исключил:
checked и defaultChecked, т.к. type="radio" и type="checkbox" и так не сработают
size, width и height
accept, capture – используется для type="file"
formAction, formEncType, formMethod, formNoValidate, formTarget – используется для type="image" или type="sumbit"
alt, src – используется для type="image"
События
onChange – в типе сохраняем ChangEvent<HTMLInputElement>
onFocus – в типе сохраняем FocusEvent<HTMLInputElement>
onBlur – в типе сохраняем FocusEvent<HTMLInputElement>
Остальные события будут всплывать. В случае бага, будем точечно переносить. Поэтому в Кодмоде пропускаем on<event>. UPD 03.02.2026 пользователи могут использовать *.currentTarget и типы, поэтому нужно занести в кодмод события:
onInput
onInputCapture
onClick
onClickCapture
onPaste
onPasteCapture
onKeyDown
onKeyDownCapture
onKeyUp
onKeyUpCapture
Требования
Кодмод
см. секцию Кодмод в задаче #2342 (comment)
Исключения:
см. Свойства для внтуреннего инпута
Для
InputиSearch...restPropsв корневой элементСвойства для внтуреннего инпута
Свойства
Те, что из
InputHTMLAttributes:autoCompletedisabledlistmaxLengthminLengthnamepatternplaceholderreadOnlyrequiredvalueform<Input />typestepminmaxmultipleНекоторые из
HTMLAttributes:idinputModedefaultValueautoFocustabIndexspellCheckСобытия
onChange– в типе сохраняемChangEvent<HTMLInputElement>onFocus– в типе сохраняемFocusEvent<HTMLInputElement>onBlur– в типе сохраняемFocusEvent<HTMLInputElement>Остальные события будут всплывать. В случае бага, будем точечно переносить. Поэтому в Кодмоде пропускаемUPD 03.02.2026 пользователи могут использоватьon<event>.*.currentTargetи типы, поэтому нужно занести в кодмод события:onInputonInputCaptureonClickonClickCaptureonPasteonPasteCaptureonKeyDownonKeyDownCaptureonKeyUponKeyUpCaptureТребования
Кодмод
см. секцию Кодмод в задаче #2342 (comment)