@ozen-ui/kit 0.41.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.
Files changed (143) hide show
  1. package/README.md +1 -1
  2. package/__inner__/cjs/components/Accordion/Accordion.css +1 -1
  3. package/__inner__/cjs/components/Alert/Alert.css +40 -21
  4. package/__inner__/cjs/components/Alert/Alert.d.ts +3 -1
  5. package/__inner__/cjs/components/Alert/Alert.js +5 -5
  6. package/__inner__/cjs/components/Autocomplete/components/AutocompleteRenderRight/AutocompleteRenderRight.js +3 -3
  7. package/__inner__/cjs/components/Autocomplete/helper.d.ts +2 -0
  8. package/__inner__/cjs/components/Autocomplete/types.d.ts +2 -2
  9. package/__inner__/cjs/components/Breadcrumbs/components/BreadcrumbItem.d.ts +1 -1
  10. package/__inner__/cjs/components/Button/Button.css +7 -1
  11. package/__inner__/cjs/components/ButtonNext/Button.css +7 -1
  12. package/__inner__/cjs/components/DataList/DataList.js +3 -1
  13. package/__inner__/cjs/components/Dialog/Dialog.css +1 -1
  14. package/__inner__/cjs/components/Dialog/Dialog.d.ts +1 -1
  15. package/__inner__/cjs/components/Dialog/Dialog.js +3 -3
  16. package/__inner__/cjs/components/Drawer/Drawer.css +9 -4
  17. package/__inner__/cjs/components/Drawer/Drawer.d.ts +1 -1
  18. package/__inner__/cjs/components/Drawer/Drawer.js +4 -4
  19. package/__inner__/cjs/components/FieldControl/FieldControl.css +6 -6
  20. package/__inner__/cjs/components/File/File.css +3 -3
  21. package/__inner__/cjs/components/FilePicker/FilePicker.d.ts +4 -2
  22. package/__inner__/cjs/components/FilePicker/FilePicker.js +2 -2
  23. package/__inner__/cjs/components/FilePicker/types.d.ts +4 -1
  24. package/__inner__/cjs/components/IconButton/IconButton.css +7 -1
  25. package/__inner__/cjs/components/IconButtonNext/IconButton.css +9 -1
  26. package/__inner__/cjs/components/IconButtonNext/IconButton.d.ts +1 -2
  27. package/__inner__/cjs/components/Indicator/Indicator.d.ts +1 -1
  28. package/__inner__/cjs/components/Input/Input.js +2 -2
  29. package/__inner__/cjs/components/Input/types.d.ts +3 -0
  30. package/__inner__/cjs/components/InputNumber/InputNumber.css +3 -3
  31. package/__inner__/cjs/components/InputNumber/InputNumber.js +5 -5
  32. package/__inner__/cjs/components/InputNumber/types.d.ts +4 -1
  33. package/__inner__/cjs/components/List/List.css +13 -9
  34. package/__inner__/cjs/components/Menu/Menu.d.ts +7 -0
  35. package/__inner__/cjs/components/Menu/Menu.js +12 -5
  36. package/__inner__/cjs/components/Menu/constants.d.ts +1 -0
  37. package/__inner__/cjs/components/Menu/constants.js +4 -0
  38. package/__inner__/cjs/components/Modal/components/ModalConsumer.js +1 -1
  39. package/__inner__/cjs/components/Pagination/Pagination.css +9 -9
  40. package/__inner__/cjs/components/Pagination/Pagination.d.ts +2 -2
  41. package/__inner__/cjs/components/Pagination/Pagination.js +21 -11
  42. package/__inner__/cjs/components/Pagination/components/PaginationItem/PaginationItem.css +21 -15
  43. package/__inner__/cjs/components/Pagination/components/PaginationItem/PaginationItem.js +7 -6
  44. package/__inner__/cjs/components/Pagination/constants.d.ts +4 -0
  45. package/__inner__/cjs/components/Pagination/constants.js +5 -1
  46. package/__inner__/cjs/components/Pagination/helpers/getItemAriaLabel/getItemAriaLabel.js +4 -4
  47. package/__inner__/cjs/components/Pagination/types.d.ts +6 -3
  48. package/__inner__/cjs/components/Paper/Paper.css +4 -0
  49. package/__inner__/cjs/components/Paper/Paper.d.ts +1 -1
  50. package/__inner__/cjs/components/Paper/Paper.js +1 -1
  51. package/__inner__/cjs/components/Popover/Popover.js +1 -1
  52. package/__inner__/cjs/components/SectionMessage/SectionMessage.css +9 -5
  53. package/__inner__/cjs/components/SectionMessage/SectionMessage.d.ts +1 -1
  54. package/__inner__/cjs/components/Segment/Segment.css +20 -5
  55. package/__inner__/cjs/components/Segment/components/SegmentItem.css +17 -14
  56. package/__inner__/cjs/components/Select/Select.js +2 -2
  57. package/__inner__/cjs/components/Select/components/SelectInput/SelectInput.js +2 -2
  58. package/__inner__/cjs/components/Select/components/SelectInput/types.d.ts +5 -1
  59. package/__inner__/cjs/components/Select/types.d.ts +2 -2
  60. package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.css +13 -49
  61. package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.d.ts +3 -3
  62. package/__inner__/cjs/components/Tabs/components/ScrollButton/ScrollButton.js +2 -2
  63. package/__inner__/cjs/components/Tabs/components/Tab/Tab.css +6 -2
  64. package/__inner__/cjs/components/Tag/Tag.css +9 -6
  65. package/__inner__/cjs/components/Textarea/Textarea.js +2 -2
  66. package/__inner__/cjs/components/Textarea/components/TextareaConsumer.js +2 -2
  67. package/__inner__/cjs/components/Textarea/types.d.ts +4 -1
  68. package/__inner__/cjs/components/Tooltip/Tooltip.js +1 -1
  69. package/__inner__/cjs/locale/locale.js +67 -0
  70. package/__inner__/cjs/utils/getPaperSizeToFormElement.d.ts +3 -0
  71. package/__inner__/cjs/utils/getPaperSizeToFormElement.js +12 -0
  72. package/__inner__/esm/components/Accordion/Accordion.css +1 -1
  73. package/__inner__/esm/components/Alert/Alert.css +40 -21
  74. package/__inner__/esm/components/Alert/Alert.d.ts +3 -1
  75. package/__inner__/esm/components/Alert/Alert.js +5 -5
  76. package/__inner__/esm/components/Autocomplete/Autocomplete.js +2 -2
  77. package/__inner__/esm/components/Autocomplete/components/AutocompleteRenderRight/AutocompleteRenderRight.js +1 -1
  78. package/__inner__/esm/components/Autocomplete/helper.d.ts +2 -0
  79. package/__inner__/esm/components/Autocomplete/types.d.ts +2 -2
  80. package/__inner__/esm/components/Breadcrumbs/components/BreadcrumbItem.d.ts +1 -1
  81. package/__inner__/esm/components/Button/Button.css +7 -1
  82. package/__inner__/esm/components/ButtonNext/Button.css +7 -1
  83. package/__inner__/esm/components/DataList/DataList.js +3 -1
  84. package/__inner__/esm/components/Dialog/Dialog.css +1 -1
  85. package/__inner__/esm/components/Dialog/Dialog.d.ts +1 -1
  86. package/__inner__/esm/components/Dialog/Dialog.js +2 -2
  87. package/__inner__/esm/components/Drawer/Drawer.css +9 -4
  88. package/__inner__/esm/components/Drawer/Drawer.d.ts +1 -1
  89. package/__inner__/esm/components/Drawer/Drawer.js +3 -3
  90. package/__inner__/esm/components/FieldControl/FieldControl.css +6 -6
  91. package/__inner__/esm/components/File/File.css +3 -3
  92. package/__inner__/esm/components/FilePicker/FilePicker.d.ts +4 -2
  93. package/__inner__/esm/components/FilePicker/FilePicker.js +4 -4
  94. package/__inner__/esm/components/FilePicker/types.d.ts +4 -1
  95. package/__inner__/esm/components/IconButton/IconButton.css +7 -1
  96. package/__inner__/esm/components/IconButtonNext/IconButton.css +9 -1
  97. package/__inner__/esm/components/IconButtonNext/IconButton.d.ts +1 -2
  98. package/__inner__/esm/components/Indicator/Indicator.d.ts +1 -1
  99. package/__inner__/esm/components/Input/Input.js +2 -2
  100. package/__inner__/esm/components/Input/types.d.ts +3 -0
  101. package/__inner__/esm/components/InputNumber/InputNumber.css +3 -3
  102. package/__inner__/esm/components/InputNumber/InputNumber.js +6 -6
  103. package/__inner__/esm/components/InputNumber/types.d.ts +4 -1
  104. package/__inner__/esm/components/List/List.css +13 -9
  105. package/__inner__/esm/components/Menu/Menu.d.ts +7 -0
  106. package/__inner__/esm/components/Menu/Menu.js +12 -5
  107. package/__inner__/esm/components/Menu/constants.d.ts +1 -0
  108. package/__inner__/esm/components/Menu/constants.js +1 -0
  109. package/__inner__/esm/components/Modal/components/ModalConsumer.js +1 -1
  110. package/__inner__/esm/components/Pagination/Pagination.css +9 -9
  111. package/__inner__/esm/components/Pagination/Pagination.d.ts +2 -2
  112. package/__inner__/esm/components/Pagination/Pagination.js +23 -13
  113. package/__inner__/esm/components/Pagination/components/PaginationItem/PaginationItem.css +21 -15
  114. package/__inner__/esm/components/Pagination/components/PaginationItem/PaginationItem.js +8 -7
  115. package/__inner__/esm/components/Pagination/constants.d.ts +4 -0
  116. package/__inner__/esm/components/Pagination/constants.js +4 -0
  117. package/__inner__/esm/components/Pagination/helpers/getItemAriaLabel/getItemAriaLabel.js +4 -4
  118. package/__inner__/esm/components/Pagination/types.d.ts +6 -3
  119. package/__inner__/esm/components/Paper/Paper.css +4 -0
  120. package/__inner__/esm/components/Paper/Paper.d.ts +1 -1
  121. package/__inner__/esm/components/Paper/Paper.js +1 -1
  122. package/__inner__/esm/components/Popover/Popover.js +1 -1
  123. package/__inner__/esm/components/SectionMessage/SectionMessage.css +9 -5
  124. package/__inner__/esm/components/SectionMessage/SectionMessage.d.ts +1 -1
  125. package/__inner__/esm/components/Segment/Segment.css +20 -5
  126. package/__inner__/esm/components/Segment/components/SegmentItem.css +17 -14
  127. package/__inner__/esm/components/Select/Select.js +3 -3
  128. package/__inner__/esm/components/Select/components/SelectInput/SelectInput.js +2 -2
  129. package/__inner__/esm/components/Select/components/SelectInput/types.d.ts +5 -1
  130. package/__inner__/esm/components/Select/types.d.ts +2 -2
  131. package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.css +13 -49
  132. package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.d.ts +3 -3
  133. package/__inner__/esm/components/Tabs/components/ScrollButton/ScrollButton.js +2 -2
  134. package/__inner__/esm/components/Tabs/components/Tab/Tab.css +6 -2
  135. package/__inner__/esm/components/Tag/Tag.css +9 -6
  136. package/__inner__/esm/components/Textarea/Textarea.js +2 -2
  137. package/__inner__/esm/components/Textarea/components/TextareaConsumer.js +2 -2
  138. package/__inner__/esm/components/Textarea/types.d.ts +4 -1
  139. package/__inner__/esm/components/Tooltip/Tooltip.js +1 -1
  140. package/__inner__/esm/locale/locale.js +67 -0
  141. package/__inner__/esm/utils/getPaperSizeToFormElement.d.ts +3 -0
  142. package/__inner__/esm/utils/getPaperSizeToFormElement.js +8 -0
  143. package/package.json +4 -4
