@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,171 +0,0 @@
|
|
|
1
|
-
### Базовый пример чекбокса
|
|
2
|
-
|
|
3
|
-
```jsx harmony
|
|
4
|
-
const [checked, setChecked] = React.useState(false);
|
|
5
|
-
|
|
6
|
-
<Checkbox checked={checked} onValueChange={setChecked}>
|
|
7
|
-
Обычный чекбокс
|
|
8
|
-
</Checkbox>;
|
|
9
|
-
```
|
|
10
|
-
|
|
11
|
-
### Cостояния
|
|
12
|
-
|
|
13
|
-
```jsx harmony
|
|
14
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
15
|
-
|
|
16
|
-
const CheckboxWithState = ({children, ...props}) => {
|
|
17
|
-
const [checked, setChecked] = React.useState(false);
|
|
18
|
-
|
|
19
|
-
return (
|
|
20
|
-
<Checkbox checked={checked} onValueChange={setChecked} {...props}>
|
|
21
|
-
{children}
|
|
22
|
-
</Checkbox>
|
|
23
|
-
)
|
|
24
|
-
};
|
|
25
|
-
|
|
26
|
-
<Gapped vertical>
|
|
27
|
-
<CheckboxWithState>
|
|
28
|
-
Обычный чекбокс
|
|
29
|
-
</CheckboxWithState>
|
|
30
|
-
<CheckboxWithState error>
|
|
31
|
-
Чекбокс в состоянии ошибки
|
|
32
|
-
</CheckboxWithState>
|
|
33
|
-
<CheckboxWithState warning>
|
|
34
|
-
Чекбокс в состоянии предупреждения
|
|
35
|
-
</CheckboxWithState>
|
|
36
|
-
</Gapped>
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### Размер
|
|
40
|
-
|
|
41
|
-
```jsx harmony
|
|
42
|
-
import { Gapped } from '@skbkontur/react-ui';
|
|
43
|
-
|
|
44
|
-
<Gapped vertical>
|
|
45
|
-
<Checkbox size="small" checked>
|
|
46
|
-
Маленький
|
|
47
|
-
</Checkbox>
|
|
48
|
-
<Checkbox size="medium" checked>
|
|
49
|
-
Средний
|
|
50
|
-
</Checkbox>
|
|
51
|
-
<Checkbox size="large" checked>
|
|
52
|
-
Большой
|
|
53
|
-
</Checkbox>
|
|
54
|
-
</Gapped>
|
|
55
|
-
```
|
|
56
|
-
|
|
57
|
-
### focus и blur
|
|
58
|
-
|
|
59
|
-
```jsx harmony
|
|
60
|
-
import { Button, Checkbox, Gapped } from '@skbkontur/react-ui';
|
|
61
|
-
|
|
62
|
-
const [checked, setChecked] = React.useState(false);
|
|
63
|
-
|
|
64
|
-
let checkboxInstance = React.useRef(null);
|
|
65
|
-
|
|
66
|
-
<Gapped vertical>
|
|
67
|
-
<Checkbox
|
|
68
|
-
ref={el => checkboxInstance = el}
|
|
69
|
-
checked={checked}
|
|
70
|
-
onValueChange={setChecked}
|
|
71
|
-
>
|
|
72
|
-
Пример чекбокса с программным фокусом
|
|
73
|
-
</Checkbox>
|
|
74
|
-
<Gapped gap={12}>
|
|
75
|
-
<Button
|
|
76
|
-
onClick={() => {
|
|
77
|
-
checkboxInstance.focus();
|
|
78
|
-
}}
|
|
79
|
-
>
|
|
80
|
-
Дать фокус
|
|
81
|
-
</Button>
|
|
82
|
-
<Button
|
|
83
|
-
onClick={() => {
|
|
84
|
-
checkboxInstance.blur();
|
|
85
|
-
}}
|
|
86
|
-
>
|
|
87
|
-
Забрать фокус
|
|
88
|
-
</Button>
|
|
89
|
-
</Gapped>
|
|
90
|
-
</Gapped>
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
### Неопределенное состояние
|
|
94
|
-
Чекбокс может находится в неопределённом состоянии. <br/> Это состояние полностью копирует поведение состояния `indeterminate` ([подробнее](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input/checkbox#indeterminate_state_checkboxes)) из HTML.
|
|
95
|
-
|
|
96
|
-
Это состояние влияет только на внешний вид и не влияет на состояние `checked`.
|
|
97
|
-
|
|
98
|
-
```jsx harmony
|
|
99
|
-
import { Button, Checkbox, Gapped } from '@skbkontur/react-ui';
|
|
100
|
-
|
|
101
|
-
const [checked, setChecked] = React.useState(false);
|
|
102
|
-
|
|
103
|
-
let checkboxInstance = React.useRef(null);
|
|
104
|
-
|
|
105
|
-
<Gapped vertical>
|
|
106
|
-
<Checkbox
|
|
107
|
-
initialIndeterminate
|
|
108
|
-
checked={checked}
|
|
109
|
-
onValueChange={setChecked}
|
|
110
|
-
ref={el => checkboxInstance = el}
|
|
111
|
-
>
|
|
112
|
-
Неопределённый чекбокс
|
|
113
|
-
</Checkbox>
|
|
114
|
-
<Gapped>
|
|
115
|
-
<Button onClick={() => checkboxInstance.setIndeterminate()}>
|
|
116
|
-
Перевести в неопределённое состояние
|
|
117
|
-
</Button>
|
|
118
|
-
<Button onClick={() => checkboxInstance.resetIndeterminate()}>
|
|
119
|
-
Сбросить неопределённое состояние
|
|
120
|
-
</Button>
|
|
121
|
-
</Gapped>
|
|
122
|
-
</Gapped>
|
|
123
|
-
```
|
|
124
|
-
|
|
125
|
-
### Пример использования неопределённого состояния чекбокса
|
|
126
|
-
|
|
127
|
-
```jsx harmony
|
|
128
|
-
const [checkedSiblings, setCheckedSiblings] = React.useState([]);
|
|
129
|
-
const siblingCheckboxes = [1, 2];
|
|
130
|
-
|
|
131
|
-
let parentCheckboxRef;
|
|
132
|
-
|
|
133
|
-
React.useEffect(() => {
|
|
134
|
-
if (checkedSiblings.length === 0 || checkedSiblings.length === siblingCheckboxes.length) {
|
|
135
|
-
parentCheckboxRef.resetIndeterminate();
|
|
136
|
-
} else if (checkedSiblings.length !== 0) {
|
|
137
|
-
parentCheckboxRef.setIndeterminate();
|
|
138
|
-
}
|
|
139
|
-
}, [JSON.stringify(checkedSiblings)]);
|
|
140
|
-
|
|
141
|
-
<>
|
|
142
|
-
<Checkbox checked={checkedSiblings.length === siblingCheckboxes.length} ref={(el) => (parentCheckboxRef = el)}>
|
|
143
|
-
Родитель
|
|
144
|
-
</Checkbox>
|
|
145
|
-
<div style={{ display: 'flex', flexDirection: 'column', marginLeft: '20px' }}>
|
|
146
|
-
{siblingCheckboxes.map((id) => {
|
|
147
|
-
return (
|
|
148
|
-
<Checkbox
|
|
149
|
-
key={id}
|
|
150
|
-
checked={checkedSiblings.includes(id)}
|
|
151
|
-
onValueChange={() => {
|
|
152
|
-
const siblingIndex = checkedSiblings.indexOf(id);
|
|
153
|
-
|
|
154
|
-
if (siblingIndex === -1) {
|
|
155
|
-
setCheckedSiblings((prev) => [...prev, id]);
|
|
156
|
-
} else {
|
|
157
|
-
setCheckedSiblings((prev) =>
|
|
158
|
-
prev.filter((siblingId) => {
|
|
159
|
-
return siblingId !== id;
|
|
160
|
-
}),
|
|
161
|
-
);
|
|
162
|
-
}
|
|
163
|
-
}}
|
|
164
|
-
>
|
|
165
|
-
Ребёнок ({id})
|
|
166
|
-
</Checkbox>
|
|
167
|
-
);
|
|
168
|
-
})}
|
|
169
|
-
</div>
|
|
170
|
-
</>
|
|
171
|
-
```
|