@post-pioneer/ui-kit 0.1.0 → 0.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +253 -68
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -1,69 +1,254 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
##
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
1
|
+
```markdown
|
|
2
|
+
# @post-pioneer/ui-kit
|
|
3
|
+
|
|
4
|
+

|
|
5
|
+

|
|
6
|
+

|
|
7
|
+
|
|
8
|
+
Библиотека UI-компонентов для приложений Post Pioneer. Построена на React 19, TypeScript и SCSS модулях.
|
|
9
|
+
|
|
10
|
+
## 🚀 Установка
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm install @post-pioneer/ui-kit
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## 📦 Зависимости
|
|
17
|
+
|
|
18
|
+
Убедитесь, что в вашем проекте установлены peer-зависимости:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
npm install react@^19.1.1 react-dom@^19.1.1
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
## 🎯 Быстрый старт
|
|
25
|
+
|
|
26
|
+
```tsx
|
|
27
|
+
import React from 'react';
|
|
28
|
+
import { Button } from '@post-pioneer/ui-kit';
|
|
29
|
+
|
|
30
|
+
function App() {
|
|
31
|
+
return (
|
|
32
|
+
<div>
|
|
33
|
+
<Button variant="primary" onClick={() => console.log('Clicked!')}>
|
|
34
|
+
Click me
|
|
35
|
+
</Button>
|
|
36
|
+
<Button variant="secondary" style={{ marginLeft: '10px' }}>
|
|
37
|
+
Secondary
|
|
38
|
+
</Button>
|
|
39
|
+
</div>
|
|
40
|
+
);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
export default App;
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## 📚 Компоненты
|
|
47
|
+
|
|
48
|
+
### Button
|
|
49
|
+
|
|
50
|
+
Кнопка с различными вариантами стилей.
|
|
51
|
+
|
|
52
|
+
```tsx
|
|
53
|
+
import { Button } from '@post-pioneer/ui-kit';
|
|
54
|
+
|
|
55
|
+
// Основное использование
|
|
56
|
+
<Button variant="primary">Primary Button</Button>
|
|
57
|
+
<Button variant="secondary">Secondary Button</Button>
|
|
58
|
+
<Button variant="outline">Outline Button</Button>
|
|
59
|
+
|
|
60
|
+
// Размеры
|
|
61
|
+
<Button size="small">Small</Button>
|
|
62
|
+
<Button size="medium">Medium</Button>
|
|
63
|
+
<Button size="large">Large</Button>
|
|
64
|
+
|
|
65
|
+
// Состояния
|
|
66
|
+
<Button disabled>Disabled</Button>
|
|
67
|
+
<Button loading>Loading...</Button>
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
**Props:**
|
|
71
|
+
- `variant?: 'primary' | 'secondary' | 'outline'` - стиль кнопки
|
|
72
|
+
- `size?: 'small' | 'medium' | 'large'` - размер кнопки
|
|
73
|
+
- `disabled?: boolean` - отключенное состояние
|
|
74
|
+
- `loading?: boolean` - состояние загрузки
|
|
75
|
+
- `onClick?: () => void` - обработчик клика
|
|
76
|
+
- `children: React.ReactNode` - содержимое кнопки
|
|
77
|
+
|
|
78
|
+
### Input (в разработке)
|
|
79
|
+
|
|
80
|
+
```tsx
|
|
81
|
+
// Скоро будет доступно
|
|
82
|
+
import { Input } from '@post-pioneer/ui-kit';
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Card (в разработке)
|
|
86
|
+
|
|
87
|
+
```tsx
|
|
88
|
+
// Скоро будет доступно
|
|
89
|
+
import { Card } from '@post-pioneer/ui-kit';
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
## 🎨 Кастомизация
|
|
93
|
+
|
|
94
|
+
### CSS Переменные
|
|
95
|
+
|
|
96
|
+
Вы можете переопределить CSS переменные для кастомизации стилей:
|
|
97
|
+
|
|
98
|
+
```css
|
|
99
|
+
:root {
|
|
100
|
+
--pp-primary-color: #1976d2;
|
|
101
|
+
--pp-secondary-color: #dc004e;
|
|
102
|
+
--pp-border-radius: 8px;
|
|
103
|
+
--pp-font-family: 'Inter', sans-serif;
|
|
104
|
+
}
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
### SCSS Переменные
|
|
108
|
+
|
|
109
|
+
Если вы используете SCSS в своем проекте:
|
|
110
|
+
|
|
111
|
+
```scss
|
|
112
|
+
// Переопределение переменных перед импортом
|
|
113
|
+
$pp-primary-color: #your-color;
|
|
114
|
+
$pp-border-radius: 12px;
|
|
115
|
+
|
|
116
|
+
@import '~@post-pioneer/ui-kit/dist/styles/variables';
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
## 🔧 Разработка
|
|
120
|
+
|
|
121
|
+
### Локальная разработка
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Клонирование репозитория
|
|
125
|
+
git clone https://github.com/post-pioneer/ui-kit-postpioneer.git
|
|
126
|
+
cd ui-kit-postpioneer
|
|
127
|
+
|
|
128
|
+
# Установка зависимостей
|
|
129
|
+
npm install
|
|
130
|
+
|
|
131
|
+
# Запуск Storybook для разработки
|
|
132
|
+
npm run storybook
|
|
133
|
+
|
|
134
|
+
# Запуск тестов
|
|
135
|
+
npm run test
|
|
136
|
+
|
|
137
|
+
# Сборка библиотеки
|
|
138
|
+
npm run build
|
|
69
139
|
```
|
|
140
|
+
|
|
141
|
+
### Добавление нового компонента
|
|
142
|
+
|
|
143
|
+
1. Создайте папку компонента в `src/components/`
|
|
144
|
+
2. Добавьте файлы: `Component.tsx`, `Component.module.scss`, `index.ts`
|
|
145
|
+
3. Создайте stories в `src/stories/Component.stories.tsx`
|
|
146
|
+
4. Экспортируйте компонент в `src/index.ts`
|
|
147
|
+
5. Добавьте тесты в `src/__tests__/`
|
|
148
|
+
|
|
149
|
+
## 📖 Документация
|
|
150
|
+
|
|
151
|
+
Полная документация с примерами доступна в [Storybook](https://post-pioneer.github.io/ui-kit-postpioneer).
|
|
152
|
+
|
|
153
|
+
Для локального просмотра документации:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
npm run storybook
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## 🧪 Тестирование
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# Запуск всех тестов
|
|
163
|
+
npm run test
|
|
164
|
+
|
|
165
|
+
# Запуск тестов в watch mode
|
|
166
|
+
npm run test:watch
|
|
167
|
+
|
|
168
|
+
# Запуск тестов с покрытием
|
|
169
|
+
npm run test:coverage
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## 📦 Сборка
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# Production сборка
|
|
176
|
+
npm run build
|
|
177
|
+
|
|
178
|
+
# Просмотр собранных файлов
|
|
179
|
+
npm pack --dry-run
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
## 🚀 Публикация
|
|
183
|
+
|
|
184
|
+
```bash
|
|
185
|
+
# Увеличение версии
|
|
186
|
+
npm version patch # 0.1.0 → 0.1.1
|
|
187
|
+
npm version minor # 0.1.0 → 0.2.0
|
|
188
|
+
npm version major # 0.1.0 → 1.0.0
|
|
189
|
+
|
|
190
|
+
# Публикация
|
|
191
|
+
npm publish --access public
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
## 🤝 Соответствие стандартам
|
|
195
|
+
|
|
196
|
+
- **Accessibility**: WCAG 2.1 AA compliant
|
|
197
|
+
- **Performance**: Optimized bundle size
|
|
198
|
+
- **Type Safety**: Full TypeScript support
|
|
199
|
+
- **Testing**: 100% test coverage goal
|
|
200
|
+
|
|
201
|
+
## 🐛 Сообщение об ошибках
|
|
202
|
+
|
|
203
|
+
Нашли баг? [Создайте issue](https://github.com/post-pioneer/ui-kit-postpioneer/issues) на GitHub.
|
|
204
|
+
|
|
205
|
+
## 💡 Предложения функций
|
|
206
|
+
|
|
207
|
+
Есть идея для нового компонента или улучшения? [Предложите feature request](https://github.com/post-pioneer/ui-kit-postpioneer/issues).
|
|
208
|
+
|
|
209
|
+
## 📄 Лицензия
|
|
210
|
+
|
|
211
|
+
MIT License - смотрите файл [LICENSE](https://github.com/post-pioneer/ui-kit-postpioneer/blob/main/LICENSE) для деталей.
|
|
212
|
+
|
|
213
|
+
## 👥 Команда
|
|
214
|
+
|
|
215
|
+
- [Команда Post Pioneer](https://github.com/post-pioneer)
|
|
216
|
+
|
|
217
|
+
## 🔗 Полезные ссылки
|
|
218
|
+
|
|
219
|
+
- [GitHub Repository](https://github.com/post-pioneer/ui-kit-postpioneer)
|
|
220
|
+
- [npm Package](https://www.npmjs.com/package/@post-pioneer/ui-kit)
|
|
221
|
+
- [Storybook Documentation](https://post-pioneer.github.io/ui-kit-postpioneer)
|
|
222
|
+
- [Changelog](https://github.com/post-pioneer/ui-kit-postpioneer/blob/main/CHANGELOG.md)
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
**Примечание**: Эта библиотека находится в активной разработке. API может изменяться до версии 1.0.0.
|
|
227
|
+
|
|
228
|
+
Для миграции между версиями смотрите [CHANGELOG.md](https://github.com/post-pioneer/ui-kit-postpioneer/blob/main/CHANGELOG.md).
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Дополнительные файлы которые стоит создать:
|
|
232
|
+
|
|
233
|
+
### CHANGELOG.md
|
|
234
|
+
```markdown
|
|
235
|
+
# Changelog
|
|
236
|
+
|
|
237
|
+
## [0.1.0] - 2024-01-01
|
|
238
|
+
### Added
|
|
239
|
+
- Initial release
|
|
240
|
+
- Button component with variants
|
|
241
|
+
- TypeScript definitions
|
|
242
|
+
- Storybook documentation
|
|
243
|
+
- Jest testing setup
|
|
244
|
+
```
|
|
245
|
+
|
|
246
|
+
### LICENSE
|
|
247
|
+
```text
|
|
248
|
+
MIT License
|
|
249
|
+
|
|
250
|
+
Copyright (c) 2024 Post Pioneer
|
|
251
|
+
|
|
252
|
+
Permission is hereby granted...
|
|
253
|
+
```
|
|
254
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@post-pioneer/ui-kit",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "UI Kit for Post Pioneer applications",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/ui-kit-postpioneer.umd.js",
|
|
@@ -85,4 +85,4 @@
|
|
|
85
85
|
"typescript-eslint": "^8.39.1",
|
|
86
86
|
"vite": "^5.4.19"
|
|
87
87
|
}
|
|
88
|
-
}
|
|
88
|
+
}
|