@salutejs/plasma-new-hope 0.322.0-canary.1941.14637562685.0 → 0.322.0-canary.1944.14660891986.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.
Files changed (99) hide show
  1. package/emotion/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
  2. package/emotion/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  3. package/emotion/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  4. package/emotion/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
  5. package/emotion/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  6. package/emotion/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  7. package/emotion/cjs/components/Flow/Flow.template-doc.mdx +2 -2
  8. package/emotion/cjs/components/Notification/Notification.template-doc.mdx +10 -1
  9. package/emotion/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  10. package/emotion/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  11. package/emotion/cjs/components/Range/Range.template-doc.mdx +5 -1
  12. package/emotion/cjs/components/Segment/Segment.template-doc.mdx +3 -3
  13. package/emotion/cjs/components/Select/Select.template-doc.mdx +27 -27
  14. package/emotion/cjs/components/Slider/Slider.template-doc.mdx +2 -2
  15. package/emotion/cjs/components/Switch/Switch.template-doc.mdx +3 -3
  16. package/emotion/cjs/components/Table/Table.template-doc.mdx +2 -2
  17. package/emotion/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
  18. package/emotion/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
  19. package/emotion/cjs/components/TextField/TextField.template-doc.mdx +117 -32
  20. package/emotion/cjs/components/Toast/Toast.template-doc.mdx +48 -2
  21. package/emotion/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  22. package/emotion/cjs/components/Tree/Tree.template-doc.mdx +0 -1
  23. package/emotion/es/components/Accordion/Accordion.template-doc.mdx +99 -71
  24. package/emotion/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  25. package/emotion/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  26. package/emotion/es/components/Combobox/Combobox.template-doc.mdx +58 -27
  27. package/emotion/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  28. package/emotion/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  29. package/emotion/es/components/Flow/Flow.template-doc.mdx +2 -2
  30. package/emotion/es/components/Notification/Notification.template-doc.mdx +10 -1
  31. package/emotion/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  32. package/emotion/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  33. package/emotion/es/components/Range/Range.template-doc.mdx +5 -1
  34. package/emotion/es/components/Segment/Segment.template-doc.mdx +3 -3
  35. package/emotion/es/components/Select/Select.template-doc.mdx +27 -27
  36. package/emotion/es/components/Slider/Slider.template-doc.mdx +2 -2
  37. package/emotion/es/components/Switch/Switch.template-doc.mdx +3 -3
  38. package/emotion/es/components/Table/Table.template-doc.mdx +2 -2
  39. package/emotion/es/components/Tabs/Tabs.template-doc.mdx +11 -7
  40. package/emotion/es/components/TextArea/TextArea.template-doc.mdx +9 -2
  41. package/emotion/es/components/TextField/TextField.template-doc.mdx +117 -32
  42. package/emotion/es/components/Toast/Toast.template-doc.mdx +48 -2
  43. package/emotion/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  44. package/emotion/es/components/Tree/Tree.template-doc.mdx +0 -1
  45. package/package.json +4 -4
  46. package/styled-components/cjs/components/Accordion/Accordion.template-doc.mdx +99 -71
  47. package/styled-components/cjs/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  48. package/styled-components/cjs/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  49. package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +58 -27
  50. package/styled-components/cjs/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  51. package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  52. package/styled-components/cjs/components/Flow/Flow.template-doc.mdx +2 -2
  53. package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +10 -1
  54. package/styled-components/cjs/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  55. package/styled-components/cjs/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  56. package/styled-components/cjs/components/Range/Range.template-doc.mdx +5 -1
  57. package/styled-components/cjs/components/Segment/Segment.template-doc.mdx +3 -3
  58. package/styled-components/cjs/components/Select/Select.template-doc.mdx +27 -27
  59. package/styled-components/cjs/components/Slider/Slider.template-doc.mdx +2 -2
  60. package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +3 -3
  61. package/styled-components/cjs/components/Table/Table.template-doc.mdx +2 -2
  62. package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +11 -7
  63. package/styled-components/cjs/components/TextArea/TextArea.template-doc.mdx +9 -2
  64. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +117 -32
  65. package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +48 -2
  66. package/styled-components/cjs/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  67. package/styled-components/cjs/components/Tree/Tree.template-doc.mdx +0 -1
  68. package/styled-components/es/components/Accordion/Accordion.template-doc.mdx +99 -71
  69. package/styled-components/es/components/Autocomplete/Autocomplete.template-doc.mdx +523 -454
  70. package/styled-components/es/components/Checkbox/Checkbox.template-doc.mdx +3 -3
  71. package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +58 -27
  72. package/styled-components/es/components/DatePicker/DatePicker.template-doc.mdx +5 -0
  73. package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +10 -10
  74. package/styled-components/es/components/Flow/Flow.template-doc.mdx +2 -2
  75. package/styled-components/es/components/Notification/Notification.template-doc.mdx +10 -1
  76. package/styled-components/es/components/NumberFormat/NumberFormat.template-doc.mdx +4 -4
  77. package/styled-components/es/components/Radiobox/Radiobox.template-doc.mdx +10 -11
  78. package/styled-components/es/components/Range/Range.template-doc.mdx +5 -1
  79. package/styled-components/es/components/Segment/Segment.template-doc.mdx +3 -3
  80. package/styled-components/es/components/Select/Select.template-doc.mdx +27 -27
  81. package/styled-components/es/components/Slider/Slider.template-doc.mdx +2 -2
  82. package/styled-components/es/components/Switch/Switch.template-doc.mdx +3 -3
  83. package/styled-components/es/components/Table/Table.template-doc.mdx +2 -2
  84. package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +11 -7
  85. package/styled-components/es/components/TextArea/TextArea.template-doc.mdx +9 -2
  86. package/styled-components/es/components/TextField/TextField.template-doc.mdx +117 -32
  87. package/styled-components/es/components/Toast/Toast.template-doc.mdx +48 -2
  88. package/styled-components/es/components/Tooltip/Tooltip.template-doc.mdx +19 -4
  89. package/styled-components/es/components/Tree/Tree.template-doc.mdx +0 -1
  90. package/emotion/cjs/components/CodeField/CodeField.types.js +0 -5
  91. package/emotion/es/components/CodeField/CodeField.types.js +0 -1
  92. package/styled-components/cjs/components/CodeField/CodeField.types.js +0 -5
  93. package/styled-components/es/components/CodeField/CodeField.types.js +0 -1
  94. package/types/components/CodeField/CodeField.types.d.ts +0 -56
  95. package/types/components/CodeField/CodeField.types.d.ts.map +0 -1
  96. /package/emotion/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  97. /package/emotion/es/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  98. /package/styled-components/cjs/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
  99. /package/styled-components/es/components/Combobox/ComboboxOld/{Combobox.template-doc.mdx → Combobox.doc.mdx} +0 -0
