@ozen-ui/kit 0.42.0 → 0.43.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.
- package/__inner__/cjs/components/Accordion/Accordion.css +1 -1
- package/__inner__/cjs/components/Alert/Alert.css +40 -21
- package/__inner__/cjs/components/Alert/Alert.d.ts +3 -1
- package/__inner__/cjs/components/Alert/Alert.js +5 -5
- package/__inner__/cjs/components/Autocomplete/components/AutocompleteRenderRight/AutocompleteRenderRight.js +3 -3
- package/__inner__/cjs/components/Breadcrumbs/components/BreadcrumbItem.d.ts +1 -1
- package/__inner__/cjs/components/Button/Button.css +7 -1
- package/__inner__/cjs/components/ButtonNext/Button.css +7 -1
- package/__inner__/cjs/components/DataList/DataList.js +3 -1
- package/__inner__/cjs/components/Dialog/Dialog.css +1 -1
- package/__inner__/cjs/components/Dialog/Dialog.d.ts +1 -1
- package/__inner__/cjs/components/Dialog/Dialog.js +3 -3
- package/__inner__/cjs/components/Drawer/Drawer.css +9 -4
- package/__inner__/cjs/components/Drawer/Drawer.d.ts +1 -1
- package/__inner__/cjs/components/Drawer/Drawer.js +4 -4
- package/__inner__/cjs/components/FieldControl/FieldControl.css +6 -6
- package/__inner__/cjs/components/File/File.css +3 -3
- package/__inner__/cjs/components/IconButton/IconButton.css +7 -1
- package/__inner__/cjs/components/IconButtonNext/IconButton.css +8 -1
- package/__inner__/cjs/components/IconButtonNext/IconButton.d.ts +1 -2
- package/__inner__/cjs/components/Indicator/Indicator.d.ts +1 -1
- package/__inner__/cjs/components/InputNumber/InputNumber.css +3 -3
- package/__inner__/cjs/components/InputNumber/InputNumber.js +3 -3
- package/__inner__/cjs/components/List/List.css +13 -9
- package/__inner__/cjs/components/Menu/Menu.d.ts +7 -0
- package/__inner__/cjs/components/Menu/Menu.js +12 -5
- package/__inner__/cjs/components/Menu/constants.d.ts +1 -0
- package/__inner__/cjs/components/Menu/constants.js +4 -0
- package/__inner__/cjs/components/Modal/components/ModalConsumer.js +1 -1
- package/__inner__/cjs/components/Pagination/components/PaginationItem/PaginationItem.css +2 -2
- package/__inner__/cjs/components/Paper/Paper.css +4 -0
- package/__inner__/cjs/components/Paper/Paper.d.ts +1 -1
- package/__inner__/cjs/components/Paper/Paper.js +1 -1
- package/__inner__/cjs/components/Popover/Popover.js +1 -1
- package/__inner__/cjs/components/SectionMessage/SectionMessage.css +9 -5
- package/__inner__/cjs/components/SectionMessage/SectionMessage.d.ts +1 -1
- package/__inner__/cjs/components/Segment/Segment.css +20 -5
- package/__inner__/cjs/components/Segment/components/SegmentItem.css +17 -14
- package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.css +13 -49
- package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.d.ts +3 -3
- package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.js +2 -2
- package/__inner__/cjs/components/Tabs/components/Tab/Tab.css +6 -2
- package/__inner__/cjs/components/Tag/Tag.css +9 -6
- package/__inner__/cjs/components/Tooltip/Tooltip.js +1 -1
- package/__inner__/cjs/locale/locale.js +9 -0
- package/__inner__/cjs/utils/getPaperSizeToFormElement.d.ts +3 -0
- package/__inner__/cjs/utils/getPaperSizeToFormElement.js +12 -0
- package/__inner__/esm/components/Accordion/Accordion.css +1 -1
- package/__inner__/esm/components/Alert/Alert.css +40 -21
- package/__inner__/esm/components/Alert/Alert.d.ts +3 -1
- package/__inner__/esm/components/Alert/Alert.js +5 -5
- package/__inner__/esm/components/Autocomplete/components/AutocompleteRenderRight/AutocompleteRenderRight.js +1 -1
- package/__inner__/esm/components/Breadcrumbs/components/BreadcrumbItem.d.ts +1 -1
- package/__inner__/esm/components/Button/Button.css +7 -1
- package/__inner__/esm/components/ButtonNext/Button.css +7 -1
- package/__inner__/esm/components/DataList/DataList.js +3 -1
- package/__inner__/esm/components/Dialog/Dialog.css +1 -1
- package/__inner__/esm/components/Dialog/Dialog.d.ts +1 -1
- package/__inner__/esm/components/Dialog/Dialog.js +2 -2
- package/__inner__/esm/components/Drawer/Drawer.css +9 -4
- package/__inner__/esm/components/Drawer/Drawer.d.ts +1 -1
- package/__inner__/esm/components/Drawer/Drawer.js +3 -3
- package/__inner__/esm/components/FieldControl/FieldControl.css +6 -6
- package/__inner__/esm/components/File/File.css +3 -3
- package/__inner__/esm/components/IconButton/IconButton.css +7 -1
- package/__inner__/esm/components/IconButtonNext/IconButton.css +8 -1
- package/__inner__/esm/components/IconButtonNext/IconButton.d.ts +1 -2
- package/__inner__/esm/components/Indicator/Indicator.d.ts +1 -1
- package/__inner__/esm/components/InputNumber/InputNumber.css +3 -3
- package/__inner__/esm/components/InputNumber/InputNumber.js +1 -1
- package/__inner__/esm/components/List/List.css +13 -9
- package/__inner__/esm/components/Menu/Menu.d.ts +7 -0
- package/__inner__/esm/components/Menu/Menu.js +12 -5
- package/__inner__/esm/components/Menu/constants.d.ts +1 -0
- package/__inner__/esm/components/Menu/constants.js +1 -0
- package/__inner__/esm/components/Modal/components/ModalConsumer.js +1 -1
- package/__inner__/esm/components/Pagination/components/PaginationItem/PaginationItem.css +2 -2
- package/__inner__/esm/components/Paper/Paper.css +4 -0
- package/__inner__/esm/components/Paper/Paper.d.ts +1 -1
- package/__inner__/esm/components/Paper/Paper.js +1 -1
- package/__inner__/esm/components/Popover/Popover.js +1 -1
- package/__inner__/esm/components/SectionMessage/SectionMessage.css +9 -5
- package/__inner__/esm/components/SectionMessage/SectionMessage.d.ts +1 -1
- package/__inner__/esm/components/Segment/Segment.css +20 -5
- package/__inner__/esm/components/Segment/components/SegmentItem.css +17 -14
- package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.css +13 -49
- package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.d.ts +3 -3
- package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.js +2 -2
- package/__inner__/esm/components/Tabs/components/Tab/Tab.css +6 -2
- package/__inner__/esm/components/Tag/Tag.css +9 -6
- package/__inner__/esm/components/Tooltip/Tooltip.js +1 -1
- package/__inner__/esm/locale/locale.js +9 -0
- package/__inner__/esm/utils/getPaperSizeToFormElement.d.ts +3 -0
- package/__inner__/esm/utils/getPaperSizeToFormElement.js +8 -0
- package/package.json +4 -4
|
@@ -12,11 +12,11 @@
|
|
|
12
12
|
align-items: center;
|
|
13
13
|
justify-content: center;
|
|
14
14
|
cursor: pointer;
|
|
15
|
-
border-radius: var(--border-radius-xs);
|
|
16
15
|
border: none;
|
|
17
16
|
color: var(--icon-button-font-color);
|
|
18
17
|
background-color: var(--icon-button-bg-color);
|
|
19
18
|
opacity: 1;
|
|
19
|
+
border-radius: var(--icon-button-border-radius);
|
|
20
20
|
transition:
|
|
21
21
|
background-color var(--transition-default),
|
|
22
22
|
box-shadow var(--transition-default),
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
|
|
28
28
|
.IconButtonNext_size_2xs {
|
|
29
29
|
--icon-button-size: 32px;
|
|
30
|
+
--icon-button-border-radius: var(--border-radius-m);
|
|
30
31
|
}
|
|
31
32
|
|
|
32
33
|
.IconButtonNext_size_2xs.IconButtonNext_compressed:not(.IconButtonNext_variant_function) {
|
|
@@ -35,6 +36,7 @@
|
|
|
35
36
|
|
|
36
37
|
.IconButtonNext_size_xs {
|
|
37
38
|
--icon-button-size: 40px;
|
|
39
|
+
--icon-button-border-radius: var(--border-radius-m);
|
|
38
40
|
}
|
|
39
41
|
|
|
40
42
|
.IconButtonNext_size_xs.IconButtonNext_compressed:not(.IconButtonNext_variant_function) {
|
|
@@ -43,6 +45,7 @@
|
|
|
43
45
|
|
|
44
46
|
.IconButtonNext_size_s {
|
|
45
47
|
--icon-button-size: 48px;
|
|
48
|
+
--icon-button-border-radius: var(--border-radius-l);
|
|
46
49
|
}
|
|
47
50
|
|
|
48
51
|
.IconButtonNext_size_s.IconButtonNext_compressed:not(.IconButtonNext_variant_function) {
|
|
@@ -51,6 +54,7 @@
|
|
|
51
54
|
|
|
52
55
|
.IconButtonNext_size_m {
|
|
53
56
|
--icon-button-size: 56px;
|
|
57
|
+
--icon-button-border-radius: var(--border-radius-l);
|
|
54
58
|
}
|
|
55
59
|
|
|
56
60
|
.IconButtonNext_size_m.IconButtonNext_compressed:not(.IconButtonNext_variant_function) {
|
|
@@ -59,6 +63,7 @@
|
|
|
59
63
|
|
|
60
64
|
.IconButtonNext_size_l {
|
|
61
65
|
--icon-button-size: 64px;
|
|
66
|
+
--icon-button-border-radius: var(--border-radius-m);
|
|
62
67
|
}
|
|
63
68
|
|
|
64
69
|
.IconButtonNext_size_l.IconButtonNext_compressed:not(.IconButtonNext_variant_function) {
|
|
@@ -209,6 +214,7 @@
|
|
|
209
214
|
|
|
210
215
|
.IconButtonNext_variant_function {
|
|
211
216
|
--icon-button-size: auto;
|
|
217
|
+
--icon-button-border-radius: var(--border-radius-xs);
|
|
212
218
|
}
|
|
213
219
|
|
|
214
220
|
.IconButtonNext_variant_function.IconButtonNext_color_primary,
|
|
@@ -258,6 +264,7 @@
|
|
|
258
264
|
--icon-button-bg-color: var(--color-background-main);
|
|
259
265
|
--icon-button-bg-color-hover: var(--color-background-main-hover);
|
|
260
266
|
--icon-button-bg-color-active: var(--color-background-main-pressed);
|
|
267
|
+
--icon-button-bg-color-focus: var(--color-background-main);
|
|
261
268
|
--icon-button-font-color: var(--color-content-primary);
|
|
262
269
|
--icon-button-font-color-active: var(--color-content-primary);
|
|
263
270
|
--icon-button-font-color-focus: var(--color-content-primary);
|
|
@@ -12,7 +12,7 @@ export type IconButtonColorVariant = (typeof iconButtonColorVariant)[number];
|
|
|
12
12
|
export type IconButtonIcon = RenderContentType<IconProps & {
|
|
13
13
|
size?: IconSize;
|
|
14
14
|
}>['content'];
|
|
15
|
-
type IconButtonBaseProps = {
|
|
15
|
+
export type IconButtonBaseProps = {
|
|
16
16
|
/** Иконка */
|
|
17
17
|
icon: IconButtonIcon;
|
|
18
18
|
/** Вариант представления компонента */
|
|
@@ -38,4 +38,3 @@ type IconButtonBaseProps = {
|
|
|
38
38
|
export type IconButtonProps<As extends ElementType = typeof ICON_BUTTON_DEFAULT_TAG> = PolymorphicComponentPropsWithoutRef<IconButtonBaseProps, As>;
|
|
39
39
|
export declare const cnIconButton: import("@bem-react/classname").ClassNameFormatter;
|
|
40
40
|
export declare const IconButton: import("../../utils/polymorphicComponentWithRef").PolymorphicComponentWithRef<IconButtonBaseProps, "button">;
|
|
41
|
-
export {};
|
|
@@ -23,7 +23,7 @@ export declare const Indicator: React.ForwardRefExoticComponent<{
|
|
|
23
23
|
/** Цветовой вариант индикатор
|
|
24
24
|
* @default success
|
|
25
25
|
* */
|
|
26
|
-
variant?: "
|
|
26
|
+
variant?: "error" | "info" | "success" | "warning" | "neutral" | undefined;
|
|
27
27
|
/** Размер
|
|
28
28
|
* @default m
|
|
29
29
|
* */
|
|
@@ -94,12 +94,12 @@
|
|
|
94
94
|
row-gap: var(--input-number-button-gap);
|
|
95
95
|
}
|
|
96
96
|
|
|
97
|
-
.
|
|
98
|
-
.
|
|
97
|
+
.IconButtonNext.InputNumber-Increment,
|
|
98
|
+
.IconButtonNext.InputNumber-Decrement {
|
|
99
99
|
inline-size: var(--input-number-button-inline-size);
|
|
100
100
|
block-size: var(--input-number-button-block-size);
|
|
101
101
|
}
|
|
102
102
|
|
|
103
|
-
.
|
|
103
|
+
.IconButtonNext.InputNumber-Increment *, .IconButtonNext.InputNumber-Decrement * {
|
|
104
104
|
pointer-events: none;
|
|
105
105
|
}
|
|
@@ -18,7 +18,7 @@ var FieldIcon_1 = require("../FieldIcon");
|
|
|
18
18
|
var FieldInput_1 = require("../FieldInput");
|
|
19
19
|
var FieldLabel_1 = require("../FieldLabel");
|
|
20
20
|
var Fieldset_1 = require("../Fieldset");
|
|
21
|
-
var
|
|
21
|
+
var IconButtonNext_1 = require("../IconButtonNext");
|
|
22
22
|
var constants_1 = require("./constants");
|
|
23
23
|
var utils_1 = require("./utils");
|
|
24
24
|
exports.cnInputNumber = (0, classname_1.cn)('InputNumber');
|
|
@@ -137,8 +137,8 @@ exports.InputNumber = (0, react_1.forwardRef)(function (inProps, ref) {
|
|
|
137
137
|
react_1.default.createElement(FieldInput_1.FieldInput, tslib_1.__assign({ id: id, min: min, max: max, step: step, name: name, type: "number", value: valueState, autoFocus: autoFocus, placeholder: placeholder }, inputProps, { onBlur: handleBlur, onFocus: handleFocus, onChange: handleChange, onKeyDown: handleKeyDown, ref: (0, useMultiRef_1.useMultiRef)([inputProps === null || inputProps === void 0 ? void 0 : inputProps.ref, fieldInnerRef]), className: (0, exports.cnInputNumber)('Field', [inputProps === null || inputProps === void 0 ? void 0 : inputProps.className]) }))),
|
|
138
138
|
react_1.default.createElement(FieldIcon_1.FieldIcon, { icon: renderRight }),
|
|
139
139
|
react_1.default.createElement("span", { className: (0, exports.cnInputNumber)('Controls') },
|
|
140
|
-
react_1.default.createElement(
|
|
141
|
-
react_1.default.createElement(
|
|
140
|
+
react_1.default.createElement(IconButtonNext_1.IconButton, { size: size, type: "button", tabIndex: -1, variant: "ghost", icon: icons_1.SortUpIcon, disabled: disabled, "aria-label": incrementButtonText, className: (0, exports.cnInputNumber)('Increment'), onMouseDown: handleMouseDown('increment') }),
|
|
141
|
+
react_1.default.createElement(IconButtonNext_1.IconButton, { size: size, tabIndex: -1, type: "button", variant: "ghost", icon: icons_1.SortDownIcon, disabled: disabled, "aria-label": decrementButtonText, className: (0, exports.cnInputNumber)('Decrement'), onMouseDown: handleMouseDown('decrement') })),
|
|
142
142
|
react_1.default.createElement(Fieldset_1.Fieldset, { className: (0, exports.cnInputNumber)('Fieldset') })),
|
|
143
143
|
react_1.default.createElement(FieldHint_1.FieldHint, tslib_1.__assign({}, hintProps), hint)));
|
|
144
144
|
});
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
.List {
|
|
2
|
-
--list-item-color: var(--color-content-primary);
|
|
3
|
-
--list-item-border-radius: var(--border-radius-xs);
|
|
4
2
|
--list-item-bg-color: transparent;
|
|
3
|
+
--list-item-color: var(--color-content-primary);
|
|
4
|
+
--list-pipka-bg-color: var(--color-content-action);
|
|
5
|
+
--list-item-bg-color-disabled: var(--color-content-tertiary);
|
|
5
6
|
--list-item-bg-color-hover: var(--color-background-main-hover);
|
|
6
7
|
--list-item-bg-color-active: var(--color-background-main-pressed);
|
|
7
|
-
--list-item-bg-color-disabled: var(--color-content-tertiary);
|
|
8
|
-
--list-pipka-bg-color: var(--color-content-action);
|
|
9
8
|
--list-pipka-border-radius: 0 var(--border-radius-xs) var(--border-radius-xs)
|
|
10
9
|
0;
|
|
11
10
|
display: flex;
|
|
@@ -30,57 +29,62 @@
|
|
|
30
29
|
|
|
31
30
|
.List_size_2xs {
|
|
32
31
|
--list-gutter: var(--spacing-3xs);
|
|
33
|
-
--list-item-min-height:
|
|
32
|
+
--list-item-min-height: var(--control-height-2xs);
|
|
34
33
|
--list-item-icon-min-width: 16px;
|
|
35
34
|
--list-item-avatar-min-width: 16px;
|
|
36
35
|
--list-item-padding: 0 8px;
|
|
37
36
|
--list-item-children-margin-right: 8px;
|
|
38
37
|
--list-pipka-height: 32px;
|
|
39
38
|
--list-pipka-width: 4px;
|
|
39
|
+
--list-item-border-radius: var(--border-radius-m);
|
|
40
40
|
}
|
|
41
41
|
|
|
42
42
|
.List_size_xs {
|
|
43
43
|
--list-gutter: var(--spacing-3xs);
|
|
44
|
-
--list-item-min-height:
|
|
44
|
+
--list-item-min-height: var(--control-height-xs);
|
|
45
45
|
--list-item-icon-min-width: 16px;
|
|
46
46
|
--list-item-avatar-min-width: 24px;
|
|
47
47
|
--list-item-padding: 4px 8px;
|
|
48
48
|
--list-item-children-margin-right: 8px;
|
|
49
49
|
--list-pipka-height: 40px;
|
|
50
50
|
--list-pipka-width: 4px;
|
|
51
|
+
--list-item-border-radius: var(--border-radius-m);
|
|
51
52
|
}
|
|
52
53
|
|
|
53
54
|
.List_size_s {
|
|
54
55
|
--list-gutter: var(--spacing-3xs);
|
|
55
|
-
--list-item-min-height:
|
|
56
|
+
--list-item-min-height: var(--control-height-s);
|
|
56
57
|
--list-item-icon-min-width: 16px;
|
|
57
58
|
--list-item-avatar-min-width: 32px;
|
|
58
59
|
--list-item-padding: 6px 12px;
|
|
59
60
|
--list-item-children-margin-right: 12px;
|
|
60
61
|
--list-pipka-height: 40px;
|
|
61
62
|
--list-pipka-width: 4px;
|
|
63
|
+
--list-item-border-radius: var(--border-radius-l);
|
|
62
64
|
}
|
|
63
65
|
|
|
64
66
|
.List_size_m {
|
|
65
67
|
--list-gutter: var(--spacing-2xs);
|
|
66
|
-
--list-item-min-height:
|
|
68
|
+
--list-item-min-height: var(--control-height-m);
|
|
67
69
|
--list-item-icon-min-width: 24px;
|
|
68
70
|
--list-item-avatar-min-width: 40px;
|
|
69
71
|
--list-item-padding: 8px 12px;
|
|
70
72
|
--list-item-children-margin-right: 12px;
|
|
71
73
|
--list-pipka-height: 48px;
|
|
72
74
|
--list-pipka-width: 4px;
|
|
75
|
+
--list-item-border-radius: var(--border-radius-l);
|
|
73
76
|
}
|
|
74
77
|
|
|
75
78
|
.List_size_l {
|
|
76
79
|
--list-gutter: var(--spacing-2xs);
|
|
77
|
-
--list-item-min-height:
|
|
80
|
+
--list-item-min-height: var(--control-height-l);
|
|
78
81
|
--list-item-icon-min-width: 24px;
|
|
79
82
|
--list-item-avatar-min-width: 48px;
|
|
80
83
|
--list-item-padding: 8px 16px;
|
|
81
84
|
--list-item-children-margin-right: 16px;
|
|
82
85
|
--list-pipka-height: 48px;
|
|
83
86
|
--list-pipka-width: 4px;
|
|
87
|
+
--list-item-border-radius: var(--border-radius-l);
|
|
84
88
|
}
|
|
85
89
|
|
|
86
90
|
.List_disablePadding,
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import './Menu.css';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { RefObject, ComponentPropsWithRef } from 'react';
|
|
4
|
+
import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
|
|
4
5
|
import { type PopoverBaseProps } from '../Popover';
|
|
5
6
|
import type { PORTAL_DEFAULT_TAG } from '../Portal';
|
|
6
7
|
import { type MenuListProps } from './components';
|
|
@@ -8,6 +9,12 @@ export declare const cnMenu: import("@bem-react/classname").ClassNameFormatter;
|
|
|
8
9
|
export type MenuProps = {
|
|
9
10
|
/** Свойства компонента MenuList */
|
|
10
11
|
menuListProps?: Omit<MenuListProps, 'children'>;
|
|
12
|
+
/**
|
|
13
|
+
* Ссылка на компонент MenuList
|
|
14
|
+
* @deprecated Используйте menuListProps.ref
|
|
15
|
+
* */
|
|
11
16
|
menuListRef?: RefObject<HTMLDivElement>;
|
|
17
|
+
/** Размер компонента */
|
|
18
|
+
size?: FormElementSizeVariant;
|
|
12
19
|
} & Omit<PopoverBaseProps, 'disableEnforceFocus'> & ComponentPropsWithRef<typeof PORTAL_DEFAULT_TAG>;
|
|
13
20
|
export declare const Menu: React.ForwardRefExoticComponent<Omit<MenuProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
@@ -4,15 +4,18 @@ exports.Menu = exports.cnMenu = void 0;
|
|
|
4
4
|
var tslib_1 = require("tslib");
|
|
5
5
|
require("./Menu.css");
|
|
6
6
|
var react_1 = tslib_1.__importStar(require("react"));
|
|
7
|
+
var logger_1 = require("@ozen-ui/logger");
|
|
7
8
|
var useEventListener_1 = require("../../hooks/useEventListener");
|
|
8
9
|
var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
9
10
|
var classname_1 = require("../../utils/classname");
|
|
11
|
+
var getPaperSizeToFormElement_1 = require("../../utils/getPaperSizeToFormElement");
|
|
10
12
|
var isKey_1 = require("../../utils/isKey");
|
|
11
13
|
var Popover_1 = require("../Popover");
|
|
12
14
|
var components_1 = require("./components");
|
|
15
|
+
var constants_1 = require("./constants");
|
|
13
16
|
exports.cnMenu = (0, classname_1.cn)('Menu');
|
|
14
17
|
var MenuContextConsumer = function (_a) {
|
|
15
|
-
var children = _a.children,
|
|
18
|
+
var children = _a.children, onClose = _a.onClose, menuListProps = _a.menuListProps;
|
|
16
19
|
var isTop = (0, Popover_1.usePopover)().isTop;
|
|
17
20
|
var docRef = (0, react_1.useRef)(document);
|
|
18
21
|
(0, useEventListener_1.useEventListener)({
|
|
@@ -26,12 +29,16 @@ var MenuContextConsumer = function (_a) {
|
|
|
26
29
|
element: docRef,
|
|
27
30
|
active: isTop,
|
|
28
31
|
});
|
|
29
|
-
return (react_1.default.createElement(components_1.MenuList, tslib_1.__assign({}, menuListProps, {
|
|
32
|
+
return (react_1.default.createElement(components_1.MenuList, tslib_1.__assign({}, menuListProps, { autoFocus: true }), children));
|
|
30
33
|
};
|
|
31
34
|
exports.Menu = (0, react_1.forwardRef)(function (inProps, ref) {
|
|
32
35
|
var props = (0, useThemeProps_1.useThemeProps)({ props: inProps, name: 'Menu' });
|
|
33
|
-
var open = props.open, menuListProps = props.menuListProps, menuListRef = props.menuListRef, onClose = props.onClose, children = props.children, className = props.className, other = tslib_1.__rest(props, ["open", "menuListProps", "menuListRef", "onClose", "children", "className"]);
|
|
34
|
-
|
|
35
|
-
|
|
36
|
+
var _a = props.size, size = _a === void 0 ? constants_1.MENU_DEFAULT_SIZE : _a, open = props.open, menuListProps = props.menuListProps, menuListRef = props.menuListRef, onClose = props.onClose, children = props.children, className = props.className, other = tslib_1.__rest(props, ["size", "open", "menuListProps", "menuListRef", "onClose", "children", "className"]);
|
|
37
|
+
var radius = (0, getPaperSizeToFormElement_1.getPaperSizeToFormElement)(size);
|
|
38
|
+
if (process.env.NODE_ENV !== 'production' && menuListRef) {
|
|
39
|
+
(0, logger_1.deprecate)('Свойство «menuListRef» устарело. Для замены используйте «menuListProps.ref».');
|
|
40
|
+
}
|
|
41
|
+
return (react_1.default.createElement(Popover_1.Popover, tslib_1.__assign({ offset: [0, 4], radius: radius }, other, { open: open, onClose: onClose, className: (0, exports.cnMenu)('', [className]), disableEnforceFocus: true, ref: ref }),
|
|
42
|
+
react_1.default.createElement(MenuContextConsumer, { onClose: onClose, menuListRef: menuListRef, menuListProps: tslib_1.__assign(tslib_1.__assign({ size: size }, menuListProps), { ref: menuListRef || (menuListProps === null || menuListProps === void 0 ? void 0 : menuListProps.ref) }) }, children)));
|
|
36
43
|
});
|
|
37
44
|
exports.Menu.displayName = 'Menu';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare const MENU_DEFAULT_SIZE = "m";
|
|
@@ -7,6 +7,6 @@ var Paper_1 = require("../../Paper");
|
|
|
7
7
|
var index_1 = require("../index");
|
|
8
8
|
exports.ModalConsumer = (0, react_1.forwardRef)(function (_a, ref) {
|
|
9
9
|
var children = _a.children, className = _a.className, other = tslib_1.__rest(_a, ["children", "className"]);
|
|
10
|
-
return (react_1.default.createElement(Paper_1.Paper, tslib_1.__assign({ radius: "
|
|
10
|
+
return (react_1.default.createElement(Paper_1.Paper, tslib_1.__assign({ radius: "l", background: "main" }, other, { className: (0, index_1.cnModal)('Window', [className]), tabIndex: -1, ref: ref }), children));
|
|
11
11
|
});
|
|
12
12
|
exports.ModalConsumer.displayName = 'ModalConsumer';
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
text-transform: var(--typography-text-s-text_transform, none);
|
|
23
23
|
|
|
24
24
|
--pagination-item-size: var(--control-height-2xs);
|
|
25
|
-
--pagination-item-border-radius: var(--border-radius-
|
|
25
|
+
--pagination-item-border-radius: var(--border-radius-m);
|
|
26
26
|
}
|
|
27
27
|
.PaginationItem_size_l {
|
|
28
28
|
font: var(--typography-text-l-font);
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
text-transform: var(--typography-text-l-text_transform, none);
|
|
31
31
|
|
|
32
32
|
--pagination-item-size: var(--control-height-m);
|
|
33
|
-
--pagination-item-border-radius: var(--border-radius-
|
|
33
|
+
--pagination-item-border-radius: var(--border-radius-l);
|
|
34
34
|
}
|
|
35
35
|
.PaginationItem:hover:not(.PaginationItem_selected) {
|
|
36
36
|
--pagination-item-background: var(--color-background-primary-hover);
|
|
@@ -2,7 +2,7 @@ import './Paper.css';
|
|
|
2
2
|
import { type ComponentRef, type ElementType } from 'react';
|
|
3
3
|
import { type PolymorphicComponentPropsWithRef } from '../../utils/polymorphicComponentWithRef';
|
|
4
4
|
export declare const PAPER_DEFAULT_TAG = "div";
|
|
5
|
-
export declare const paperRadiusVariant: readonly ["xs", "s", "l"];
|
|
5
|
+
export declare const paperRadiusVariant: readonly ["xs", "s", "l", "xl"];
|
|
6
6
|
export type PaperRadiusVariant = (typeof paperRadiusVariant)[number];
|
|
7
7
|
export declare const paperBackgroundVariant: readonly ["main", "main-inverse", "action-light", "accent"];
|
|
8
8
|
export type PaperBackgroundVariant = (typeof paperBackgroundVariant)[number];
|
|
@@ -8,7 +8,7 @@ var useThemeProps_1 = require("../../hooks/useThemeProps");
|
|
|
8
8
|
var classname_1 = require("../../utils/classname");
|
|
9
9
|
var polymorphicComponentWithRef_1 = require("../../utils/polymorphicComponentWithRef");
|
|
10
10
|
exports.PAPER_DEFAULT_TAG = 'div';
|
|
11
|
-
exports.paperRadiusVariant = ['xs', 's', 'l'];
|
|
11
|
+
exports.paperRadiusVariant = ['xs', 's', 'l', 'xl'];
|
|
12
12
|
exports.paperBackgroundVariant = [
|
|
13
13
|
'main',
|
|
14
14
|
'main-inverse',
|
|
@@ -143,7 +143,7 @@ exports.Popover = (0, polymorphicComponentWithRef_1.polymorphicComponentWithRef)
|
|
|
143
143
|
var portalRef = (0, useMultiRef_1.useMultiRef)([ref, popoverRef, trapRef, setPopperElement]);
|
|
144
144
|
return (react_1.default.createElement(PopoverContext_1.PopoverContext.Provider, { value: { isTop: isTop } },
|
|
145
145
|
react_1.default.createElement(react_transition_group_1.CSSTransition, tslib_1.__assign({ classNames: (0, exports.cnPopover)({ animation: true }), timeout: 120 }, transitionProps, { in: openState, onEnter: onEnter, onEntered: onEntered, onExit: onExit, onExited: onExited, unmountOnExit: true }),
|
|
146
|
-
react_1.default.createElement(Portal_1.Portal, tslib_1.__assign({ as: as, radius: "
|
|
146
|
+
react_1.default.createElement(Portal_1.Portal, tslib_1.__assign({ as: as, radius: "l", shadow: "l", background: "main" }, other, { style: tslib_1.__assign(tslib_1.__assign({}, style), styles.popper), ref: portalRef, className: (0, exports.cnPopover)({ disableInteractive: disableInteractive }, [className]) }, attributes.popper),
|
|
147
147
|
children,
|
|
148
148
|
arrow && (react_1.default.createElement(components_1.PopoverArrow, tslib_1.__assign({}, arrowProps, { style: tslib_1.__assign(tslib_1.__assign({}, arrowProps === null || arrowProps === void 0 ? void 0 : arrowProps.style), styles.arrow), "data-popper-arrow": true })))))));
|
|
149
149
|
});
|
|
@@ -2,15 +2,15 @@
|
|
|
2
2
|
.SectionMessage {
|
|
3
3
|
--section-message-icon-padding: 2px;
|
|
4
4
|
padding: var(--section-message-padding);
|
|
5
|
-
border-radius: var(--border-radius-m);
|
|
6
|
-
background-color: var(--section-message-background-color);
|
|
7
|
-
display: flex;
|
|
8
5
|
-moz-column-gap: var(--section-message-column-gap);
|
|
9
6
|
column-gap: var(--section-message-column-gap);
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
border-radius: var(--section-message-border-radius);
|
|
8
|
+
background-color: var(--section-message-background-color);
|
|
9
|
+
display: flex;
|
|
12
10
|
overflow: auto;
|
|
11
|
+
inline-size: 100%;
|
|
13
12
|
box-sizing: border-box;
|
|
13
|
+
align-items: flex-start;
|
|
14
14
|
}
|
|
15
15
|
.SectionMessage_status_info {
|
|
16
16
|
--section-message-icon-color: var(--color-content-info);
|
|
@@ -46,6 +46,7 @@
|
|
|
46
46
|
--section-message-padding: 12px;
|
|
47
47
|
--section-message-column-gap: var(--spacing-2xs);
|
|
48
48
|
--section-message-icon-padding: 0;
|
|
49
|
+
--section-message-border-radius: var(--border-radius-m);
|
|
49
50
|
|
|
50
51
|
font: var(--typography-text-xs-font);
|
|
51
52
|
|
|
@@ -61,6 +62,7 @@
|
|
|
61
62
|
.SectionMessage_size_s {
|
|
62
63
|
--section-message-padding: 14px 16px;
|
|
63
64
|
--section-message-column-gap: var(--spacing-xs);
|
|
65
|
+
--section-message-border-radius: var(--border-radius-l);
|
|
64
66
|
|
|
65
67
|
font: var(--typography-text-s-font);
|
|
66
68
|
|
|
@@ -77,6 +79,7 @@
|
|
|
77
79
|
--section-message-padding: 16px 20px;
|
|
78
80
|
--section-message-column-gap: var(--spacing-xs);
|
|
79
81
|
--section-message-icon-padding: 0;
|
|
82
|
+
--section-message-border-radius: var(--border-radius-l);
|
|
80
83
|
|
|
81
84
|
font: var(--typography-text-m-font);
|
|
82
85
|
|
|
@@ -92,6 +95,7 @@
|
|
|
92
95
|
.SectionMessage_size_l {
|
|
93
96
|
--section-message-padding: 18px 24px;
|
|
94
97
|
--section-message-column-gap: var(--spacing-s);
|
|
98
|
+
--section-message-border-radius: var(--border-radius-l);
|
|
95
99
|
|
|
96
100
|
font: var(--typography-text-l-font);
|
|
97
101
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import './SectionMessage.css';
|
|
2
2
|
import React from 'react';
|
|
3
3
|
import type { HTMLAttributes, ReactElement } from 'react';
|
|
4
|
-
import type { ButtonProps } from '../
|
|
4
|
+
import type { ButtonProps } from '../ButtonNext';
|
|
5
5
|
export declare const cnSectionMessage: import("@bem-react/classname").ClassNameFormatter;
|
|
6
6
|
export declare const sectionMessageStatusVariant: readonly ["success", "error", "warning", "info", "neutral"];
|
|
7
7
|
export type SectionMessageStatusVariant = (typeof sectionMessageStatusVariant)[number];
|
|
@@ -1,23 +1,26 @@
|
|
|
1
1
|
/* stylelint-disable */
|
|
2
2
|
.Segment {
|
|
3
|
-
--segment-
|
|
3
|
+
--segment-padding: var(--control-padding-3xs);
|
|
4
4
|
background-color: var(--segment-background-color);
|
|
5
5
|
border-radius: var(--segment-border-radius);
|
|
6
|
-
|
|
6
|
+
block-size: var(--segment-height);
|
|
7
|
+
padding: var(--segment-padding);
|
|
7
8
|
margin: 0;
|
|
8
9
|
border: none;
|
|
9
10
|
display: flex;
|
|
11
|
+
white-space: nowrap;
|
|
12
|
+
box-sizing: border-box;
|
|
10
13
|
inline-size: -moz-fit-content;
|
|
11
14
|
inline-size: fit-content;
|
|
12
|
-
padding: 2px;
|
|
13
|
-
gap: 3px;
|
|
14
|
-
white-space: nowrap;
|
|
15
15
|
}
|
|
16
16
|
.Segment_size_2xs {
|
|
17
17
|
font: var(--typography-text-2xs-font);
|
|
18
18
|
letter-spacing: var(--typography-text-2xs-letter_spacing, 0);
|
|
19
19
|
text-transform: var(--typography-text-2xs-text_transform, none);
|
|
20
20
|
|
|
21
|
+
--segment-border-radius: var(--border-radius-l);
|
|
22
|
+
--segment-item-border-radius: var(--border-radius-m);
|
|
23
|
+
--segment-height: var(--control-height-2xs);
|
|
21
24
|
--segment-item-padding-vertical: 6px;
|
|
22
25
|
--segment-item-padding-horizontal: 12px;
|
|
23
26
|
}
|
|
@@ -26,6 +29,9 @@
|
|
|
26
29
|
letter-spacing: var(--typography-text-xs-letter_spacing, 0);
|
|
27
30
|
text-transform: var(--typography-text-xs-text_transform, none);
|
|
28
31
|
|
|
32
|
+
--segment-border-radius: var(--border-radius-l);
|
|
33
|
+
--segment-item-border-radius: var(--border-radius-m);
|
|
34
|
+
--segment-height: var(--control-height-xs);
|
|
29
35
|
--segment-item-padding-vertical: 10px;
|
|
30
36
|
--segment-item-padding-horizontal: 12px;
|
|
31
37
|
}
|
|
@@ -34,6 +40,9 @@
|
|
|
34
40
|
letter-spacing: var(--typography-text-s-letter_spacing, 0);
|
|
35
41
|
text-transform: var(--typography-text-s-text_transform, none);
|
|
36
42
|
|
|
43
|
+
--segment-border-radius: var(--border-radius-xl);
|
|
44
|
+
--segment-item-border-radius: var(--border-radius-l);
|
|
45
|
+
--segment-height: var(--control-height-s);
|
|
37
46
|
--segment-item-padding-vertical: 12px;
|
|
38
47
|
--segment-item-padding-horizontal: 16px;
|
|
39
48
|
}
|
|
@@ -42,6 +51,9 @@
|
|
|
42
51
|
letter-spacing: var(--typography-text-m-letter_spacing, 0);
|
|
43
52
|
text-transform: var(--typography-text-m-text_transform, none);
|
|
44
53
|
|
|
54
|
+
--segment-border-radius: var(--border-radius-xl);
|
|
55
|
+
--segment-item-border-radius: var(--border-radius-l);
|
|
56
|
+
--segment-height: var(--control-height-m);
|
|
45
57
|
--segment-item-padding-vertical: 14px;
|
|
46
58
|
--segment-item-padding-horizontal: 20px;
|
|
47
59
|
}
|
|
@@ -50,6 +62,9 @@
|
|
|
50
62
|
letter-spacing: var(--typography-text-l-letter_spacing, 0);
|
|
51
63
|
text-transform: var(--typography-text-l-text_transform, none);
|
|
52
64
|
|
|
65
|
+
--segment-border-radius: var(--border-radius-xl);
|
|
66
|
+
--segment-item-border-radius: var(--border-radius-l);
|
|
67
|
+
--segment-height: var(--control-height-l);
|
|
53
68
|
--segment-item-padding-vertical: 16px;
|
|
54
69
|
--segment-item-padding-horizontal: 24px;
|
|
55
70
|
}
|
|
@@ -1,37 +1,37 @@
|
|
|
1
1
|
.SegmentItem {
|
|
2
2
|
--segment-item-delimeter-opacity: 1;
|
|
3
3
|
--segment-item-background-color: transparent;
|
|
4
|
-
--segment-item-border-radius: var(--border-radius-xs);
|
|
5
4
|
--segment-item-text-color: var(--color-content-primary);
|
|
6
5
|
--segment-item-text-color-hover: var(--color-content-secondary);
|
|
7
6
|
--segment-item-gap: var(--spacing-2xs);
|
|
8
7
|
gap: var(--segment-item-gap);
|
|
8
|
+
color: var(--segment-item-text-color);
|
|
9
9
|
padding: var(--segment-item-padding-vertical)
|
|
10
10
|
var(--segment-item-padding-horizontal);
|
|
11
|
-
background-color: var(--segment-item-background-color);
|
|
12
11
|
border-radius: var(--segment-item-border-radius);
|
|
13
|
-
color: var(--segment-item-
|
|
12
|
+
background-color: var(--segment-item-background-color);
|
|
14
13
|
transition:
|
|
15
14
|
background-color var(--transition-default),
|
|
16
15
|
color var(--transition-default),
|
|
17
16
|
box-shadow var(--transition-default);
|
|
18
|
-
|
|
19
|
-
align-items: center;
|
|
20
|
-
position: relative;
|
|
17
|
+
block-size: calc(var(--segment-height) - 2 * var(--segment-padding));
|
|
21
18
|
border: none;
|
|
22
|
-
cursor: pointer;
|
|
23
19
|
outline: none;
|
|
20
|
+
display: flex;
|
|
21
|
+
cursor: pointer;
|
|
22
|
+
position: relative;
|
|
23
|
+
align-items: center;
|
|
24
|
+
box-sizing: border-box;
|
|
24
25
|
}
|
|
25
26
|
|
|
26
27
|
.SegmentItem::after {
|
|
27
|
-
opacity: var(--segment-item-delimeter-opacity);
|
|
28
|
-
background-color: var(--color-background-tertiary);
|
|
29
|
-
inset: var(--segment-item-padding-vertical) 0;
|
|
30
|
-
transition: opacity var(--transition-default);
|
|
31
28
|
content: '';
|
|
32
29
|
position: absolute;
|
|
33
|
-
inline-size:
|
|
34
|
-
inset-
|
|
30
|
+
inline-size: var(--border-width-s);
|
|
31
|
+
inset: var(--segment-item-padding-vertical) 0;
|
|
32
|
+
transition: opacity var(--transition-default);
|
|
33
|
+
opacity: var(--segment-item-delimeter-opacity);
|
|
34
|
+
background-color: var(--color-background-tertiary);
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
.SegmentItem_selected {
|
|
@@ -64,6 +64,9 @@
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
.SegmentItem-Radio {
|
|
67
|
+
inset: 0;
|
|
68
|
+
margin: 0;
|
|
69
|
+
padding: 0;
|
|
67
70
|
opacity: 0;
|
|
68
71
|
position: absolute;
|
|
69
72
|
pointer-events: none;
|
|
@@ -78,7 +81,7 @@
|
|
|
78
81
|
}
|
|
79
82
|
|
|
80
83
|
.SegmentItem-Box {
|
|
81
|
-
position: absolute;
|
|
82
84
|
inset: 0;
|
|
85
|
+
position: absolute;
|
|
83
86
|
border-radius: var(--segment-item-border-radius);
|
|
84
87
|
}
|
|
@@ -1,53 +1,17 @@
|
|
|
1
|
-
.ScrollButton {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
align-items: center;
|
|
5
|
-
padding: 12px;
|
|
6
|
-
box-sizing: border-box;
|
|
7
|
-
z-index: 2;
|
|
8
|
-
border: none;
|
|
9
|
-
cursor: pointer;
|
|
10
|
-
color: var(--color-content-primary);
|
|
11
|
-
box-shadow: var(--shadow-m);
|
|
12
|
-
border-radius: 4px;
|
|
13
|
-
background-color: var(--color-background-main);
|
|
14
|
-
transition: opacity var(--transition-default), box-shadow var(--transition-default);
|
|
1
|
+
.IconButtonNext.ScrollButton {
|
|
2
|
+
position: absolute;
|
|
3
|
+
z-index: calc(var(--z-index-absolute) + 1);
|
|
15
4
|
}
|
|
16
5
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
6
|
+
.IconButtonNext.ScrollButton_direction_left {
|
|
7
|
+
inset-inline-start: 0;
|
|
8
|
+
}
|
|
20
9
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
10
|
+
.IconButtonNext.ScrollButton_direction_right {
|
|
11
|
+
inset-inline-end: 0;
|
|
12
|
+
}
|
|
24
13
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
.ScrollButton_size_s, .ScrollButton_size_xs {
|
|
30
|
-
padding: 8px;
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
.ScrollButton:focus {
|
|
34
|
-
outline: 0;
|
|
35
|
-
box-shadow: var(--shadow-outline-focused);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
.ScrollButton:focus:not(:focus-visible) {
|
|
39
|
-
box-shadow: var(--shadow-m);
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
.ScrollButton:hover {
|
|
43
|
-
box-shadow: var(--shadow-l);
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.ScrollButton:active {
|
|
47
|
-
box-shadow: var(--shadow-s);
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
.ScrollButton_invisible {
|
|
51
|
-
pointer-events: none;
|
|
52
|
-
opacity: 0;
|
|
53
|
-
}
|
|
14
|
+
.IconButtonNext.ScrollButton_invisible {
|
|
15
|
+
pointer-events: none;
|
|
16
|
+
opacity: 0;
|
|
17
|
+
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import './ScrollButton.css';
|
|
2
2
|
import React from 'react';
|
|
3
|
-
import type { Ref
|
|
3
|
+
import type { Ref } from 'react';
|
|
4
|
+
import type { IconButtonProps } from '../../../IconButtonNext';
|
|
4
5
|
import type { TabsSizeVariant } from '../../types';
|
|
5
6
|
export declare const scrollButtonDirectionVariant: readonly ["left", "right"];
|
|
6
7
|
export type ScrollButtonDirectionVariant = (typeof scrollButtonDirectionVariant)[number];
|
|
7
|
-
|
|
8
|
-
interface ScrollButtonProps extends ButtonElProps {
|
|
8
|
+
interface ScrollButtonProps extends Partial<IconButtonProps> {
|
|
9
9
|
direction: ScrollButtonDirectionVariant;
|
|
10
10
|
invisible: boolean;
|
|
11
11
|
children?: never;
|