@snack-uikit/accordion 0.11.18 → 0.11.19

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.
Files changed (3) hide show
  1. package/CHANGELOG.md +10 -0
  2. package/README.md +120 -13
  3. package/package.json +9 -9
package/CHANGELOG.md CHANGED
@@ -3,6 +3,16 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## <small>0.11.19 (2026-01-19)</small>
7
+
8
+ * chore(FF-6693): migrate tests from TestCafe to Playwright ([f32aff8](https://github.com/cloud-ru-tech/snack-uikit/commit/f32aff8))
9
+ * chore(FF-6693): tune test configs ([d194f4d](https://github.com/cloud-ru-tech/snack-uikit/commit/d194f4d))
10
+ * docs(FF-7788): readme update ([e3142b8](https://github.com/cloud-ru-tech/snack-uikit/commit/e3142b8))
11
+
12
+
13
+
14
+
15
+
6
16
  ## <small>0.11.18 (2025-11-28)</small>
7
17
 
8
18
  ### Only dependencies have been changed
package/README.md CHANGED
@@ -5,29 +5,136 @@
5
5
 
6
6
  [Changelog](./CHANGELOG.md)
7
7
 
8
- ## Example
8
+ ## Description
9
+
10
+ - Пакет `@snack-uikit/accordion` предоставляет набор компонентов для построения аккордеонов: два визуальных варианта контейнера (`AccordionPrimary`, `AccordionSecondary`) и соответствующие им коллапс-блоки (`CollapseBlockPrimary`, `CollapseBlockSecondary`).
11
+ - Компоненты поддерживают как одиночное, так и множественное раскрытие секций, работают в контролируемом и неконтролируемом режимах и позволяют вкладывать аккордеоны друг в друга.
12
+ - Аккордеон собирается из контейнера (`AccordionPrimary` или `AccordionSecondary`) и одного или нескольких коллапс-блоков с заголовком и контентом.
13
+ - Для заголовка используются хедеры `CollapseBlockHeader` с поддержкой вспомогательных действий (иконки, кнопки), состояния раскрытия и пользовательских обработчиков клика.
14
+
15
+ ## AccordionPrimary
16
+
17
+ ### Description
18
+ - `AccordionPrimary` — основной визуальный вариант аккордеона для ключевого контента страницы: он имеет более выраженный фон и акцентные отступы.
19
+ - Используется вместе с `AccordionPrimary.CollapseBlock` и `AccordionPrimary.CollapseBlockHeader`.
20
+ - Поддерживает одиночный (`selectionMode="single"`) и множественный (`selectionMode="multiple"`) режимы, контролируемое/неконтролируемое раскрытие и вложенные аккордеоны (например, внутри блока можно использовать `AccordionSecondary`).
21
+ - Figma: [`Snack UI Kit — AccordionPrimary`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A262646&mode=design).
22
+
23
+ ### Example
9
24
 
10
25
  ```tsx
11
- import { AccordionPrimary } from '@snack-uikit/accordion'
26
+ import { AccordionPrimary } from '@snack-uikit/accordion';
12
27
 
13
28
  function Example() {
29
+ return (
30
+ <AccordionPrimary selectionMode='single'>
31
+ <AccordionPrimary.CollapseBlock
32
+ id='item-1'
33
+ header={<AccordionPrimary.CollapseBlockHeader title='Заголовок 1' />}
34
+ >
35
+ Первый блок контента
36
+ </AccordionPrimary.CollapseBlock>
37
+
38
+ <AccordionPrimary.CollapseBlock
39
+ id='item-2'
40
+ header={<AccordionPrimary.CollapseBlockHeader title='Заголовок 2' />}
41
+ >
42
+ Второй блок контента
43
+ </AccordionPrimary.CollapseBlock>
44
+ </AccordionPrimary>
45
+ );
46
+ }
47
+ ```
14
48
 
15
- // ...some actions
49
+ ## AccordionSecondary
50
+
51
+ ### Description
52
+ - `AccordionSecondary` — облегчённый вариант аккордеона для вложенного или второстепенного контента (например, внутри блока `AccordionPrimary` или в боковых панелях).
53
+ - Визуально менее акцентный, но поддерживает те же режимы работы с раскрытием, что и основной аккордеон.
54
+ - Используется вместе с `AccordionSecondary.CollapseBlock` и `AccordionSecondary.CollapseBlockHeader`.
55
+ - Figma: [`Snack UI Kit — AccordionSecondary`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A262646&mode=design).
16
56
 
17
- return (
18
- <AccordionPrimary >
19
- <AccordionPrimary.CollapseBlock title={title} description={description} actions={actions}>
20
- <Content />
21
- </AccordionPrimary.CollapseBlock>
57
+ ### Example
58
+
59
+ ```tsx
60
+ import { AccordionSecondary } from '@snack-uikit/accordion';
22
61
 
23
- <AccordionPrimary.CollapseBlock title={title} description={description} actions={actions}>
24
- <Content />
25
- </AccordionPrimary.CollapseBlock>
26
- </AccordionPrimary>
27
- )}
62
+ function Example() {
63
+ return (
64
+ <AccordionSecondary selectionMode='multiple'>
65
+ <AccordionSecondary.CollapseBlock
66
+ id='inner-1'
67
+ header={<AccordionSecondary.CollapseBlockHeader title='Подраздел 1' />}
68
+ >
69
+ Контент первого подраздела
70
+ </AccordionSecondary.CollapseBlock>
71
+
72
+ <AccordionSecondary.CollapseBlock
73
+ id='inner-2'
74
+ header={<AccordionSecondary.CollapseBlockHeader title='Подраздел 2' />}
75
+ >
76
+ Контент второго подраздела
77
+ </AccordionSecondary.CollapseBlock>
78
+ </AccordionSecondary>
79
+ );
80
+ }
28
81
  ```
29
82
 
83
+ ## CollapseBlockPrimary
84
+
85
+ ### Description
86
+ - Компонент, описанный в сторис-файле `CollapseBlockPrimary.story.tsx`, в реальном коде используется как `AccordionPrimary.CollapseBlock`.
87
+ - Это коллапс-блок для `AccordionPrimary` с более выразительным контейнером и поддержкой дополнительных визуальных настроек: внешнего бордера (`outline`) и формы (`shape: 'round' | 'square'`).
88
+ - Блок принимает произвольный заголовок (`header`), может отображать дополнительные действия (`actions`), а также умеет удалять контент из DOM при сворачивании (`removeContentFromDOM`) и вызывать обработчик клика по заголовку (`onClick`).
89
+ - Figma: [`Snack UI Kit — CollapseBlockPrimary`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A262548&mode=design).
30
90
 
91
+ ### Example
92
+
93
+ ```tsx
94
+ import { AccordionPrimary } from '@snack-uikit/accordion';
95
+
96
+ function Example() {
97
+ return (
98
+ <AccordionPrimary>
99
+ <AccordionPrimary.CollapseBlock
100
+ id='primary-block'
101
+ outline
102
+ shape='square'
103
+ header={<AccordionPrimary.CollapseBlockHeader title='Основной блок' />}
104
+ >
105
+ Детальный контент с дополнительными настройками внешнего вида.
106
+ </AccordionPrimary.CollapseBlock>
107
+ </AccordionPrimary>
108
+ );
109
+ }
110
+ ```
111
+
112
+ ## CollapseBlockSecondary
113
+
114
+ ### Description
115
+ - Компонент, описанный в сторис-файле `CollapseBlockSecondary.story.tsx`, в реальном коде используется как `AccordionSecondary.CollapseBlock`.
116
+ - Это компактный коллапс-блок для `AccordionSecondary`, подходящий для вложенных секций, фильтров и вспомогательного контента.
117
+ - Поддерживает те же базовые возможности, что и `CollapseBlockPrimary` (произвольный заголовок, `actions`, `removeContentFromDOM`, `onClick`), но без настроек бордера и формы, что делает его менее акцентным и визуально легче.
118
+ - Figma: [`Snack UI Kit — CollapseBlockSecondary`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A262548&mode=design).
119
+
120
+ ### Example
121
+
122
+ ```tsx
123
+ import { AccordionSecondary } from '@snack-uikit/accordion';
124
+
125
+ function Example() {
126
+ return (
127
+ <AccordionSecondary>
128
+ <AccordionSecondary.CollapseBlock
129
+ id='secondary-block'
130
+ header={<AccordionSecondary.CollapseBlockHeader title='Вложенный блок' />}
131
+ >
132
+ Вспомогательный или вложенный контент.
133
+ </AccordionSecondary.CollapseBlock>
134
+ </AccordionSecondary>
135
+ );
136
+ }
137
+ ```
31
138
 
32
139
  [//]: DOCUMENTATION_SECTION_START
33
140
  [//]: THIS_SECTION_IS_AUTOGENERATED_PLEASE_DONT_EDIT_IT
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "title": "Accordion",
7
- "version": "0.11.18",
7
+ "version": "0.11.19",
8
8
  "sideEffects": [
9
9
  "*.css",
10
10
  "*.woff",
@@ -36,18 +36,18 @@
36
36
  "license": "Apache-2.0",
37
37
  "scripts": {},
38
38
  "dependencies": {
39
- "@snack-uikit/button": "0.19.16",
40
- "@snack-uikit/icons": "0.27.4",
41
- "@snack-uikit/toggles": "0.13.23",
42
- "@snack-uikit/tooltip": "0.18.7",
43
- "@snack-uikit/truncate-string": "0.7.6",
44
- "@snack-uikit/typography": "0.8.11",
45
- "@snack-uikit/utils": "4.0.0",
39
+ "@snack-uikit/button": "0.19.17",
40
+ "@snack-uikit/icons": "0.27.5",
41
+ "@snack-uikit/toggles": "0.13.24",
42
+ "@snack-uikit/tooltip": "0.18.8",
43
+ "@snack-uikit/truncate-string": "0.7.7",
44
+ "@snack-uikit/typography": "0.8.12",
45
+ "@snack-uikit/utils": "4.0.1",
46
46
  "classnames": "2.5.1",
47
47
  "lodash.debounce": "4.0.8"
48
48
  },
49
49
  "devDependencies": {
50
50
  "@types/lodash.debounce": "4.0.8"
51
51
  },
52
- "gitHead": "6b39e180766635f8190da903bf560d1fbcbfaf52"
52
+ "gitHead": "84371bbf91915f650a852df849cd71d416c5b7b2"
53
53
  }