Skip to content

Commit 5aed576

Browse files
authored
feat(docs): v17 -> v18 migration guide (#DS-3848) (#871)
1 parent f9216c5 commit 5aed576

File tree

4 files changed

+181
-1
lines changed

4 files changed

+181
-1
lines changed

apps/docs/src/app/services/documentation-items.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,8 +129,19 @@ const DOCS: { [key: string]: DocsDocCategory[] } = {
129129
},
130130
svgPreview: 'schematics',
131131
hasApi: false,
132+
hasExamples: false
133+
},
134+
135+
{
136+
id: 'migration',
137+
name: {
138+
ru: 'Гайды по миграции',
139+
en: 'Migration guides'
140+
},
141+
svgPreview: '',
142+
hasApi: false,
132143
hasExamples: false,
133-
isNew: expiresAt('2025-06-01')
144+
isNew: expiresAt('2025-07-13')
134145
}
135146
]
136147
}

docs/guides/migration.en.md

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
## How to Upgrade from Koobiq v17
2+
3+
New versions bring improvements, but include **breaking changes** — these should be applied gradually.
4+
5+
---
6+
7+
### Quick Plan
8+
9+
1. **Up to 18.5.3** – safe base update with new theming and icon package
10+
2. **18.6** – token updates
11+
3. **18.22** – attribute name changes in components
12+
4. **After** – final upgrade to the latest version (with modern theming support)
13+
14+
---
15+
16+
### 1. Upgrade to 18.5.3
17+
18+
```bash
19+
npm install @koobiq/cdk@18.5.3
20+
npm install @koobiq/components@18.5.3
21+
npm install @koobiq/icons@^9.0.0
22+
npm install @koobiq/design-tokens@~3.7.3
23+
npm install @koobiq/angular-luxon-adapter@18.5.3
24+
npm install @koobiq/date-adapter^3.1.3
25+
npm install @koobiq/date-formatter^3.1.3
26+
npm install luxon
27+
npm install @messageformat/core
28+
npm install @radix-ng/primitives@0.14.0
29+
```
30+
31+
#### New Theming System
32+
33+
Theming is now simpler and built on CSS variables.
34+
35+
See examples in the repo:
36+
37+
- [`apps/docs/src/main.scss`](https://github.com/koobiq/angular-components/blob/main/apps/docs/src/main.scss)
38+
- [`apps/docs/src/styles/_theme-kbq.scss`](https://github.com/koobiq/angular-components/blob/main/apps/docs/src/styles/_theme-kbq.scss)
39+
40+
#### Icon Package Update
41+
42+
- Install the updated icon package:
43+
44+
```bash
45+
npm install @koobiq/icons@9.1.0
46+
```
47+
48+
- Apply the schematic:
49+
50+
```bash
51+
ng g @koobiq/angular-components:new-icons-pack --project <your project>
52+
```
53+
54+
---
55+
56+
### 2. Token Update (18.6.x)
57+
58+
- Deprecated color tokens were removed and typography token names were changed.
59+
60+
The schematic will replace typography names and highlight where color tokens need manual cleanup:
61+
62+
```bash
63+
ng g @koobiq/angular-components:css-selectors --fix=true --project <your project>
64+
```
65+
66+
- For manual control, use `--fix=false`. The schematic will only highlight where changes are needed:
67+
68+
```bash
69+
ng g @koobiq/angular-components:css-selectors --fix=false --project <your project>
70+
```
71+
72+
---
73+
74+
### 3. Attribute Updates (18.22.0)
75+
76+
- Attribute names were changed in the following components:
77+
- `KbqLoaderOverlay`: `compact``size`
78+
- `KbqEmptyState`: `big``size`
79+
80+
```bash
81+
ng g @koobiq/angular-components:loader-overlay-size-attr --project <your project>
82+
ng g @koobiq/angular-components:empty-state-size-attr --project <your project>
83+
```

docs/guides/migration.ru.md

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
## Как обновиться с Koobiq v17
2+
3+
Новые версии включают улучшения, но содержат **ломающие изменения** — их нужно применять постепенно.
4+
5+
---
6+
7+
### Краткий план
8+
9+
1. **До 18.5.3** – безопасная база с обновлением темизации и иконок
10+
2. **18.6** – обновление токенов
11+
3. **18.22** – изменение атрибутов компонентов
12+
4. **После** – финальное обновление до последней версии (с актуальной темизацией)
13+
14+
---
15+
16+
### 1. Обновление до 18.5.3
17+
18+
```bash
19+
npm install @koobiq/cdk@18.5.3
20+
npm install @koobiq/components@18.5.3
21+
npm install @koobiq/icons@^9.0.0
22+
npm install @koobiq/design-tokens@~3.7.3
23+
npm install @koobiq/angular-luxon-adapter@18.5.3
24+
npm install @koobiq/date-adapter^3.1.3
25+
npm install @koobiq/date-formatter^3.1.3
26+
npm install luxon
27+
npm install @messageformat/core
28+
npm install @radix-ng/primitives@0.14.0
29+
```
30+
31+
#### Новая темизация
32+
33+
Теперь темизация более простая и строится на основе CSS-переменных.
34+
35+
Подробнее [по ссылке.](https://koobiq.io/ru/main/theming/overview#как-использовать?)
36+
37+
Смотрите примеры в репозитории:
38+
39+
- [`apps/docs/src/main.scss`](https://github.com/koobiq/angular-components/blob/main/apps/docs/src/main.scss)
40+
- [`apps/docs/src/styles/_theme-kbq.scss`](https://github.com/koobiq/angular-components/blob/main/apps/docs/src/styles/_theme-kbq.scss)
41+
42+
#### Обновление пакета иконок
43+
44+
- Установите новую версию иконок:
45+
46+
```bash
47+
npm install @koobiq/icons@9.1.0
48+
```
49+
50+
- Примените схематик
51+
52+
```bash
53+
ng g @koobiq/angular-components:new-icons-pack --project <your project>
54+
```
55+
56+
---
57+
58+
### 2. Обновление токенов (18.6.x)
59+
60+
- Были удалены устаревшие токены цветов и заменены названия типографики.
61+
62+
Скрипт заменит названия типографики на новые и подсветит места, где нужно удалить/заменить устаревшие цвета:
63+
64+
```bash
65+
ng g @koobiq/angular-components:css-selectors --fix=true --project <your project>
66+
```
67+
68+
- Для ручного контроля добавьте `--fix=false`. Скрипт подсветит места, где нужно удалить/заменить цвета и названия типографики
69+
70+
```bash
71+
ng g @koobiq/angular-components:css-selectors --fix=false --project <your project>
72+
```
73+
74+
---
75+
76+
### 3. Обновление атрибутов (18.22.0)
77+
78+
- Изменились имена атрибутов компонентов:
79+
- `KbqLoaderOverlay`: `compact``size`
80+
- `KbqEmptyState`: `big``size`
81+
82+
```bash
83+
ng g @koobiq/angular-components:loader-overlay-size-attr --project <your project>
84+
ng g @koobiq/angular-components:empty-state-size-attr --project <your project>
85+
```

tools/cspell-locales/ru.json

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -117,6 +117,7 @@
117117
"таймпикер",
118118
"темизации",
119119
"темизация",
120+
"темизацией",
120121
"тенант",
121122
"техдолг",
122123
"типографики",

0 commit comments

Comments
 (0)