Справочник API
Этот документ предоставляет исчерпывающий справочник по всем экспортируемым API из библиотеки@ui8kit/core. Он охватывает экспорт компонентов, свойства вариантов, интерфейсы TypeScript и соглашения об именовании, используемые во всей кодовой базе.
Для архитектурного контекста и взаимосвязей компонентов см. Архитектура. Для подробной документации API отдельных компонентов см. подразделы: Базовые компоненты, UI-компоненты и Компоненты макетов. Для паттернов использования и примеров см. Руководство разработчика.
Структура экспорта
Библиотека следует плоской структуре экспорта из src/index.ts Все компоненты, варианты, хуки и утилиты реэкспортируются из этой единственной точки входа для упрощения импортов.Каталог экспортируемых компонентов
Следующая таблица документирует все экспорты компонентов с их исходными расположениями и интерфейсами TypeScript:
Источники: src/index.ts README.md362-386 src/registry.json2-244
API системы вариантов
Система вариантов предоставляет 12 компонуемых категорий свойств, которые применяются ко всем компонентам через движок CVA (class-variance-authority). Каждая категория вариантов сопоставляется с конкретными типами TypeScript и утилитарными классами Tailwind CSS.Типы свойств вариантов
Справочная таблица свойств вариантов
Источники: src/core/variants/ README.md174-217 .devin/wiki.json19-22
Паттерн пробрасывания свойств
Компоненты в библиотеке реализуют последовательный паттерн пробрасывания свойств, где составные компоненты расширяют базовые примитивы дополнительными свойствами вариантов. Это создает типобезопасную цепочку наследования.Примеры пробрасывания свойств
Следующие примеры демонстрируют, как свойства вариантов пробрасываются от составных компонентов к их базовым примитивам: Button расширяет Box:Система типов TypeScript
Библиотека предоставляет всестороннюю поддержку TypeScript с точными определениями типов для всех компонентов, вариантов и утилит.Иерархия базовых типов
Общие паттерны типов
Источники: src/core/ui/ src/components/ui/ .devin/wiki.json11-14
Общие свойства компонентов
Все компоненты в библиотеке разделяют последовательный набор базовых свойств, унаследованных от HTML-атрибутов React и системы вариантов.Стандартные React-свойства
Пользовательские свойства компонентов
Источники: src/core/ui/Block.tsx src/components/ui/Text.tsx src/components/ui/Title.tsx .devin/wiki.json11-14
API системы тем
Система тем предоставляет поддержку темной темы, настройки доступности и сохранение темы через React Context.Провайдер темы
API вспомогательных хуков
Библиотека экспортирует утилиты адаптивного дизайна для определения области просмотра и медиа-запросов.
Пример использования:
Специфичные для компонентов варианты
Некоторые компоненты определяют дополнительные варианты помимо основной системы вариантов для специализированной стилизации.Варианты кнопок
Варианты карточек
Атрибуты данных
Все компоненты отрисовываются с атрибутамиdata-class для последовательного таргетирования DOM и стилизации.
Пример использования:
Подробная документация API
Для полной документации API отдельных компонентов со всеми свойствами, методами и примерами использования см.:- Базовые компоненты - Примитивы:
Block,Box,Grid,Flex,Stack - UI-компоненты - Составные компоненты:
Button,Card,Text,Title,Badgeи др. - Компоненты макетов - Шаблоны макетов:
DashLayout,LayoutBlock,SplitBlock