@@ -7,7 +7,8 @@ var react_1 = tslib_1.__importStar(require("react"));
7
7
  var icons_1 = require("@ozen-ui/icons");
8
8
  var classname_1 = require("../../../../utils/classname");
9
9
  var isNumber_1 = require("../../../../utils/isNumber");
10
- var IconButton_1 = require("../../../IconButton");
10
+ var ButtonBase_1 = require("../../../ButtonBase");
11
+ var IconButtonNext_1 = require("../../../IconButtonNext");
11
12
  var constants_1 = require("../../constants");
12
13
  require("./PaginationItem.css");
13
14
  exports.paginationVariant = [
@@ -35,16 +36,16 @@ var iconsMapper = (_a = {},
35
36
  _a[constants_1.ELLIPSIS] = icons_1.MenuHorizontalIcon,
36
37
  _a);
37
38
  exports.PaginationItem = (0, react_1.forwardRef)(function (_a, ref) {
38
- var type = _a.type, page = _a.page, _b = _a.selected, selected = _b === void 0 ? false : _b, _c = _a.disabled, disabled = _c === void 0 ? false : _c, _d = _a.size, size = _d === void 0 ? 's' : _d, onClick = _a.onClick, className = _a.className, otherProps = tslib_1.__rest(_a, ["type", "page", "selected", "disabled", "size", "onClick", "className"]);
39
+ var _b = _a.selected, selected = _b === void 0 ? constants_1.PAGINATION_ITEM_DEFAULT_SELECTED : _b, _c = _a.disabled, disabled = _c === void 0 ? constants_1.PAGINATION_ITEM_DEFAULT_DISABLED : _c, _d = _a.size, size = _d === void 0 ? constants_1.PAGINATION_ITEM_DEFAULT_SIZE : _d, type = _a.type, page = _a.page, onClick = _a.onClick, className = _a.className, otherProps = tslib_1.__rest(_a, ["selected", "disabled", "size", "type", "page", "onClick", "className"]);
39
40
  var sizeConfig = sizeMapper[size];
40
41
  var handleClick = function () {
41
- if (onClick && !selected && (0, isNumber_1.isNumber)(page)) {
42
- onClick(page - 1);
42
+ if (!selected && (0, isNumber_1.isNumber)(page)) {
43
+ onClick === null || onClick === void 0 ? void 0 : onClick(page - 1);
43
44
  }
44
45
  };
45
46
  if (type === constants_1.PREVIOUS || type === constants_1.NEXT || type === constants_1.ELLIPSIS) {
46
- return (react_1.default.createElement(IconButton_1.IconButton, tslib_1.__assign({ disabled: disabled, tabIndex: disabled ? -1 : 0, icon: iconsMapper[type], size: sizeConfig.size, onClick: handleClick, ref: ref }, otherProps, { color: "secondary" })));
47
+ return (react_1.default.createElement(IconButtonNext_1.IconButton, tslib_1.__assign({ disabled: disabled, icon: iconsMapper[type], size: sizeConfig.size, onClick: handleClick, ref: ref }, otherProps, { color: "secondary" })));
47
48
  }
48
- return (react_1.default.createElement("button", tslib_1.__assign({ className: (0, exports.cnPaginationItem)({ size: size, selected: selected }, [className]), tabIndex: selected ? -1 : 0, onClick: handleClick, "aria-current": selected, ref: ref }, otherProps), page));
49
+ return (react_1.default.createElement(ButtonBase_1.ButtonBase, tslib_1.__assign({ disabled: disabled, className: (0, exports.cnPaginationItem)({ size: size, selected: selected, disabled: disabled }, [className]), tabIndex: selected ? -1 : 0, onClick: handleClick, "aria-current": selected, ref: ref }, otherProps), page));
49
50
  });
50
51
  exports.PaginationItem.displayName = 'PaginationItem';
@@ -1,6 +1,10 @@
1
+ export declare const PAGINATION_DEFAULT_TAG = "nav";
1
2
  export declare const PAGINATION_DEFAULT_SIZE = "s";
2
3
  export declare const PAGINATION_DEFAULT_SIBLING_COUNT = 2;
3
4
  export declare const PAGINATION_DEFAULT_PAGE = 0;
5
+ export declare const PAGINATION_ITEM_DEFAULT_SIZE = "s";
6
+ export declare const PAGINATION_ITEM_DEFAULT_SELECTED = false;
7
+ export declare const PAGINATION_ITEM_DEFAULT_DISABLED = false;
4
8
  export declare const ELLIPSIS = "Ellipsis";
5
9
  export declare const PREVIOUS = "Previous";
6
10
  export declare const NEXT = "Next";
@@ -1,9 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.PAGE = exports.LAST = exports.FIRST = exports.NEXT = exports.PREVIOUS = exports.ELLIPSIS = exports.PAGINATION_DEFAULT_PAGE = exports.PAGINATION_DEFAULT_SIBLING_COUNT = exports.PAGINATION_DEFAULT_SIZE = void 0;
3
+ exports.PAGE = exports.LAST = exports.FIRST = exports.NEXT = exports.PREVIOUS = exports.ELLIPSIS = exports.PAGINATION_ITEM_DEFAULT_DISABLED = exports.PAGINATION_ITEM_DEFAULT_SELECTED = exports.PAGINATION_ITEM_DEFAULT_SIZE = exports.PAGINATION_DEFAULT_PAGE = exports.PAGINATION_DEFAULT_SIBLING_COUNT = exports.PAGINATION_DEFAULT_SIZE = exports.PAGINATION_DEFAULT_TAG = void 0;
4
+ exports.PAGINATION_DEFAULT_TAG = 'nav';
4
5
  exports.PAGINATION_DEFAULT_SIZE = 's';
5
6
  exports.PAGINATION_DEFAULT_SIBLING_COUNT = 2;
6
7
  exports.PAGINATION_DEFAULT_PAGE = 0;
8
+ exports.PAGINATION_ITEM_DEFAULT_SIZE = 's';
9
+ exports.PAGINATION_ITEM_DEFAULT_SELECTED = false;
10
+ exports.PAGINATION_ITEM_DEFAULT_DISABLED = false;
7
11
  exports.ELLIPSIS = 'Ellipsis';
8
12
  exports.PREVIOUS = 'Previous';
9
13
  exports.NEXT = 'Next';
@@ -5,16 +5,16 @@ var constants_1 = require("../../constants");
5
5
  var getItemAriaLabel = function (_a) {
6
6
  var page = _a.page, type = _a.type, selected = _a.selected;
7
7
  if (type === constants_1.NEXT) {
8
- return 'Перейти на следующую страницу';
8
+ return 'Next';
9
9
  }
10
10
  if (type === constants_1.PREVIOUS) {
11
- return 'Перейти на предыдущую страницу';
11
+ return 'Previous';
12
12
  }
13
13
  if (selected) {
14
- return "\u0421\u0442\u0440\u0430\u043D\u0438\u0446\u0430 ".concat(page);
14
+ return "Selected";
15
15
  }
16
16
  if (type === constants_1.PAGE) {
17
- return "\u041F\u0435\u0440\u0435\u0439\u0442\u0438 \u043D\u0430 \u0441\u0442\u0440\u0430\u043D\u0438\u0446\u0443 ".concat(page);
17
+ return "".concat(page);
18
18
  }
19
19
  return '';
20
20
  };
@@ -1,6 +1,7 @@
1
- import type { HTMLAttributes, ReactNode } from 'react';
1
+ import type { ReactNode, ElementType } from 'react';
2
+ import type { PolymorphicComponentPropsWithoutRef } from '../../utils/polymorphicComponentWithRef';
2
3
  import type { PaginationItemProps } from './components';
3
- import type { ELLIPSIS, NEXT, PREVIOUS } from './constants';
4
+ import type { ELLIPSIS, NEXT, PREVIOUS, PAGINATION_DEFAULT_TAG } from './constants';
4
5
  import type { GetItemAriaLabel } from './helpers/getItemAriaLabel';
5
6
  export type EllipsisType = typeof ELLIPSIS;
6
7
  export type PreviousType = typeof PREVIOUS;
@@ -26,6 +27,8 @@ export type PaginationBaseProps = {
26
27
  * @default 's'
27
28
  */
28
29
  size?: PaginationSizeVariant;
30
+ /** Если {true} делает компонент неактивным */
31
+ disabled?: boolean;
29
32
  /** Кастомный класс для пагинации. */
30
33
  className?: string;
31
34
  /** Коллбэк, вызывается на смену страницы. */
@@ -35,4 +38,4 @@ export type PaginationBaseProps = {
35
38
  /** Рендер функция, для отображения кнопок пагинации. */
36
39
  renderComponent?: (PagItemProps: PaginationItemProps) => ReactNode;
37
40
  };
38
- export type PaginationProps = PaginationBaseProps & HTMLAttributes<HTMLElement>;
41
+ export type PaginationProps<As extends ElementType = typeof PAGINATION_DEFAULT_TAG> = PolymorphicComponentPropsWithoutRef<PaginationBaseProps, As>;
@@ -19,6 +19,10 @@
19
19
  --paper-border-radius: var(--border-radius-l);
20
20
  }
21
21
 
22
+ .Paper_radius_xl {
23
+ --paper-border-radius: var(--border-radius-xl);
24
+ }
25
+
22
26
  .Paper_background_main {
23
27
  --paper-background-color: var(--color-background-main);
24
28
  }
@@ -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: "xs", 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),
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
- align-items: flex-start;
11
- inline-size: 100%;
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 '../Button';
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-border-radius: var(--border-radius-s);
3
+ --segment-padding: var(--control-padding-3xs);
4
4
  background-color: var(--segment-background-color);
5
5
  border-radius: var(--segment-border-radius);
6
- box-sizing: border-box;
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-text-color);
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
- display: flex;
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: 1px;
34
- inset-inline-start: -2px;
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
  }
