Обзор
Compact UI — ESM-first библиотека из 26 Vue 3 компонентов с TypeScript API, доступными состояниями и темами без отдельного runtime.
Ввод и действия
| Компонент | Назначение |
|---|---|
UiButton | Действия и loading |
UiInput | Строковые и числовые поля |
UiDataTable | Таблицы с сортировкой, фильтрами и пагинацией |
UiTextarea | Многострочный ввод |
UiSelect | Одиночный/множественный выбор и поиск |
UiCheckbox | Boolean и indeterminate |
UiRadio | Radio-группы |
UiSwitch | Переключение настроек |
Навигация и disclosure
| Компонент | Назначение |
|---|---|
UiAccordion | Раскрывающиеся разделы |
UiBreadcrumb | Навигационная цепочка |
UiPagination | Постраничная навигация |
UiTabs | Переключаемые панели |
UiDropdownMenu | Меню действий |
Feedback и представление
| Компонент | Назначение |
|---|---|
UiBadge | Метки и статусы |
UiAlert | Сообщения в потоке страницы |
UiToast | Очередь уведомлений |
UiProgress | Progress indicator |
UiSpinner | Компактное ожидание |
UiSkeleton | Placeholder контента |
UiEmptyState | Пустые состояния |
UiAvatar | Изображение и инициалы пользователя |
Layout и overlay
| Компонент | Назначение |
|---|---|
UiCard | Семантический контейнер |
UiDivider | Разделитель контента |
UiDialog | Модальный сценарий |
UiPopover | Интерактивная панель |
UiTooltip | Короткая подсказка |
Технические свойства
- Vue
>=3.5.0 <4, Node.js>=24для разработки. - ESM-only, Vue остаётся peer dependency.
- Root/direct imports и отдельный CSS entry.
- SSR guards, logical CSS properties для RTL, reduced motion и keyboard-first поведение.
- Локализация через
UiConfigProvider; уведомления черезUiToastProvider. - Props-таблицы документации генерируются из TypeScript source of truth.
Границы
В библиотеке нет набора иконок, шрифтов, remote search, virtualization и validation engine. Данные, бизнес-правила и ошибки остаются в приложении.