@skbkontur/side-menu 4.0.7 → 4.0.8
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 +2 -2
- package/src/SideMenu/SideMenu.d.ts +30 -9
- package/src/SideMenuDropdown/SideMenuDropdown.d.ts +2 -0
- package/src/SideMenuHeader/SideMenuHeader.d.ts +1 -0
- package/src/SideMenuItem/SideMenuItem.d.ts +1 -0
- package/src/SideMenuLink/SideMenuLink.d.ts +2 -0
- package/src/internal/ClickableElement.d.ts +9 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,14 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [4.0.8](/compare/@skbkontur/side-menu@4.0.7...@skbkontur/side-menu@4.0.8) (2026-07-10)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @skbkontur/side-menu
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
|
|
6
14
|
## [4.0.7](/compare/@skbkontur/side-menu@4.0.6...@skbkontur/side-menu@4.0.7) (2026-07-07)
|
|
7
15
|
|
|
8
16
|
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skbkontur/side-menu",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.8",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"author": "Kontur",
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"@skbkontur/colors": "^2.1.7",
|
|
30
30
|
"@skbkontur/empty-state": "^2.0.2",
|
|
31
31
|
"@skbkontur/icons": "^2.0.0",
|
|
32
|
-
"@skbkontur/react-ui-addons": "^6.0.
|
|
32
|
+
"@skbkontur/react-ui-addons": "^6.0.6",
|
|
33
33
|
"@skbkontur/widget-consumer-react-utils": "^1.6.12",
|
|
34
34
|
"tslib": "^2.8.0"
|
|
35
35
|
},
|
|
@@ -16,45 +16,66 @@ import { SideMenuSubLink } from '../SideMenuSubLink/SideMenuSubLink.js';
|
|
|
16
16
|
export type showScrollBarType = 'always' | 'scroll' | 'hover' | 'never';
|
|
17
17
|
export interface SideMenuProps extends CommonProps {
|
|
18
18
|
children?: React.ReactNode;
|
|
19
|
+
/**
|
|
20
|
+
* Размер контента бокового меню.
|
|
21
|
+
*/
|
|
19
22
|
size?: 'small' | 'large';
|
|
20
23
|
/**
|
|
21
|
-
*
|
|
24
|
+
* Отображает пункты меню второго уровня в отдельной колонке, а не раскрывающимся списком.
|
|
22
25
|
*/
|
|
23
26
|
isSeparatedMenu?: boolean;
|
|
24
27
|
/**
|
|
25
|
-
*
|
|
28
|
+
* Закрепляет свёрнутое до иконок боковое меню на экране. Работает только на широких экранах.
|
|
26
29
|
*/
|
|
27
30
|
isPinned?: boolean;
|
|
28
31
|
/**
|
|
29
|
-
*
|
|
32
|
+
* Событие закреплённого состояния. Работает только на широких экранах.
|
|
30
33
|
*/
|
|
31
34
|
onPinnedValueChange?: (isPinned: boolean) => void;
|
|
32
35
|
/**
|
|
33
|
-
*
|
|
36
|
+
* Блокирует возможность сворачивать меню до иконок. Работает только на широких экранах.
|
|
34
37
|
*/
|
|
35
38
|
disableCollapsing?: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Управление активным пунктом меню.
|
|
41
|
+
*/
|
|
36
42
|
activeItem?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Событие смены активного пункта меню.
|
|
45
|
+
*/
|
|
37
46
|
onActiveItemChange?: (value: string) => void;
|
|
47
|
+
/**
|
|
48
|
+
* Меняет брейкпоинт для широкого экрана десктопа.
|
|
49
|
+
*/
|
|
38
50
|
desktopMediaQuery?: string;
|
|
51
|
+
/**
|
|
52
|
+
* Меняет брейкпоинт для маленького экрана десктопа.
|
|
53
|
+
*/
|
|
39
54
|
narrowDesktopMediaQuery?: string;
|
|
55
|
+
/**
|
|
56
|
+
* Меняет брейкпоинт для планшетного режима.
|
|
57
|
+
*/
|
|
40
58
|
tabletMediaQuery?: string;
|
|
59
|
+
/**
|
|
60
|
+
* Меняет брейкпоинт для мобильного режима.
|
|
61
|
+
*/
|
|
41
62
|
mobileMediaQuery?: string;
|
|
42
63
|
/**
|
|
43
|
-
*
|
|
64
|
+
* Показывает полосу прокрутки.
|
|
44
65
|
*/
|
|
45
66
|
showScrollBar?: showScrollBarType;
|
|
46
67
|
/**
|
|
47
|
-
*
|
|
68
|
+
* Управляет видимостью: открыто/закрыто боковое меню.
|
|
48
69
|
*
|
|
49
|
-
* Примечание: при заданном пропе `isOpen` автоматическое открытие/закрытие меню не
|
|
70
|
+
* Примечание: при заданном пропе `isOpen` автоматическое открытие/закрытие меню не работает.
|
|
50
71
|
*/
|
|
51
72
|
isOpen?: boolean;
|
|
52
73
|
/**
|
|
53
|
-
*
|
|
74
|
+
* Событие открытия меню
|
|
54
75
|
*/
|
|
55
76
|
onOpen?: () => void;
|
|
56
77
|
/**
|
|
57
|
-
*
|
|
78
|
+
* Событие закрытия меню.
|
|
58
79
|
*/
|
|
59
80
|
onClose?: () => void;
|
|
60
81
|
}
|
|
@@ -5,7 +5,9 @@ import React from 'react';
|
|
|
5
5
|
import type { SideMenuItemProps } from '../SideMenuItem/SideMenuItem.js';
|
|
6
6
|
export interface SideMenuDropdownProps extends CommonProps, Omit<DropdownMenuProps, 'caption' | 'disableAnimations'>, Pick<SideMenuItemProps, 'icon' | 'caption' | 'marker' | 'id' | 'subCaption' | '_isAvatar'> {
|
|
7
7
|
children?: React.ReactNode;
|
|
8
|
+
/** Отключает анимацию раскрытия пункта меню. */
|
|
8
9
|
disableAnimations?: boolean;
|
|
10
|
+
/** Идентификатор элемента. */
|
|
9
11
|
id?: string;
|
|
10
12
|
}
|
|
11
13
|
/**
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CommonClickableElementProps } from '../internal/ClickableElement.js';
|
|
3
3
|
export interface SideMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonClickableElementProps {
|
|
4
|
+
/** Компонент, используемый в качестве корневого узла. */
|
|
4
5
|
component?: React.ComponentType<any>;
|
|
5
6
|
}
|
|
6
7
|
/**
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
import type { CommonClickableElementProps } from '../internal/ClickableElement.js';
|
|
3
3
|
export interface SideMenuLinkProps<T = string> extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>, CommonClickableElementProps {
|
|
4
|
+
/** Компонент, используемый в качестве корневого узла. */
|
|
4
5
|
component?: React.ComponentType<any>;
|
|
6
|
+
/** Адрес ссылки или ресурса. */
|
|
5
7
|
href: T;
|
|
6
8
|
}
|
|
7
9
|
/**
|
|
@@ -3,14 +3,21 @@ import type { ReactNode } from 'react';
|
|
|
3
3
|
import React from 'react';
|
|
4
4
|
export interface CommonClickableElementProps extends CommonProps {
|
|
5
5
|
children?: ReactNode;
|
|
6
|
+
/** Иконка. */
|
|
6
7
|
icon: React.ReactElement;
|
|
8
|
+
/** Визуальный маркер. */
|
|
7
9
|
marker?: ReactNode;
|
|
10
|
+
/** Заголовок элемента. */
|
|
8
11
|
caption?: ReactNode;
|
|
12
|
+
/** Подзаголовок элемента. */
|
|
9
13
|
subCaption?: ReactNode;
|
|
14
|
+
/** Идентификатор элемента. */
|
|
10
15
|
id?: string;
|
|
16
|
+
/** Позволяет использовать элемент как обычную кнопку. */
|
|
11
17
|
isButton?: boolean;
|
|
18
|
+
/** Блокирует элемент. */
|
|
12
19
|
disabled?: boolean;
|
|
13
|
-
/** Отключает перенос строки у заголовка элемента, вместо этого он будет обрезаться
|
|
20
|
+
/** Отключает перенос строки у заголовка элемента, вместо этого он будет обрезаться многоточием. */
|
|
14
21
|
noWrap?: boolean;
|
|
15
22
|
/** @ignore */
|
|
16
23
|
_isSubMenu?: boolean;
|
|
@@ -23,6 +30,7 @@ export interface CommonClickableElementProps extends CommonProps {
|
|
|
23
30
|
}
|
|
24
31
|
export interface ClickableElementProps extends CommonClickableElementProps {
|
|
25
32
|
element: 'a' | 'button' | React.ComponentType<any>;
|
|
33
|
+
/** Адрес ссылки или ресурса. */
|
|
26
34
|
href?: string;
|
|
27
35
|
onClick?: React.EventHandler<React.MouseEvent>;
|
|
28
36
|
onKeyDown?: React.EventHandler<React.KeyboardEvent>;
|