@@ -20,7 +20,7 @@ var SelectRender = function (inProps, ref) {
20
20
  props: inProps,
21
21
  name: 'Select',
22
22
  });
23
- var _a = props.size, size = _a === void 0 ? constants_1.SELECT_DEFAULT_SIZE : _a, _b = props.autoFocus, autoFocus = _b === void 0 ? constants_1.SELECT_DEFAULT_AUTO_FOCUS : _b, _c = props.fullWidth, fullWidth = _c === void 0 ? constants_1.SELECT_DEFAULT_FULL_WIDTH : _c, _d = props.disabled, disabled = _d === void 0 ? constants_1.SELECT_DEFAULT_DISABLED : _d, _e = props.required, required = _e === void 0 ? constants_1.SELECT_DEFAULT_REQUIRED : _e, _f = props.multiline, multiline = _f === void 0 ? constants_1.SELECT_DEFAULT_MULTILINE : _f, _g = props.defaultOpen, defaultOpen = _g === void 0 ? constants_1.SELECT_DEFAULT_DEFAULT_OPEN : _g, id = props.id, name = props.name, valueProp = props.value, defaultValue = props.defaultValue, error = props.error, onChange = props.onChange, label = props.label, placeholder = props.placeholder, renderValueProp = props.renderValue, renderLeft = props.renderLeft, renderRight = props.renderRight, hint = props.hint, children = props.children, onClick = props.onClick, onKeyDown = props.onKeyDown, menuProps = props.menuProps, dataListPropsProp = props.dataListProps, bodyProps = props.bodyProps, bodeRefProp = props.bodyRef, onCloseProp = props.onClose, onOpenProp = props.onOpen, openProp = props.open, multiple = props.multiple, other = tslib_1.__rest(props, ["size", "autoFocus", "fullWidth", "disabled", "required", "multiline", "defaultOpen", "id", "name", "value", "defaultValue", "error", "onChange", "label", "placeholder", "renderValue", "renderLeft", "renderRight", "hint", "children", "onClick", "onKeyDown", "menuProps", "dataListProps", "bodyProps", "bodyRef", "onClose", "onOpen", "open", "multiple"]);
23
+ var _a = props.size, size = _a === void 0 ? constants_1.SELECT_DEFAULT_SIZE : _a, _b = props.autoFocus, autoFocus = _b === void 0 ? constants_1.SELECT_DEFAULT_AUTO_FOCUS : _b, _c = props.fullWidth, fullWidth = _c === void 0 ? constants_1.SELECT_DEFAULT_FULL_WIDTH : _c, _d = props.disabled, disabled = _d === void 0 ? constants_1.SELECT_DEFAULT_DISABLED : _d, _e = props.required, required = _e === void 0 ? constants_1.SELECT_DEFAULT_REQUIRED : _e, _f = props.multiline, multiline = _f === void 0 ? constants_1.SELECT_DEFAULT_MULTILINE : _f, _g = props.defaultOpen, defaultOpen = _g === void 0 ? constants_1.SELECT_DEFAULT_DEFAULT_OPEN : _g, id = props.id, name = props.name, valueProp = props.value, defaultValue = props.defaultValue, error = props.error, onChange = props.onChange, label = props.label, placeholder = props.placeholder, renderValueProp = props.renderValue, renderLeft = props.renderLeft, renderRight = props.renderRight, hint = props.hint, children = props.children, onClick = props.onClick, onKeyDown = props.onKeyDown, menuProps = props.menuProps, dataListPropsProp = props.dataListProps, bodyProps = props.bodyProps, hintProps = props.hintProps, bodeRefProp = props.bodyRef, onCloseProp = props.onClose, onOpenProp = props.onOpen, openProp = props.open, multiple = props.multiple, other = tslib_1.__rest(props, ["size", "autoFocus", "fullWidth", "disabled", "required", "multiline", "defaultOpen", "id", "name", "value", "defaultValue", "error", "onChange", "label", "placeholder", "renderValue", "renderLeft", "renderRight", "hint", "children", "onClick", "onKeyDown", "menuProps", "dataListProps", "bodyProps", "hintProps", "bodyRef", "onClose", "onOpen", "open", "multiple"]);
24
24
  var bodyInnerRef = (0, react_1.useRef)(null);
