@snack-uikit/alert 0.16.23 → 0.16.24

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 +83 -37
  3. package/package.json +7 -7
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.16.24 (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.16.23 (2025-11-28)</small>
7
17
 
8
18
  ### Only dependencies have been changed
package/README.md CHANGED
@@ -6,45 +6,91 @@
6
6
 
7
7
  [Changelog](./CHANGELOG.md)
8
8
 
9
- ## Example
9
+ ## Description
10
+
11
+ - Пакет `@snack-uikit/alert` содержит компоненты для отображения системных уведомлений: встроенных в контент страницы и закреплённых в верхней части экрана.
12
+ - Алерты помогают ненавязчиво сообщать пользователю об ошибках, предупреждениях, результатах действий или справочной информации и поддерживают единый визуальный стиль (appearance, иконки, ссылки, кнопки действий).
13
+ - Компоненты адаптируются под разные сценарии за счёт управляемых пропов (заголовок, описание, ссылка, кнопки действий, размеры, иконка), работают с произвольным контентом в описании и умеют корректно обрезать длинные заголовки.
14
+
15
+ ## Alert
16
+
17
+ ### Description
18
+
19
+ - `Alert` — блоковое уведомление внутри контента страницы или секции интерфейса.
20
+ - Компонент поддерживает **разные типы статусов** через проп `appearance` (neutral, primary, error, warning, success, info) с соответствующей иконкой и цветовой схемой.
21
+ - Позволяет задать **заголовок и описание** с управляемым количеством строк заголовка (`truncate`), чтобы аккуратно отображать длинные тексты.
22
+ - Поддерживает **текстовую ссылку** (`link`), оформленную в нужном цвете под выбранный статус.
23
+ - Может отображать **кнопку закрытия** (`onClose`) с иконкой, если нужно дать пользователю возможность скрыть уведомление.
24
+ - Показывает **кнопки действий в футере** (`actions.primary` и `actions.secondary`) для выполнения связанных с уведомлением операций.
25
+ - Figma: [`Alert`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A183757&mode=design).
26
+
27
+ ### Example
28
+
29
+ ```tsx
30
+ import { Alert } from '@snack-uikit/alert';
31
+ import { PlaceholderSVG } from '@snack-uikit/icons';
32
+
33
+ export function AlertExample() {
34
+ return (
35
+ <Alert
36
+ appearance="error"
37
+ title="Не удалось сохранить изменения"
38
+ description="Попробуйте ещё раз через несколько секунд. Если проблема повторится, обратитесь в поддержку."
39
+ icon
40
+ link={{
41
+ text: 'Подробнее в документации',
42
+ href: '#',
43
+ }}
44
+ onClose={() => console.log('Alert closed')}
45
+ actions={{
46
+ primary: { text: 'Повторить', onClick: () => console.log('Retry'), icon: <PlaceholderSVG />, loading: false },
47
+ secondary: { text: 'Отмена', onClick: () => console.log('Cancel'), loading: false },
48
+ }}
49
+ data-test-id="alert"
50
+ />
51
+ );
52
+ }
53
+ ```
54
+
55
+ ## AlertTop
56
+
57
+ ### Description
58
+
59
+ - `AlertTop` — закреплённое уведомление в верхней части экрана для важных системных сообщений, которые должны быть хорошо заметны, но при этом не перекрывать весь интерфейс.
60
+ - Компонент **растягивается по ширине контейнера/экрана** и визуально отделяется от контента.
61
+ - Поддерживает **иконку статуса** и цветовую схему, контрастную по отношению к фону.
62
+ - Отображает **заголовок и описание** с усечением длинного заголовка.
63
+ - Позволяет добавить **кнопку действия** (`action`) и **кнопку закрытия** (`onClose`), управляя их видимостью снаружи.
64
+ - Содержит **ссылку** (`link`), отображаемую в режиме `on-accent`, чтобы текст был читаем на цветном фоне.
65
+ - Figma: [`AlertTop`](https://www.figma.com/file/jtGxAPvFJOMir7V0eQFukN/Snack-UI-Kit-1.1.0?node-id=41%3A182904&mode=design).
66
+
67
+ ### Example
10
68
 
11
69
  ```tsx
12
- import { Alert, AlertTop } from '@snack-uikit/alert';
13
- import { InfoFilledSVG } from '@snack-uikit/icons';
14
-
15
- // Alert component displays a notification with an optional icon, title, description, and link.
16
- // It can be used to provide information, warnings, errors, or success messages.
17
-
18
- <Alert
19
- appearance='neutral'
20
- link={{
21
- text: 'Link text',
22
- href: 'https://cloud.ru/',
23
- }}
24
- title='Title'
25
- description='Title description'
26
- onClose={() => console.log('alert')}
27
- />;
28
-
29
- // AlertTop component is similar to Alert but is positioned at the top of the screen.
30
- // It can have an additional button with customizable text, icon, and click handler.
31
-
32
- <AlertTop
33
- appearance='neutral'
34
- link={{
35
- text: 'Link text',
36
- href: 'https://cloud.ru/',
37
- }}
38
- closeable
39
- title='Title'
40
- description='Title description'
41
- action={{
42
- text: 'Button Text',
43
- icon: <PlaceholderSVG />,
44
- onClick: () => {},
45
- }}
46
- onClose={() => console.log('alert top')}
47
- />;
70
+ import { AlertTop } from '@snack-uikit/alert';
71
+ import { PlaceholderSVG } from '@snack-uikit/icons';
72
+
73
+ export function AlertTopExample() {
74
+ return (
75
+ <AlertTop
76
+ appearance="success"
77
+ title="Настройки сохранены"
78
+ description="Новые параметры будут применены при следующем входе в систему."
79
+ icon
80
+ link={{
81
+ text: 'Изменить ещё раз',
82
+ href: '#',
83
+ }}
84
+ action={{
85
+ text: 'Отменить',
86
+ icon: <PlaceholderSVG />,
87
+ onClick: () => console.log('Revert changes'),
88
+ }}
89
+ onClose={() => console.log('AlertTop closed')}
90
+ data-test-id="alert-top"
91
+ />
92
+ );
93
+ }
48
94
  ```
49
95
 
50
96
  [//]: DOCUMENTATION_SECTION_START
package/package.json CHANGED
@@ -4,7 +4,7 @@
4
4
  "access": "public"
5
5
  },
6
6
  "title": "Alert",
7
- "version": "0.16.23",
7
+ "version": "0.16.24",
8
8
  "sideEffects": [
9
9
  "*.css",
10
10
  "*.woff",
@@ -36,12 +36,12 @@
36
36
  "license": "Apache-2.0",
37
37
  "scripts": {},
38
38
  "dependencies": {
39
- "@snack-uikit/icons": "0.27.4",
40
- "@snack-uikit/link": "0.17.15",
41
- "@snack-uikit/loaders": "0.9.9",
42
- "@snack-uikit/truncate-string": "0.7.6",
43
- "@snack-uikit/utils": "4.0.0",
39
+ "@snack-uikit/icons": "0.27.5",
40
+ "@snack-uikit/link": "0.17.16",
41
+ "@snack-uikit/loaders": "0.9.10",
42
+ "@snack-uikit/truncate-string": "0.7.7",
43
+ "@snack-uikit/utils": "4.0.1",
44
44
  "classnames": "2.5.1"
45
45
  },
46
- "gitHead": "6b39e180766635f8190da903bf560d1fbcbfaf52"
46
+ "gitHead": "84371bbf91915f650a852df849cd71d416c5b7b2"
47
47
  }