@skbkontur/side-menu 4.0.6 → 4.0.7
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 +11 -0
- package/README.md +12 -12
- package/package.json +4 -4
- package/src/internal/SideMenuLogotype.js +7 -3
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
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.7](/compare/@skbkontur/side-menu@4.0.6...@skbkontur/side-menu@4.0.7) (2026-07-07)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* **Logotype:** deprecate konturLogo, update docs Logos → CdnLogo 4bc8889
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [4.0.6](/compare/@skbkontur/side-menu@4.0.5...@skbkontur/side-menu@4.0.6) (2026-05-19)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @skbkontur/side-menu
|
package/README.md
CHANGED
|
@@ -21,7 +21,7 @@ const myTheme = ThemeFactory.create<SideMenuThemeIn>({
|
|
|
21
21
|
|
|
22
22
|
```jsx harmony
|
|
23
23
|
import { getKonturAvatarUrl } from '@skbkontur/react-ui-addons';
|
|
24
|
-
import {
|
|
24
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
25
25
|
import { ThemeContext, ThemeFactory, MenuItem, MenuSeparator } from '@skbkontur/react-ui';
|
|
26
26
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
27
27
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
@@ -37,7 +37,7 @@ import { IconAttachLinkRegular24 } from '@skbkontur/icons/IconAttachLinkRegular2
|
|
|
37
37
|
<div style={{height: '600px', position: 'relative'}}>
|
|
38
38
|
<ThemeContext.Provider value={ThemeFactory.create({ sideMenuProductColor: '#64b419' })}>
|
|
39
39
|
<SideMenu>
|
|
40
|
-
<SideMenu.Header
|
|
40
|
+
<SideMenu.Header productLogo={<CdnLogo logo="ofd" />}/>
|
|
41
41
|
<SideMenu.Body>
|
|
42
42
|
<SideMenu.Item icon={<IconDocTextRegular24/>} caption={'Документы к подписанию'} marker={'2'}>
|
|
43
43
|
<SideMenu.SubItem caption={'Входящие'}/>
|
|
@@ -100,7 +100,7 @@ import { IconAttachLinkRegular24 } from '@skbkontur/icons/IconAttachLinkRegular2
|
|
|
100
100
|
|
|
101
101
|
```jsx harmony
|
|
102
102
|
import { getKonturAvatarUrl } from '@skbkontur/react-ui-addons';
|
|
103
|
-
import {
|
|
103
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
104
104
|
import { ThemeContext, ThemeFactory, MenuItem, Modal, Input, MenuSeparator } from '@skbkontur/react-ui';
|
|
105
105
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
106
106
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
@@ -145,7 +145,7 @@ const renderModal = () => {
|
|
|
145
145
|
<div style={{height: '600px', width: '100%', position: 'relative', display: 'flex'}}>
|
|
146
146
|
<ThemeContext.Provider value={ThemeFactory.create({ sideMenuProductColor: '#b750d1' })}>
|
|
147
147
|
<SideMenu isSeparatedMenu={true}>
|
|
148
|
-
<SideMenu.Header
|
|
148
|
+
<SideMenu.Header productLogo={<CdnLogo logo="extern" />} withWidget={false}/>
|
|
149
149
|
<SideMenu.Body>
|
|
150
150
|
<SideMenu.Item icon={<IconDocTextRegular24/>} caption={'Документы'} marker={'2'}>
|
|
151
151
|
<SideMenu.SubItem caption={'Входящие'} marker={'5'}>
|
|
@@ -225,7 +225,7 @@ const renderModal = () => {
|
|
|
225
225
|
```jsx harmony
|
|
226
226
|
import { useState } from 'react';
|
|
227
227
|
import { getKonturAvatarUrl } from '@skbkontur/react-ui-addons';
|
|
228
|
-
import {
|
|
228
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
229
229
|
import { ThemeContext, ThemeFactory, MenuItem, Select, Switcher, MenuSeparator} from '@skbkontur/react-ui';
|
|
230
230
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
231
231
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
@@ -268,7 +268,7 @@ const items = [
|
|
|
268
268
|
<div style={{ height: '600px', display: 'flex', position: 'relative' }}>
|
|
269
269
|
<ThemeContext.Provider value={ThemeFactory.create({ sideMenuProductColor: '#64b419' })}>
|
|
270
270
|
<SideMenu activeItem={activeItem} onActiveItemChange={setActiveItem} isSeparatedMenu={isSeparatedMenu}>
|
|
271
|
-
<SideMenu.Header
|
|
271
|
+
<SideMenu.Header productLogo={<CdnLogo logo="ofd" />} withWidget={false} />
|
|
272
272
|
<SideMenu.Body>
|
|
273
273
|
<SideMenu.Item icon={<IconDocTextRegular24 />} caption={'Документы к подписанию id=100'} marker={'2'} id={'100'}>
|
|
274
274
|
<SideMenu.SubItem caption={'Входящие id=110'} id={'110'} />
|
|
@@ -508,7 +508,7 @@ import { SideMenu } from '@skbkontur/side-menu';
|
|
|
508
508
|
#### Пример кастомизации
|
|
509
509
|
|
|
510
510
|
```jsx harmony
|
|
511
|
-
import {
|
|
511
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
512
512
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
513
513
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
514
514
|
import { IconSettingsGearRegular24 } from '@skbkontur/icons/IconSettingsGearRegular24';
|
|
@@ -517,7 +517,7 @@ import { ThemeContext, ThemeFactory } from '@skbkontur/react-ui';
|
|
|
517
517
|
<div style={{ height: '200px', position: 'relative' }}>
|
|
518
518
|
<ThemeContext.Provider value={ThemeFactory.create({ sideMenuWidth: '300px', sideMenuIconSize: '32px', sideMenuProductColor: '#64b419' })}>
|
|
519
519
|
<SideMenu>
|
|
520
|
-
<SideMenu.Header
|
|
520
|
+
<SideMenu.Header productLogo={<CdnLogo logo="ofd" />} />
|
|
521
521
|
<SideMenu.Body>
|
|
522
522
|
<SideMenu.Item icon={<IconDocTextRegular24 />} caption={'Документы к подписанию'} marker={'2'} />
|
|
523
523
|
</SideMenu.Body>
|
|
@@ -532,7 +532,7 @@ import { ThemeContext, ThemeFactory } from '@skbkontur/react-ui';
|
|
|
532
532
|
#### Пример с использованием пропа `isOpen`
|
|
533
533
|
|
|
534
534
|
```jsx harmony
|
|
535
|
-
import {
|
|
535
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
536
536
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
537
537
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
538
538
|
import { IconSettingsGearRegular24 } from '@skbkontur/icons/IconSettingsGearRegular24';
|
|
@@ -544,7 +544,7 @@ const [isOpen, setIsOpen] = React.useState(true);
|
|
|
544
544
|
<ThemeContext.Provider
|
|
545
545
|
value={ThemeFactory.create({ sideMenuWidth: '300px', sideMenuProductColor: '#64b419' })}>
|
|
546
546
|
<SideMenu isOpen={isOpen} onOpen={() => console.log('onOpen')} onClose={() => console.log('onClose')}>
|
|
547
|
-
<SideMenu.Header
|
|
547
|
+
<SideMenu.Header productLogo={<CdnLogo logo="ofd" />} />
|
|
548
548
|
<SideMenu.Body>
|
|
549
549
|
<SideMenu.Item icon={<IconDocTextRegular24 />} caption={'Документы к подписанию'} />
|
|
550
550
|
</SideMenu.Body>
|
|
@@ -562,7 +562,7 @@ const [isOpen, setIsOpen] = React.useState(true);
|
|
|
562
562
|
#### Пример с использованием пропа `isPinned`
|
|
563
563
|
|
|
564
564
|
```jsx harmony
|
|
565
|
-
import {
|
|
565
|
+
import { CdnLogo } from '@skbkontur/ui-cdn-components';
|
|
566
566
|
import { SideMenu } from '@skbkontur/side-menu';
|
|
567
567
|
import { IconDocTextRegular24 } from '@skbkontur/icons/IconDocTextRegular24';
|
|
568
568
|
import { IconSettingsGearRegular24 } from '@skbkontur/icons/IconSettingsGearRegular24';
|
|
@@ -583,7 +583,7 @@ React.useEffect(() => {
|
|
|
583
583
|
onPinnedValueChange={(isPinned) => {
|
|
584
584
|
localStorage.setItem('sideMenuIsPinned', String(isPinned));
|
|
585
585
|
}}>
|
|
586
|
-
<SideMenu.Header
|
|
586
|
+
<SideMenu.Header productLogo={<CdnLogo logo="ofd" />} />
|
|
587
587
|
<SideMenu.Body>
|
|
588
588
|
<SideMenu.Item icon={<IconDocTextRegular24 />} caption={'Документы к подписанию'} />
|
|
589
589
|
</SideMenu.Body>
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@skbkontur/side-menu",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"author": "Kontur",
|
|
@@ -28,13 +28,13 @@
|
|
|
28
28
|
"@skbkontur/bell-widget-npm-loader": "^0.3.0",
|
|
29
29
|
"@skbkontur/colors": "^2.1.7",
|
|
30
30
|
"@skbkontur/empty-state": "^2.0.2",
|
|
31
|
-
"@skbkontur/icons": "
|
|
32
|
-
"@skbkontur/react-ui-addons": "^6.0.
|
|
31
|
+
"@skbkontur/icons": "^2.0.0",
|
|
32
|
+
"@skbkontur/react-ui-addons": "^6.0.5",
|
|
33
33
|
"@skbkontur/widget-consumer-react-utils": "^1.6.12",
|
|
34
34
|
"tslib": "^2.8.0"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@skbkontur/ui-cdn-components": "^1.
|
|
37
|
+
"@skbkontur/ui-cdn-components": "^2.1.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"@skbkontur/react-ui": ">=6 <7",
|
|
@@ -16,9 +16,12 @@ var changeCamelCaseToKebabCase = function (str) {
|
|
|
16
16
|
.join('');
|
|
17
17
|
};
|
|
18
18
|
var getProductName = function (productLogo) {
|
|
19
|
-
var _a;
|
|
19
|
+
var _a, _b;
|
|
20
|
+
if (typeof ((_a = productLogo === null || productLogo === void 0 ? void 0 : productLogo.props) === null || _a === void 0 ? void 0 : _a.logo) === 'string') {
|
|
21
|
+
return productLogo.props.logo;
|
|
22
|
+
}
|
|
20
23
|
// @ts-expect-error: accessing private property
|
|
21
|
-
return ((
|
|
24
|
+
return ((_b = productLogo === null || productLogo === void 0 ? void 0 : productLogo.type) === null || _b === void 0 ? void 0 : _b.__KONTUR_REACT_UI__)
|
|
22
25
|
? // @ts-expect-error: accessing private property
|
|
23
26
|
changeCamelCaseToKebabCase(productLogo.type.__KONTUR_REACT_UI__.replace(/EN$/i, ''))
|
|
24
27
|
: 'kontur';
|
|
@@ -49,7 +52,8 @@ var SideMenuLogotype = forwardRef(function (_a, ref) {
|
|
|
49
52
|
var logotypeWidth = (_b = (_a = refLogotype.current) === null || _a === void 0 ? void 0 : _a.logotypeRef) === null || _b === void 0 ? void 0 : _b.clientWidth;
|
|
50
53
|
var maxWidth = parseInt(theme.sideMenuWidth) -
|
|
51
54
|
2 * parseInt(theme.sideMenuMarginX) -
|
|
52
|
-
parseInt(theme.sideMenuLogotypePaddingLeft)
|
|
55
|
+
parseInt(theme.sideMenuLogotypePaddingLeft) +
|
|
56
|
+
(withWidget ? -28 : 0);
|
|
53
57
|
if (logotypeWidth && logotypeWidth > maxWidth && !rest.size) {
|
|
54
58
|
setSize(24);
|
|
55
59
|
}
|