Кнопки
Кнопка с удержанием
Подтверждение без диалога: заливка ползёт по кнопке, пока её держат, и отскакивает назад, если отпустить раньше срока.
React + Tailwind, совместим с shadcn: нажмите «Копировать для ИИ» — агент в Cursor или Claude Code поставит его через shadcn CLI.
Что можно поменять
- подписи и пояснение (label, doneLabel, hint)
- время удержания — проп duration в миллисекундах: 800 для обычного подтверждения, 1500 для по-настоящему опасного
- акцент и подложку — пропы accent и background
Ссылка для ИИ-агента: в ней превью, код и инструкция.
Превью

Использовать с ИИ
- 1. Скопируйте ссылку.
- 2. Напишите агенту своими словами и вставьте её в предложение.
- 3. Агент откроет ссылку и поставит компонент из реестра.
добавь это на главную первым экраном:
https://vibeui.ru/c/button-073?theme=dark
Не знаете, куда вставить? Пошаговый гайд
Показать полную инструкцию
То, что лежит по ссылке в развёрнутом виде. Нужна, если агент не может открыть ссылку — тогда вставьте этот текст целиком.
Загружается…
Как использовать
<Button073 label="Удерживайте для удаления" duration={800} />Пример вызова. Сам компонент агент ставит из реестра по ссылке «Копировать для ИИ».
Настройки
- Подпись
label· по умолчанию: Удерживайте для удаления- Подпись после подтверждения
doneLabel· по умолчанию: Готово- Время удержания, мс
duration· по умолчанию: 800- Акцент
accent· по умолчанию: цвет темы- Подложка
background· по умолчанию: цвет темы
Ещё в разделе «Кнопки»
Частые вопросы
- Как установить компонент «Кнопка с удержанием» через Cursor или Claude Code?
- Нажмите «Копировать для ИИ» на этой странице и вставьте текст в чат агента. В инструкции команда установки через shadcn CLI, зависимости и что сохранить — агент поставит именно этот компонент, а не перерисует похожий.
- Какие зависимости у компонента «Кнопка с удержанием»?
- Никаких npm-пакетов, кроме React и Tailwind CSS.
- Что можно поменять в компоненте «Кнопка с удержанием»?
- Можно менять: подписи и пояснение (label, doneLabel, hint); время удержания — проп duration в миллисекундах: 800 для обычного подтверждения, 1500 для по-настоящему опасного; акцент и подложку — пропы accent и background. Сохранить как есть: линейный ход заливки во время удержания: она обязана честно показывать оставшееся время, а не подгонять его кривой; пружинный откат при раннем отпускании — это и есть сигнал «ничего не произошло»; связь CSS и таймера через переменную --vibeui-button-073-hold: две независимые длительности неизбежно разойдутся.
- Компонент «Кнопка с удержанием» бесплатный?
- Да. Превью открыто без регистрации, а с бесплатным аккаунтом можно скопировать до 20 компонентов в месяц.
Для разработчика
npx shadcn@latest add https://vibeui.ru/r/pro/button-073.jsonКоманде нужна подписанная ссылка: войдите и откройте «Исходник компонента» ниже — там рабочая ссылка на 30 минут. Все способы установки
Технические заметки
Компонент самодостаточен: один файл, без зависимостей, собственная палитра в локальных переменных --vibeui-button-073-*. Заливка — отдельный слой со scale по оси X и transform-origin слева: анимировать width значило бы перекладывать раскладку каждый кадр. Длительность приходит переменной --vibeui-button-073-hold из пропа duration, поэтому CSS-переход и таймер JS не расходятся. Состояний три: idle, holding, done; done держится 1400 мс и сам возвращается в idle. Указатель и клавиатура работают одинаково: pointerdown и keydown начинают, pointerup, pointerleave, pointercancel и keyup отменяют. Тема берётся из окружения через light-dark() плюс правило для класса .dark.
Теги
- button
- hold
- confirm
- progress
- destructive
Исходник компонента
Тот же файл, который поставит агент. Нужен, если вы предпочитаете скопировать код руками.
Загружается…