25
25
  /** @deprecated props */
26
26
  var bodyRef = (bodyProps === null || bodyProps === void 0 ? void 0 : bodyProps.ref) || bodeRefProp;
@@ -162,7 +162,7 @@ var SelectRender = function (inProps, ref) {
162
162
  }
163
163
  }, [autoFocus]);
164
164
  return (react_1.default.createElement(react_1.default.Fragment, null,
165
- react_1.default.createElement(components_1.SelectInput, tslib_1.__assign({ id: id, name: name, label: label, placeholder: placeholder, size: size, disabled: disabled, required: required, multiline: multiline, error: error, hint: hint, fullWidth: fullWidth, renderLeft: renderLeft, renderRight: renderRight }, other, { open: open, value: inputValue() || '', onKeyDown: handleKeyDown, onClick: handleClick, bodyProps: tslib_1.__assign(tslib_1.__assign({}, bodyProps), { ref: (0, useMultiRef_1.useMultiRef)([bodyRef, bodyInnerRef]) }), ref: ref, renderedValue: renderValue({
165
+ react_1.default.createElement(components_1.SelectInput, tslib_1.__assign({ id: id, name: name, label: label, placeholder: placeholder, size: size, disabled: disabled, required: required, multiline: multiline, error: error, hint: hint, fullWidth: fullWidth, renderLeft: renderLeft, renderRight: renderRight }, other, { open: open, value: inputValue() || '', onKeyDown: handleKeyDown, onClick: handleClick, bodyProps: tslib_1.__assign(tslib_1.__assign({}, bodyProps), { ref: (0, useMultiRef_1.useMultiRef)([bodyRef, bodyInnerRef]) }), hintProps: hintProps, ref: ref, renderedValue: renderValue({
166
166
  label: currentLabel,
167
167
  value: valueState,
168
168
  }) })),
@@ -16,7 +16,7 @@ var constants_1 = require("../../constants");
16
16
  var index_1 = require("../../index");
17
17
  var SelectConsumer_1 = require("../SelectConsumer");
18
18
  exports.SelectInput = (0, react_1.forwardRef)(function (_a, ref) {
19
- var _b = _a.size, size = _b === void 0 ? constants_1.SELECT_DEFAULT_SIZE : _b, _c = _a.multiline, multiline = _c === void 0 ? constants_1.SELECT_DEFAULT_MULTILINE : _c, open = _a.open, label = _a.label, error = _a.error, id = _a.id, name = _a.name, renderLeft = _a.renderLeft, renderRight = _a.renderRight, renderedValue = _a.renderedValue, fullWidth = _a.fullWidth, disabled = _a.disabled, hint = _a.hint, required = _a.required, className = _a.className, inputProps = _a.inputProps, valueProp = _a.value, placeholderProp = _a.placeholder, defaultValue = _a.defaultValue, onFocus = _a.onFocus, onBlur = _a.onBlur, onClick = _a.onClick, onKeyDown = _a.onKeyDown, labelProps = _a.labelProps, fieldProps = _a.fieldProps, labelRef = _a.labelRef, inputRef = _a.inputRef, fieldRef = _a.fieldRef, bodyProps = _a.bodyProps, other = tslib_1.__rest(_a, ["size", "multiline", "open", "label", "error", "id", "name", "renderLeft", "renderRight", "renderedValue", "fullWidth", "disabled", "hint", "required", "className", "inputProps", "value", "placeholder", "defaultValue", "onFocus", "onBlur", "onClick", "onKeyDown", "labelProps", "fieldProps", "labelRef", "inputRef", "fieldRef", "bodyProps"]);
19
+ var _b = _a.size, size = _b === void 0 ? constants_1.SELECT_DEFAULT_SIZE : _b, _c = _a.multiline, multiline = _c === void 0 ? constants_1.SELECT_DEFAULT_MULTILINE : _c, open = _a.open, label = _a.label, error = _a.error, id = _a.id, name = _a.name, renderLeft = _a.renderLeft, renderRight = _a.renderRight, renderedValue = _a.renderedValue, fullWidth = _a.fullWidth, disabled = _a.disabled, hint = _a.hint, required = _a.required, className = _a.className, inputProps = _a.inputProps, valueProp = _a.value, placeholderProp = _a.placeholder, defaultValue = _a.defaultValue, onFocus = _a.onFocus, onBlur = _a.onBlur, onClick = _a.onClick, onKeyDown = _a.onKeyDown, labelProps = _a.labelProps, fieldProps = _a.fieldProps, hintProps = _a.hintProps, labelRef = _a.labelRef, inputRef = _a.inputRef, fieldRef = _a.fieldRef, bodyProps = _a.bodyProps, other = tslib_1.__rest(_a, ["size", "multiline", "open", "label", "error", "id", "name", "renderLeft", "renderRight", "renderedValue", "fullWidth", "disabled", "hint", "required", "className", "inputProps", "value", "placeholder", "defaultValue", "onFocus", "onBlur", "onClick", "onKeyDown", "labelProps", "fieldProps", "hintProps", "labelRef", "inputRef", "fieldRef", "bodyProps"]);
20
20
  var _d = tslib_1.__read((0, useBoolean_1.useBoolean)(), 2), focused = _d[0], _e = _d[1], on = _e.on, off = _e.off;
21
21
  var filled = !!valueProp || valueProp === 0;
22
22
  var handleFocus = (0, react_1.useCallback)(function (e) {
@@ -38,6 +38,6 @@ exports.SelectInput = (0, react_1.forwardRef)(function (_a, ref) {
38
38
  react_1.default.createElement(FieldIcon_1.FieldIcon, { icon: renderRight, className: (0, index_1.cnSelect)('RenderRight') }),
39
39
  react_1.default.createElement(FieldIcon_1.FieldIcon, { icon: icons_1.ChevronDownIcon, className: (0, classnames_1.classnames)((0, index_1.cnSelect)('RenderRight'), (0, index_1.cnSelect)('DropDownIcon', { open: open })) }),
40
40
  react_1.default.createElement(Fieldset_1.Fieldset, { className: (0, index_1.cnSelect)('Fieldset') })),
41
- react_1.default.createElement(FieldHint_1.FieldHint, null, hint)));
41
+ react_1.default.createElement(FieldHint_1.FieldHint, tslib_1.__assign({}, hintProps), hint)));
42
42
  });
43
43
  exports.SelectInput.displayName = 'SelectInput';
@@ -1,9 +1,11 @@
1
- import type { Ref, ReactNode, ComponentPropsWithRef } from 'react';
1
+ import type { ComponentPropsWithRef, ReactNode, Ref } from 'react';
2
2
  import type { FormElementSizeVariant } from '../../../../types/FormElementSizeVariant';
3
+ import type { FieldHintProps } from '../../../FieldHint';
3
4
  import type { FieldIconProps } from '../../../FieldIcon';
4
5
  import type { FieldLabelProps } from '../../../FieldLabel';
5
6
  export type SelectInputSizeVariant = FormElementSizeVariant;
6
7
  type LabelProps = FieldLabelProps;
8
+ type HintProps = FieldHintProps;
7
9
  type InputProps = ComponentPropsWithRef<'input'> & {
8
10
  'data-testid'?: string;
9
11
  };
@@ -79,6 +81,8 @@ export type SelectInputProps = Omit<ComponentPropsWithRef<'div'>, 'value' | 'def
79
81
  labelProps?: LabelProps;
80
82
  /** Свойства Body */
81
83
  bodyProps?: BodyProps;
84
+ /** Cвойства FieldHint */
85
+ hintProps?: Omit<HintProps, 'children'>;
82
86
  /** Признак раскрытого списка */
83
87
  open?: boolean;
84
88
  /** Идентификатор компонента для тестов */
@@ -1,4 +1,4 @@
1
- import type { SyntheticEvent, ReactNode, ReactElement, ComponentPropsWithRef } from 'react';
1
+ import type { ComponentPropsWithRef, ReactElement, ReactNode, SyntheticEvent } from 'react';
2
2
  import type { FormElementSizeVariant } from '../../types/FormElementSizeVariant';
3
3
  import type { DataListBaseProps, DataListSelected } from '../DataList';
4
4
  import type { SelectInputProps } from './components';
@@ -66,6 +66,6 @@ export type SelectProps<MULTIPLE extends boolean = false> = {
66
66
  multiple?: MULTIPLE;
67
67
  /** Идентификатор компонента для тестов */
68
68
  'data-testid'?: string;
69
- } & Pick<SelectInputProps, 'id' | 'name' | 'label' | 'placeholder' | 'disabled' | 'required' | 'error' | 'hint' | 'fullWidth' | 'renderLeft' | 'renderRight' | 'multiline' | 'inputProps' | 'labelProps' | 'bodyProps' | 'inputRef' | 'labelRef' | 'bodyRef'> & Omit<ComponentPropsWithRef<'div'>, 'onChange' | 'defaultValue'> & SelectPropsDeprecated<MULTIPLE> & (SelectControlledProps<MULTIPLE> | SelectUncontrolledProps<MULTIPLE>) & (SelectOpenControlledProps | SelectOpenUncontrolledProps);
69
+ } & Pick<SelectInputProps, 'id' | 'name' | 'label' | 'placeholder' | 'disabled' | 'required' | 'error' | 'hint' | 'fullWidth' | 'renderLeft' | 'renderRight' | 'multiline' | 'inputProps' | 'labelProps' | 'hintProps' | 'bodyProps' | 'inputRef' | 'labelRef' | 'bodyRef'> & Omit<ComponentPropsWithRef<'div'>, 'onChange' | 'defaultValue'> & SelectPropsDeprecated<MULTIPLE> & (SelectControlledProps<MULTIPLE> | SelectUncontrolledProps<MULTIPLE>) & (SelectOpenControlledProps | SelectOpenUncontrolledProps);
70
70
  export type SelectComponent = <MULTIPLE extends boolean = false>(props: SelectProps<MULTIPLE>) => ReactElement | null;
71
71
  export {};
@@ -1,53 +1,17 @@
1
- .ScrollButton {
2
- position: absolute;
3
- display: inline-flex;
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
- .ScrollButton_direction_left {
18
- inset-inline-start: 0;
19
- }
6
+ .IconButtonNext.ScrollButton_direction_left {
7
+ inset-inline-start: 0;
8
+ }
20
9
 
21
- .ScrollButton_direction_right {
22
- inset-inline-end: 0;
23
- }
10
+ .IconButtonNext.ScrollButton_direction_right {
11
+ inset-inline-end: 0;
12
+ }
24
13
 
25
- .ScrollButton_size_m, .ScrollButton_size_l {
26
- padding: 12px;
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, ButtonHTMLAttributes } from 'react';
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
- type ButtonElProps = ButtonHTMLAttributes<HTMLButtonElement>;
8
- interface ScrollButtonProps extends ButtonElProps {
8
+ interface ScrollButtonProps extends Partial<IconButtonProps> {
9
9
  direction: ScrollButtonDirectionVariant;
10
10
  invisible: boolean;
11
11
  children?: never;
@@ -6,6 +6,7 @@ require("./ScrollButton.css");
6
6
  var react_1 = tslib_1.__importStar(require("react"));
7
7
  var icons_1 = require("@ozen-ui/icons");
8
8
  var classname_1 = require("../../../../utils/classname");
9
+ var IconButtonNext_1 = require("../../../IconButtonNext");
9
10
  exports.scrollButtonDirectionVariant = ['left', 'right'];
10
11
  exports.cnScrollButton = (0, classname_1.cn)('ScrollButton');
11
12
  exports.iconByDirection = {
@@ -21,7 +22,6 @@ exports.ScrollButton = react_1.default.forwardRef(function (_a, ref) {
21
22
  var ariaLabel = (0, react_1.useMemo)(function () { return exports.ariaLabelByDirection[direction]; }, [direction]);
22
23
  var Icon = (0, react_1.useMemo)(function () { return exports.iconByDirection[direction]; }, [direction]);
23
24
  var tabIndex = invisible ? -1 : 0;
24
- return (react_1.default.createElement("button", tslib_1.__assign({ className: (0, exports.cnScrollButton)({ invisible: invisible, direction: direction, size: size }, [className]), tabIndex: tabIndex, "aria-label": ariaLabel, ref: ref }, other),
25
- react_1.default.createElement(Icon, { size: "s" })));
25
+ return (react_1.default.createElement(IconButtonNext_1.IconButton, tslib_1.__assign({ variant: "floating", size: size, icon: react_1.default.createElement(Icon, { size: "s" }), className: (0, exports.cnScrollButton)({ invisible: invisible, direction: direction }, [className]), tabIndex: tabIndex, "aria-label": ariaLabel, compressed: true, ref: ref }, other)));
26
26
  });
27
27
  exports.ScrollButton.displayName = 'ScrollButton';
@@ -7,7 +7,7 @@
7
7
  max-inline-size: 360px;
8
8
  min-inline-size: 90px;
9
9
  cursor: pointer;
10
- border-radius: var(--border-radius-xs);
10
+ border-radius: var(--tab-border-radius);
11
11
  color: var(--color-content-secondary);
12
12
  font-style: normal;
13
13
  text-decoration: none;
@@ -34,7 +34,7 @@
34
34
  }
35
35
  .Tab_active {
36
36
  cursor: auto;
37
- border-radius: var(--border-radius-xs) var(--border-radius-xs) 0 0;
37
+ border-radius: var(--tab-border-radius);
38
38
  }
39
39
  .Tab > svg {
40
40
  flex-shrink: 0;
@@ -94,15 +94,19 @@
94
94
  text-transform: var(--typography-text-m-text_transform, none);
95
95
  }
96
96
  .Tab_size_xs {
97
+ --tab-border-radius: var(--border-radius-m);
97
98
  padding: 12px;
98
99
  }
99
100
  .Tab_size_s {
101
+ --tab-border-radius: var(--border-radius-l);
100
102
  padding: 14px 16px;
101
103
  }
102
104
  .Tab_size_m {
105
+ --tab-border-radius: var(--border-radius-l);
103
106
  padding: 16px 20px;
104
107
  }
105
108
  .Tab_size_l {
109
+ --tab-border-radius: var(--border-radius-l);
106
110
  padding: 18px 24px;
107
111
  }
108
112
  .Tab_onlyIcon.Tab_size_2xs {
@@ -1,13 +1,13 @@
1
1
  /* stylelint-disable */
2
2
  .Tag {
3
- display: inline-flex;
4
- align-items: center;
5
- border-radius: var(--border-radius-xs);
6
- padding: var(--tag-padding);
7
- gap: var(--spacing-3xs);
8
- outline: none;
9
3
  border: none;
4
+ outline: none;
5
+ align-items: center;
6
+ display: inline-flex;
10
7
  text-decoration: none;
8
+ gap: var(--spacing-3xs);
9
+ padding: var(--tag-padding);
10
+ border-radius: var(--tag-border-radius);
11
11
  transition:
12
12
  box-shadow var(--transition-default),
13
13
  background-color var(--transition-default),
@@ -19,6 +19,7 @@
19
19
  text-transform: var(--typography-text-3xs-text_transform, none);
20
20
 
21
21
  --tag-padding: 0 4px;
22
+ --tag-border-radius: var(--border-radius-s);
22
23
  }
23
24
  .Tag_size_xs {
24
25
  font: var(--typography-text-xs-font);
@@ -26,6 +27,7 @@
26
27
  text-transform: var(--typography-text-xs-text_transform, none);
27
28
 
28
29
  --tag-padding: 4px 8px;
30
+ --tag-border-radius: var(--border-radius-s);
29
31
  }
30
32
  .Tag_size_s {
31
33
  font: var(--typography-text-s-font);
@@ -33,6 +35,7 @@
33
35
  text-transform: var(--typography-text-s-text_transform, none);
34
36
 
35
37
  --tag-padding: 6px 12px;
38
+ --tag-border-radius: var(--border-radius-m);
36
39
  }
37
40
  .Tag_variant_neutral {
38
41
  background-color: var(--color-background-secondary);