Skip to content

v0.29.1

tagged this 22 Aug 20:41
Отчёт потребителя `@efureev/ft-extra-granularity`: правило записано в
комментарии одного компонента, а узнать о нарушении неоткуда, кроме как
глазами. У них пятнадцать нарушений против трёх корректных мест.

Считал контраст по нашим токенам в обеих темах — правило оказалось строже,
чем в отчёте: провальны не только success/warning/danger. Каждому тону
находится тема, где он ниже AA на обычной подложке: `--gr-primary` 3.70 в
тёмной, `--gr-success` 2.32 в светлой, `--gr-danger` провален в обеих.
Парные `-text` держат везде, минимум 5.46. Значит запрет безусловный.

Гейт в тест-ките ловит `text-[var(--gr-<тон>)]` и не трогает `bg-`,
`border-`, `fill-`, `stroke-` — это и есть роль тона. Подмешанный тон
(`color-mix` в `text-*`) только предупреждает: долю статикой не оценить.
Иконки ловятся наравне с текстом намеренно — рядом с подписью иконка
обязана быть той же читаемости.

Список тонов стережёт второй гейт, в ядре: он считает контраст по самим
токенам и требует, чтобы каждый запрещённый был провален по факту, а его
парная роль — нет. Без него список протух бы на первой перекраске темы.

Заодно `forbidImportantUtilities`: `!`-важность поверх утилиты почти всегда
значит, что штатной ручки не нашли, а перебивка зависит от порядка правил и
молча отваливается. У нас таких нет, правило включено на будущее.

Починены собственные употребления: тон иконки `GrIcon`, галочка выбора в
`GrSelect`, `GrTreeSelect` и `GrAutocomplete`, спиннер `GrLoading`, ручка
`GrDashboardFrame` и четыре места витрины. Эталоны `GrCheckbox` пересняты:
ссылка в демо сменила цвет.
Assets 2
Loading