Кнопки
Кнопка записи голоса
Держат — пишет, отпускают — отправляет, уводят палец — отменяет: голосовое сообщение без второй кнопки «стоп».
React + Tailwind, совместим с shadcn: нажмите «Копировать для ИИ» — агент в Cursor или Claude Code поставит его через shadcn CLI.
Что можно поменять
- подписи покоя и записи — пропы label и recordingLabel
- подсказки — пропы hint и cancelHint
- предел записи в секундах — проп limit
Ссылка для ИИ-агента: в ней превью, код и инструкция.
Превью

Использовать с ИИ
- 1. Скопируйте ссылку.
- 2. Напишите агенту своими словами и вставьте её в предложение.
- 3. Агент откроет ссылку и поставит компонент из реестра.
добавь это на главную первым экраном:
https://vibeui.ru/c/button-066?theme=dark
Не знаете, куда вставить? Пошаговый гайд
Показать полную инструкцию
То, что лежит по ссылке в развёрнутом виде. Нужна, если агент не может открыть ссылку — тогда вставьте этот текст целиком.
Загружается…
Как использовать
<Button066
limit={60}
onRecorded={(seconds) => upload(seconds)}
onCancel={discard}
/>Пример вызова. Сам компонент агент ставит из реестра по ссылке «Копировать для ИИ».
Настройки
- Подпись покоя
label· по умолчанию: Записать голосовое- Подпись записи
recordingLabel· по умолчанию: Идёт запись- Подсказка
hint· по умолчанию: Нажмите и держите- Подсказка отмены
cancelHint· по умолчанию: Уведите палец, чтобы отменить- Предел, с
limit· по умолчанию: 60- Акцент
accent· по умолчанию: цвет темы- Поверхность
background· по умолчанию: цвет темы
Ещё в разделе «Кнопки»
Частые вопросы
- Как установить компонент «Кнопка записи голоса» через Cursor или Claude Code?
- Нажмите «Копировать для ИИ» на этой странице и вставьте текст в чат агента. В инструкции команда установки через shadcn CLI, зависимости и что сохранить — агент поставит именно этот компонент, а не перерисует похожий.
- Какие зависимости у компонента «Кнопка записи голоса»?
- Никаких npm-пакетов, кроме React и Tailwind CSS.
- Что можно поменять в компоненте «Кнопка записи голоса»?
- Можно менять: подписи покоя и записи — пропы label и recordingLabel; подсказки — пропы hint и cancelHint; предел записи в секундах — проп limit. Сохранить как есть: запись по удержанию: отдельная кнопка «стоп» стоит лишнего движения и путает; отмену уводом пальца — это выученный жест мессенджеров; pointer capture: без него отпускание за пределами кнопки теряется и запись зависает.
- Компонент «Кнопка записи голоса» бесплатный?
- Да. Превью открыто без регистрации, а с бесплатным аккаунтом можно скопировать до 20 компонентов в месяц.
Для разработчика
npx shadcn@latest add https://vibeui.ru/r/pro/button-066.jsonКоманде нужна подписанная ссылка: войдите и откройте «Исходник компонента» ниже — там рабочая ссылка на 30 минут. Все способы установки
Технические заметки
Компонент самодостаточен: один файл, без зависимостей, палитра в локальных переменных --vibeui-button-066-*. Клиентский: pointer capture держит события на кнопке, даже когда палец ушёл за её пределы, интервал в useEffect считает секунды и снимается при остановке. Отмена решается по расстоянию: если указатель дальше 24 px от кнопки, при отпускании зовётся onCancel вместо onRecorded. Предел limit останавливает запись сам. Красная заливка и пульсирующая точка живут только в состоянии записи; при prefers-reduced-motion пульс выключается, признаком остаётся цвет.
Теги
- button
- voice
- record
- hold
- chat
Исходник компонента
Тот же файл, который поставит агент. Нужен, если вы предпочитаете скопировать код руками.
Загружается…