core-components-test v5.1.0
Cторибук с документацией и песочницей.
Установка
Установка всех компонентов:
yarn add @alfa-labaratory/core-componentsКаждый компонент публикуется отдельным пакетом, поэтому вы можете подключить только нужный, не устанавливая библиотеку целиком:
yarn add @alfa-labaratory/core-components-buttonИспользование
import { Button } from '@alfalab/core-components/button';
import { Button } from '@alfalab/core-components-button';Темизация
Создайте у себя на проекте css файл с темой, например, theme.css:
:root { --border-radius: 12px; }Подключите файл с темой:
Если вы используете нативные css-переменные, то просто подключите файл к проекту.
Если вы используете arui-scripts, то добавьте в
package.json:"aruiScripts": { "сomponentsTheme": "./node_modules/@alfalab/core-components-themes-test/click.css" }В другом случае - используйте postcss-custom-properties, указав в
importFromпуть к файлу с темой.
Поддерживаемые браузеры
Мы поддерживаем две последние стабильные версии всех популярных браузеров. Исключение — IE11+ и Android 5+ (Mobile Chrome).
Desktop
- Chrome
- Yandex
- Firefox
- Edge
- IE 11+
- Safari
Mobile
- Android 5+
- iOS
Разработка
$ git clone git@github.com:alfa-laboratory/core-components.git
$ cd core-components
$ yarn install
$ yarn startСторибук будет доступен по адресу http://localhost:9009/
Сигнатуры коллбэков
Компоненты передают в функции обратного вызова два аргумента:
event: SyntheticEvent- объект события, инициировавшего вызов.payload: {}- объект с дополнительными данными. Например{ amount: 5000 }
Импорт компонентов внутри компонентов
Так как у нас монорепозиторий, то все пакеты должны быть независимы. Если при разработке компонента вам потребовался другой компонент, то его нужно добавить как зависимость. Пример можно посмотреть в Тултипе. Также нужно добавить пару опций в tsconfig.json:
{
"compilerOptions": {
"paths": {
"@alfalab/core-components-popover": ["../popover/src"] // для корректоной сборки rollup
}
},
"references": [{ "path": "../popover" }] // для корректной работы IDE
}Релизы
Для выпуска новых версий используйте следущие команды:
$ yarn pub:patch # соберет и выпустит patch-версию
$ yarn pub:minor # соберет и выпустит minor-версию
$ yarn pub:major # соберет и выпустит major-версиюКак выпустить бета-версию:
- Собираем пакет
$ yarn build- Переходим в папку с собранным пакетом и обновляем версию
$ cd dist
$ npm version 2.0.0-beta.0 // подставить нужную версию- Публикуем пакет
npm publish --tag betaКоммиты
На проекте подключен commitlint для линтинга коммитов. На основании коммитов формируется CHANGELOG.MD.
Мы придерживаемся AngularJS commit conventions.
Коммиты можно делать с помощью утилиты commitizen:
$ git add .
$ yarn cm # запустит утилиту commitizen для создания коммита
$ git pushСборка компонентов
Компоненты поставляются в трех видах:
ES5ES5 с css-модулямиES2020
Импорт ES5:
import { Button } from '@alfalab/core-components-button';
// или
import { Button } from '@alfalab/core-components/button';Импорт ES5 с css-модулями:
import { Button } from '@alfalab/core-components-button/dist/cssm';
// или
import { Button } from '@alfalab/core-components/button/cssm';Импорт ES2020:
import { Button } from '@alfalab/core-components-button/dist/modern';
// или
import { Button } from '@alfalab/core-components/button/modern';Правила контрибьютинга
Мы открыты к любым предложениям по развитию библиотеки. Отправляйте свои идеи и вопросы через pull requests или issues.
- Уважаем тех, кто видит проблему и кидает PR.
- Не знаете что делать – можно брать любую задачу без Assignee, назначив её на себя.
- Знаете что делать и есть возможность – кидайте PR.
- Знаете что делать, но нет времени – добавьте задачу (issue).
Мейнтейнеры
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago