@skbkontur/side-menu 3.2.1 → 3.2.3

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 (77) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/hooks/useAnimateOnMount.d.ts +1 -1
  3. package/hooks/useMemoIcon.js +2 -6
  4. package/internal/themes/SideMenuTheme.d.ts +2 -2
  5. package/lib/theming/ThemeHelpers.d.ts +2 -2
  6. package/lib/theming/ThemeHelpers.js +6 -3
  7. package/lib/theming/ThemeTypes.d.ts +1 -1
  8. package/lib/utils/scripts.d.ts +1 -1
  9. package/package.json +3 -3
  10. package/src/Navigation.d.ts +3 -2
  11. package/src/Navigation.js +2 -1
  12. package/src/SideMenu/SideMenu.d.ts +1 -1
  13. package/src/SideMenu/SideMenu.js +15 -10
  14. package/src/SideMenu/SideMenu.styles.d.ts +1 -1
  15. package/src/SideMenuAvatar/SideMenuAvatar.d.ts +2 -2
  16. package/src/SideMenuAvatar/SideMenuAvatar.js +1 -1
  17. package/src/SideMenuBody/SideMenuBody.d.ts +1 -1
  18. package/src/SideMenuBody/SideMenuBody.js +1 -1
  19. package/src/SideMenuBody/SideMenuBody.styles.d.ts +1 -1
  20. package/src/SideMenuContext.d.ts +4 -4
  21. package/src/SideMenuDivider/SideMenuDivider.d.ts +1 -1
  22. package/src/SideMenuDivider/SideMenuDivider.js +2 -2
  23. package/src/SideMenuDivider/SideMenuDivider.styles.d.ts +1 -1
  24. package/src/SideMenuDropdown/SideMenuDropdown.d.ts +3 -3
  25. package/src/SideMenuDropdown/SideMenuDropdown.js +2 -2
  26. package/src/SideMenuDropdown/SideMenuDropdown.styles.d.ts +1 -1
  27. package/src/SideMenuFooter/SideMenuFooter.d.ts +1 -1
  28. package/src/SideMenuFooter/SideMenuFooter.js +1 -1
  29. package/src/SideMenuFooter/SideMenuFooter.styles.d.ts +1 -1
  30. package/src/SideMenuHeader/SideMenuHeader.d.ts +1 -1
  31. package/src/SideMenuHeader/SideMenuHeader.js +2 -2
  32. package/src/SideMenuHeader/SideMenuHeader.styles.d.ts +1 -1
  33. package/src/SideMenuItem/SideMenuItem.d.ts +1 -1
  34. package/src/SideMenuLink/SideMenuLink.d.ts +1 -1
  35. package/src/SideMenuLink/SideMenuLink.js +1 -1
  36. package/src/SideMenuOrganisations/SideMenuOrganisations.d.ts +1 -1
  37. package/src/SideMenuSubItem/SideMenuSubItem.d.ts +1 -1
  38. package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.d.ts +1 -1
  39. package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.js +1 -1
  40. package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.styles.d.ts +1 -1
  41. package/src/SideMenuSubLink/SideMenuSubLink.d.ts +1 -1
  42. package/src/Tree.d.ts +1 -1
  43. package/src/Tree.js +4 -2
  44. package/src/internal/BackButton.d.ts +1 -1
  45. package/src/internal/BackButton.js +2 -2
  46. package/src/internal/Backdrop.d.ts +1 -1
  47. package/src/internal/Backdrop.js +1 -1
  48. package/src/internal/Burger.js +3 -3
  49. package/src/internal/Burger.styles.d.ts +1 -1
  50. package/src/internal/ClickableElement.d.ts +3 -2
  51. package/src/internal/ClickableElement.js +7 -6
  52. package/src/internal/ClickableElement.styles.d.ts +1 -1
  53. package/src/internal/InnerSubMenu.js +1 -1
  54. package/src/internal/ItemContent/Caption.d.ts +1 -1
  55. package/src/internal/ItemContent/Caption.js +2 -1
  56. package/src/internal/ItemContent/Caption.styles.d.ts +1 -1
  57. package/src/internal/ItemContent/Icon.d.ts +2 -2
  58. package/src/internal/ItemContent/Icon.js +2 -2
  59. package/src/internal/ItemContent/Icon.styles.d.ts +1 -1
  60. package/src/internal/ItemContent/ItemContent.d.ts +1 -1
  61. package/src/internal/ItemContent/ItemContent.js +7 -5
  62. package/src/internal/ItemContent/ItemContent.styles.d.ts +1 -1
  63. package/src/internal/ItemContent/Marker.d.ts +1 -1
  64. package/src/internal/ItemContent/Marker.js +2 -2
  65. package/src/internal/ItemContent/Marker.styles.d.ts +1 -1
  66. package/src/internal/NestedMenu.js +3 -3
  67. package/src/internal/NestedMenu.styles.d.ts +1 -1
  68. package/src/internal/RightBorder.js +2 -2
  69. package/src/internal/RightBorder.styles.d.ts +1 -1
  70. package/src/internal/SeparatedSubMenu.d.ts +1 -1
  71. package/src/internal/SeparatedSubMenu.js +4 -4
  72. package/src/internal/SeparatedSubMenu.styles.d.ts +1 -1
  73. package/src/internal/SideMenuLogotype.d.ts +1 -1
  74. package/src/internal/SideMenuLogotype.js +4 -4
  75. package/src/internal/SideMenuLogotype.styles.d.ts +1 -1
  76. package/src/internal/SubMenu.d.ts +1 -1
  77. package/src/internal/SubMenu.js +1 -1
package/CHANGELOG.md CHANGED
@@ -3,6 +3,22 @@
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
+ ## [3.2.3](https://git.skbkontur.ru/ui/ui-parking-2/compare/@skbkontur/side-menu@3.2.2...@skbkontur/side-menu@3.2.3) (2025-05-20)
7
+
8
+ **Note:** Version bump only for package @skbkontur/side-menu
9
+
10
+
11
+
12
+
13
+
14
+ ## [3.2.2](https://git.skbkontur.ru/ui/ui-parking-2/compare/@skbkontur/side-menu@3.2.1...@skbkontur/side-menu@3.2.2) (2025-05-06)
15
+
16
+ **Note:** Version bump only for package @skbkontur/side-menu
17
+
18
+
19
+
20
+
21
+
6
22
  ## [3.2.1](https://git.skbkontur.ru/ui/ui-parking-2/compare/@skbkontur/side-menu@3.2.0...@skbkontur/side-menu@3.2.1) (2025-03-19)
