@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,70 +0,0 @@
|
|
|
1
|
-
Компонент для отрисовки дня в Calendar. Полезен при использовании вместе с его пропом `renderDay`.
|
|
2
|
-
|
|
3
|
-
### Базовый пример
|
|
4
|
-
```jsx harmony
|
|
5
|
-
import { CalendarDay, Gapped } from '@skbkontur/react-ui';
|
|
6
|
-
|
|
7
|
-
const date = '20.05.2024';
|
|
8
|
-
const style = { width: 32, height: 32 };
|
|
9
|
-
|
|
10
|
-
<Gapped>
|
|
11
|
-
<CalendarDay style={style} date={date} />
|
|
12
|
-
<CalendarDay style={style} date={date} isToday={true} />
|
|
13
|
-
<CalendarDay style={style} date={date} isSelected={true} />
|
|
14
|
-
<CalendarDay style={style} date={date} isDisabled={true} />
|
|
15
|
-
<CalendarDay style={style} date={date} isWeekend={true} />
|
|
16
|
-
<CalendarDay style={style}><b>20</b></CalendarDay>
|
|
17
|
-
</Gapped>
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
### Функции для сравнения строковых дат
|
|
21
|
-
|
|
22
|
-
```jsx harmony
|
|
23
|
-
const { isBetween, isEqual, isGreater, isGreaterOrEqual, isLess, isLessOrEqual } = require('@skbkontur/react-ui/lib/date/comparison');
|
|
24
|
-
|
|
25
|
-
const date_a = '10.03.2017';
|
|
26
|
-
const date_b = '11.03.2017';
|
|
27
|
-
|
|
28
|
-
const Table = ({ children }) => (
|
|
29
|
-
<table>
|
|
30
|
-
<thead>
|
|
31
|
-
<tr>
|
|
32
|
-
<td>Функция</td>
|
|
33
|
-
<td>Результат</td>
|
|
34
|
-
</tr>
|
|
35
|
-
</thead>
|
|
36
|
-
<tbody>
|
|
37
|
-
{ children }
|
|
38
|
-
</tbody>
|
|
39
|
-
</table>
|
|
40
|
-
)
|
|
41
|
-
|
|
42
|
-
const Row = ({ code }) => (
|
|
43
|
-
<tr>
|
|
44
|
-
<td><code>{code}</code></td>
|
|
45
|
-
<td><code>{JSON.stringify(eval(code), null, 2)}</code></td>
|
|
46
|
-
</tr>
|
|
47
|
-
);
|
|
48
|
-
|
|
49
|
-
<Table>
|
|
50
|
-
<Row code={`isEqual("${date_a}", "${date_a}")`} />
|
|
51
|
-
<Row code={`isLess("${date_a}", "${date_b}")`} />
|
|
52
|
-
<Row code={`isLessOrEqual("${date_a}", "${date_b}")`} />
|
|
53
|
-
<Row code={`isGreater("${date_b}", "${date_a}")`} />
|
|
54
|
-
<Row code={`isGreaterOrEqual("${date_b}", "${date_a}")`} />
|
|
55
|
-
<Row code={`isBetween("${date_b}", "${date_a}", "${date_b}")`} />
|
|
56
|
-
</Table>
|
|
57
|
-
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
```typescript static
|
|
61
|
-
export function isEqual(left: string, right: string): boolean;
|
|
62
|
-
export function isLess(left: string, right: string): boolean;
|
|
63
|
-
export function isLessOrEqual(left: string, right: string): boolean;
|
|
64
|
-
export function isGreater(left: string, right: string): boolean;
|
|
65
|
-
export function isGreaterOrEqual(left: string, right: string): boolean;
|
|
66
|
-
export function isBetween(
|
|
67
|
-
date: string,
|
|
68
|
-
left?: string,
|
|
69
|
-
right?: string,
|
|
70
|
-
): boolean;
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
### Пример использования
|
|
2
|
-
|
|
3
|
-
```jsx harmony
|
|
4
|
-
import { Switcher, Gapped } from '@skbkontur/react-ui';
|
|
5
|
-
|
|
6
|
-
const [alignAt, setAlignAt] = React.useState("center");
|
|
7
|
-
|
|
8
|
-
<Gapped vertical gap="12px">
|
|
9
|
-
<Switcher
|
|
10
|
-
items={[
|
|
11
|
-
{label: "Слева", value: "left"},
|
|
12
|
-
{label: "По центру", value: "center"},
|
|
13
|
-
{label: "Справа", value: "right"}
|
|
14
|
-
]}
|
|
15
|
-
value={alignAt}
|
|
16
|
-
onValueChange={setAlignAt}
|
|
17
|
-
/>
|
|
18
|
-
|
|
19
|
-
<Center
|
|
20
|
-
align={alignAt}
|
|
21
|
-
style={{ background: '#fdd', height: 150 }}
|
|
22
|
-
>
|
|
23
|
-
<div style={{ background: 'black', width: 30, height: 30 }} />
|
|
24
|
-
</Center>
|
|
25
|
-
</Gapped>
|
|
26
|
-
```
|
|
@@ -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
|
-
```
|