@skbkontur/react-ui 5.3.1 → 5.3.2
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.
- package/CHANGELOG.md +8 -0
- package/package.json +1 -6
- package/cjs/components/Autocomplete/Autocomplete.md +0 -113
- package/cjs/components/Button/Button.md +0 -261
- package/cjs/components/Calendar/Calendar.md +0 -276
- package/cjs/components/Calendar/CalendarDay.md +0 -70
- package/cjs/components/Center/Center.md +0 -26
- package/cjs/components/Checkbox/Checkbox.md +0 -171
- package/cjs/components/ComboBox/ComboBox.md +0 -574
- package/cjs/components/CurrencyInput/CurrencyInput.md +0 -39
- package/cjs/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/cjs/components/DateInput/DateInput.md +0 -111
- package/cjs/components/DatePicker/DatePicker.md +0 -368
- package/cjs/components/Dropdown/Dropdown.md +0 -45
- package/cjs/components/DropdownMenu/DropdownMenu.md +0 -290
- package/cjs/components/FileUploader/FileUploader.md +0 -131
- package/cjs/components/FxInput/FxInput.md +0 -31
- package/cjs/components/Gapped/Gapped.md +0 -44
- package/cjs/components/GlobalLoader/GlobalLoader.md +0 -97
- package/cjs/components/Group/Group.md +0 -19
- package/cjs/components/Hint/Hint.md +0 -86
- package/cjs/components/Input/Input.md +0 -86
- package/cjs/components/Kebab/Kebab.md +0 -306
- package/cjs/components/Link/Link.md +0 -182
- package/cjs/components/Loader/Loader.md +0 -33
- package/cjs/components/MaskedInput/MaskedInput.md +0 -114
- package/cjs/components/MenuFooter/MenuFooter.md +0 -27
- package/cjs/components/MenuHeader/MenuHeader.md +0 -35
- package/cjs/components/MenuItem/MenuItem.md +0 -139
- package/cjs/components/MenuSeparator/MenuSeparator.md +0 -14
- package/cjs/components/MiniModal/MiniModal.md +0 -231
- package/cjs/components/Modal/Modal.md +0 -56
- package/cjs/components/Paging/Paging.md +0 -57
- package/cjs/components/PasswordInput/PasswordInput.md +0 -29
- package/cjs/components/Radio/Radio.md +0 -57
- package/cjs/components/RadioGroup/RadioGroup.md +0 -44
- package/cjs/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/cjs/components/ScrollContainer/ScrollContainer.md +0 -224
- package/cjs/components/Select/Select.md +0 -113
- package/cjs/components/SidePage/SidePage.md +0 -65
- package/cjs/components/SingleToast/SingleToast.md +0 -36
- package/cjs/components/Spinner/Spinner.md +0 -36
- package/cjs/components/Sticky/Sticky.md +0 -28
- package/cjs/components/Switcher/Switcher.md +0 -111
- package/cjs/components/Tabs/Tab.md +0 -73
- package/cjs/components/Tabs/Tabs.md +0 -54
- package/cjs/components/Textarea/Textarea.md +0 -58
- package/cjs/components/Toast/Toast.md +0 -69
- package/cjs/components/Toggle/Toggle.md +0 -110
- package/cjs/components/Token/Token.md +0 -48
- package/cjs/components/TokenInput/TokenInput.md +0 -277
- package/cjs/components/Tooltip/Tooltip.md +0 -322
- package/cjs/components/TooltipMenu/TooltipMenu.md +0 -241
- package/cjs/internal/DataTids/DATATIDS.md +0 -12
- package/cjs/internal/DataTids/DataTids.d.ts +0 -12
- package/cjs/internal/DataTids/DataTids.js +0 -50
- package/cjs/internal/DataTids/DataTids.js.map +0 -1
- package/cjs/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/cjs/internal/DataTids/DataTids.styles.js +0 -42
- package/cjs/internal/DataTids/DataTids.styles.js.map +0 -1
- package/cjs/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/cjs/internal/DataTids/componentsDataTids.js +0 -15
- package/cjs/internal/DataTids/componentsDataTids.js.map +0 -1
- package/cjs/internal/ThemePlayground/Playground.md +0 -7
- package/cjs/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/cjs/lib/locale/LOCALECONTEXT.md +0 -222
- package/cjs/lib/theming/ThemeContext.md +0 -265
- package/components/Autocomplete/Autocomplete.md +0 -113
- package/components/Button/Button.md +0 -261
- package/components/Calendar/Calendar.md +0 -276
- package/components/Calendar/CalendarDay.md +0 -70
- package/components/Center/Center.md +0 -26
- package/components/Checkbox/Checkbox.md +0 -171
- package/components/ComboBox/ComboBox.md +0 -574
- package/components/CurrencyInput/CurrencyInput.md +0 -39
- package/components/CurrencyLabel/CurrencyLabel.md +0 -29
- package/components/DateInput/DateInput.md +0 -111
- package/components/DatePicker/DatePicker.md +0 -368
- package/components/Dropdown/Dropdown.md +0 -45
- package/components/DropdownMenu/DropdownMenu.md +0 -290
- package/components/FileUploader/FileUploader.md +0 -131
- package/components/FxInput/FxInput.md +0 -31
- package/components/Gapped/Gapped.md +0 -44
- package/components/GlobalLoader/GlobalLoader.md +0 -97
- package/components/Group/Group.md +0 -19
- package/components/Hint/Hint.md +0 -86
- package/components/Input/Input.md +0 -86
- package/components/Kebab/Kebab.md +0 -306
- package/components/Link/Link.md +0 -182
- package/components/Loader/Loader.md +0 -33
- package/components/MaskedInput/MaskedInput.md +0 -114
- package/components/MenuFooter/MenuFooter.md +0 -27
- package/components/MenuHeader/MenuHeader.md +0 -35
- package/components/MenuItem/MenuItem.md +0 -139
- package/components/MenuSeparator/MenuSeparator.md +0 -14
- package/components/MiniModal/MiniModal.md +0 -231
- package/components/Modal/Modal.md +0 -56
- package/components/Paging/Paging.md +0 -57
- package/components/PasswordInput/PasswordInput.md +0 -29
- package/components/Radio/Radio.md +0 -57
- package/components/RadioGroup/RadioGroup.md +0 -44
- package/components/ResponsiveLayout/ResponsiveLayout.md +0 -75
- package/components/ScrollContainer/ScrollContainer.md +0 -224
- package/components/Select/Select.md +0 -113
- package/components/SidePage/SidePage.md +0 -65
- package/components/SingleToast/SingleToast.md +0 -36
- package/components/Spinner/Spinner.md +0 -36
- package/components/Sticky/Sticky.md +0 -28
- package/components/Switcher/Switcher.md +0 -111
- package/components/Tabs/Tab.md +0 -73
- package/components/Tabs/Tabs.md +0 -54
- package/components/Textarea/Textarea.md +0 -58
- package/components/Toast/Toast.md +0 -69
- package/components/Toggle/Toggle.md +0 -110
- package/components/Token/Token.md +0 -48
- package/components/TokenInput/TokenInput.md +0 -277
- package/components/Tooltip/Tooltip.md +0 -322
- package/components/TooltipMenu/TooltipMenu.md +0 -241
- package/internal/DataTids/DATATIDS.md +0 -12
- package/internal/DataTids/DataTids/DataTids.js +0 -69
- package/internal/DataTids/DataTids/DataTids.js.map +0 -1
- package/internal/DataTids/DataTids/package.json +0 -6
- package/internal/DataTids/DataTids.d.ts +0 -12
- package/internal/DataTids/DataTids.styles/DataTids.styles.js +0 -20
- package/internal/DataTids/DataTids.styles/DataTids.styles.js.map +0 -1
- package/internal/DataTids/DataTids.styles/package.json +0 -6
- package/internal/DataTids/DataTids.styles.d.ts +0 -7
- package/internal/DataTids/componentsDataTids/componentsDataTids.js +0 -12
- package/internal/DataTids/componentsDataTids/componentsDataTids.js.map +0 -1
- package/internal/DataTids/componentsDataTids/package.json +0 -6
- package/internal/DataTids/componentsDataTids.d.ts +0 -5
- package/internal/ThemePlayground/Playground.md +0 -7
- package/lib/featureFlagsContext/FEATUREFLAGSCONTEXT.md +0 -64
- package/lib/locale/LOCALECONTEXT.md +0 -222
- package/lib/theming/ThemeContext.md +0 -265
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
```jsx harmony
|
|
3
|
-
const style = {
|
|
4
|
-
padding: 10,
|
|
5
|
-
background: '#f99',
|
|
6
|
-
};
|
|
7
|
-
|
|
8
|
-
let stop = null;
|
|
9
|
-
|
|
10
|
-
<div>
|
|
11
|
-
<Sticky side="top" getStop={() => stop}>
|
|
12
|
-
{fixed => (
|
|
13
|
-
<div style={style}>
|
|
14
|
-
Small loan of a million dollars
|
|
15
|
-
{fixed ? ' fixed' : <div>not fixed</div>}
|
|
16
|
-
</div>
|
|
17
|
-
)}
|
|
18
|
-
</Sticky>
|
|
19
|
-
Great
|
|
20
|
-
<div style={{ height: 1000 }} />
|
|
21
|
-
<div ref={el => (stop = el)} style={{ borderTop: '1px solid' }} />
|
|
22
|
-
<div style={{ height: 1000 }} />
|
|
23
|
-
<Sticky side="bottom" getStop={() => stop} offset={20}>
|
|
24
|
-
<div style={style}>Make America Great Again</div>
|
|
25
|
-
</Sticky>
|
|
26
|
-
<div style={{ height: 100 }} />
|
|
27
|
-
</div>;
|
|
28
|
-
```
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
```jsx harmony
|
|
3
|
-
const [value, setValue] = React.useState();
|
|
4
|
-
|
|
5
|
-
<Switcher
|
|
6
|
-
caption="Switch the switcher"
|
|
7
|
-
items={['One', 'Two', 'Three']}
|
|
8
|
-
value={value}
|
|
9
|
-
onValueChange={setValue}
|
|
10
|
-
/>;
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
### items в виде объектов
|
|
14
|
-
Случай, когда `items` принимает объект типа `{ label: string, value: string }`
|
|
15
|
-
|
|
16
|
-
```jsx harmony
|
|
17
|
-
const [value, setValue] = React.useState();
|
|
18
|
-
const items = [
|
|
19
|
-
{
|
|
20
|
-
label: 'One',
|
|
21
|
-
value: '111',
|
|
22
|
-
},
|
|
23
|
-
{
|
|
24
|
-
label: 'Two',
|
|
25
|
-
value: '222',
|
|
26
|
-
},
|
|
27
|
-
{
|
|
28
|
-
label: 'Three',
|
|
29
|
-
value: '333',
|
|
30
|
-
}
|
|
31
|
-
];
|
|
32
|
-
|
|
33
|
-
<Switcher
|
|
34
|
-
caption="Switch the switcher"
|
|
35
|
-
items={items}
|
|
36
|
-
value={value}
|
|
37
|
-
onValueChange={setValue}
|
|
38
|
-
/>;
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
### Кастомизация кнопки
|
|
42
|
-
Вариант `items` с полем `buttonProps`, который позволяет кастомизировать кнопку
|
|
43
|
-
|
|
44
|
-
```jsx harmony
|
|
45
|
-
const [value, setValue] = React.useState();
|
|
46
|
-
const items = [
|
|
47
|
-
{
|
|
48
|
-
label: 'One',
|
|
49
|
-
value: '111',
|
|
50
|
-
buttonProps: {
|
|
51
|
-
'data-tid': "1-1-1",
|
|
52
|
-
disabled: true,
|
|
53
|
-
}
|
|
54
|
-
},
|
|
55
|
-
{
|
|
56
|
-
label: 'Three',
|
|
57
|
-
value: '333',
|
|
58
|
-
buttonProps: {
|
|
59
|
-
'data-tid': "1-1-1",
|
|
60
|
-
use: "primary",
|
|
61
|
-
}
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
label: 'Two',
|
|
65
|
-
value: '222',
|
|
66
|
-
buttonProps: {
|
|
67
|
-
'data-tid': "1-1-1",
|
|
68
|
-
arrow: true,
|
|
69
|
-
}
|
|
70
|
-
}
|
|
71
|
-
];
|
|
72
|
-
|
|
73
|
-
<Switcher
|
|
74
|
-
caption="Switch the switcher"
|
|
75
|
-
items={items}
|
|
76
|
-
value={value}
|
|
77
|
-
onValueChange={setValue}
|
|
78
|
-
/>;
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
### Кастомизация items
|
|
82
|
-
Пример с методом `renderItem` для кастомизации `items`:
|
|
83
|
-
|
|
84
|
-
```jsx harmony
|
|
85
|
-
import {Hint, Tooltip} from '@skbkontur/react-ui';
|
|
86
|
-
|
|
87
|
-
const [value, setValue] = React.useState();
|
|
88
|
-
const items = ['One', 'Two', 'Three'];
|
|
89
|
-
|
|
90
|
-
const renderItem = (label, value, buttonProps, renderDefault) => {
|
|
91
|
-
if (value === 'One') {
|
|
92
|
-
return <Hint pos="bottom" text="Подсказка" opened manual>{renderDefault()}</Hint>;
|
|
93
|
-
}
|
|
94
|
-
if (value === 'Three') {
|
|
95
|
-
return (
|
|
96
|
-
<Tooltip pos="right middle" trigger="opened" render={() => 'Тултип'}>
|
|
97
|
-
{renderDefault()}
|
|
98
|
-
</Tooltip>
|
|
99
|
-
);
|
|
100
|
-
}
|
|
101
|
-
return renderDefault();
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
<Switcher
|
|
105
|
-
caption="Switch the switcher"
|
|
106
|
-
items={items}
|
|
107
|
-
value={value}
|
|
108
|
-
onValueChange={setValue}
|
|
109
|
-
renderItem={renderItem}
|
|
110
|
-
/>;
|
|
111
|
-
```
|
|
@@ -1,73 +0,0 @@
|
|
|
1
|
-
У компонента `<Tabs.Tab />` есть несколько визуальных состояний, в которых компонент может находиться: `primary`, `success`, `warning` и `error`. Чтобы перевести контрол в нужное состояние передайте компоненту булевый проп с соответсвующим названием.
|
|
2
|
-
|
|
3
|
-
### Кастомизация
|
|
4
|
-
Используя переменные `tabColorPrimary`, `tabColorSuccess`, `tabColorWarning` и `tabColorError` можно изменить активный цвет состояния, а библиотека автоматически подберёт цвет подчёркивания при наведении.
|
|
5
|
-
```jsx harmony
|
|
6
|
-
import { ThemeContext, ThemeFactory, Button, Tabs } from '@skbkontur/react-ui';
|
|
7
|
-
|
|
8
|
-
const getRandomColor = () => '#' + Math.random().toString(16).substr(-6);
|
|
9
|
-
const updateColors = () => {
|
|
10
|
-
return {
|
|
11
|
-
tabColorPrimary: getRandomColor(),
|
|
12
|
-
tabColorSuccess: getRandomColor(),
|
|
13
|
-
tabColorWarning: getRandomColor(),
|
|
14
|
-
tabColorError: getRandomColor(),
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
|
|
18
|
-
const [activeBase, setActiveBase] = React.useState('error');
|
|
19
|
-
const [activeRandom, setActiveRandom] = React.useState('error');
|
|
20
|
-
const [colors, setColors] = React.useState(updateColors());
|
|
21
|
-
|
|
22
|
-
<>
|
|
23
|
-
<p style={{ fontSize: '17px' }}>C цветами по умолчанию</p>
|
|
24
|
-
<Tabs value={activeBase} onValueChange={setActiveBase}>
|
|
25
|
-
<Tabs.Tab primary id="primary">Primary</Tabs.Tab>
|
|
26
|
-
<Tabs.Tab success id="success">Success</Tabs.Tab>
|
|
27
|
-
<Tabs.Tab warning id="warning">Warning</Tabs.Tab>
|
|
28
|
-
<Tabs.Tab error id="error">Error</Tabs.Tab>
|
|
29
|
-
</Tabs>
|
|
30
|
-
|
|
31
|
-
<p style={{ fontSize: '17px' }}>Со случайным основным цветом</p>
|
|
32
|
-
<div style={{ display: 'inline-flex', flexDirection: 'column', justifyContent: 'space-between', height: '100px' }}>
|
|
33
|
-
<ThemeContext.Consumer>
|
|
34
|
-
{(theme) => {
|
|
35
|
-
return (
|
|
36
|
-
<ThemeContext.Provider
|
|
37
|
-
value={ThemeFactory.create(colors,theme)}
|
|
38
|
-
>
|
|
39
|
-
<Tabs value={activeRandom} onValueChange={setActiveRandom}>
|
|
40
|
-
<Tabs.Tab primary id="primary">Primary</Tabs.Tab>
|
|
41
|
-
<Tabs.Tab success id="success">Success</Tabs.Tab>
|
|
42
|
-
<Tabs.Tab warning id="warning">Warning</Tabs.Tab>
|
|
43
|
-
<Tabs.Tab error id="error">Error</Tabs.Tab>
|
|
44
|
-
</Tabs>
|
|
45
|
-
</ThemeContext.Provider>
|
|
46
|
-
);
|
|
47
|
-
}}
|
|
48
|
-
</ThemeContext.Consumer>
|
|
49
|
-
<Button onClick={() => setColors(updateColors)}>Получить новый набор цветов</Button>
|
|
50
|
-
</div>
|
|
51
|
-
</>
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### Изменение корневого компонента Tab
|
|
55
|
-
С помощью пропа `component` можно изменять корневой элемент `<Tab />`.
|
|
56
|
-
|
|
57
|
-
Проп может принимать: компоненты, функции и строки.
|
|
58
|
-
```jsx harmony
|
|
59
|
-
import { Tabs } from '@skbkontur/react-ui';
|
|
60
|
-
|
|
61
|
-
const [active, setActive] = React.useState('/fuji');
|
|
62
|
-
|
|
63
|
-
const NavLink = props => <a {...props} />;
|
|
64
|
-
|
|
65
|
-
<Tabs value={active} onValueChange={setActive}>
|
|
66
|
-
{/** Кастомный компонент **/}
|
|
67
|
-
<Tabs.Tab component={(props) => <NavLink {...props} />} id="/fuji">🌋 Fuji</Tabs.Tab>
|
|
68
|
-
{/** Функция **/}
|
|
69
|
-
<Tabs.Tab component={(props) => <a {...props} />} id="/tahat">⛰ Tahat</Tabs.Tab>
|
|
70
|
-
{/** Строка **/}
|
|
71
|
-
<Tabs.Tab component="a" id="/alps">🗻 Alps</Tabs.Tab>
|
|
72
|
-
</Tabs>;
|
|
73
|
-
```
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
```jsx harmony
|
|
3
|
-
const [active, setActive] = React.useState('fuji');
|
|
4
|
-
|
|
5
|
-
<Tabs value={active} onValueChange={setActive}>
|
|
6
|
-
<Tabs.Tab id="fuji">🌋 Fuji</Tabs.Tab>
|
|
7
|
-
<Tabs.Tab id="tahat">⛰ Tahat</Tabs.Tab>
|
|
8
|
-
<Tabs.Tab id="alps">🗻 Alps</Tabs.Tab>
|
|
9
|
-
</Tabs>;
|
|
10
|
-
```
|
|
11
|
-
|
|
12
|
-
### Расположение табов
|
|
13
|
-
Компонент может отображать табы двумя способами: горизонтально (по умолчанию) и вертикально.
|
|
14
|
-
```jsx harmony
|
|
15
|
-
const [active, setActive] = React.useState('fuji');
|
|
16
|
-
|
|
17
|
-
<Tabs vertical value={active} onValueChange={setActive}>
|
|
18
|
-
<Tabs.Tab id="fuji">🌋 Fuji</Tabs.Tab>
|
|
19
|
-
<Tabs.Tab id="tahat">⛰ Tahat</Tabs.Tab>
|
|
20
|
-
<Tabs.Tab id="alps">🗻 Alps</Tabs.Tab>
|
|
21
|
-
</Tabs>;
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
### Размер
|
|
25
|
-
```jsx harmony
|
|
26
|
-
const [active, setActive] = React.useState('fuji');
|
|
27
|
-
const renderCaption = (caption) => <span style={{display: "inline-block", width: 60}}>{caption}</span>;
|
|
28
|
-
<div>
|
|
29
|
-
<div>
|
|
30
|
-
{renderCaption("small")}
|
|
31
|
-
<Tabs value={active} onValueChange={setActive} size="small">
|
|
32
|
-
<Tabs.Tab id="fuji">🌋 Fuji</Tabs.Tab>
|
|
33
|
-
<Tabs.Tab id="tahat">⛰ Tahat</Tabs.Tab>
|
|
34
|
-
<Tabs.Tab id="alps">🗻 Alps</Tabs.Tab>
|
|
35
|
-
</Tabs>
|
|
36
|
-
</div>
|
|
37
|
-
<div>
|
|
38
|
-
{renderCaption("medium")}
|
|
39
|
-
<Tabs value={active} onValueChange={setActive} size="medium">
|
|
40
|
-
<Tabs.Tab id="fuji">🌋 Fuji</Tabs.Tab>
|
|
41
|
-
<Tabs.Tab id="tahat">⛰ Tahat</Tabs.Tab>
|
|
42
|
-
<Tabs.Tab id="alps">🗻 Alps</Tabs.Tab>
|
|
43
|
-
</Tabs>
|
|
44
|
-
</div>
|
|
45
|
-
<div>
|
|
46
|
-
{renderCaption("large")}
|
|
47
|
-
<Tabs value={active} onValueChange={setActive} size="large">
|
|
48
|
-
<Tabs.Tab id="fuji">🌋 Fuji</Tabs.Tab>
|
|
49
|
-
<Tabs.Tab id="tahat">⛰ Tahat</Tabs.Tab>
|
|
50
|
-
<Tabs.Tab id="alps">🗻 Alps</Tabs.Tab>
|
|
51
|
-
</Tabs>
|
|
52
|
-
</div>
|
|
53
|
-
</div>;
|
|
54
|
-
```
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
```jsx harmony
|
|
3
|
-
const [value, setValue] = React.useState('');
|
|
4
|
-
|
|
5
|
-
<Textarea
|
|
6
|
-
value={value}
|
|
7
|
-
onValueChange={setValue}
|
|
8
|
-
autoResize
|
|
9
|
-
placeholder="Through faith we can reign in every area of life"
|
|
10
|
-
/>;
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
### Очистка значения
|
|
14
|
-
Очистить значение в `Textarea` можно только с помощью пустой строки
|
|
15
|
-
|
|
16
|
-
```jsx harmony
|
|
17
|
-
import { Group, Button } from '@skbkontur/react-ui';
|
|
18
|
-
|
|
19
|
-
const [value, setValue] = React.useState('Значение');
|
|
20
|
-
|
|
21
|
-
<Group>
|
|
22
|
-
<Textarea
|
|
23
|
-
value={value}
|
|
24
|
-
onValueChange={setValue}
|
|
25
|
-
autoResize
|
|
26
|
-
rows={1}
|
|
27
|
-
placeholder="Плейсхолдер"
|
|
28
|
-
/>
|
|
29
|
-
<Button style={{ height: '52px' }} onClick={() => setValue('')}>Очистить значение</Button>
|
|
30
|
-
</Group>
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
### Счетчик введенных символов
|
|
34
|
-
|
|
35
|
-
```jsx harmony
|
|
36
|
-
const [value, setValue] = React.useState('');
|
|
37
|
-
|
|
38
|
-
<Textarea
|
|
39
|
-
value={value}
|
|
40
|
-
onValueChange={setValue}
|
|
41
|
-
placeholder="Счетчик появляется при фокусе"
|
|
42
|
-
lengthCounter={10}
|
|
43
|
-
showLengthCounter
|
|
44
|
-
counterHelp="Hello 👋"
|
|
45
|
-
/>;
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### Размер
|
|
49
|
-
|
|
50
|
-
```jsx harmony
|
|
51
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
52
|
-
|
|
53
|
-
<Gapped vertical>
|
|
54
|
-
<Textarea size={'small'} value={'Маленький'} autoResize rows={1} />
|
|
55
|
-
<Textarea size={'medium'} value={'Средний'} autoResize rows={1} />
|
|
56
|
-
<Textarea size={'large'} value={'Большой'} autoResize rows={1} />
|
|
57
|
-
</Gapped>
|
|
58
|
-
```
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
### Вызов статических методов
|
|
2
|
-
|
|
3
|
-
```jsx harmony
|
|
4
|
-
import { Button, Toast } from '@skbkontur/react-ui';
|
|
5
|
-
|
|
6
|
-
function showComplexNotification() {
|
|
7
|
-
Toast.push('Successfully saved', {
|
|
8
|
-
label: 'Cancel',
|
|
9
|
-
handler: () => Toast.push('Canceled'),
|
|
10
|
-
});
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
<Button onClick={showComplexNotification}>Show notification</Button>;
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
### Кастомный showTime
|
|
17
|
-
|
|
18
|
-
```jsx harmony
|
|
19
|
-
import { Button, Toast } from '@skbkontur/react-ui';
|
|
20
|
-
|
|
21
|
-
function showComplexNotification() {
|
|
22
|
-
Toast.push('Successfully saved', {
|
|
23
|
-
label: 'Cancel',
|
|
24
|
-
handler: () => Toast.push('Canceled'),
|
|
25
|
-
}, 15000);
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
<Button onClick={showComplexNotification}>Show notification</Button>;
|
|
29
|
-
```
|
|
30
|
-
|
|
31
|
-
### Кастомный showTime без action
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
```jsx harmony
|
|
35
|
-
import { Button, Toast } from '@skbkontur/react-ui';
|
|
36
|
-
|
|
37
|
-
function showComplexNotification() {
|
|
38
|
-
Toast.push('Successfully saved', null, 15000);
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
<Button onClick={showComplexNotification}>Show notification</Button>;
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
### Использование `ref`
|
|
45
|
-
|
|
46
|
-
```jsx harmony
|
|
47
|
-
import { Button, Toast } from '@skbkontur/react-ui';
|
|
48
|
-
|
|
49
|
-
class Toaster extends React.Component {
|
|
50
|
-
showNotification() {
|
|
51
|
-
this.notifier.push('Successfully');
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
render() {
|
|
55
|
-
return (
|
|
56
|
-
<div>
|
|
57
|
-
<Toast
|
|
58
|
-
ref={el => {
|
|
59
|
-
this.notifier = el;
|
|
60
|
-
}}
|
|
61
|
-
/>
|
|
62
|
-
<Button onClick={() => this.showNotification()}>Show notification</Button>
|
|
63
|
-
</div>
|
|
64
|
-
);
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
<Toaster />;
|
|
69
|
-
```
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
|
|
3
|
-
```jsx harmony
|
|
4
|
-
const [checked, setChecked] = React.useState(false);
|
|
5
|
-
|
|
6
|
-
<Toggle checked={checked} onValueChange={setChecked}>
|
|
7
|
-
{checked ? 'On' : 'Off'}
|
|
8
|
-
</Toggle>
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
### Тогл включенный по умолчанию
|
|
12
|
-
|
|
13
|
-
```jsx harmony
|
|
14
|
-
<Toggle defaultChecked>
|
|
15
|
-
Включен по умолчанию
|
|
16
|
-
</Toggle>
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
### Надпись слева от переключателя
|
|
20
|
-
|
|
21
|
-
```jsx harmony
|
|
22
|
-
const [checked, setChecked] = React.useState(false);
|
|
23
|
-
|
|
24
|
-
<Toggle checked={checked} onValueChange={setChecked} captionPosition="left">
|
|
25
|
-
Показывать уведомления
|
|
26
|
-
</Toggle>
|
|
27
|
-
```
|
|
28
|
-
|
|
29
|
-
### Тогл с внешним `<label/>`
|
|
30
|
-
|
|
31
|
-
```jsx harmony
|
|
32
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
33
|
-
|
|
34
|
-
const [checked, setChecked] = React.useState(false);
|
|
35
|
-
|
|
36
|
-
<Gapped>
|
|
37
|
-
<Toggle id="toggle-1" checked={checked} onValueChange={setChecked}/>
|
|
38
|
-
<label htmlFor="toggle-1">Внешний label</label>
|
|
39
|
-
</Gapped>
|
|
40
|
-
```
|
|
41
|
-
|
|
42
|
-
### Получение фокуса после загрузки страницы
|
|
43
|
-
|
|
44
|
-
```jsx harmony
|
|
45
|
-
<Toggle autoFocus>
|
|
46
|
-
Сразу с фокусом
|
|
47
|
-
</Toggle>
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
### Стили
|
|
51
|
-
|
|
52
|
-
```jsx harmony
|
|
53
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
54
|
-
|
|
55
|
-
<Gapped gap="20px">
|
|
56
|
-
<Toggle warning>
|
|
57
|
-
Warning
|
|
58
|
-
</Toggle>
|
|
59
|
-
<Toggle error>
|
|
60
|
-
Error
|
|
61
|
-
</Toggle>
|
|
62
|
-
<Toggle loading>
|
|
63
|
-
Loading
|
|
64
|
-
</Toggle>
|
|
65
|
-
<Toggle disabled>
|
|
66
|
-
Disabled
|
|
67
|
-
</Toggle>
|
|
68
|
-
</Gapped>
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
### Размер
|
|
72
|
-
|
|
73
|
-
```jsx harmony
|
|
74
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
75
|
-
|
|
76
|
-
<Gapped vertical>
|
|
77
|
-
<Toggle size="small">
|
|
78
|
-
Маленький
|
|
79
|
-
</Toggle>
|
|
80
|
-
<Toggle size="medium">
|
|
81
|
-
Средний
|
|
82
|
-
</Toggle>
|
|
83
|
-
<Toggle size="large">
|
|
84
|
-
Большой
|
|
85
|
-
</Toggle>
|
|
86
|
-
</Gapped>
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
### Кастомное действие при получении и потере фокуса
|
|
90
|
-
|
|
91
|
-
```jsx harmony
|
|
92
|
-
import { Toast } from '@skbkontur/react-ui';
|
|
93
|
-
|
|
94
|
-
<Toggle
|
|
95
|
-
onFocus={() => Toast.push('Я получил фокус!')}
|
|
96
|
-
onBlur={() => Toast.push('И потерял его...')}
|
|
97
|
-
>
|
|
98
|
-
С кастомными действиями при фокусе и его потере
|
|
99
|
-
</Toggle>
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
### Кастомное действие при переключении
|
|
103
|
-
|
|
104
|
-
```jsx harmony
|
|
105
|
-
import { Toast } from '@skbkontur/react-ui';
|
|
106
|
-
|
|
107
|
-
<Toggle onChange={() => Toast.push("Запускаю кастомное действие")}>
|
|
108
|
-
Кастомное действие при переключении
|
|
109
|
-
</Toggle>
|
|
110
|
-
```
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
### Базовый пример
|
|
2
|
-
|
|
3
|
-
```jsx harmony
|
|
4
|
-
import { Token } from '@skbkontur/react-ui';
|
|
5
|
-
|
|
6
|
-
<Token>Example</Token>;
|
|
7
|
-
```
|
|
8
|
-
|
|
9
|
-
### Состояние валидации
|
|
10
|
-
|
|
11
|
-
```jsx harmony
|
|
12
|
-
import { Gapped, Token } from '@skbkontur/react-ui';
|
|
13
|
-
|
|
14
|
-
<Gapped gap={20} vertical>
|
|
15
|
-
<Gapped gap={10}>
|
|
16
|
-
<Token>Correct</Token>
|
|
17
|
-
<Token warning>Warned</Token>
|
|
18
|
-
<Token error>Errored</Token>
|
|
19
|
-
</Gapped>
|
|
20
|
-
<Gapped gap={10}>
|
|
21
|
-
<Token isActive>Correct</Token>
|
|
22
|
-
<Token isActive warning>
|
|
23
|
-
Warned
|
|
24
|
-
</Token>
|
|
25
|
-
<Token isActive error>
|
|
26
|
-
Errored
|
|
27
|
-
</Token>
|
|
28
|
-
</Gapped>
|
|
29
|
-
</Gapped>;
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
### Размер
|
|
33
|
-
|
|
34
|
-
```jsx harmony
|
|
35
|
-
import { Gapped, Token } from '@skbkontur/react-ui';
|
|
36
|
-
|
|
37
|
-
<Gapped vertical>
|
|
38
|
-
<Token size="small">
|
|
39
|
-
Маленький
|
|
40
|
-
</Token>
|
|
41
|
-
<Token size="medium">
|
|
42
|
-
Средний
|
|
43
|
-
</Token>
|
|
44
|
-
<Token size="large">
|
|
45
|
-
Большой
|
|
46
|
-
</Token>
|
|
47
|
-
</Gapped>
|
|
48
|
-
```
|