7
23
 
8
24
 
@@ -1,2 +1,2 @@
1
- import { CSSProperties } from 'react';
1
+ import type { CSSProperties } from 'react';
2
2
  export declare function useAnimateOnMount(isMounted: boolean, delayTime: number, mountStyles: CSSProperties, unmountStyles: CSSProperties): [boolean, CSSProperties];
@@ -9,9 +9,7 @@ export var useMemoIcon = function (children, _a) {
9
9
  if (isOpened) {
10
10
  return React.createElement(ArrowCDownIcon16Regular, { onClick: onClick });
11
11
  }
12
- else {
13
- return React.createElement(ArrowCRightIcon16Regular, null);
14
- }
12
+ return React.createElement(ArrowCRightIcon16Regular, null);
15
13
  }
16
14
  }, [isOpened, children]);
17
15
  };
@@ -20,8 +18,6 @@ export var useMemoBorderIcon = function (isCollapsed) {
20
18
  if (isCollapsed) {
21
19
  return React.createElement(ArrowCRightIcon16Regular, null);
22
20
  }
23
- else {
24
- return React.createElement(ArrowCLeftIcon16Regular, null);
25
- }
21
+ return React.createElement(ArrowCLeftIcon16Regular, null);
26
22
  }, [isCollapsed]);
27
23
  };
@@ -1,5 +1,5 @@
1
- import { BasicLightThemeInternal } from '@skbkontur/react-ui/internal/themes/BasicLightTheme';
2
- import { Theme as ReactUITheme } from '@skbkontur/react-ui/lib/theming/Theme';
1
+ import type { BasicLightThemeInternal } from '@skbkontur/react-ui/internal/themes/BasicLightTheme';
2
+ import type { Theme as ReactUITheme } from '@skbkontur/react-ui/lib/theming/Theme';
3
3
  declare const SideMenuTheme_base: typeof BasicLightThemeInternal;
4
4
  export declare class SideMenuTheme extends SideMenuTheme_base {
5
5
  static sideMenuWidth: string;
@@ -1,5 +1,5 @@
1
- import { Theme as ReactUITheme } from '@skbkontur/react-ui/lib/theming/Theme';
2
- import { SideMenuTheme } from './ThemeTypes';
1
+ import type { Theme as ReactUITheme } from '@skbkontur/react-ui/lib/theming/Theme';
2
+ import type { SideMenuTheme } from './ThemeTypes';
3
3
  /**
4
4
  * Creates SideMenuTheme out of ReactUI's Theme.
5
5
  *
@@ -14,8 +14,9 @@ import { SideMenuThemeInternal, isSideMenuTheme, markAsSideMenuTheme } from '../
14
14
  */
15
15
  export var createSideMenuTheme = function (theme) {
16
16
  var e_1, _a;
17
- if (isSideMenuTheme(theme))
17
+ if (isSideMenuTheme(theme)) {
18
18
  return theme;
19
+ }
19
20
  var sideMenuTheme = Object.create(theme, Object.assign(Object.getOwnPropertyDescriptors(SideMenuThemeInternal), {}));
20
21
  var _loop_1 = function (key) {
21
22
  var descriptor = Object.getOwnPropertyDescriptor(sideMenuTheme, key);
@@ -48,8 +49,9 @@ export var createSideMenuTheme = function (theme) {
48
49
  export var getSideMenuTheme = memo(function (theme) {
49
50
  return createSideMenuTheme(theme);
50
51
  });
52
+ // eslint-disable-next-line @typescript-eslint/ban-types
51
53
  function isZeroArgs(fn) {
52
- return fn.length == 0;
54
+ return fn.length === 0;
53
55
  }
54
56
  var memoize = function (fn) {
55
57
  if (isZeroArgs(fn)) {
@@ -65,8 +67,9 @@ var memoize = function (fn) {
65
67
  }
66
68
  var cache = new WeakMap();
67
69
  return function (arg) {
68
- if (!cache.has(arg))
70
+ if (!cache.has(arg)) {
69
71
  cache.set(arg, fn(arg));
72
+ }
70
73
  return cache.get(arg);
71
74
  };
72
75
  };
@@ -1,3 +1,3 @@
1
- import { SideMenuThemeInternal } from '../../internal/themes/SideMenuTheme';
1
+ import type { SideMenuThemeInternal } from '../../internal/themes/SideMenuTheme';
2
2
  export type SideMenuTheme = Readonly<typeof SideMenuThemeInternal>;
3
3
  export type SideMenuThemeIn = Partial<SideMenuTheme>;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type React from 'react';
2
2
  export declare const isBrowser: boolean;
3
3
  export declare const isTouchDevice: () => boolean;
4
4
  export declare const isKonturIcon: (icon: React.ReactElement) => boolean;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skbkontur/side-menu",
3
- "version": "3.2.1",
3
+ "version": "3.2.3",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org/"
@@ -22,8 +22,8 @@
22
22
  "@skbkontur/react-ui": "^5.0.0"
23
23
  },
24
24
  "dependencies": {
25
- "@skbkontur/icons": "^1.17.0",
26
- "@skbkontur/react-ui-addons": "^5.2.0",
25
+ "@skbkontur/icons": "^1.18.0",
26
+ "@skbkontur/react-ui-addons": "^5.2.1",
27
27
  "tslib": "^2.8.0"
28
28
  }
29
29
  }
@@ -1,5 +1,6 @@
1
- import { RefObject } from 'react';
2
- import { Tree, TreeNode } from './Tree';
1
+ import type { RefObject } from 'react';
2
+ import type { TreeNode } from './Tree';
3
+ import { Tree } from './Tree';
3
4
  export declare const navigationAttribute = "data-navigation-id";
4
5
  export declare const navigationAttributeForSeparatedMenu = "data-parent-navigation-id";
5
6
  export declare const navigationAttributeBackButton = "data-navigation-back-button";
package/src/Navigation.js CHANGED
@@ -111,8 +111,9 @@ var MenuNavigation = /** @class */ (function () {
111
111
  (_d = firstLevelParent === null || firstLevelParent === void 0 ? void 0 : firstLevelParent.value) === null || _d === void 0 ? void 0 : _d.setIsFirstLevelParentOfActiveMenuItem(true);
112
112
  };
113
113
  MenuNavigation.prototype.getFirstLevelParent = function (treeNode) {
114
- if (!treeNode)
114
+ if (!treeNode) {
115
115
  return;
116
+ }
116
117
  var parentTreeNode = treeNode.parent;
117
118
  while (parentTreeNode) {
118
119
  var foundNode = parentTreeNode.parent;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
2
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
3
  import { SideMenuOrganisations } from '../SideMenuOrganisations/SideMenuOrganisations';
4
4
  import { SideMenuBody } from '../SideMenuBody/SideMenuBody';
5
5
  import { SideMenuFooter } from '../SideMenuFooter/SideMenuFooter';
@@ -3,7 +3,10 @@ import React, { forwardRef, useContext, useEffect, useRef, useState } from 'reac
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { isIE11 } from '@skbkontur/react-ui/lib/client';
5
5
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
6
- import { jsStylesForSideMenu, customStyles } from './SideMenu.styles';
6
+ import { LIGHT_THEME, ScrollContainer, useResponsiveLayout } from '@skbkontur/react-ui';
7
+ import { RenderLayer } from '@skbkontur/react-ui/internal/RenderLayer';
8
+ import { ZIndex } from '@skbkontur/react-ui/internal/ZIndex';
9
+ import { mergeRefs } from '@skbkontur/react-ui/lib/utils';
7
10
  import { SideMenuOrganisations } from '../SideMenuOrganisations/SideMenuOrganisations';
8
11
  import { SideMenuContext } from '../SideMenuContext';
9
12
  import { SideMenuBody } from '../SideMenuBody/SideMenuBody';
@@ -18,16 +21,13 @@ import { RightBorder } from '../internal/RightBorder';
18
21
  import { SideMenuDropdown } from '../SideMenuDropdown/SideMenuDropdown';
19
22
  import { SideMenuLink } from '../SideMenuLink/SideMenuLink';
20
23
  import { SideMenuSubLink } from '../SideMenuSubLink/SideMenuSubLink';
21
- import { LIGHT_THEME, ScrollContainer, useResponsiveLayout } from '@skbkontur/react-ui';
22
24
  import { Backdrop } from '../internal/Backdrop';
23
- import { RenderLayer } from '@skbkontur/react-ui/internal/RenderLayer';
24
25
  import { isTouchDevice } from '../../lib/utils/scripts';
25
26
  import { SideMenuDataTids } from '../../SideMenuDataTids';
26
- import { ZIndex } from '@skbkontur/react-ui/internal/ZIndex';
27
27
  import { useAnimateOnMount } from '../../hooks/useAnimateOnMount';
28
28
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
29
- import { mergeRefs } from '@skbkontur/react-ui/lib/utils';
30
29
  import { MenuNavigation } from '../Navigation';
30
+ import { jsStylesForSideMenu, customStyles } from './SideMenu.styles';
31
31
  export var transitionDuration = 300; //ms
32
32
  export var burgerTransitionDuration = (transitionDuration * 2) / 3;
33
33
  var SideMenuInner = forwardRef(function (_a, ref) {
@@ -96,14 +96,16 @@ var SideMenuInner = forwardRef(function (_a, ref) {
96
96
  };
97
97
  }, []);
98
98
  useEffect(function () {
99
- if (isMobile && isSeparatedMenuShown)
99
+ if (isMobile && isSeparatedMenuShown) {
100
100
  return;
101
+ }
101
102
  setTimeout(function () {
102
103
  var _a;
103
104
  var contentWrapper = contentWrapperRef.current;
104
105
  var scrollContainer = (_a = scrollContainerRef.current) === null || _a === void 0 ? void 0 : _a.inner;
105
- if (!contentWrapper || !scrollContainer)
106
+ if (!contentWrapper || !scrollContainer) {
106
107
  return;
108
+ }
107
109
  setHasScrollBar(scrollContainer.clientHeight < contentWrapper.scrollHeight);
108
110
  }, 50);
109
111
  }, [activeMenuItem, isOpened, isBeingTransitioned]);
@@ -111,8 +113,9 @@ var SideMenuInner = forwardRef(function (_a, ref) {
111
113
  isDesktopQuery && setIsOpened(!isPinned);
112
114
  }, [isPinned, isDesktopQuery]);
113
115
  var handleIsOpened = function (newIsOpened, shouldSetState) {
114
- if (newIsOpened === isOpened || !shouldSetState)
116
+ if (newIsOpened === isOpened || !shouldSetState) {
115
117
  return;
118
+ }
116
119
  setIsOpened(newIsOpened);
117
120
  if (newIsOpened) {
118
121
  onOpen === null || onOpen === void 0 ? void 0 : onOpen();
@@ -188,8 +191,9 @@ var SideMenuInner = forwardRef(function (_a, ref) {
188
191
  }
189
192
  };
190
193
  var showMinimizedRootForNarrowDesktop = function (e) {
191
- if (!isSeparatedMenuShown || !isCollapsable || isTouchScreen)
194
+ if (!isSeparatedMenuShown || !isCollapsable || isTouchScreen) {
192
195
  return;
196
+ }
193
197
  var relativeXCoordinate = e.clientX - leftPosition;
194
198
  var sideMenuMinimizedWidth = parseInt(theme.sideMenuMinimizedWidth);
195
199
  if (relativeXCoordinate <= sideMenuMinimizedWidth && mousePositionX >= sideMenuMinimizedWidth) {
@@ -201,8 +205,9 @@ var SideMenuInner = forwardRef(function (_a, ref) {
201
205
  setMousePositionX(relativeXCoordinate);
202
206
  };
203
207
  var showMenu = function (newIsShown) {
204
- if (!isTabletOrMobile)
208
+ if (!isTabletOrMobile) {
205
209
  return;
210
+ }
206
211
  if (!isBeingTransitioned && newIsShown !== isOpened) {
207
212
  setIsBeingTransitioned(true);
208
213
  handleIsOpened(newIsShown, !manual);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const customStyles: {
3
3
  rootForTabletsOrMobiles(headerHeight?: number): string;
4
4
  };
@@ -1,6 +1,6 @@
1
1
  import React from 'react';
2
- import { UserAvatarProps } from '@skbkontur/react-ui-addons/';
3
- import { SideMenuDropdownProps } from '../SideMenuDropdown/SideMenuDropdown';
2
+ import type { UserAvatarProps } from '@skbkontur/react-ui-addons/';
3
+ import type { SideMenuDropdownProps } from '../SideMenuDropdown/SideMenuDropdown';
4
4
  export interface SideMenuAvatarProps extends Omit<UserAvatarProps, 'style'>, Omit<SideMenuDropdownProps, 'icon'>, Partial<Pick<SideMenuDropdownProps, 'icon' | 'onOpen' | 'onClose'>> {
5
5
  }
6
6
  /**
@@ -1,9 +1,9 @@
1
1
  import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
3
  import { UserAvatar } from '@skbkontur/react-ui-addons/';
4
+ import { ThemeContext } from '@skbkontur/react-ui';
4
5
  import { SideMenuDropdown } from '../SideMenuDropdown/SideMenuDropdown';
5
6
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
6
- import { ThemeContext } from '@skbkontur/react-ui';
7
7
  var SideMenuAvatarInner = forwardRef(function (_a, ref) {
8
8
  var userName = _a.userName, avatarUrl = _a.avatarUrl, children = _a.children, icon = _a.icon, caption = _a.caption, rest = __rest(_a, ["userName", "avatarUrl", "children", "icon", "caption"]);
9
9
  var theme = getSideMenuTheme(useContext(ThemeContext));
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
2
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
3
  export interface SideMenuBodyProps extends CommonProps {
4
4
  children?: React.ReactNode;
5
5
  }
@@ -2,10 +2,10 @@ import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
5
- import { jsStyles } from './SideMenuBody.styles';
6
5
  import { SideMenuContext } from '../SideMenuContext';
7
6
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
8
7
  import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
8
+ import { jsStyles } from './SideMenuBody.styles';
9
9
  var SideMenuBodyInner = forwardRef(function (_a, ref) {
10
10
  var _b, _c;
11
11
  var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  wrapper(t: SideMenuTheme): string;
@@ -1,7 +1,7 @@
1
- import { RefObject } from 'react';
2
- import { ScrollContainerScrollStateY } from '@skbkontur/react-ui';
3
- import { showScrollBarType } from './SideMenu/SideMenu';
4
- import { MenuNavigation } from './Navigation';
1
+ import type { RefObject } from 'react';
2
+ import type { ScrollContainerScrollStateY } from '@skbkontur/react-ui';
3
+ import type { showScrollBarType } from './SideMenu/SideMenu';
4
+ import type { MenuNavigation } from './Navigation';
5
5
  export interface SideMenuContextType {
6
6
  isBeingTransitioned?: boolean;
7
7
  isSeparatedMenu?: boolean;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
2
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
3
  /**
4
4
  * Разделитель в главном меню
5
5
  *
@@ -1,9 +1,9 @@
1
1
  import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
- import { jsStyles } from './SideMenuDivider.styles';
5
- import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
6
4
  import { ThemeContext } from '@skbkontur/react-ui';
5
+ import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
6
+ import { jsStyles } from './SideMenuDivider.styles';
7
7
  var SideMenuDividerInner = forwardRef(function (_a, ref) {
8
8
  var _b;
9
9
  var className = _a.className, rest = __rest(_a, ["className"]);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  };
@@ -1,7 +1,7 @@
1
1
  import React from 'react';
2
- import { DropdownMenuProps } from '@skbkontur/react-ui';
3
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
4
- import { SideMenuItemProps } from '../SideMenuItem/SideMenuItem';
2
+ import type { DropdownMenuProps } from '@skbkontur/react-ui';
3
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
4
+ import type { SideMenuItemProps } from '../SideMenuItem/SideMenuItem';
5
5
  export interface SideMenuDropdownProps extends CommonProps, Omit<DropdownMenuProps, 'caption' | 'disableAnimations'>, Pick<SideMenuItemProps, 'icon' | 'caption' | 'marker' | 'id' | 'subCaption' | '_isAvatar'> {
6
6
  children?: React.ReactNode;
7
7
  disableAnimations?: boolean;
@@ -2,13 +2,13 @@ import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
3
  import { ThemeContext, DropdownMenu } from '@skbkontur/react-ui';
4
4
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
5
- import { jsStyles } from './SideMenuDropdown.styles';
6
5
  import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
7
6
  import { SideMenuContext } from '../SideMenuContext';
8
7
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
8
+ import { jsStyles } from './SideMenuDropdown.styles';
9
9
  var SideMenuDropdownInner = forwardRef(function (_a, ref) {
10
10
  var _b, _c;
11
- var icon = _a.icon, id = _a.id, children = _a.children, caption = _a.caption, marker = _a.marker, subCaption = _a.subCaption, className = _a.className, _d = _a.disableAnimations, disableAnimations = _d === void 0 ? false : _d, menuWidth = _a.menuWidth, _isAvatar = _a._isAvatar, rest = __rest(_a, ["icon", "id", "children", "caption", "marker", "subCaption", "className", "disableAnimations", "menuWidth", "_isAvatar"]);
11
+ var icon = _a.icon, id = _a.id, children = _a.children, caption = _a.caption, marker = _a.marker, subCaption = _a.subCaption, className = _a.className, menuWidth = _a.menuWidth, _isAvatar = _a._isAvatar, rest = __rest(_a, ["icon", "id", "children", "caption", "marker", "subCaption", "className", "menuWidth", "_isAvatar"]);
12
12
  var context = useContext(SideMenuContext);
13
13
  var theme = getSideMenuTheme(useContext(ThemeContext));
14
14
  return (React.createElement("li", { className: cx((_b = {}, _b[jsStyles.wrapper()] = true, _b), className), ref: ref },
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  label(t: SideMenuTheme): string;
4
4
  labelForTouchScreens(t: SideMenuTheme): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
2
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
3
  export interface SideMenuFooterProps extends CommonProps {
4
4
  children?: React.ReactNode;
5
5
  }
@@ -2,10 +2,10 @@ import { __assign, __read, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext, useEffect, useState } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
5
- import { jsStyles } from './SideMenuFooter.styles';
6
5
  import { SideMenuContext } from '../SideMenuContext';
7
6
  import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
8
7
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
8
+ import { jsStyles } from './SideMenuFooter.styles';
9
9
  var SideMenuFooterInner = forwardRef(function (_a, ref) {
10
10
  var _b;
11
11
  var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootFixed(t: SideMenuTheme): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { LogotypeProps } from '@skbkontur/react-ui-addons/components/Logotype';
2
+ import type { LogotypeProps } from '@skbkontur/react-ui-addons/components/Logotype';
3
3
  export interface SideMenuHeaderProps extends Partial<LogotypeProps> {
4
4
  iconUrl?: string;
5
5
  }
@@ -3,11 +3,11 @@ import React, { forwardRef, useContext, useEffect, useRef } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { mergeRefs } from '@skbkontur/react-ui/lib/utils';
5
5
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
6
- import { jsStyles } from './SideMenuHeader.styles';
6
+ import { getDOMRect } from '@skbkontur/react-ui/lib/dom/getDOMRect';
7
7
  import { SideMenuContext } from '../SideMenuContext';
8
8
  import { SideMenuLogotype } from '../internal/SideMenuLogotype';
9
9
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
10
- import { getDOMRect } from '@skbkontur/react-ui/lib/dom/getDOMRect';
10
+ import { jsStyles } from './SideMenuHeader.styles';
11
11
  var SideMenuHeaderInner = forwardRef(function (_a, ref) {
12
12
  var _b;
13
13
  var _c;
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootForTabletsOrMobiles(t: SideMenuTheme): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonClickableElementProps } from '../internal/ClickableElement';
2
+ import type { CommonClickableElementProps } from '../internal/ClickableElement';
3
3
  export interface SideMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonClickableElementProps {
4
4
  component?: React.ComponentType<any>;
5
5
  }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonClickableElementProps } from '../internal/ClickableElement';
2
+ import type { CommonClickableElementProps } from '../internal/ClickableElement';
3
3
  export interface SideMenuLinkProps<T = string> extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>, CommonClickableElementProps {
4
4
  component?: React.ComponentType<any>;
5
5
  href: T;
@@ -1,8 +1,8 @@
1
1
  import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef } from 'react';
3
+ import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
3
4
  import { ClickableElement } from '../internal/ClickableElement';
4
5
  import { jsStyles } from './SideMenuLink.styles';
5
- import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
6
6
  var SideMenuLinkInner = forwardRef(function (_a, ref) {
7
7
  var _b;
8
8
  var className = _a.className, component = _a.component, rest = __rest(_a, ["className", "component"]);
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuDropdownProps } from '../SideMenuDropdown/SideMenuDropdown';
2
+ import type { SideMenuDropdownProps } from '../SideMenuDropdown/SideMenuDropdown';
3
3
  /**
4
4
  * Список организаций
5
5
  *
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuItemProps } from '../SideMenuItem/SideMenuItem';
2
+ import type { SideMenuItemProps } from '../SideMenuItem/SideMenuItem';
3
3
  export interface SideMenuSubItemProps extends Omit<SideMenuItemProps, 'icon'>, Partial<Pick<SideMenuItemProps, 'icon'>> {
4
4
  }
5
5
  /**
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
2
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
3
  export interface SideMenuSubItemHeaderProps extends CommonProps {
4
4
  children?: React.ReactNode;
5
5
  }
@@ -2,9 +2,9 @@ import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
5
- import { jsStyles } from './SideMenuSubItemHeader.styles';
6
5
  import { SideMenuContext } from '../SideMenuContext';
7
6
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
7
+ import { jsStyles } from './SideMenuSubItemHeader.styles';
8
8
  var SideMenuSubItemHeaderInner = forwardRef(function (_a, ref) {
9
9
  var _b;
10
10
  var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootInSeparatedSubMenu(): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuLinkProps } from '../SideMenuLink/SideMenuLink';
2
+ import type { SideMenuLinkProps } from '../SideMenuLink/SideMenuLink';
3
3
  export interface SideMenuSubLinkProps<T = string> extends Omit<SideMenuLinkProps<T>, 'icon'>, Partial<Pick<SideMenuLinkProps, 'icon'>> {
4
4
  }
5
5
  /**
package/src/Tree.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { NavigableElement } from './Navigation';
1
+ import type { NavigableElement } from './Navigation';
2
2
  export declare class TreeNode {
3
3
  id: string;
4
4
  value: NavigableElement | null;
package/src/Tree.js CHANGED
@@ -66,8 +66,9 @@ var Tree = /** @class */ (function () {
66
66
  Tree.prototype.insert = function (parentId, id, value) {
67
67
  var e_2, _a;
68
68
  if (value === void 0) { value = null; }
69
- if (!id)
69
+ if (!id) {
70
70
  return false;
71
+ }
71
72
  try {
72
73
  for (var _b = __values(this.preOrderTraversal()), _c = _b.next(); !_c.done; _c = _b.next()) {
73
74
  var node = _c.value;
@@ -115,8 +116,9 @@ var Tree = /** @class */ (function () {
115
116
  try {
116
117
  for (var _b = __values(this.preOrderTraversal()), _c = _b.next(); !_c.done; _c = _b.next()) {
117
118
  var node = _c.value;
118
- if (node.id === id)
119
+ if (node.id === id) {
119
120
  return node;
121
+ }
120
122
  }
121
123
  }
122
124
  catch (e_4_1) { e_4 = { error: e_4_1 }; }
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonClickableElementProps } from './ClickableElement';
2
+ import type { CommonClickableElementProps } from './ClickableElement';
3
3
  export interface BackButtonProps extends Pick<CommonClickableElementProps, 'caption' | 'id'> {
4
4
  href?: string;
5
5
  }
@@ -1,7 +1,7 @@
1
1
  import { __assign } from "tslib";
2
2
  import React, { forwardRef, useContext } from 'react';
3
- import { SideMenuDataTids } from '../../SideMenuDataTids';
4
3
  import { ArrowALeftIcon20Regular } from '@skbkontur/icons/icons/ArrowALeftIcon/ArrowALeftIcon20Regular';
4
+ import { SideMenuDataTids } from '../../SideMenuDataTids';
5
5
  import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
6
6
  import { SideMenuContext } from '../SideMenuContext';
7
7
  import { navigationAttributeBackButton } from '../Navigation';
@@ -12,7 +12,7 @@ import { navigationAttributeBackButton } from '../Navigation';
12
12
  */
13
13
  var BackButton = forwardRef(function (_a, ref) {
14
14
  var _b;
15
- var caption = _a.caption, id = _a.id, href = _a.href;
15
+ var caption = _a.caption, id = _a.id;
16
16
  var context = useContext(SideMenuContext);
17
17
  var handleClick = function () {
18
18
  var _a;
@@ -1,4 +1,4 @@
1
- import { CSSProperties } from 'react';
1
+ import type { CSSProperties } from 'react';
2
2
  export declare const Backdrop: (props: {
3
3
  style: CSSProperties;
4
4
  }) => JSX.Element;
@@ -1,9 +1,9 @@
1
1
  import { __assign } from "tslib";
2
2
  import React from 'react';
3
3
  import { HideBodyVerticalScroll } from '@skbkontur/react-ui/internal/HideBodyVerticalScroll';
4
- import { jsStyles } from './Backdrop.styles';
5
4
  import { LIGHT_THEME } from '@skbkontur/react-ui';
6
5
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
6
+ import { jsStyles } from './Backdrop.styles';
7
7
  export var Backdrop = function (props) {
8
8
  var _a;
9
9
  return (React.createElement("div", { className: cx((_a = {},
@@ -1,10 +1,10 @@
1
1
  import React, { useContext } from 'react';
2
- import { jsStyles } from './Burger.styles';
3
- import { SideMenuContext } from '../SideMenuContext';
4
2
  import { UiMenuBars3HIcon24Regular } from '@skbkontur/icons/icons/UiMenuBars3HIcon/UiMenuBars3HIcon24Regular';
3
+ import { ThemeContext } from '@skbkontur/react-ui';
4
+ import { SideMenuContext } from '../SideMenuContext';
5
5
  import { SideMenuDataTids } from '../../SideMenuDataTids';
6
6
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
7
- import { ThemeContext } from '@skbkontur/react-ui';
7
+ import { jsStyles } from './Burger.styles';
8
8
  export var Burger = function () {
9
9
  var context = useContext(SideMenuContext);
10
10
  var theme = getSideMenuTheme(useContext(ThemeContext));
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  rootForTabletsOrMobiles(t: SideMenuTheme): string;
4
4
  };
@@ -1,5 +1,6 @@
1
- import React, { ReactNode } from 'react';
2
- import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
1
+ import type { ReactNode } from 'react';
2
+ import React from 'react';
3
+ import type { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
4
  export interface CommonClickableElementProps extends CommonProps {
4
5
  children?: React.ReactNode;
5
6
  icon: React.ReactElement;
@@ -1,17 +1,17 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext, useEffect, useState } from 'react';
3
3
  import { keyListener } from '@skbkontur/react-ui/lib/events/keyListener';
4
- import { SideMenuContext } from '../SideMenuContext';
5
- import { ItemContent } from './ItemContent/ItemContent';
6
- import { SubMenu } from './SubMenu';
7
- import { jsStyles } from './ClickableElement.styles';
8
4
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
9
- import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
10
5
  import { ThemeContext } from '@skbkontur/react-ui';
6
+ import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
7
+ import { SideMenuContext } from '../SideMenuContext';
11
8
  import { useMemoIcon } from '../../hooks/useMemoIcon';
12
9
  import { SideMenuDataTids } from '../../SideMenuDataTids';
13
10
  import { navigationAttribute } from '../Navigation';
14
11
  import { generateId } from '../../lib/utils/scripts';
12
+ import { jsStyles } from './ClickableElement.styles';
13
+ import { SubMenu } from './SubMenu';
14
+ import { ItemContent } from './ItemContent/ItemContent';
15
15
  /**
16
16
  * Элемент списка (пункт меню либо ссылка)
17
17
  *
@@ -56,8 +56,9 @@ var ClickableElement = forwardRef(function (_a, ref) {
56
56
  };
57
57
  var setIsMinimized = function (lastElementInTheHierarchy) {
58
58
  var _a, _b;
59
- if (context.isMobile || context.isTablet || (context.isDesktop && !context.isCollapsable))
59
+ if (context.isMobile || context.isTablet || (context.isDesktop && !context.isCollapsable)) {
60
60
  return;
61
+ }
61
62
  var topLevelItemInSeparatedSideMenu = context.isSeparatedMenu && !_isSubMenu && children;
62
63
  if (context.isCollapsable && (lastElementInTheHierarchy || topLevelItemInSeparatedSideMenu)) {
63
64
  (_a = context.setIsMinimized) === null || _a === void 0 ? void 0 : _a.call(context, true);
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootButton(t: SideMenuTheme): string;
@@ -1,6 +1,6 @@
1
1
  import React, { forwardRef, useContext } from 'react';
2
- import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
3
2
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
3
+ import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
4
4
  import { SideMenuContext } from '../SideMenuContext';
5
5
  /**
6
6
  * Подменю, раскрывающееся внутри основного меню
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
2
+ import type { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
3
3
  interface CaptionProps extends Pick<SideMenuItemProps, '_isSubMenu' | 'caption' | '_isBackButton' | '_isDropdown' | '_isAvatar' | 'subCaption'> {
4
4
  hasIcon: boolean;
5
5
  isMultiline: boolean;
@@ -1,10 +1,10 @@
1
1
  import { __read } from "tslib";
2
2
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
3
3
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
4
- import { jsStyles } from './Caption.styles';
5
4
  import React, { forwardRef, useContext, useEffect, useRef, useState } from 'react';
6
5
  import { SideMenuContext } from '../../SideMenuContext';
7
6
  import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
7
+ import { jsStyles } from './Caption.styles';
8
8
  var getTruncatedUserName = function (caption, visibleWidth, fullWidth) {
9
9
  var _a = __read(caption.split(' '), 2), firstName = _a[0], lastName = _a[1];
10
10
  if (visibleWidth < fullWidth && lastName) {
@@ -45,6 +45,7 @@ export var Caption = forwardRef(function (_a, ref) {
45
45
  }, [isBeingTransitioned, caption]);
46
46
  var isAvatarCaptionSingleWord = function (userName, _isAvatar) {
47
47
  if (userName === void 0) { userName = ''; }
48
+ if (_isAvatar === void 0) { _isAvatar = false; }
48
49
  return _isAvatar && userName.split(' ').length === 1;
49
50
  };
50
51
  var Component = isCaptionPlainText ? 'p' : 'div';
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
2
2
  export declare const sideMenuMultilineCaptionPaddingTop = "4px";
3
3
  export declare const sideMenuCaptionMarginRight = "8px";
4
4
  export declare const jsStyles: {
@@ -1,6 +1,6 @@
1
- import { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
1
+ import type { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
2
2
  interface IconProps extends Pick<SideMenuItemProps, '_isSubMenu' | 'icon' | '_isBackButton' | '_isAvatar' | 'disabled'> {
3
3
  isMultiline: boolean;
4
4
  }
5
- export declare const Icon: ({ icon, _isSubMenu, isMultiline, _isBackButton, _isAvatar, disabled }: IconProps) => JSX.Element;
5
+ export declare const Icon: ({ icon, _isSubMenu, isMultiline, _isBackButton, disabled }: IconProps) => JSX.Element;
6
6
  export {};
@@ -1,10 +1,10 @@
1
1
  import React, { useContext } from 'react';
2
2
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
3
3
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
4
- import { jsStyles } from './Icon.styles';
5
4
  import { SideMenuContext } from '../../SideMenuContext';
6
5
  import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
7
6
  import { isKonturIcon } from '../../../lib/utils/scripts';
7
+ import { jsStyles } from './Icon.styles';
8
8
  var getIconSize = function (theme, _isSubMenu, _isBackButton) {
9
9
  if (!_isSubMenu) {
10
10
  return parseInt(theme.sideMenuIconSize);
@@ -15,7 +15,7 @@ var getIconSize = function (theme, _isSubMenu, _isBackButton) {
15
15
  };
16
16
  export var Icon = function (_a) {
17
17
  var _b;
18
- var icon = _a.icon, _isSubMenu = _a._isSubMenu, isMultiline = _a.isMultiline, _c = _a._isBackButton, _isBackButton = _c === void 0 ? false : _c, _isAvatar = _a._isAvatar, disabled = _a.disabled;
18
+ var icon = _a.icon, _isSubMenu = _a._isSubMenu, isMultiline = _a.isMultiline, _c = _a._isBackButton, _isBackButton = _c === void 0 ? false : _c, disabled = _a.disabled;
19
19
  var context = useContext(SideMenuContext);
20
20
  var isSeparatedMenu = context.isSeparatedMenu, size = context.size;
21
21
  var theme = getSideMenuTheme(useContext(ThemeContext));
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootMultiline(): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
2
+ import type { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
3
3
  declare const ItemContentWithStaticFields: React.ForwardRefExoticComponent<SideMenuItemProps & {
4
4
  isNestedSubMenu?: boolean | undefined;
5
5
  } & React.RefAttributes<HTMLDivElement>> & {
@@ -1,13 +1,13 @@
1
1
  import { __read } from "tslib";
2
2
  import React, { forwardRef, useContext, useEffect, useRef, useState } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
- import { jsStyles } from './ItemContent.styles';
4
+ import { ThemeContext } from '@skbkontur/react-ui';
5
5
  import { SideMenuContext } from '../../SideMenuContext';
6
+ import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
7
+ import { jsStyles } from './ItemContent.styles';
6
8
  import { Icon } from './Icon';
7
9
  import { Caption } from './Caption';
8
10
  import { Marker } from './Marker';
9
- import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
10
- import { ThemeContext } from '@skbkontur/react-ui';
11
11
  var getCaptionLineHeight = function (theme, isTouchScreen, _isSubMenu, size) {
12
12
  if (isTouchScreen) {
13
13
  if (_isSubMenu) {
@@ -37,12 +37,14 @@ var ItemContent = forwardRef(function (_a, ref) {
37
37
  setIsMultiline(true);
38
38
  return;
39
39
  }
40
- if (!textRef.current || _isBackButton || _isDropdown)
40
+ if (!textRef.current || _isBackButton || _isDropdown) {
41
41
  return;
42
+ }
42
43
  var captionLineHeight = getCaptionLineHeight(theme, context.isTouchScreen, _isSubMenu, size);
43
44
  var isMultiline = parseInt(captionLineHeight) < textRef.current.offsetHeight;
44
- if (isMultiline)
45
+ if (isMultiline) {
45
46
  setIsMultiline(true);
47
+ }
46
48
  }, [caption, context.isBeingTransitioned, (_d = context.navigation) === null || _d === void 0 ? void 0 : _d.activeMenuItem]);
47
49
  return (React.createElement("div", { className: cx((_b = {},
48
50
  _b[jsStyles.root(theme)] = true,
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  largeRoot(t: SideMenuTheme): string;
@@ -1,4 +1,4 @@
1
- import { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
1
+ import type { SideMenuItemProps } from '../../SideMenuItem/SideMenuItem';
2
2
  interface MarkerProps extends Pick<SideMenuItemProps, 'marker' | '_isSubMenu' | 'disabled'> {
3
3
  isMultiline: boolean;
4
4
  isMinimized?: boolean;
@@ -1,8 +1,8 @@
1
1
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
2
- import { jsStyles } from './Marker.styles';
3
2
  import React, { useContext } from 'react';
4
- import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
5
3
  import { ThemeContext } from '@skbkontur/react-ui';
4
+ import { getSideMenuTheme } from '../../../lib/theming/ThemeHelpers';
5
+ import { jsStyles } from './Marker.styles';
6
6
  export var Marker = function (_a) {
7
7
  var _b;
8
8
  var isMultiline = _a.isMultiline, marker = _a.marker, _isSubMenu = _a._isSubMenu, disabled = _a.disabled, isMinimized = _a.isMinimized;
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootEmpty(t: SideMenuTheme): string;
@@ -1,10 +1,10 @@
1
1
  import React, { forwardRef, useContext } from 'react';
2
- import { jsStyles } from './NestedMenu.styles';
3
- import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
4
2
  import { ThemeContext } from '@skbkontur/react-ui';
5
- import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
6
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
+ import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
5
+ import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
7
6
  import { SideMenuContext } from '../SideMenuContext';
7
+ import { jsStyles } from './NestedMenu.styles';
8
8
  /**
9
9
  * Вложенное подменю
10
10
  *
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  };
@@ -1,11 +1,11 @@
1
1
  import React, { forwardRef, useContext } from 'react';
2
2
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
3
- import { jsStyles } from './RightBorder.styles';
4
- import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
5
3
  import { Hint, ThemeContext } from '@skbkontur/react-ui';
4
+ import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
6
5
  import { useMemoBorderIcon } from '../../hooks/useMemoIcon';
7
6
  import { SideMenuContext } from '../SideMenuContext';
8
7
  import { SideMenuDataTids } from '../../SideMenuDataTids';
8
+ import { jsStyles } from './RightBorder.styles';
9
9
  /**
10
10
  * Элемент интерактивной правой границы
11
11
  *
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const jsStyles: {
3
3
  root(t: SideMenuTheme): string;
4
4
  rootWithButton(): string;
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonClickableElementProps } from './ClickableElement';
2
+ import type { CommonClickableElementProps } from './ClickableElement';
3
3
  interface SeparatedSubMenuProps extends Pick<CommonClickableElementProps, 'caption'> {
4
4
  children?: React.ReactNode;
5
5
  htmlId: string;
@@ -3,15 +3,15 @@ import React, { forwardRef, useContext, useEffect, useRef } from 'react';
3
3
  import ReactDOM from 'react-dom';
4
4
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
5
5
  import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
6
+ import { ScrollContainer } from '@skbkontur/react-ui';
7
+ import { isIE11 } from '@skbkontur/react-ui/lib/client';
6
8
  import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
7
- import { customStyles, jsStyles } from './SeparatedSubMenu.styles';
8
9
  import { SideMenuContext } from '../SideMenuContext';
9
- import { BackButton } from './BackButton';
10
10
  import { SideMenuDataTids } from '../../SideMenuDataTids';
11
- import { ScrollContainer } from '@skbkontur/react-ui';
12
11
  import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
13
- import { isIE11 } from '@skbkontur/react-ui/lib/client';
14
12
  import { navigationAttributeForSeparatedMenu } from '../Navigation';
13
+ import { BackButton } from './BackButton';
14
+ import { customStyles, jsStyles } from './SeparatedSubMenu.styles';
15
15
  /**
16
16
  * Отдельностоящее подменю
17
17
  *
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const customStyles: {
3
3
  rootForMobiles(headerHeight?: number): string;
4
4
  };
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { SideMenuHeaderProps } from '../SideMenuHeader/SideMenuHeader';
2
+ import type { SideMenuHeaderProps } from '../SideMenuHeader/SideMenuHeader';
3
3
  declare const SideMenuLogotypeWithStaticFields: React.ForwardRefExoticComponent<SideMenuHeaderProps & React.RefAttributes<HTMLDivElement>> & {
4
4
  __KONTUR_REACT_UI__: string;
5
5
  };
@@ -1,12 +1,12 @@
1
1
  import { __assign, __read, __rest } from "tslib";
2
2
  import React, { forwardRef, useContext, useEffect, useRef, useState } from 'react';
3
3
  import { Logotype } from '@skbkontur/react-ui-addons/components/Logotype';
4
- import { jsStyles, sideMenuLogotypeIconSize } from './SideMenuLogotype.styles';
5
- import { SideMenuContext } from '../SideMenuContext';
6
- import { Burger } from './Burger';
7
4
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
8
- import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
9
5
  import { ThemeContext } from '@skbkontur/react-ui';
6
+ import { SideMenuContext } from '../SideMenuContext';
7
+ import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
8
+ import { jsStyles, sideMenuLogotypeIconSize } from './SideMenuLogotype.styles';
9
+ import { Burger } from './Burger';
10
10
  var changeCamelCaseToKebabCase = function (str) {
11
11
  return str
12
12
  .split('')
@@ -1,4 +1,4 @@
1
- import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
1
+ import type { SideMenuTheme } from '../../lib/theming/ThemeTypes';
2
2
  export declare const sideMenuLogotypeIconSize = "32px";
3
3
  export declare const sideMenuLogotypeGapBetweenIconAndLogo = "50px";
4
4
  export declare const jsStyles: {
@@ -1,5 +1,5 @@
1
1
  import React from 'react';
2
- import { CommonClickableElementProps } from './ClickableElement';
2
+ import type { CommonClickableElementProps } from './ClickableElement';
3
3
  interface SubMenuProps extends Pick<CommonClickableElementProps, 'caption'> {
4
4
  children?: React.ReactNode;
5
5
  isOpened?: boolean;
@@ -1,8 +1,8 @@
1
1
  import React, { forwardRef, useContext } from 'react';
2
+ import { SideMenuContext } from '../SideMenuContext';
2
3
  import { SeparatedSubMenu } from './SeparatedSubMenu';
3
4
  import { InnerSubMenu } from './InnerSubMenu';
4
5
  import { NestedMenu } from './NestedMenu';
5
- import { SideMenuContext } from '../SideMenuContext';
6
6
  /**
7
7
  * Подменю
8
8
  *