@salutejs/plasma-new-hope 0.66.0-dev.0 → 0.66.1-canary.1149.8446846250.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (67) hide show
  1. package/package.json +2 -2
  2. package/styled-components/cjs/components/Avatar/Avatar.template-doc.mdx +97 -0
  3. package/styled-components/cjs/components/AvatarGroup/AvatarGroup.template-doc.mdx +29 -0
  4. package/styled-components/cjs/components/Badge/Badge.template-doc.mdx +131 -0
  5. package/styled-components/cjs/components/Button/Button.template-doc.mdx +162 -0
  6. package/styled-components/cjs/components/ButtonGroup/ButtonGroup.template-doc.mdx +123 -0
  7. package/styled-components/cjs/components/Calendar/Calendar.template-doc.mdx +208 -0
  8. package/styled-components/cjs/components/Checkbox/Checkbox.template-doc.mdx +44 -0
  9. package/styled-components/cjs/components/Chip/Chip.template-doc.mdx +90 -0
  10. package/styled-components/cjs/components/Combobox/Combobox.template-doc.mdx +237 -0
  11. package/styled-components/cjs/components/Counter/Counter.template-doc.mdx +76 -0
  12. package/styled-components/cjs/components/Drawer/Drawer.template-doc.mdx +170 -0
  13. package/styled-components/cjs/components/Dropdown/Dropdown.template-doc.mdx +80 -0
  14. package/styled-components/cjs/components/Grid/Grid.template-doc.mdx +142 -0
  15. package/styled-components/cjs/components/Image/Image.template-doc.mdx +26 -0
  16. package/styled-components/cjs/components/Indicator/Indicator.template-doc.mdx +76 -0
  17. package/styled-components/cjs/components/Link/Link.template-doc.mdx +23 -0
  18. package/styled-components/cjs/components/Modal/Modal.template-doc.mdx +56 -0
  19. package/styled-components/cjs/components/Notification/Notification.template-doc.mdx +59 -0
  20. package/styled-components/cjs/components/Overlay/Overlay.template-doc.mdx +10 -0
  21. package/styled-components/cjs/components/Popover/Popover.template-doc.mdx +72 -0
  22. package/styled-components/cjs/components/Popup/Popup.template-doc.mdx +209 -0
  23. package/styled-components/cjs/components/Radiobox/Radiobox.template-doc.mdx +38 -0
  24. package/styled-components/cjs/components/Segment/Segment.template-doc.mdx +61 -0
  25. package/styled-components/cjs/components/Select/Select.template-doc.mdx +115 -0
  26. package/styled-components/cjs/components/Skeleton/Skeleton.template-doc.mdx +103 -0
  27. package/styled-components/cjs/components/Spinner/Spinner.template-doc.mdx +21 -0
  28. package/styled-components/cjs/components/Switch/Switch.template-doc.mdx +24 -0
  29. package/styled-components/cjs/components/Tabs/Tabs.template-doc.mdx +94 -0
  30. package/styled-components/cjs/components/TextArea/TextArea.template-doc.mdx +88 -0
  31. package/styled-components/cjs/components/TextField/TextField.template-doc.mdx +112 -0
  32. package/styled-components/cjs/components/Toast/Toast.template-doc.mdx +153 -0
  33. package/styled-components/cjs/components/Tooltip/Tooltip.template-doc.mdx +30 -0
  34. package/styled-components/cjs/components/Typography/Typography.template-doc.mdx +127 -0
  35. package/styled-components/es/components/Avatar/Avatar.template-doc.mdx +97 -0
  36. package/styled-components/es/components/AvatarGroup/AvatarGroup.template-doc.mdx +29 -0
  37. package/styled-components/es/components/Badge/Badge.template-doc.mdx +131 -0
  38. package/styled-components/es/components/Button/Button.template-doc.mdx +162 -0
  39. package/styled-components/es/components/ButtonGroup/ButtonGroup.template-doc.mdx +123 -0
  40. package/styled-components/es/components/Calendar/Calendar.template-doc.mdx +208 -0
  41. package/styled-components/es/components/Checkbox/Checkbox.template-doc.mdx +44 -0
  42. package/styled-components/es/components/Chip/Chip.template-doc.mdx +90 -0
  43. package/styled-components/es/components/Combobox/Combobox.template-doc.mdx +237 -0
  44. package/styled-components/es/components/Counter/Counter.template-doc.mdx +76 -0
  45. package/styled-components/es/components/Drawer/Drawer.template-doc.mdx +170 -0
  46. package/styled-components/es/components/Dropdown/Dropdown.template-doc.mdx +80 -0
  47. package/styled-components/es/components/Grid/Grid.template-doc.mdx +142 -0
  48. package/styled-components/es/components/Image/Image.template-doc.mdx +26 -0
  49. package/styled-components/es/components/Indicator/Indicator.template-doc.mdx +76 -0
  50. package/styled-components/es/components/Link/Link.template-doc.mdx +23 -0
  51. package/styled-components/es/components/Modal/Modal.template-doc.mdx +56 -0
  52. package/styled-components/es/components/Notification/Notification.template-doc.mdx +59 -0
  53. package/styled-components/es/components/Overlay/Overlay.template-doc.mdx +10 -0
  54. package/styled-components/es/components/Popover/Popover.template-doc.mdx +72 -0
  55. package/styled-components/es/components/Popup/Popup.template-doc.mdx +209 -0
  56. package/styled-components/es/components/Radiobox/Radiobox.template-doc.mdx +38 -0
  57. package/styled-components/es/components/Segment/Segment.template-doc.mdx +61 -0
  58. package/styled-components/es/components/Select/Select.template-doc.mdx +115 -0
  59. package/styled-components/es/components/Skeleton/Skeleton.template-doc.mdx +103 -0
  60. package/styled-components/es/components/Spinner/Spinner.template-doc.mdx +21 -0
  61. package/styled-components/es/components/Switch/Switch.template-doc.mdx +24 -0
  62. package/styled-components/es/components/Tabs/Tabs.template-doc.mdx +94 -0
  63. package/styled-components/es/components/TextArea/TextArea.template-doc.mdx +88 -0
  64. package/styled-components/es/components/TextField/TextField.template-doc.mdx +112 -0
  65. package/styled-components/es/components/Toast/Toast.template-doc.mdx +153 -0
  66. package/styled-components/es/components/Tooltip/Tooltip.template-doc.mdx +30 -0
  67. package/styled-components/es/components/Typography/Typography.template-doc.mdx +127 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@salutejs/plasma-new-hope",
3
- "version": "0.66.0-dev.0",
3
+ "version": "0.66.1-canary.1149.8446846250.0",
4
4
  "description": "Salute Design System blueprint",
5
5
  "main": "cjs/index.js",
6
6
  "module": "es/index.js",
@@ -102,5 +102,5 @@
102
102
  "react-popper": "2.3.0",
103
103
  "storeon": "3.1.5"
104
104
  },
105
- "gitHead": "55fbcb26d20d75b60f5e51dda6eabb222599522f"
105
+ "gitHead": "300bdd5ac1a00a4ce665c54725db81dd94c12e1c"
106
106
  }
@@ -0,0 +1,97 @@
1
+ ---
2
+ id: avatar
3
+ title: Avatar
4
+ ---
5
+
6
+ import { PropsTable, Description } from '@site/src/components';
7
+
8
+ # Avatar
9
+ <Description name="Avatar" />
10
+ <PropsTable name="Avatar" exclude={['css']} />
11
+
12
+
13
+ ## Примеры
14
+
15
+ ### Размер аватара
16
+ Размер задается с помощью свойства `size`. Возможные значения свойства: `"xxl"`, `"l"`, `"m"`, `"s"`, `"fit"`.
17
+
18
+ ```tsx live
19
+ import React from 'react';
20
+ import { Avatar } from '@salutejs/{{ package }}';
21
+
22
+ export function App() {
23
+ return (
24
+ <>
25
+ <Avatar size="xxl" url="https://avatars.githubusercontent.com/u/1813468?v=4" />
26
+ <Avatar size="l" url="https://avatars.githubusercontent.com/u/1813468?v=4" />
27
+ <Avatar size="m" url="https://avatars.githubusercontent.com/u/1813468?v=4" />
28
+ <Avatar size="s" url="https://avatars.githubusercontent.com/u/1813468?v=4" />
29
+ </>
30
+ );
31
+ }
32
+ ```
33
+
34
+ ### Инициалы вместо фотографии
35
+ Инициалы можно задать с помощью свойства `name`. Желательный формат строки - "Имя Фамилия". Также не должно быть свойства url.
36
+
37
+ ```tsx live
38
+ import React from 'react';
39
+ import { Avatar } from '@salutejs/{{ package }}';
40
+
41
+ export function App() {
42
+ return (
43
+ <>
44
+ <Avatar name="Иван Фадеев" />
45
+ </>
46
+ );
47
+ }
48
+ ```
49
+
50
+ ### Статус аватара
51
+ Статус задается с помощью свойства `status`. Возможные значения: `"active"`, `"inactive"`.
52
+
53
+ ```tsx live
54
+ import React from 'react';
55
+ import { Avatar } from '@salutejs/{{ package }}';
56
+
57
+ export function App() {
58
+ return (
59
+ <>
60
+ <Avatar status="active" name="Иван Фадеев" />
61
+ <Avatar status="inactive" name="Иван Фадеев" />
62
+ </>
63
+ );
64
+ }
65
+ ```
66
+
67
+ ### Увеличение при наведении
68
+ Опциональное свойство `"isScalable"`.
69
+
70
+ ```tsx live
71
+ import React from 'react';
72
+ import { Avatar } from '@salutejs/{{ package }}';
73
+
74
+ export function App() {
75
+ return (
76
+ <>
77
+ <Avatar isScalable name="Иван Фадеев" />
78
+ </>
79
+ );
80
+ }
81
+ ```
82
+
83
+ ### Доступность
84
+ Добавляем `"role"` и `"tabIndex"`.
85
+
86
+ ```tsx live
87
+ import React from 'react';
88
+ import { Avatar } from '@salutejs/{{ package }}';
89
+
90
+ export function App() {
91
+ return (
92
+ <>
93
+ <Avatar role="button" tabIndex="0" name="Иван Фадеев" />
94
+ </>
95
+ );
96
+ }
97
+ ```
@@ -0,0 +1,29 @@
1
+ ---
2
+ id: avatarGroup
3
+ title: AvatarGroup
4
+ ---
5
+
6
+ import { PropsTable, Description } from '@site/src/components';
7
+
8
+ # AvatarGroup
9
+ <Description name="AvatarGroup" />
10
+ <PropsTable name="AvatarGroup" exclude={['css']} />
11
+
12
+ AvatarGroup это обертка для Avatar. Принимает в себя группу из avatar's.
13
+
14
+ ```tsx live
15
+ import React from 'react';
16
+ import { Avatar, AvatarGroup } from '@salutejs/{{ package }}';
17
+
18
+ export function App() {
19
+ return (
20
+ <AvatarGroup>
21
+ {
22
+ Array(5).fill(true).map(() => (
23
+ <Avatar size="xxl" url="https://avatars.githubusercontent.com/u/1813468?v=4" />
24
+ ))
25
+ }
26
+ </AvatarGroup>
27
+ );
28
+ }
29
+ ```
@@ -0,0 +1,131 @@
1
+ ---
2
+ id: badge
3
+ title: Badge
4
+ ---
5
+
6
+ import { PropsTable, Description } from '@site/src/components';
7
+
8
+ # Badge
9
+ <Description name="Badge" />
10
+ <PropsTable name="Badge" exclude={['css']} />
11
+
12
+ ## Примеры
13
+
14
+ ### Размер бейджа
15
+ Размер задается с помощью свойства `size`.
16
+
17
+ Возможные значения свойства: `"l"`, `"m"`, `"s"`.
18
+
19
+ ```tsx live
20
+ import React from 'react';
21
+ import { Badge } from '@salutejs/{{ package }}';
22
+
23
+ export function App() {
24
+ return (
25
+ <div>
26
+ <Badge text="Бейдж" size="l" />
27
+ <Badge text="Бейдж" size="m" />
28
+ <Badge text="Бейдж" size="s" />
29
+ </div>
30
+ );
31
+ }
32
+ ```
33
+
34
+ ### Скругленность бейджа
35
+ Скругленность задается с помощью свойства `pilled`:
36
+
37
+ ```tsx live
38
+ import React from 'react';
39
+ import { Badge } from '@salutejs/{{ package }}';
40
+
41
+ export function App() {
42
+ return (
43
+ <div>
44
+ <Badge text="Бейдж" size="l" pilled />
45
+ <Badge text="Бейдж" size="m" pilled />
46
+ <Badge text="Бейдж" size="s" pilled />
47
+ </div>
48
+ );
49
+ }
50
+ ```
51
+
52
+ ### Вид бейджа
53
+ Вид бейджа задается с помощью свойства `view`. Возможные значения свойства `view`:
54
+
55
+ + `"primary"` – основной бейдж;
56
+ + `"accent"` – бейдж акцентного цвета;
57
+ + `"positive"` – успешное завершение;
58
+ + `"warning"` – предупреждение;
59
+ + `"negative"` – ошибка;
60
+ + `"dark"` – темный бэйдж;
61
+ + `"light"` – светлый бэйдж.
62
+
63
+ ```tsx live
64
+ import React from 'react';
65
+ import { Badge } from '@salutejs/{{ package }}';
66
+
67
+ export function App() {
68
+ return (
69
+ <div>
70
+ <Badge text="Бейдж" size="l" view="primary" />
71
+ <Badge text="Бейдж" size="l" view="accent" />
72
+ <Badge text="Бейдж" size="l" view="positive" />
73
+ <Badge text="Бейдж" size="l" view="warning" />
74
+ <Badge text="Бейдж" size="l" view="negative" />
75
+ <Badge text="Бейдж" size="l" view="dark" />
76
+ <Badge text="Бейдж" size="l" view="light" />
77
+ </div>
78
+ );
79
+ }
80
+ ```
81
+
82
+ так же на вид бейджа влияет свойство `transparent`:
83
+
84
+ ```tsx live
85
+ import React from 'react';
86
+ import { Badge } from '@salutejs/{{ package }}';
87
+
88
+ export function App() {
89
+ return (
90
+ <div>
91
+ <Badge text="Бейдж" size="l" view="primary" transparent />
92
+ <Badge text="Бейдж" size="l" view="accent" transparent />
93
+ <Badge text="Бейдж" size="l" view="positive" transparent />
94
+ <Badge text="Бейдж" size="l" view="warning" transparent />
95
+ <Badge text="Бейдж" size="l" view="negative" transparent />
96
+ <Badge text="Бейдж" size="l" view="dark" transparent />
97
+ <Badge text="Бейдж" size="l" view="light" transparent />
98
+ </div>
99
+ );
100
+ }
101
+ ```
102
+
103
+ ### Иконка слева / справа
104
+ В левой и/или правой части бейджа можно отобразить иконку:
105
+
106
+ ```tsx live
107
+ import React from 'react';
108
+ import { Badge } from '@salutejs/{{ package }}';
109
+ import { IconEye } from '@salutejs/plasma-icons';
110
+
111
+ export function App() {
112
+ return (
113
+ <div>
114
+ <Badge
115
+ text="Бейдж"
116
+ size="l"
117
+ view="primary"
118
+ contentLeft={
119
+ <IconEye color="inherit" size="xs" />
120
+ } />
121
+ <Badge
122
+ text="Бейдж"
123
+ size="l"
124
+ view="primary"
125
+ contentRight={
126
+ <IconEye color="inherit" size="xs" />
127
+ } />
128
+ </div>
129
+ );
130
+ }
131
+ ```
@@ -0,0 +1,162 @@
1
+ ---
2
+ id: button
3
+ title: Button
4
+ ---
5
+
6
+ import { PropsTable, Description } from '@site/src/components';
7
+
8
+ # Button
9
+ Кнопки могут отображаться в нескольких размерах и цветах, могут содержать текст и/или иконку.
10
+
11
+ ## Button
12
+ <Description name="Button" />
13
+ <PropsTable name="Button" />
14
+
15
+ ## Использование
16
+ Компонент `Button` может содержать текст, который указывается в
17
+ свойстве `text`, или любой контент напрямую через `children`.
18
+
19
+ Свойство text можно использовать вместе со свойствами `contentLeft` и `contentRight`.
20
+ С их помощью можно размещать **иконку** слева или справа от текста.
21
+
22
+ ```tsx live
23
+ import React from 'react';
24
+ import { Button } from '@salutejs/{{package}}';
25
+ import { IconDownload } from '@salutejs/plasma-icons';
26
+
27
+ export function App() {
28
+ return (
29
+ <div>
30
+ <Button text="Текст" />
31
+
32
+ <Button text="Текст" contentLeft={<IconDownload />} />
33
+
34
+ <Button text="Текст" contentRight={<IconDownload />} />
35
+
36
+ <Button contentLeft={<IconDownload />} />
37
+
38
+ <Button text="Текст" isLoading />
39
+
40
+ <Button text="Текст" isLoading loader={<div>Loader...</div>} />
41
+
42
+ <Button>
43
+ <IconDownload />
44
+ <span>Текст</span>
45
+ </Button>
46
+ </div>
47
+ );
48
+ }
49
+ ```
50
+
51
+ ## Примеры
52
+
53
+ ### Размер кнопки
54
+ Размер кнопки задается с помощью свойства `size`. Возможные значения свойства: `"l"`, `"m"` или `"s"`:
55
+
56
+ ```tsx live
57
+ import React from 'react';
58
+ import { Button } from '@salutejs/{{package}}';
59
+
60
+ export function App() {
61
+ return (
62
+ <div>
63
+ <Button text="Button" size="l" />
64
+ <Button text="Button" size="m" />
65
+ <Button text="Button" size="s" />
66
+ </div>
67
+ );
68
+ }
69
+ ```
70
+
71
+ ### Вид кнопки
72
+ Вид кнопки задается с помощью свойства `view`. Возможные значения свойства `view`:
73
+ + `"primary"` – основная;
74
+ + `"secondary"` – вторичная;
75
+ + `"success"` – успешное завершение;
76
+ + `"warning"` – предупреждение;
77
+ + `"critical"` – ошибка;
78
+ + `"checked"` – выбранное состояние;
79
+ + `"clear"` – без цветового сопровождения.
80
+
81
+ ```tsx live
82
+ import React from 'react';
83
+ import { Button } from '@salutejs/{{package}}';
84
+
85
+ export function App() {
86
+ return (
87
+ <div>
88
+ <Button text="Кнопка" size="s" view="primary" />
89
+ <Button text="Кнопка" size="s" view="secondary" />
90
+ <Button text="Кнопка" size="s" view="success" />
91
+ <Button text="Кнопка" size="s" view="warning" />
92
+ <Button text="Кнопка" size="s" view="critical" />
93
+ <Button text="Кнопка" size="s" view="checked" />
94
+ <Button text="Кнопка" size="s" view="overlay" />
95
+ <Button text="Кнопка" size="s" view="clear" />
96
+ </div>
97
+ );
98
+ }
99
+ ```
100
+
101
+ ### Границы кнопки
102
+ Границы кнопки задаются с помощью свойства `pin`. Возможные значения свойства `pin`:
103
+ + `square` – обычное скругление;
104
+ + `circle` – сильное скругление;
105
+ + `clear` – нет скругления.
106
+
107
+ ```tsx live
108
+ import React from 'react';
109
+ import { Button } from '@salutejs/{{package}}';
110
+
111
+ export function App() {
112
+ return (
113
+ <div>
114
+ <Button pin="square-square">Button</Button>
115
+ <Button pin="square-clear">Button</Button>
116
+ <Button pin="clear-square">Button</Button>
117
+ <Button pin="clear-clear">Button</Button>
118
+ <Button pin="clear-circle">Button</Button>
119
+ <Button pin="circle-clear">Button</Button>
120
+ <Button pin="circle-circle">Button</Button>
121
+ </div>
122
+ );
123
+ }
124
+ ```
125
+
126
+ ### Квадратные и круглые кнопки
127
+ Для отображения иконок и/или текста в квадратных или круглых кнопках с **равными сторонами**,
128
+ используйте компонент `Button` и свойство `contentLeft`, в которое требуется передать нужное значение.
129
+
130
+ По умолчанию границы кнопки **квадратные** (со скругленными углами) — `pin="square-square"`.
131
+ **Круглые** границы кнопки можно сделать с помощью свойства `pin` со значением `"circle-circle"`.
132
+
133
+ ```tsx live
134
+ import React from 'react';
135
+ import { Button } from '@salutejs/{{package}}';
136
+ import { IconDownload } from '@salutejs/plasma-icons';
137
+
138
+ export function App() {
139
+ return (
140
+ <div>
141
+ <Button contentLeft={<IconDownload />} />
142
+
143
+ <Button contentLeft={<IconDownload />} pin="circle-circle" />
144
+ </div>
145
+ );
146
+ }
147
+ ```
148
+
149
+ ### Гиперссылка
150
+ Компонент поддерживает вывод в виде тега `<a>`, для этого необходимо указать свойство `as`:
151
+
152
+ ```tsx live
153
+ import React from 'react';
154
+ import { Button } from '@salutejs/{{package}}';
155
+ import { IconDownload } from '@salutejs/plasma-icons';
156
+
157
+ export function App() {
158
+ return (
159
+ <Button as="a" text="Гиперссылка" />
160
+ );
161
+ }
162
+ ```
@@ -0,0 +1,123 @@
1
+ ---
2
+ id: buttonGroup
3
+ title: ButtonGroup
4
+ ---
5
+
6
+ import { PropsTable, Description } from '@site/src/components';
7
+
8
+ # ButtonGroup
9
+ <Description name="ButtonGroup" />
10
+ <PropsTable name="ButtonGroup" exclude={['css']} />
11
+
12
+ ## Использование
13
+ Компонент `ButtonGroup` - это обертка для Button. Принимает в себя группу кнопок.
14
+
15
+ ```tsx live
16
+ import React from 'react';
17
+ import { ButtonGroup, Button } from '@salutejs/{{ package }}';
18
+
19
+ export function App() {
20
+ return (
21
+ <ButtonGroup>
22
+ {Array(5)
23
+ .fill(true)
24
+ .map((_, i) => (
25
+ <Button text={`Button ${i}`} />
26
+ ))}
27
+ </ButtonGroup>
28
+ );
29
+ }
30
+ ```
31
+
32
+ ## Примеры
33
+
34
+ ### Размер и вид группы кнопок
35
+ Размер и вид группы кнопок задается с помощью свойств `size` и `view` соответственно.
36
+ С помощью свойства `isCommonButtonStyles` можно отключить переопределение стилей для всех кнопок внутри группы.
37
+ Тогда каждая кнопка будет иметь настраиваемый размер и вид.
38
+
39
+ ```tsx live
40
+ import React from 'react';
41
+ import { ButtonGroup, Button } from '@salutejs/{{ package }}';
42
+
43
+ export function App() {
44
+ return (
45
+ <div>
46
+ <ButtonGroup size="s" view="secondary">
47
+ {Array(5)
48
+ .fill(true)
49
+ .map((_, i) => (
50
+ <Button text={`Button ${i}`} />
51
+ ))}
52
+ </ButtonGroup>
53
+
54
+ <ButtonGroup isCommonButtonStyles={false}>
55
+ <Button size="m" text="Default" />
56
+ <Button size="s" text="Primary" view="primary" />
57
+ <Button size="xs" text="Success" view="success" />
58
+ </ButtonGroup>
59
+ </div>
60
+ );
61
+ }
62
+ ```
63
+
64
+ ### Ориентация группы кнопок и отступы между кнопками
65
+
66
+ Группа кнопок может располагаться вертикально или горизонтально и иметь три вида отступов:
67
+
68
+ ```tsx live
69
+ import React from 'react';
70
+ import { ButtonGroup, Button } from '@salutejs/{{ package }}';
71
+
72
+ export function App() {
73
+ return (
74
+ <div>
75
+ <ButtonGroup size="xs" orientation="vertical" gap="none">
76
+ {Array(5)
77
+ .fill(true)
78
+ .map((_, i) => (
79
+ <Button text={`Button ${i}`} />
80
+ ))}
81
+ </ButtonGroup>
82
+
83
+ <ButtonGroup size="xs" orientation="horizontal" gap="wide">
84
+ {Array(4)
85
+ .fill(true)
86
+ .map((_, i) => (
87
+ <Button text={`Button ${i}`} />
88
+ ))}
89
+ </ButtonGroup>
90
+ </div>
91
+ );
92
+ }
93
+ ```
94
+
95
+ ### Границы кнопки
96
+ Границы кнопки задаются с помощью свойства `shape`.
97
+
98
+ ```tsx live
99
+ import React from 'react';
100
+ import { ButtonGroup, Button } from '@salutejs/{{ package }}';
101
+
102
+ export function App() {
103
+ return (
104
+ <div>
105
+ <ButtonGroup size="xs" shape="segmented">
106
+ {Array(3)
107
+ .fill(true)
108
+ .map((_, i) => (
109
+ <Button text={`Button ${i}`} />
110
+ ))}
111
+ </ButtonGroup>
112
+
113
+ <ButtonGroup size="xs" shape="default">
114
+ {Array(3)
115
+ .fill(true)
116
+ .map((_, i) => (
117
+ <Button text={`Button ${i}`} />
118
+ ))}
119
+ </ButtonGroup>
120
+ </div>
121
+ );
122
+ }
123
+ ```