Подпись поля
Подпись со счётчиком
Подпись со счётчиком символов на правом краю строки: лимит виден до начала ввода, перебор подсвечивается и не обрезает вставленный текст.
Что можно поменять
- имя поля через label, порог через limit и начальный текст через defaultValue
- живые сообщения через overText и nearText — {count} подставит число
- цвет фокуса через accent
Ссылка для ИИ-агента: в ней превью, код и инструкция.
Превью
Использовать с ИИ
- 1. Скопируйте ссылку.
- 2. Напишите агенту своими словами и вставьте её в предложение.
- 3. Агент откроет ссылку и поставит компонент из реестра.
добавь это на главную первым экраном:
https://vibeui.ru/c/label-006?theme=dark
Не знаете, куда вставить? Пошаговый гайд
Показать полную инструкцию
То, что лежит по ссылке в развёрнутом виде. Нужна, если агент не может открыть ссылку — тогда вставьте этот текст целиком.
Загружается…
Для разработчика
Команда установки — в блоке «Исходник компонента» ниже: подписанная ссылка действует сутки.
Технические заметки
Клиентский компонент: значение поля держит useState, из него считается остаток. Один файл, без зависимостей, палитра в локальных переменных --vibeui-label-006-*. Счётчик стоит в строке подписи, а не под полем: лимит виден раньше, чем человек начал печатать. Состояние счётчика выражено атрибутом data-state (ok/near/over), цвета висят на нём — отдельных классов нет. Жёсткого maxLength у поля нет намеренно: вставленный из буфера текст не обрезается молча, вместо этого поле получает aria-invalid, а счётчик краснеет. Цифры набраны табличными (font-variant-numeric:tabular-nums), поэтому правый край не дёргается при вводе. Живое сообщение включается только у границы: озвучивать каждый символ — шум, из-за которого выключают экранного диктора. Палитра построена на light-dark(): блок следует color-scheme окружения, подложки по умолчанию нет, и она появляется только пропом background.
Теги
- label
- counter
- textarea
- limit
Исходник компонента
Тот же файл, который поставит агент. Нужен, если вы предпочитаете скопировать код руками.
Загружается…