Skip to content

[BREAKING CHANGE][restProps]: перенести в корневой элемент у Input и Search #9084

@inomdzhon

Description

@inomdzhon

Для 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)

Исключения:
см. Свойства для внтуреннего инпута

Metadata

Metadata

Projects

Status

✅ Done

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions