Skip to content

Commit 3ee323b

Browse files
authored
Release by 25.06.2025 (#2046)
2 parents eda7173 + e23d276 commit 3ee323b

File tree

3,196 files changed

+137157
-3955
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

3,196 files changed

+137157
-3955
lines changed

.github/actions/write-changelog/index.js

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,18 @@ import { unified } from 'unified';
22
import remarkParse from 'remark-parse';
33
import remarkStringify from 'remark-stringify';
44
import { visit } from 'unist-util-visit';
5+
import { readFileSync, writeFileSync } from 'fs';
56

67
import * as core from '@actions/core';
78

8-
import { writeChangelog } from './utils.js';
9+
import { writeChangelog, getJSONFilePath, getChangelogCreateDate, getPackageVersionSync } from './utils.js';
910
import { processingHeadingByPackages } from './processingHeadingByPackages.js';
1011
import { rewriteHeadingValue } from './rewriteHeadingValue.js';
12+
import { parseChangelog } from './parseChangelog.js';
13+
14+
// INFO: Для локального тестирования, использовать вместо `core.getInput('data');`
15+
// import { getMock } from './mock/getMock.js';
16+
// const rawData = await getMock();
1117

1218
import * as META from '../../meta-prod.js';
1319

@@ -51,6 +57,7 @@ async function run() {
5157

5258
// INFO: В коллекции будут или все пакеты так как были изменения в core,
5359
// INFO: или только те библиотеки в которых были изменения
60+
// INFO: Это часть логики останется как fallback на тот случай если новая генерация даст сбой
5461
for (const pkg of Array.from(headings)) {
5562
const blackList = [...packages.filter((item) => pkg !== item), 'bugs'];
5663

@@ -65,6 +72,32 @@ async function run() {
6572

6673
await writeChangelog(changelogMD.toString(), pkg);
6774
}
75+
76+
// INFO: Новый блок генерации changelog as JSON на основе входящих данных
77+
for (const pkg of Array.from(headings)) {
78+
const blackList = [...packages.filter((item) => pkg !== item), 'bugs'];
79+
80+
const isPlasmaIcons = pkg === 'plasma-icons';
81+
82+
unified()
83+
.use(remarkParse)
84+
.use(() => processingHeadingByPackages(isPlasmaIcons ? [...blackList, 'core'] : blackList))
85+
.use(() => (tree) => {
86+
const version = getPackageVersionSync(pkg);
87+
const changelogCreateDate = getChangelogCreateDate(new Date());
88+
const currentChangelogData = parseChangelog(tree, version, changelogCreateDate);
89+
90+
const mdFilePAth = getJSONFilePath(pkg, 'changelog.json');
91+
92+
const existingContent = readFileSync(mdFilePAth, 'utf8');
93+
94+
const data = Object.assign(currentChangelogData, JSON.parse(existingContent));
95+
96+
writeFileSync(mdFilePAth, JSON.stringify(data, null, 2), 'utf8');
97+
})
98+
.use(remarkStringify)
99+
.processSync(rawData);
100+
}
68101
} catch (error) {
69102
core.setFailed(error.message);
70103
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import { fileURLToPath } from 'url';
2+
import { dirname, resolve } from 'path';
3+
import { promises as fs } from 'fs';
4+
5+
export async function getMock() {
6+
try {
7+
const __filename = fileURLToPath(import.meta.url);
8+
const __dirname = dirname(__filename);
9+
const filePath = resolve(__dirname, 'input.md');
10+
11+
const markdownContent = await fs.readFile(filePath, 'utf8');
12+
return markdownContent;
13+
} catch (error) {
14+
console.error('Ошибка чтения input.md:', error);
15+
return null;
16+
}
17+
}
Lines changed: 152 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,152 @@
1+
## Core
2+
3+
### TextField
4+
5+
- добавлен **новый** размер `XL`
6+
7+
<img width="1024" src="https://github.com/user-attachments/assets/4fc66785-2c3c-4352-bbb8-7b1dc23c6390" />
8+
9+
[PR](https://github.com/salute-developers/plasma/pull/1715)
10+
11+
### Mask
12+
13+
- добавили обработку, если не задан параметр mask, то возвращается обычный `TextField`
14+
15+
[PR](https://github.com/salute-developers/plasma/pull/1964)
16+
17+
### Slider
18+
19+
- убрали наслоение контейнера для шкалы минимум/максимум с текущим значением бегунка
20+
21+
![Kapture 2025-05-29 at 12 40 21](https://github.com/user-attachments/assets/db518bf3-d9c8-43a0-b718-dcd58e429cd6)
22+
23+
[PR](https://github.com/salute-developers/plasma/pull/1978)
24+
25+
### Link
26+
27+
- изменена поставка компонента ( добавлены файлы `types`, `tokens` )
28+
29+
[PR](https://github.com/salute-developers/plasma/pull/1966)
30+
31+
### Progress
32+
33+
- добавлен новый `view` - `info`
34+
35+
<img width="1024" src="https://github.com/user-attachments/assets/1fcad509-3a21-4a78-8162-2c4e32ebe9f6" />
36+
37+
[PR](https://github.com/salute-developers/plasma/pull/1975)
38+
39+
### Autocomplete, Combobox
40+
41+
- улучшено поведение виртуализированного списка при динамическом изменении высоты оного;
42+
43+
![Kapture 2025-05-29 at 14 52 03](https://github.com/user-attachments/assets/0df860d6-f2e6-4c6e-a220-6b3496e83a0f)
44+
45+
[PR](https://github.com/salute-developers/plasma/pull/1968)
46+
47+
### Note
48+
49+
- добавлен возможность закрыть компонент, через свойство `hasClose` и `onCloseButtonClick`
50+
51+
![Kapture 2025-05-29 at 13 15 39](https://github.com/user-attachments/assets/babc7f1d-ba21-4868-a7f1-635055928dd5)
52+
53+
[PR](https://github.com/salute-developers/plasma/pull/1962)
54+
55+
### Calendar
56+
57+
- исправлен метод получения модификации даты: учитывается свойство `includeEdgeDates`
58+
59+
[PR](https://github.com/salute-developers/plasma/pull/1984)
60+
61+
- добавлена возможность растягивать на всю доступную ширину и высоту
62+
63+
![Kapture 2025-05-29 at 15 01 01](https://github.com/user-attachments/assets/188619f1-7bad-4e6a-812b-2a46c22439f0)
64+
65+
[PR](https://github.com/salute-developers/plasma/pull/1972)
66+
67+
### DatePicker
68+
69+
- добавлена возможность управлять размером выпадающего календаря
70+
71+
- добавлена возможность растягивать поле ввода на всю доступную ширину
72+
73+
[PR](https://github.com/salute-developers/plasma/pull/1972)
74+
75+
### Icons
76+
77+
- добавлены новые иконки:
78+
- ArrowBack
79+
- FloorTypeFill
80+
- FloorTypeOutline
81+
- SensorFill
82+
- SensorOutline
83+
- FlashlightOutline
84+
- DocumentExportFill
85+
- DocumentExportOutline
86+
- DocumentImportFill
87+
- DocumentImportOutline
88+
- InternationalTradeOutline
89+
- SensorTemperatureFill
90+
- SensorTemperatureOutline
91+
92+
[PR](https://github.com/salute-developers/plasma/pull/1992)
93+
94+
- изменены название иконок с ключевым словом `sber` на `sb` для всех платформ
95+
96+
<img width="768" src="https://github.com/user-attachments/assets/7cd5e024-4586-48e4-bebc-9fa46b760927" />
97+
98+
[PR](https://github.com/salute-developers/plasma/pull/1981)
99+
100+
### CodeField
101+
102+
- добавлен **новый** компонент
103+
104+
![Kapture 2025-05-29 at 13 28 14](https://github.com/user-attachments/assets/1bc20b57-0b4f-4976-adde-35e6ac082a1e)
105+
106+
[PR](https://github.com/salute-developers/plasma/pull/1993)
107+
108+
### Notifications
109+
110+
- добавлена возможность управлять шириной уведомления, через свойство `width` и `maxWidth`
111+
112+
![Kapture 2025-05-29 at 13 43 54](https://github.com/user-attachments/assets/0eae5726-4b23-40ae-9025-2016da019de2)
113+
114+
[PR](https://github.com/salute-developers/plasma/pull/1967)
115+
116+
### List
117+
118+
- переведен на новую архитектуру
119+
120+
<img width="768" src="https://github.com/user-attachments/assets/454586b5-ddc3-4574-b510-8830b65f1618" />
121+
122+
[PR](https://github.com/salute-developers/plasma/pull/1954)
123+
124+
## PLASMA-B2C
125+
126+
### PaginationDots
127+
128+
- компонент перенесен внутрь core пакет
129+
130+
[PR](https://github.com/salute-developers/plasma/pull/1970)
131+
132+
## PLASMA-WEB
133+
134+
### PaginationDots
135+
136+
- компонент перенесен внутрь core пакет
137+
138+
[PR](https://github.com/salute-developers/plasma/pull/1970)
139+
140+
## SDDS-CS
141+
142+
### NumberFormat
143+
144+
- исправлены значения свойства `size` в примерах документации и storybook
145+
146+
[PR](https://github.com/salute-developers/plasma/pull/1961)
147+
148+
### Select
149+
150+
- изменена конфигурация `select item` для состояния `disabled`
151+
152+
[PR](https://github.com/salute-developers/plasma/pull/1963)
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
export const OUTPUT_EXAMPLE = {
2+
'1.581.0': {
3+
date: '2025-05-28',
4+
core: [
5+
{
6+
component: 'Slider',
7+
children: [
8+
{
9+
text: 'добавлен **новый** размер `XL`',
10+
link: 'https://github.com/salute-developers/plasma/pull/1715',
11+
id: 1715,
12+
},
13+
],
14+
},
15+
{
16+
component: 'Mask',
17+
children: [
18+
{
19+
text: 'добавили обработку, если не задан параметр mask, то возвращается обычный `TextField`',
20+
link: 'https://github.com/salute-developers/plasma/pull/1964',
21+
id: 1964,
22+
},
23+
],
24+
},
25+
{
26+
component: 'Slider',
27+
children: [
28+
{
29+
text: 'убрали наслоение контейнера для шкалы минимум/максимум с текущим значением бегунка',
30+
link: 'https://github.com/salute-developers/plasma/pull/1978',
31+
id: 1978,
32+
},
33+
],
34+
},
35+
{
36+
component: 'Progress',
37+
children: [
38+
{
39+
text: 'добавлен новый `view` - `info`',
40+
link: 'https://github.com/salute-developers/plasma/pull/1975',
41+
id: 1975,
42+
},
43+
],
44+
},
45+
{
46+
component: 'Tree',
47+
children: [
48+
{
49+
text: 'в документацию добавлен пример с виртуализацией;',
50+
link: 'https://github.com/salute-developers/plasma/pull/1914',
51+
id: 1914,
52+
},
53+
{
54+
text: 'добавлено свойство `contentRight`;',
55+
link: 'https://github.com/salute-developers/plasma/pull/1908',
56+
id: 1908,
57+
},
58+
],
59+
},
60+
],
61+
lib: [
62+
{
63+
component: 'PaginationDots',
64+
children: [
65+
{
66+
text: 'компонент перенесен внутрь core пакет',
67+
link: 'https://github.com/salute-developers/plasma/pull/1970',
68+
id: 1970,
69+
},
70+
],
71+
},
72+
],
73+
},
74+
};

0 commit comments

Comments
 (0)