yutu-ui-lib
v0.2.23
Published
Тестовое покрытие на данный момент - 0.0%.
Keywords
Readme
Тестовое покрытие на данный момент - 0.0%.
Ссылка на npm: https://www.npmjs.com/package/yutu-ui-lib
Публикация новой версии:
- Внести изменения в код библиотеки.
- Если добавлен новый UI-компонент — не забыть импортировать его в src/index.ts, чтобы он стал доступен при установке библиотеки. Также в каждом новом UI-компоненте указывай ссылку на макет Figma (см. пример в YButton.tsx).
- Обновить версию в
package.json
Пример:"version": "0.1.21"→"version": "0.1.22" - Сделать git pull ветки main
- Выполнить сборку библиотеки: npm run build
- Закоммитить и запушить изменения в Git
- Если не зарегистрированы в npm — зарегистрироваться и получить доступ к публикации библиотеки.
- Опубликовать пакет в npm: npm publish
Обновление библиотеки в другом проекте:
- Перейти в нужный проект (где используется yutu-ui-lib)
- Удалить папки зависимостей: rm -rf node_modules package-lock.json
- Установить обновления: npm install
Инструкция по использованию Storybook в библиотеке компонентов
Запуск Storybook Для локального просмотра компонентов: npm run storybook
Структура и размещение историй Для каждого компонента создаётся отдельный файл с историей. Истории располагаются рядом с компонентом или в папке stories. Имя файла должно оканчиваться на .stories.tsx
Названия историй Название истории в Storybook задаётся через поле title, и должно отражать структуру библиотеки: например как у меня в примере в YButton.stories.tsx: "title: 'YButton'"
Это нужно для удобной навигации в дереве компонентов Storybook.
Использование аргументов (Args) Для настройки пропсов компонента в Storybook используются args.
Все основные параметры (например, disabled, loading, variant, size) должны быть описаны через argTypes.
Это позволяет управлять состоянием компонента прямо в интерфейсе Storybook.
CSS-префиксы
Все классы автоматически получают префикс yutu-.
- Если нужно исключить класс из префиксации, используйте
:global()(CSS Modules) - Для переопределения префикса измените
vite.config.ts/css/modules/generateScopedName
Реализованные компоненты:
YButton Компонент кнопки, предназначенный для вызова действий в пользовательском интерфейсе
YDropdown Содержит компоненты Dropdown и DropdownItem, реализует универсальное выпадающее меню с поддержкой кастомизации, управления и доступности
Ytabs Компонент для организации контента в виде вкладок с возможностью переключения между ними
YScrollContainer Компонент-обертка для динамичного и кроссбраузерного скролла
YAvatar Компонент аватара пользователя для отображения изображения или инициала
YAvatarGroup Компонент для показа списка аватаров
YText Компонент для вывода текста
YTable Компонент для вывода таблицы
YModalWrapper Для модальных окон, где содержимое может превышать высоту экрана, тело рекомендуется оборачивать в компонент YModalBody. Он обеспечивает корректный скролл внутри модалки и не влияет на шапку (YModalHeader) и футер (YModalFooter).
YInput Компонент Текстовое поле
YCheckbox Компонент для чекбокса
YAvatarFilter Компонент для фильтра по аватарам
YTooltip Компонент подсказок при наведении на элемент
YToast Компонент для показа toast-сообщений
YSelectionList Компонент для показа списка выбора