@@ -7,7 +7,7 @@ import { PropsTable, Description } from '@site/src/components';
7
7
 
8
8
  # Switch
9
9
  <Description name="Switch" />
10
- <PropsTable name="Switch" />
10
+ <PropsTable name="Switch" include={['defaultChecked']} />
11
11
 
12
12
  ## Использование
13
13
  Компонент `Switch` может содержать лейбл.
@@ -30,7 +30,7 @@ export function App() {
30
30
 
31
31
  ```tsx live
32
32
  import React from 'react';
33
- import { Button } from '@salutejs/{{ package }}';
33
+ import { Switch } from '@salutejs/{{ package }}';
34
34
 
35
35
  export function App() {
36
36
  return (
@@ -47,7 +47,7 @@ export function App() {
47
47
 
48
48
  ```tsx live
49
49
  import React from 'react';
50
- import { Button } from '@salutejs/{{ package }}';
50
+ import { Switch } from '@salutejs/{{ package }}';
51
51
 
52
52
  export function App() {
53
53
  return (
@@ -492,7 +492,7 @@ export type TableColumnData = {
492
492
  ];
493
493
 
494
494
  return (
495
- <div style={{ display: "block" }}>
495
+ <div style=\{{ display: "block" }}>
496
496
  <ButtonGroup size="xs" isCommonButtonStyles={false}>
497
497
  <Button text="Очистить выбранные" view="warning" size="xs" onClick={clearSelected} />
498
498
  <Button text="Убрать сортировку" view="warning" size="xs" onClick={clearSorted} />
@@ -504,7 +504,7 @@ export type TableColumnData = {
504
504
  <br />
505
505
  <br />
506
506
 
507
- <div style={{ overflow: "scroll" }}>
507
+ <div style=\{{ overflow: "scroll" }}>
508
508
  <Table
509
509
  data={data}
510
510
  columns={columns}
@@ -5,6 +5,10 @@ title: Tabs
5
5
 
6
6
  import { PropsTable, Description } from '@site/src/components';
7
7
 
8
+ # Tabs
9
+ Набор компонентов для создания вкладок.
10
+ Структура для вкладок похожа на структуру маркированных списков.
11
+
8
12
  ## Tabs
9
13
 
10
14
  <Description name="Tabs" />
@@ -16,7 +20,7 @@ import { PropsTable, Description } from '@site/src/components';
16
20
  <PropsTable name="TabItem" />
17
21
 
18
22
  :::caution Взаимоисключающие свойства
19
- Свойство `value` - это значение таба. Оно отображается справа от основного текста.<br/>
23
+ Свойство `value` - это значение Tab. Оно отображается справа от основного текста.<br/>
20
24
  `value` и `contentRight` взаимоисключающие: если передано одно, второе передать нельзя.
21
25
  :::
22
26
 
@@ -61,8 +65,8 @@ export function App() {
61
65
  }
62
66
  ```
63
67
 
64
- ### Расположение табов
65
- Табы могут быть горизонтальными (по умолчанию) и вертикальными. За это отвечает свойство `orientation`.
68
+ ### Расположение Tabs
69
+ Компонент может быть горизонтальными (по умолчанию) и вертикальными. За это отвечает свойство `orientation`.
66
70
 
67
71
  ```tsx live
68
72
  import React, { useState } from 'react';
@@ -97,11 +101,11 @@ export function App() {
97
101
  ```
98
102
 
99
103
  ### Пример с прокруткой
100
- При выборе таба происходит прокрутка до выбранного таба.
104
+ При выборе Tab происходит прокрутка до выбранного TabItem.
101
105
 
102
106
  ```tsx live
103
107
  import React, { useState } from 'react';
104
- import { Tabs, TabItem, Button } from '@salutejs/plasma-web';
108
+ import { Tabs, TabItem, Button } from '@salutejs/{{ package }}';
105
109
  import { IconClock } from '@salutejs/plasma-icons';
106
110
 
107
111
  export function App() {
@@ -189,8 +193,8 @@ export function App() {
189
193
 
190
194
  ### Подключение клавиатурной навигации
191
195
  Для этого необходимо дополнительно прокинуть свойства `index, itemIndex, onIndexChange`.<br/>
192
- Для горизонтальных табов: клавиши ArrowLeft, ArrowRight, Home, End для навигации по вкладкам.<br/>
193
- Для вертикальных табов: клавиши ArrowUp, ArrowDown, Home, End для навигации по вкладкам.
196
+ Для горизонтальных Tabs: клавиши ArrowLeft, ArrowRight, Home, End для навигации по вкладкам.<br/>
197
+ Для вертикальных Tabs: клавиши ArrowUp, ArrowDown, Home, End для навигации по вкладкам.
194
198
 
195
199
  ```tsx live
196
200
  import React, { useState } from 'react';
@@ -161,11 +161,18 @@ export function App() {
161
161
 
162
162
 
163
163
  ### Обязательность поля
164
- Обязательность поля задаётся с помощью свойств `required` и `requiredPlacement`. Где `requiredPlacement` отвечает за выравнивание и принимает значения `"left"` и `"right"`:
164
+
165
+ :::tip
166
+ Наличие индикатора регулируется свойством `hasRequiredIndicator`.
167
+ :::
168
+
169
+ Обязательность поля задаётся с помощью свойств `required` и `requiredPlacement`.
170
+
171
+ Где `requiredPlacement` отвечает за выравнивание и принимает значения `"left"` и `"right"`:
165
172
 
166
173
  ```tsx live
167
174
  import React from 'react';
168
- import { TextField } from '@salutejs/{{ package }}';
175
+ import { TextArea } from '@salutejs/{{ package }}';
169
176
 
170
177
  export function App() {
171
178
  return (
@@ -37,7 +37,7 @@ export function App() {
37
37
  ```
38
38
 
39
39
  ### Размер поля
40
- Размер поля задаётся с помощью свойства `size`. Свойство принимает значения `"l"` и `"m"`:
40
+ Размер поля задаётся с помощью свойства `size`. Свойство принимает значения `"l" | "m" | "s" | "xs"`:
41
41
 
42
42
  ```tsx live
43
43
  import React from 'react';
@@ -53,8 +53,8 @@ export function App() {
53
53
  />
54
54
  <TextField
55
55
  placeholder="Размер"
56
- size="m"
57
- defaultValue="M48"
56
+ size="s"
57
+ defaultValue="S40"
58
58
  />
59
59
  </div>
60
60
  );
@@ -62,9 +62,9 @@ export function App() {
62
62
  ```
63
63
 
64
64
  ### Статус поля
65
- Статус поля задается с помощью свойства `status`.
66
- Возможные значения свойства: `success`, `warning` и `error`.
67
- На отображение TextField так же влияют свойства `clear` и `hasDivider`:
65
+ Статус поля задается с помощью свойства `view`.
66
+
67
+ Возможные значения свойства: `"positive" | "warning" | "negative"`
68
68
 
69
69
  ```tsx live
70
70
  import React from 'react';
@@ -75,46 +75,61 @@ export function App() {
75
75
  <div style=\{{ display: "flex", flexDirection: "column", gap: "1rem" }}>
76
76
  <div style=\{{ display: "flex", gap: "0.5rem" }}>
77
77
  <TextField
78
- placeholder="Статус"
79
- status="success"
78
+ placeholder="Статус positive"
79
+ view="positive"
80
80
  size="m"
81
- defaultValue="Успех"
81
+ defaultValue="Positive"
82
82
  />
83
83
  <TextField
84
- placeholder="Статус"
85
- status="warning"
84
+ placeholder="Статус warning"
85
+ view="warning"
86
86
  size="m"
87
- defaultValue="Предупреждение"
87
+ defaultValue="Warning"
88
88
  />
89
89
  <TextField
90
- placeholder="Статус"
91
- status="error"
90
+ placeholder="Статус Ошибка"
91
+ view="negative"
92
92
  size="m"
93
- defaultValue="Ошибка"
93
+ defaultValue="Negative"
94
94
  />
95
95
  </div>
96
+ </div>
97
+ );
98
+ }
99
+ ```
100
+
101
+ ### Вариация Clear
102
+ На отображение компонента так же влияют свойства `clear` и `hasDivider`:
103
+
104
+ ```tsx live
105
+ import React from 'react';
106
+ import { TextField } from '@salutejs/{{ package }}';
107
+
108
+ export function App() {
109
+ return (
110
+ <div style=\{{ display: "flex", flexDirection: "column", gap: "1rem" }}>
96
111
  <div style=\{{ display: "flex", gap: "0.5rem" }}>
97
112
  <TextField
98
- placeholder="Статус"
99
- status="success"
113
+ placeholder="Статус positive"
114
+ view="positive"
100
115
  size="m"
101
- defaultValue="Успех"
116
+ defaultValue="Positive"
102
117
  clear
103
118
  hasDivider
104
119
  />
105
120
  <TextField
106
- placeholder="Статус"
107
- status="warning"
121
+ placeholder="Статус warning"
122
+ view="warning"
108
123
  size="m"
109
- defaultValue="Предупреждение"
124
+ defaultValue="Warning"
110
125
  clear
111
126
  hasDivider
112
127
  />
113
128
  <TextField
114
- placeholder="Статус"
115
- status="error"
129
+ placeholder="Статус negative"
130
+ view="negative"
116
131
  size="m"
117
- defaultValue="Ошибка"
132
+ defaultValue="Negative"
118
133
  clear
119
134
  hasDivider
120
135
  />
@@ -125,8 +140,11 @@ export function App() {
125
140
  ```
126
141
 
127
142
  ### Подсказка
128
- Для вывода подсказки снизу от поля используйте свойство `helperText`,
129
- для подсказки в виде Tooltip - `hintText`, для подсказки сверху справа - `titleCaption`:
143
+ Для вывода подсказок:
144
+
145
+ - `leftHelper` внизу слева под компонентом
146
+ - `titleCaption` сверху справа над компонентом
147
+ - `hintText` для подсказки в виде `Tooltip`
130
148
 
131
149
  ```tsx live
132
150
  import React from 'react';
@@ -138,7 +156,7 @@ export function App() {
138
156
  <TextField
139
157
  placeholder="Введите значение"
140
158
  defaultValue="Значение"
141
- helperText="Подсказка снизу"
159
+ leftHelper="Подсказка снизу"
142
160
  titleCaption="Подсказка сверху"
143
161
  hintText="Подсказка в виде Tooltip"
144
162
  hintView="default"
@@ -151,7 +169,9 @@ export function App() {
151
169
 
152
170
  ### Режим ввода
153
171
  С помощью свойства `enumerationType` можно вводить элементы как теги. Свойство `chipType` изменяет внешний вид чипа.
154
- С помощью `chipView` можно задать общий вид Chip. Валидация Chip происходит с помощью функции chipValidator.
172
+
173
+ С помощью `chipView` можно задать общий вид `Chip`. Валидация `Chip` происходит с помощью функции `chipValidator`.
174
+
155
175
  По нажатию Enter, после ввода нужного текста, он преобразуется в Chip.
156
176
 
157
177
  ```tsx live
@@ -168,7 +188,7 @@ export function App() {
168
188
  defaultValue="Значение"
169
189
  size="l"
170
190
  enumerationType="chip"
171
- helperText="Подсказка снизу"
191
+ leftHelper="Подсказка снизу"
172
192
  chips={["Значение 1", "Значение 2"]}
173
193
  chipView="positive"
174
194
  chipValidator={validateChip}
@@ -179,7 +199,7 @@ export function App() {
179
199
  defaultValue="Значение"
180
200
  size="l"
181
201
  enumerationType="chip"
182
- helperText="Подсказка снизу"
202
+ leftHelper="Подсказка снизу"
183
203
  chips={["Значение 1"]}
184
204
  chipType="text"
185
205
  />
@@ -188,9 +208,15 @@ export function App() {
188
208
  }
189
209
  ```
190
210
 
191
-
192
211
  ### Обязательность поля
193
- Обязательность поля задаётся с помощью свойств `required` и `requiredPlacement`. Где `requiredPlacement` отвечает за выравнивание и принимает значения `"left"` и `"right"`:
212
+
213
+ :::tip
214
+ Наличие индикатора регулируется свойством `hasRequiredIndicator`.
215
+ :::
216
+
217
+ Обязательность поля задаётся с помощью свойств `required` и `requiredPlacement`.
218
+
219
+ Где `requiredPlacement` отвечает за выравнивание и принимает значения `"left"` и `"right"`:
194
220
 
195
221
  ```tsx live
196
222
  import React from 'react';
@@ -209,7 +235,66 @@ export function App() {
209
235
  required
210
236
  requiredPlacement="right"
211
237
  />
238
+ <TextField
239
+ placeholder="Введите значение"
240
+ label="Поле обязательное, но не имеет визуального индикатора"
241
+ required
242
+ requiredPlacement="right"
243
+ hasRequiredIndicator={false}
244
+ />
212
245
  </div>
213
246
  );
214
247
  }
215
248
  ```
249
+
250
+ ## Примеры
251
+
252
+ ### TextField + очистка поля
253
+
254
+ ```tsx live
255
+ import React, { useState } from "react";
256
+ import { TextField } from "@salutejs/{{ package }}";
257
+ import { IconClose } from "@salutejs/plasma-icons";
258
+
259
+ export function App() {
260
+ const [value, setValue] = useState("");
261
+
262
+ const ControlClear = (props: { onClick: () => void }) => {
263
+ return (
264
+ <div {...props}>
265
+ <IconClose size="xs" color="inherit" />
266
+ </div>
267
+ );
268
+ };
269
+
270
+ return (
271
+ <div>
272
+ <TextField
273
+ placeholder="Положение иконки"
274
+ value={value}
275
+ onChange={(e) => {
276
+ setValue(e.target.value);
277
+ }}
278
+ contentRight={
279
+ <ControlClear
280
+ onClick={() => {
281
+ setValue("");
282
+ }}
283
+ />
284
+ }
285
+ />
286
+ </div>
287
+ );
288
+ }
289
+ ```
290
+
291
+ ## Клавиатурная навигация
292
+
293
+ Данный компонент может полностью управляться с помощью клавиатуры, используя следующие клавиши:
294
+ - по нажатию `Tab` фокусируемся на input
295
+ - если enumeratinType=`chip` после ввода текста, по нажатию `Enter`, input очистится и появится Chip
296
+ - если введен текст в input по нажатию `ArrowLeft` или `ArrowRight` каретка передвигается по тексту
297
+ - при достижении левой границы текста или отсутствии текста в input, при нажатии `Backspace` удаляем последний Chip, если он есть
298
+ - при достижении левой границы текста или отсутствии текста в input, при нажатии `ArrowLeft` переключаемся на последний Chip, если он есть
299
+ - при фокусе на Chip работает переключение фокуса на другие Chip по нажатию `ArrowLeft`, `ArrowRight`; если же Chip крайний правый, при нажатии `ArrowRight` фокус переходит на input
300
+
@@ -9,6 +9,11 @@ import { PropsTable, Description } from '@site/src/components';
9
9
  <Description name="Toast" />
10
10
  <PropsTable name="Toast" />
11
11
 
12
+ :::caution Устаревшие значения свойства `view`
13
+ Значения `dark` и `light` являются устаревшими.<br/>
14
+ Для изменения фона `Toast` используйте компонент `ViewContainer` (см. <a href="#пример-использования">пример использования</a>)
15
+ :::
16
+
12
17
  ## Система подсказок
13
18
  Существует готовая система текстовых подсказок, для использования которой необходимо обернуть приложение в `ToastProvider`:
14
19
 
@@ -120,7 +125,6 @@ export interface ShowToastArgs {
120
125
  ```
121
126
 
122
127
  ## Пример использования
123
-
124
128
  Для изменения цветовой темы компонента `Toast` используйте свойство `view` компонента `ViewContainer`.
125
129
 
126
130
  ```jsx live
@@ -130,7 +134,7 @@ import { useToast, ToastProvider, Button, ViewContainer } from '@salutejs/{{ pac
130
134
  export function App() {
131
135
 
132
136
  const ToastExample = () => {
133
- const { showToast, hideToast } = useToast()
137
+ const { showToast } = useToast()
134
138
 
135
139
  const onShow = () => {}
136
140
  const onHide = () => {}
@@ -168,3 +172,45 @@ export function App() {
168
172
  )
169
173
  }
170
174
  ```
175
+
176
+ ## Вид иконки
177
+ Значения `positive` и `negative` свойства `view` изменяют цвет иконки.<br/>
178
+ Чтобы цвет применился, установите в иконке свойство `color` со значением `inherit`:
179
+
180
+ ```jsx live
181
+ import React from 'react'
182
+ import { IconBell } from '@salutejs/plasma-icons';
183
+ import { useToast, ToastProvider, Button } from '@salutejs/{{ package }}'
184
+
185
+ export function App() {
186
+ const Icon = () => <IconBell color="inherit" size="xs" />;
187
+
188
+ const ToastExample = () => {
189
+ const { showToast } = useToast()
190
+
191
+ const onShow = () => {}
192
+ const onHide = () => {}
193
+ const toastData = {
194
+ contentLeft: <Icon />,
195
+ text: 'Подсказка c иконкой',
196
+ position: 'bottom',
197
+ role: 'status',
198
+ hasClose: true,
199
+ fade: false,
200
+ size: 'm',
201
+ view: 'positive',
202
+ timeout: 3000,
203
+ onShow,
204
+ onHide
205
+ }
206
+
207
+ return <Button onClick={() => showToast(toastData)} text="Вызвать подсказку" />
208
+ }
209
+
210
+ return (
211
+ <ToastProvider>
212
+ <ToastExample />
213
+ </ToastProvider>
214
+ )
215
+ }
216
+ ```
@@ -17,13 +17,28 @@ import { PropsTable, Description } from '@site/src/components';
17
17
 
18
18
  ```tsx live
19
19
  import React from 'react';
20
- import { Tooltip } from '@salutejs/{{ package }}';
21
- import { IconApps } from '@salutejs/plasma-icons';
20
+ import { Tooltip, Button } from '@salutejs/{{ package }}';
22
21
 
23
22
  export function App() {
24
23
  return (
25
- <div style=\{{marginLeft: '100px',marginBottom: '35px'}}>
26
- <Tooltip target={( <IconApps />)} text="Высокое качество воспроизведения" placement="bottom" hasArrow opened />
24
+ <div style=\{{display: 'grid', gridTemplateColumns: 'repeat(3, max-content)', gridGap: '1rem 3.5rem', padding: '3.5rem'}}>
25
+ <Tooltip
26
+ target={<Tooltip target={<Button>Btn</Button>} placement="left" opened text="left" />}
27
+ placement="top-start"
28
+ opened
29
+ text="top-start"
30
+ view="default"
31
+ />
32
+ <Tooltip target={<Button>Btn</Button>} placement="top" opened text="top" />
33
+ <Tooltip
34
+ target={<Tooltip target={<Button>Btn</Button>} placement="right" opened text="right" />}
35
+ placement="top-end"
36
+ opened
37
+ text="top-end"
38
+ />
39
+ <Tooltip target={<Button>Btn</Button>} placement="bottom-start" opened text="bottom-start" />
40
+ <Tooltip target={<Button>Btn</Button>} placement="bottom" opened text="bottom" />
41
+ <Tooltip target={<Button>Btn</Button>} placement="bottom-end" opened text="bottom-end" />
27
42
  </div>
28
43
  );
29
44
  }
@@ -218,4 +218,3 @@ type TreeItem = {
218
218
  ```
219
219
  </TabItem>
220
220
  </Tabs>
221
-