@skbkontur/side-menu 0.4.0 → 0.4.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/README.md +13 -6
  3. package/hooks/UseMemoIcon.d.ts +2 -0
  4. package/hooks/UseMemoIcon.js +14 -0
  5. package/hooks/useActiveState.d.ts +1 -0
  6. package/hooks/useActiveState.js +12 -0
  7. package/hooks/useOpenedState.d.ts +2 -0
  8. package/hooks/useOpenedState.js +11 -0
  9. package/hooks/useOpenedSubElementState.d.ts +1 -0
  10. package/hooks/useOpenedSubElementState.js +12 -0
  11. package/index.d.ts +13 -11
  12. package/index.js +13 -11
  13. package/package.json +2 -2
  14. package/src/SideMenu/SideMenu.d.ts +42 -0
  15. package/src/{SideMenu.js → SideMenu/SideMenu.js} +33 -27
  16. package/src/SideMenu/SideMenu.md +0 -0
  17. package/src/SideMenu.styles.d.ts +3 -1
  18. package/src/SideMenu.styles.js +60 -54
  19. package/src/SideMenuAvatar/SideMenuAvatar.d.ts +13 -0
  20. package/src/{SideMenuAvatar.js → SideMenuAvatar/SideMenuAvatar.js} +9 -10
  21. package/src/SideMenuAvatar/SideMenuAvatar.md +0 -0
  22. package/src/SideMenuBody/SideMenuBody.d.ts +13 -0
  23. package/src/{SideMenuBody.js → SideMenuBody/SideMenuBody.js} +10 -11
  24. package/src/SideMenuBody/SideMenuBody.md +0 -0
  25. package/src/SideMenuDivider/SideMenuDivider.d.ts +10 -0
  26. package/src/{SideMenuDivider.js → SideMenuDivider/SideMenuDivider.js} +8 -9
  27. package/src/SideMenuDivider/SideMenuDivider.md +0 -0
  28. package/src/{SideMenuDropdown.d.ts → SideMenuDropdown/SideMenuDropdown.d.ts} +6 -2
  29. package/src/{SideMenuDropdown.js → SideMenuDropdown/SideMenuDropdown.js} +11 -12
  30. package/src/SideMenuDropdown/SideMenuDropdown.md +0 -0
  31. package/src/{SideMenuFooter.d.ts → SideMenuFooter/SideMenuFooter.d.ts} +6 -2
  32. package/src/{SideMenuFooter.js → SideMenuFooter/SideMenuFooter.js} +10 -11
  33. package/src/SideMenuFooter/SideMenuFooter.md +0 -0
  34. package/src/{SideMenuHeader.d.ts → SideMenuHeader/SideMenuHeader.d.ts} +6 -2
  35. package/src/{SideMenuHeader.js → SideMenuHeader/SideMenuHeader.js} +11 -12
  36. package/src/SideMenuHeader/SideMenuHeader.md +0 -0
  37. package/src/SideMenuItem/SideMenuItem.d.ts +14 -0
  38. package/src/SideMenuItem/SideMenuItem.js +15 -0
  39. package/src/SideMenuItem/SideMenuItem.md +0 -0
  40. package/src/SideMenuLink/SideMenuLink.d.ts +16 -0
  41. package/src/SideMenuLink/SideMenuLink.js +21 -0
  42. package/src/SideMenuLink/SideMenuLink.md +0 -0
  43. package/src/SideMenuOrganisations/SideMenuOrganisations.d.ts +10 -0
  44. package/src/{SideMenuOrganisations.js → SideMenuOrganisations/SideMenuOrganisations.js} +7 -8
  45. package/src/SideMenuOrganisations/SideMenuOrganisations.md +0 -0
  46. package/src/SideMenuSubItem/SideMenuSubItem.d.ts +12 -0
  47. package/src/SideMenuSubItem/SideMenuSubItem.js +27 -0
  48. package/src/SideMenuSubItem/SideMenuSubItem.md +0 -0
  49. package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.d.ts +13 -0
  50. package/src/{SideMenuSubItemHeader.js → SideMenuSubItemHeader/SideMenuSubItemHeader.js} +10 -11
  51. package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.md +0 -0
  52. package/src/SideMenuSubLink/SideMenuSubLink.d.ts +16 -0
  53. package/src/SideMenuSubLink/SideMenuSubLink.js +31 -0
  54. package/src/SideMenuSubLink/SideMenuSubLink.md +0 -0
  55. package/src/internal/ClickableElement.d.ts +25 -0
  56. package/src/internal/ClickableElement.js +63 -0
  57. package/src/{SideMenuBodyChildren.d.ts → internal/InnerBody.d.ts} +2 -2
  58. package/src/{SideMenuBodyChildren.js → internal/InnerBody.js} +13 -12
  59. package/src/{InnerSubMenu.d.ts → internal/InnerSubMenu.d.ts} +0 -0
  60. package/src/{InnerSubMenu.js → internal/InnerSubMenu.js} +3 -1
  61. package/src/internal/ItemContent/Avatar.d.ts +5 -0
  62. package/src/internal/ItemContent/Avatar.js +12 -0
  63. package/src/internal/ItemContent/Caption.d.ts +9 -0
  64. package/src/internal/ItemContent/Caption.js +19 -0
  65. package/src/internal/ItemContent/Icon.d.ts +8 -0
  66. package/src/internal/ItemContent/Icon.js +20 -0
  67. package/src/internal/ItemContent/ItemContent.d.ts +7 -0
  68. package/src/internal/ItemContent/ItemContent.js +39 -0
  69. package/src/internal/ItemContent/Marker.d.ts +6 -0
  70. package/src/internal/ItemContent/Marker.js +11 -0
  71. package/src/internal/NestedMenu.d.ts +9 -0
  72. package/src/internal/NestedMenu.js +27 -0
  73. package/src/{RightBorder.d.ts → internal/RightBorder.d.ts} +0 -0
  74. package/src/{RightBorder.js → internal/RightBorder.js} +2 -2
  75. package/src/{SeparatedSubMenu.d.ts → internal/SeparatedSubMenu.d.ts} +0 -0
  76. package/src/{SeparatedSubMenu.js → internal/SeparatedSubMenu.js} +6 -4
  77. package/src/{SideMenuLogotype.d.ts → internal/SideMenuLogotype.d.ts} +1 -1
  78. package/src/{SideMenuLogotype.js → internal/SideMenuLogotype.js} +2 -2
  79. package/src/internal/SubMenu.d.ts +13 -0
  80. package/src/internal/SubMenu.js +21 -0
  81. package/utils/scripts.d.ts +4 -2
  82. package/utils/scripts.js +18 -14
  83. package/src/SideMenu.d.ts +0 -38
  84. package/src/SideMenuAvatar.d.ts +0 -9
  85. package/src/SideMenuBody.d.ts +0 -9
  86. package/src/SideMenuDivider.d.ts +0 -6
  87. package/src/SideMenuItem.d.ts +0 -19
  88. package/src/SideMenuItem.js +0 -126
  89. package/src/SideMenuOrganisations.d.ts +0 -6
  90. package/src/SideMenuSubItem.d.ts +0 -8
  91. package/src/SideMenuSubItem.js +0 -58
  92. package/src/SideMenuSubItemHeader.d.ts +0 -9
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
+ ## [0.4.2](https://git.skbkontur.ru/ui/ui-parking/compare/@skbkontur/side-menu@0.4.1...@skbkontur/side-menu@0.4.2) (2022-12-22)
7
+
8
+ **Note:** Version bump only for package @skbkontur/side-menu
9
+
10
+
11
+
12
+
13
+
14
+ ## [0.4.1](https://git.skbkontur.ru/ui/ui-parking/compare/@skbkontur/side-menu@0.4.0...@skbkontur/side-menu@0.4.1) (2022-12-20)
15
+
16
+ **Note:** Version bump only for package @skbkontur/side-menu
17
+
18
+
19
+
20
+
21
+
6
22
  # [0.4.0](https://git.skbkontur.ru/ui/ui-parking/compare/@skbkontur/side-menu@0.3.2...@skbkontur/side-menu@0.4.0) (2022-11-30)
7
23
 
8
24
 
package/README.md CHANGED
@@ -15,11 +15,12 @@ import {
15
15
  BookmarkIcon24Regular,
16
16
  StackHDownIcon24Regular,
17
17
  SettingsGearIcon24Regular,
18
- FaceAHappyIcon24Regular
18
+ FaceAHappyIcon24Regular,
19
+ AttachLinkIcon,
19
20
  } from '@skbkontur/icons';
20
21
 
21
22
  <div style={{height: '600px'}}>
22
- <SideMenu>
23
+ <SideMenu disableSwipe={false}>
23
24
  <SideMenu.Header konturLogo={<Kontur/>} productLogo={<Ofd/>}/>
24
25
  <SideMenu.Body>
25
26
  <SideMenu.Item icon={<DocTextIcon24Regular/>} caption={'Документы к подписанию'} marker={'новое'}>
@@ -31,6 +32,7 @@ import {
31
32
  <SideMenu.SubItem caption={'Внутренние'}/>
32
33
  <SideMenu.SubItem caption={'Черновики'}/>
33
34
  <SideMenu.SubItem caption={'Удаленные'}/>
35
+ <SideMenu.SubLink caption={'Cсылка в подменю'} href={'https://www.google.com/search?q=test'} target={'_blank'}/>
34
36
  <SideMenu.SubItemHeader>Согласованные</SideMenu.SubItemHeader>
35
37
  <SideMenu.SubItem caption={'Требуют обработки'}/>
36
38
  <SideMenu.SubItem caption={'Обработанные'}/>
@@ -45,6 +47,7 @@ import {
45
47
  </SideMenu.Item>
46
48
  <SideMenu.Item icon={<LightbulbIcon24Regular/>} caption={'Справочная'}/>
47
49
  <SideMenu.Divider/>
50
+ <SideMenu.Link href={'https://google.com'} icon={<AttachLinkIcon />} caption={'Ссылка'} target={'_blank'}/>
48
51
  <SideMenu.Item icon={<BookOpenTextIcon24Regular/>} caption={'Еще раздел'}/>
49
52
  <SideMenu.Item icon={<BookmarkIcon24Regular/>} caption={'Отчетность'}/>
50
53
  </SideMenu.Body>
@@ -118,7 +121,7 @@ const renderModal = () => {
118
121
  }
119
122
 
120
123
  <div style={{height: '600px', width: '100%'}}>
121
- <SideMenu isSeparatedMenu={true} disableSwipe={true}>
124
+ <SideMenu isSeparatedMenu={true}>
122
125
  <SideMenu.Header konturLogo={<Kontur/>} productLogo={<Buhgalteria/>}/>
123
126
  <SideMenu.Body>
124
127
  <SideMenu.Item icon={<DocTextIcon24Regular/>} caption={'Документы'} marker={'новое'}>
@@ -188,7 +191,8 @@ const renderModal = () => {
188
191
  </div>
189
192
  ```
190
193
 
191
- SideMenu с ручным управлением
194
+ SideMenu с ручным управлением.
195
+ Для `SideMenu.Link` при отсутствии `id` будет использован `href`
192
196
 
193
197
  ```jsx harmony
194
198
  import { useState } from 'react';
@@ -204,7 +208,8 @@ import {
204
208
  BookmarkIcon24Regular,
205
209
  StackHDownIcon24Regular,
206
210
  SettingsGearIcon24Regular,
207
- FaceAHappyIcon24Regular
211
+ FaceAHappyIcon24Regular,
212
+ AttachLinkIcon24Regular
208
213
  } from '@skbkontur/icons';
209
214
 
210
215
 
@@ -230,10 +235,11 @@ const items = [
230
235
  "400",
231
236
  "500",
232
237
  "600",
238
+ "https://google.com"
233
239
  ];
234
240
 
235
241
  <div style={{height: '600px', display: 'flex'}}>
236
- <SideMenu value={activeItem} onValueChange={setActiveItem}>
242
+ <SideMenu value={activeItem} onValueChange={setActiveItem} disableSwipe={false}>
237
243
  <SideMenu.Header konturLogo={<Kontur/>} productLogo={<Ofd/>}/>
238
244
  <SideMenu.Body>
239
245
  <SideMenu.Item icon={<DocTextIcon24Regular/>} caption={'Документы к подписанию id=100'} marker={'новое'} id={'100'}>
@@ -261,6 +267,7 @@ const items = [
261
267
  <SideMenu.Divider/>
262
268
  <SideMenu.Item icon={<BookOpenTextIcon24Regular/>} caption={'Еще раздел id=500'} id={'500'}/>
263
269
  <SideMenu.Item icon={<BookmarkIcon24Regular/>} caption={'Отчетность id=600'} id={'600'}/>
270
+ <SideMenu.Link href={'https://google.com'} icon={<AttachLinkIcon24Regular />} caption={'Ссылка'} target={'_blank'} />
264
271
  </SideMenu.Body>
265
272
  <SideMenu.Footer>
266
273
  <SideMenu.Dropdown icon={<StackHDownIcon24Regular/>}>
@@ -0,0 +1,2 @@
1
+ import React from 'react';
2
+ export declare const useMemoIcon: (children: React.ReactNode, isOpened: boolean) => JSX.Element | undefined;
@@ -0,0 +1,14 @@
1
+ import React, { useMemo } from 'react';
2
+ import { ArrowCDownIcon16Regular, ArrowCRightIcon16Regular } from '@skbkontur/icons';
3
+ export var useMemoIcon = function (children, isOpened) {
4
+ return useMemo(function () {
5
+ if (children) {
6
+ if (isOpened) {
7
+ return React.createElement(ArrowCDownIcon16Regular, null);
8
+ }
9
+ else {
10
+ return React.createElement(ArrowCRightIcon16Regular, null);
11
+ }
12
+ }
13
+ }, [isOpened, children]);
14
+ };
@@ -0,0 +1 @@
1
+ export declare const useActiveState: (id?: string | undefined, href?: string | undefined, generatedId?: string | undefined, activeMenuItem?: string | null | undefined) => boolean;
@@ -0,0 +1,12 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { isIdActive } from '../utils/scripts';
3
+ export var useActiveState = function (id, href, generatedId, activeMenuItem) {
4
+ var _a = useState(false), isActive = _a[0], setIsActive = _a[1];
5
+ useEffect(function () {
6
+ var hrefIsActive = isIdActive(href, activeMenuItem);
7
+ var idIsActive = isIdActive(id, activeMenuItem);
8
+ var generatedIdIsActive = isIdActive(generatedId, activeMenuItem);
9
+ setIsActive(hrefIsActive || idIsActive || generatedIdIsActive);
10
+ }, [activeMenuItem]);
11
+ return isActive;
12
+ };
@@ -0,0 +1,2 @@
1
+ import React from 'react';
2
+ export declare const useOpenedState: (id?: string | undefined, generatedId?: string | undefined, openedParents?: string[] | undefined, isActive?: boolean, children?: React.ReactNode) => boolean;
@@ -0,0 +1,11 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { isOpenedParents } from '../utils/scripts';
3
+ export var useOpenedState = function (id, generatedId, openedParents, isActive, children) {
4
+ if (isActive === void 0) { isActive = false; }
5
+ var _a = useState(false), isOpened = _a[0], setIsOpened = _a[1];
6
+ useEffect(function () {
7
+ var isOpenedParent = isOpenedParents(id, generatedId, openedParents);
8
+ setIsOpened(!!children && (isOpenedParent || isActive));
9
+ }, [openedParents === null || openedParents === void 0 ? void 0 : openedParents.toString(), isActive]);
10
+ return isOpened;
11
+ };
@@ -0,0 +1 @@
1
+ export declare const useOpenedSubElementState: (id?: string | undefined, generatedId?: string | undefined, openedParents?: string[] | undefined, activeMenuItem?: string | null | undefined) => boolean;
@@ -0,0 +1,12 @@
1
+ import { useEffect, useState } from 'react';
2
+ import { isIdActive, isOpenedParents } from '../utils/scripts';
3
+ export var useOpenedSubElementState = function (id, generatedId, openedParents, activeMenuItem) {
4
+ var _a = useState(false), isOpened = _a[0], setIsOpened = _a[1];
5
+ useEffect(function () {
6
+ var isOpenedParent = isOpenedParents(id, generatedId, openedParents);
7
+ var idIsActive = isIdActive(id, activeMenuItem);
8
+ var generatedIdIsActive = isIdActive(generatedId, activeMenuItem);
9
+ setIsOpened(isOpenedParent || isOpened || idIsActive || generatedIdIsActive);
10
+ }, [openedParents === null || openedParents === void 0 ? void 0 : openedParents.toString()]);
11
+ return isOpened;
12
+ };
package/index.d.ts CHANGED
@@ -1,11 +1,13 @@
1
- export * from './src/SideMenu';
2
- export * from './src/SideMenuOrganisations';
3
- export * from './src/SideMenuBody';
4
- export * from './src/SideMenuFooter';
5
- export * from './src/SideMenuHeader';
6
- export * from './src/SideMenuItem';
7
- export * from './src/SideMenuAvatar';
8
- export * from './src/SideMenuSubItem';
9
- export * from './src/SideMenuDivider';
10
- export * from './src/SideMenuSubItemHeader';
11
- export * from './src/SideMenuDropdown';
1
+ export * from './src/SideMenu/SideMenu';
2
+ export * from './src/SideMenuOrganisations/SideMenuOrganisations';
3
+ export * from './src/SideMenuBody/SideMenuBody';
4
+ export * from './src/SideMenuFooter/SideMenuFooter';
5
+ export * from './src/SideMenuHeader/SideMenuHeader';
6
+ export * from './src/SideMenuItem/SideMenuItem';
7
+ export * from './src/SideMenuAvatar/SideMenuAvatar';
8
+ export * from './src/SideMenuSubItem/SideMenuSubItem';
9
+ export * from './src/SideMenuDivider/SideMenuDivider';
10
+ export * from './src/SideMenuSubItemHeader/SideMenuSubItemHeader';
11
+ export * from './src/SideMenuDropdown/SideMenuDropdown';
12
+ export * from './src/SideMenuLink/SideMenuLink';
13
+ export * from './src/SideMenuSubLink/SideMenuSubLink';
package/index.js CHANGED
@@ -1,11 +1,13 @@
1
- export * from './src/SideMenu';
2
- export * from './src/SideMenuOrganisations';
3
- export * from './src/SideMenuBody';
4
- export * from './src/SideMenuFooter';
5
- export * from './src/SideMenuHeader';
6
- export * from './src/SideMenuItem';
7
- export * from './src/SideMenuAvatar';
8
- export * from './src/SideMenuSubItem';
9
- export * from './src/SideMenuDivider';
10
- export * from './src/SideMenuSubItemHeader';
11
- export * from './src/SideMenuDropdown';
1
+ export * from './src/SideMenu/SideMenu';
2
+ export * from './src/SideMenuOrganisations/SideMenuOrganisations';
3
+ export * from './src/SideMenuBody/SideMenuBody';
4
+ export * from './src/SideMenuFooter/SideMenuFooter';
5
+ export * from './src/SideMenuHeader/SideMenuHeader';
6
+ export * from './src/SideMenuItem/SideMenuItem';
7
+ export * from './src/SideMenuAvatar/SideMenuAvatar';
8
+ export * from './src/SideMenuSubItem/SideMenuSubItem';
9
+ export * from './src/SideMenuDivider/SideMenuDivider';
10
+ export * from './src/SideMenuSubItemHeader/SideMenuSubItemHeader';
11
+ export * from './src/SideMenuDropdown/SideMenuDropdown';
12
+ export * from './src/SideMenuLink/SideMenuLink';
13
+ export * from './src/SideMenuSubLink/SideMenuSubLink';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@skbkontur/side-menu",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "publishConfig": {
5
5
  "access": "public",
6
6
  "registry": "https://registry.npmjs.org/"
@@ -23,7 +23,7 @@
23
23
  "@skbkontur/react-ui": "4.0.0"
24
24
  },
25
25
  "dependencies": {
26
- "@skbkontur/icons": "0.12.0",
26
+ "@skbkontur/icons": "^0.12.1",
27
27
  "tslib": "^1"
28
28
  }
29
29
  }
@@ -0,0 +1,42 @@
1
+ import React from 'react';
2
+ import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
3
+ import { SideMenuOrganisations } from '../SideMenuOrganisations/SideMenuOrganisations';
4
+ import { SideMenuBody } from '../SideMenuBody/SideMenuBody';
5
+ import { SideMenuFooter } from '../SideMenuFooter/SideMenuFooter';
6
+ import { SideMenuHeader } from '../SideMenuHeader/SideMenuHeader';
7
+ import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
8
+ import { SideMenuAvatar } from '../SideMenuAvatar/SideMenuAvatar';
9
+ import { SideMenuSubItem } from '../SideMenuSubItem/SideMenuSubItem';
10
+ import { SideMenuDivider } from '../SideMenuDivider/SideMenuDivider';
11
+ import { SideMenuSubItemHeader } from '../SideMenuSubItemHeader/SideMenuSubItemHeader';
12
+ import { SideMenuDropdown } from '../SideMenuDropdown/SideMenuDropdown';
13
+ import { SideMenuLink } from '../SideMenuLink/SideMenuLink';
14
+ import { SideMenuSubLink } from '../SideMenuSubLink/SideMenuSubLink';
15
+ export interface SideMenuProps extends CommonProps {
16
+ children?: React.ReactNode;
17
+ size?: 'small' | 'large';
18
+ isSeparatedMenu?: boolean;
19
+ disableSwipe?: boolean;
20
+ value?: string;
21
+ onValueChange?: (value: string) => void;
22
+ }
23
+ interface SubComponents {
24
+ Body: typeof SideMenuBody;
25
+ Footer: typeof SideMenuFooter;
26
+ Header: typeof SideMenuHeader;
27
+ Item: typeof SideMenuItem;
28
+ SubItem: typeof SideMenuSubItem;
29
+ SubItemHeader: typeof SideMenuSubItemHeader;
30
+ Avatar: typeof SideMenuAvatar;
31
+ Organisations: typeof SideMenuOrganisations;
32
+ Divider: typeof SideMenuDivider;
33
+ Dropdown: typeof SideMenuDropdown;
34
+ Link: typeof SideMenuLink;
35
+ SubLink: typeof SideMenuSubLink;
36
+ __KONTUR_REACT_UI__: string;
37
+ }
38
+ export declare const SideMenuDataTids: {
39
+ root: string;
40
+ };
41
+ export declare const SideMenu: React.ForwardRefExoticComponent<SideMenuProps & React.RefAttributes<HTMLElement>> & SubComponents;
42
+ export {};
@@ -2,34 +2,36 @@ import { __assign, __rest } from "tslib";
2
2
  import React, { forwardRef, useEffect, useState } from 'react';
3
3
  import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
4
4
  import { isIE11, isSafari } from '@skbkontur/react-ui/lib/client';
5
- import { jsStyles } from './SideMenu.styles';
6
- import { SideMenuOrganisations } from './SideMenuOrganisations';
7
- import { SideMenuContext } from './SideMenuContext';
8
- import { SideMenuBody } from './SideMenuBody';
9
- import { SideMenuFooter } from './SideMenuFooter';
10
- import { SideMenuHeader } from './SideMenuHeader';
11
- import { SideMenuItem } from './SideMenuItem';
12
- import { SideMenuAvatar } from './SideMenuAvatar';
13
- import { SideMenuSubItem } from './SideMenuSubItem';
14
- import { SideMenuDivider } from './SideMenuDivider';
15
- import { SideMenuSubItemHeader } from './SideMenuSubItemHeader';
16
- import { RightBorder } from './RightBorder';
17
- import { SideMenuDropdown } from './SideMenuDropdown';
5
+ import { jsStyles } from '../SideMenu.styles';
6
+ import { SideMenuOrganisations } from '../SideMenuOrganisations/SideMenuOrganisations';
7
+ import { SideMenuContext } from '../SideMenuContext';
8
+ import { SideMenuBody } from '../SideMenuBody/SideMenuBody';
9
+ import { SideMenuFooter } from '../SideMenuFooter/SideMenuFooter';
10
+ import { SideMenuHeader } from '../SideMenuHeader/SideMenuHeader';
11
+ import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
12
+ import { SideMenuAvatar } from '../SideMenuAvatar/SideMenuAvatar';
13
+ import { SideMenuSubItem } from '../SideMenuSubItem/SideMenuSubItem';
14
+ import { SideMenuDivider } from '../SideMenuDivider/SideMenuDivider';
15
+ import { SideMenuSubItemHeader } from '../SideMenuSubItemHeader/SideMenuSubItemHeader';
16
+ import { RightBorder } from '../internal/RightBorder';
17
+ import { SideMenuDropdown } from '../SideMenuDropdown/SideMenuDropdown';
18
+ import { SideMenuLink } from '../SideMenuLink/SideMenuLink';
19
+ import { SideMenuSubLink } from '../SideMenuSubLink/SideMenuSubLink';
18
20
  export var SideMenuDataTids = {
19
21
  root: 'SideMenu__root',
20
22
  };
21
- var SideMenu = forwardRef(function (_a, ref) {
22
- var _b, _c;
23
- var children = _a.children, value = _a.value, onValueChange = _a.onValueChange, _d = _a.size, size = _d === void 0 ? 'small' : _d, _e = _a.isSeparatedMenu, isSeparatedMenu = _e === void 0 ? false : _e, className = _a.className, _f = _a.disableSwipe, disableSwipe = _f === void 0 ? false : _f, rest = __rest(_a, ["children", "value", "onValueChange", "size", "isSeparatedMenu", "className", "disableSwipe"]);
23
+ var SideMenuInner = forwardRef(function (_a, ref) {
24
+ var _b, _c, _d;
25
+ var children = _a.children, value = _a.value, onValueChange = _a.onValueChange, _e = _a.size, size = _e === void 0 ? 'small' : _e, _f = _a.isSeparatedMenu, isSeparatedMenu = _f === void 0 ? false : _f, className = _a.className, _g = _a.disableSwipe, disableSwipe = _g === void 0 ? true : _g, rest = __rest(_a, ["children", "value", "onValueChange", "size", "isSeparatedMenu", "className", "disableSwipe"]);
24
26
  var scrollTimer = null;
25
27
  var transitionTimer = null;
26
28
  var widgetTimer;
27
- var _g = useState(false), isMinimised = _g[0], setIsMinimised = _g[1];
28
- var _h = useState(false), hasScrollBar = _h[0], setHasScrollBar = _h[1];
29
- var _j = useState(false), isTransitioned = _j[0], setIsTransitioned = _j[1];
30
- var _k = useState('#2291ff'), productColor = _k[0], setProductColor = _k[1];
31
- var _l = useState(false), showWidget = _l[0], setShowWidget = _l[1];
32
- var _m = useState(value), activeMenuItem = _m[0], setActiveMenuItem = _m[1];
29
+ var _h = useState(false), isMinimised = _h[0], setIsMinimised = _h[1];
30
+ var _j = useState(false), hasScrollBar = _j[0], setHasScrollBar = _j[1];
31
+ var _k = useState(false), isTransitioned = _k[0], setIsTransitioned = _k[1];
32
+ var _l = useState('#2291ff'), productColor = _l[0], setProductColor = _l[1];
33
+ var _m = useState(false), showWidget = _m[0], setShowWidget = _m[1];
34
+ var _o = useState(value), activeMenuItem = _o[0], setActiveMenuItem = _o[1];
33
35
  useEffect(function () {
34
36
  return function () {
35
37
  if (scrollTimer) {
@@ -101,11 +103,14 @@ var SideMenu = forwardRef(function (_a, ref) {
101
103
  _c[jsStyles.rootSafari()] = isSafari,
102
104
  _c[jsStyles.minimisedRoot()] = isMinimised,
103
105
  _c[jsStyles.rootWithInnerSubMenu()] = !isSeparatedMenu,
104
- _c[jsStyles.rootWithoutScrollBar()] = !hasScrollBar,
105
- _c)), onMouseOver: showMinimisedRoot, onFocus: showMinimisedRoot, onScroll: handleScroll }, children),
106
+ _c)), onMouseOver: showMinimisedRoot, onFocus: showMinimisedRoot, onScroll: handleScroll },
107
+ React.createElement("div", { className: cx((_d = {},
108
+ _d[jsStyles.rootInnerContainer()] = true,
109
+ _d[jsStyles.rootWithoutScrollBar()] = !hasScrollBar,
110
+ _d)) }, children)),
106
111
  !disableSwipe && React.createElement(RightBorder, { setIsMinimised: function (value) { return setIsMinimised(value); } }))));
107
112
  });
108
- SideMenu.displayName = 'SideMenu';
113
+ SideMenuInner.displayName = 'SideMenu';
109
114
  var STATIC_PROPS = {
110
115
  Body: SideMenuBody,
111
116
  Footer: SideMenuFooter,
@@ -116,8 +121,9 @@ var STATIC_PROPS = {
116
121
  Avatar: SideMenuAvatar,
117
122
  Organisations: SideMenuOrganisations,
118
123
  Divider: SideMenuDivider,
124
+ Link: SideMenuLink,
125
+ SubLink: SideMenuSubLink,
119
126
  Dropdown: SideMenuDropdown,
120
127
  __KONTUR_REACT_UI__: 'SideMenu',
121
128
  };
122
- var SideMenuWithStaticFields = Object.assign(SideMenu, STATIC_PROPS);
123
- export { SideMenuWithStaticFields as SideMenu };
129
+ export var SideMenu = Object.assign(SideMenuInner, STATIC_PROPS);
File without changes
@@ -7,6 +7,7 @@ export declare const jsStyles: {
7
7
  rootWithoutScrollBar(): string;
8
8
  minimisedRoot(): string;
9
9
  rootWithInnerSubMenu(): string;
10
+ rootInnerContainer(): string;
10
11
  rootWrapper(): string;
11
12
  rootWrapperIE(): string;
12
13
  resizableRightBorder(): string;
@@ -55,6 +56,7 @@ export declare const jsStyles: {
55
56
  dropdownWrapper(): string;
56
57
  dropdownLabel(): string;
57
58
  dropdownLabelMinimized(): string;
58
- subItemMenu(): string;
59
+ nestedMenu(): string;
59
60
  rightBorder(): string;
61
+ link(): string;
60
62
  };