@cptkokao/biletix-ui-kit 1.0.6-dev.0 → 1.1.0
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 +43 -6
- package/package.json +4 -1
package/README.md
CHANGED
|
@@ -27,16 +27,15 @@
|
|
|
27
27
|
|
|
28
28
|
---
|
|
29
29
|
|
|
30
|
-
## Готовый
|
|
30
|
+
## Готовый скрипт-валидатор, чтобы исключить риск попадания тестовых версий в продакшн.
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
Этот скрипт проверяет package.json и блокирует сборку или мердж, если там версия с тегом -dev.
|
|
32
|
+
**Этот скрипт проверяет package.json и блокирует сборку или мердж, если там версия с тегом -dev.**
|
|
34
33
|
|
|
35
|
-
Создайте файл scripts/check-ui-lib.js:
|
|
34
|
+
1. Создайте файл scripts/check-ui-lib.js:
|
|
36
35
|
|
|
37
36
|
```js
|
|
38
37
|
const pkg = require("../package.json");
|
|
39
|
-
const libName = "
|
|
38
|
+
const libName = "biletix-ui-kit";
|
|
40
39
|
|
|
41
40
|
const version = pkg.dependencies[libName] || pkg.devDependencies[libName];
|
|
42
41
|
|
|
@@ -51,7 +50,7 @@ if (version && version.includes("-dev")) {
|
|
|
51
50
|
console.log(`✅ Проверка пройдена: используется стабильная версия ${libName}.`);
|
|
52
51
|
```
|
|
53
52
|
|
|
54
|
-
Добавьте
|
|
53
|
+
2. Добавьте скрипт в package.json проекта:
|
|
55
54
|
|
|
56
55
|
```json
|
|
57
56
|
"scripts": {
|
|
@@ -59,3 +58,41 @@ console.log(`✅ Проверка пройдена: используется с
|
|
|
59
58
|
"test:ci": "npm run prebuild && react-scripts test"
|
|
60
59
|
}
|
|
61
60
|
```
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Как автоматизировать проверку на стороне Проекта (ветка ui)
|
|
65
|
+
|
|
66
|
+
**Чтобы на ui-ветке проекта не забыть, какая именно dev версия сейчас актуальна, можно добавить в проект небольшой вспомогательный скрипт:**
|
|
67
|
+
|
|
68
|
+
В package.json проекта:
|
|
69
|
+
|
|
70
|
+
```JSON
|
|
71
|
+
"scripts": {
|
|
72
|
+
"update:ui": "npm install your-ui-lib@dev && echo 'Библиотека обновлена до последней DEV версии'"
|
|
73
|
+
}
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Теперь разработчик проекта на ветке ui просто пишет npm run update:ui, получает последнюю dev версию
|
|
77
|
+
|
|
78
|
+
---
|
|
79
|
+
|
|
80
|
+
Для реализации гибкого управления версиями (Major, Minor, Patch) и автоматизации публикации по тегам, я рекомендую использовать комбинацию скриптов в package.json и инструментов автоматизации (например, GitHub Actions или GitLab CI).
|
|
81
|
+
|
|
82
|
+
Ниже подробный разбор, как это настроить.
|
|
83
|
+
|
|
84
|
+
1. Настройка скриптов в библиотеке (package.json)
|
|
85
|
+
Чтобы разработчик мог вручную или через CI выбрать тип версии, добавьте следующие скрипты. Мы будем использовать флаг --no-git-tag-version, чтобы CI сам решал, когда создавать тег в репозитории.
|
|
86
|
+
|
|
87
|
+
```JSON
|
|
88
|
+
{
|
|
89
|
+
"name": "biletix-ui-kit",
|
|
90
|
+
"version": "1.0.0",
|
|
91
|
+
"scripts": {
|
|
92
|
+
"release:dev": "npm version prerelease --preid dev --no-git-tag-version && npm publish --tag dev",
|
|
93
|
+
"release:patch": "npm version patch && npm publish --tag latest",
|
|
94
|
+
"release:minor": "npm version minor && npm publish --tag latest",
|
|
95
|
+
"release:major": "npm version major && npm publish --tag latest"
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cptkokao/biletix-ui-kit",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "UI Library with Radix and Rollup",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"module": "dist/index.esm.js",
|
|
@@ -14,6 +14,9 @@
|
|
|
14
14
|
"publish:prepatch": "npm version prerelease --preid dev && npm publish --tag dev",
|
|
15
15
|
"publish:prepatch:fix": "npm version prerelease && npm publish --tag dev",
|
|
16
16
|
"publish:patch": "npm version patch && npm publish",
|
|
17
|
+
"release:patch": "npm version patch && npm publish --tag latest",
|
|
18
|
+
"release:minor": "npm version minor && npm publish --tag latest",
|
|
19
|
+
"release:major": "npm version major && npm publish --tag latest",
|
|
17
20
|
"watch": "rollup -c -w",
|
|
18
21
|
"storybook": "storybook dev -p 6006",
|
|
19
22
|
"build-storybook": "storybook build"
|