Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(): w3c validation and position text validation #3463

Merged
merged 12 commits into from
Sep 27, 2024

Conversation

SchwJ
Copy link
Member

@SchwJ SchwJ commented Jul 8, 2024

Проблема

Было несколько проблем связанных со span или его убиранием:

  • Tooltip с сообщением валидации не выравнивается по тексту
  • Сломана валидация W3C при оборачивании дочернего компонента, который содержит div
  • Текстовая валидация не закреплена за полем и может съезжать (при отсутствии span)
  • У контролов не работает ширина в процентах. НЕ УДАЛОСЬ ИСПРАВИТЬ

Решение

Заменила использование span на div в ValidationContainer, ValidationContextWrapper, ValidationText, ValidationWrapperInternal.

Решение занесла под фиче-флаг, который включен. Сделала так, для проверки всех тестов. Если будем успевать влить решение до выпуска 5.0, фиче-флаг стоит убрать.

ValidationContainer -- добавлены тесты на:

  • прокидывание data-tid'а
  • обновление валидации в случае одного поля
  • обновление валидации в случае нескольких полей

ErrorRenderer -- закомментировала тесты 'should not render text error message when validationInfo is not provided' и 'should not render tooltip error message when validationInfo is not provided', так как сейчас у нас нет возможности тестировать по data-tid'у отсутствие валидации.

Ссылки

IF-1692 -- Tooltip выравнивается по тексту -> теперь Tooltip выравнивается по тексту
IF-1689 -- заменить span на div под фиче-флагом -> теперь не ломается валидация W3C, текстовая валидация закреплена за полем. НО ширина в процентах по прежнему не работает. Обсуждали этот момент с Мишей, но не удалось придумать решения для этого пункта.
IF-1684 -- удаление span под фиче-флагом вызывает неправильное позиционирование текста ошибки -> span решили не удалять, а заменить на inline div.

Чек-лист перед запросом ревью

  1. Добавлены тесты на все изменения
    ✅ unit-тесты для логики
    ⬜ скриншоты для верстки и кросс-браузерности
    ⬜ нерелевантно

  2. Добавлена (обновлена) документация
    ✅ styleguidist для пропов и примеров использования компонентов
    ⬜ jsdoc для утилит и хелперов
    ⬜ комментарии для неочевидных мест в коде
    ⬜ прочие инструкции (README.md, contributing.md и др.)
    ⬜ нерелевантно

  3. Изменения корректно типизированы
    ✅ без использования any (см. PR 2856)
    ⬜ нерелевантно

  4. Прочее
    ✅ все тесты и линтеры на CI проходят
    ✅ в коде нет лишних изменений
    ✅ заголовок PR кратко и доступно отражает суть изменений (он попадет в changelog)

@SchwJ SchwJ changed the title fix: some fixes fix(): w3c validation and position text validation Jul 14, 2024
@SchwJ SchwJ force-pushed the w3c-and-position-text-validation branch from 8a0c162 to 4050db4 Compare September 27, 2024 05:34
@zhzz zhzz merged commit e83e842 into 5.x Sep 27, 2024
7 checks passed
@zhzz zhzz deleted the w3c-and-position-text-validation branch September 27, 2024 09:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

3 participants