Поиск и выбор

Подсветка всех совпадений

Поиск с подсветкой каждого вхождения запроса в строке, а не только первого; порядок строк не перестраивается — это фильтр с подсветкой, а не ранжирование.

React + Tailwind, совместим с shadcn: нажмите «Копировать для ИИ» — агент в Cursor или Claude Code поставит его через shadcn CLI.

Что можно поменять

  • состав списка через options и начальный запрос через defaultQuery
  • текст пустой выдачи через emptyLabel
  • подпись поля через label, заглушку через placeholder и начальное значение через defaultValue

Ссылка для ИИ-агента: в ней превью, код и инструкция.

Превью

1440pxТема страницы
Подсветка всех совпадений — Поиск с подсветкой каждого вхождения запроса в строке, а не только первого; порядок строк не перестраивается — это фильтр с подсветкой, а не ранжирование.

Использовать с ИИ

  1. 1. Скопируйте ссылку.
  2. 2. Напишите агенту своими словами и вставьте её в предложение.
  3. 3. Агент откроет ссылку и поставит компонент из реестра.
AI
1Выбрали здесь

добавь это на главную первым экраном:

https://vibeui.ru/c/combobox-023?theme=dark

2Вставили в чат агента
3Получили в проекте

Не знаете, куда вставить? Пошаговый гайд

Показать полную инструкцию

То, что лежит по ссылке в развёрнутом виде. Нужна, если агент не может открыть ссылку — тогда вставьте этот текст целиком.

Загружается…

Как использовать

<Combobox023
  label="Вкус чипсов"
  options={["Барбекю классический", "Сметана с зеленью"]}
  defaultQuery="бар"
  onSelect={(value) => console.log(value)}
/>

Пример вызова. Сам компонент агент ставит из реестра по ссылке «Копировать для ИИ».

Настройки

Запрос
defaultQuery · по умолчанию: бар
Подпись
label · по умолчанию: Вкус чипсов
Акцент
accent · по умолчанию: цвет темы
Подложка
background · по умолчанию: цвет темы

Частые вопросы

Как установить компонент «Подсветка всех совпадений» через Cursor или Claude Code?
Нажмите «Копировать для ИИ» на этой странице и вставьте текст в чат агента. В инструкции команда установки через shadcn CLI, зависимости и что сохранить — агент поставит именно этот компонент, а не перерисует похожий.
Какие зависимости у компонента «Подсветка всех совпадений»?
Никаких npm-пакетов, кроме React и Tailwind CSS.
Что можно поменять в компоненте «Подсветка всех совпадений»?
Можно менять: состав списка через options и начальный запрос через defaultQuery; текст пустой выдачи через emptyLabel; подпись поля через label, заглушку через placeholder и начальное значение через defaultValue. Сохранить как есть: локальную палитру --vibeui-combobox-023-* и не подменять её токенами вашей темы; подсветку всех вхождений через цикл indexOf, а не только первого — иначе повторный слог в длинном названии остаётся немаркированным; исходный порядок options без сортировки по релевантности — задача варианта не ранжировать, а честно подсвечивать.
Компонент «Подсветка всех совпадений» бесплатный?
Да. Превью открыто без регистрации, а с бесплатным аккаунтом можно скопировать до 20 компонентов в месяц.

Для разработчика

npx shadcn@latest add https://vibeui.ru/r/pro/combobox-023.json

Команде нужна подписанная ссылка: войдите и откройте «Исходник компонента» ниже — там рабочая ссылка на 30 минут. Все способы установки

Технические заметки

Компонент самодостаточен: один файл, ноль зависимостей, собственная палитра в локальных переменных --vibeui-combobox-023-*. Клиентский: запрос и значение живут в useState. Функция highlight нарезает строку циклом indexOf, находя все вхождения подряд, и оборачивает каждое в семантический <mark>, а не только первое, как в ранжированном варианте — dangerouslySetInnerHTML не используется. Список не сортируется: порядок строк равен порядку options, фильтруется только присутствие совпадения. Строка с числом совпадений в aria-live="polite" объявляет изменение выдачи при каждом нажатии клавиши.

Теги

  • combobox
  • search
  • highlight
  • filter
Исходник компонента

Тот же файл, который поставит агент. Нужен, если вы предпочитаете скопировать код руками.

Загружается…