Проблема заключается в том что когда я ввожу хотя бы один символ в input, поле становится сразу валидным и невалидным. Также если все поля валидны кнопка остается disabled.
Фото проблемы
Дмитрий Ярощук, всё правильно: текст в поле есть, значит она валидна, но не проходит дальнейшую валидацию, значит невалидна
как это разделить с точки зрения ваших простыней кода думайте сами, но обычно результат валидации не пихают сразу в поле, а собирают в массив ошибок, и если он пуст, то принимают значение, а если нет, то показывают накопленные ошибки