@skbkontur/side-menu 3.1.7 → 3.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +19 -0
- package/SideMenuDataTids.d.ts +8 -8
- package/SideMenuDataTids.js +8 -8
- package/hooks/useAnimateOnMount.d.ts +2 -2
- package/hooks/useAnimateOnMount.js +19 -19
- package/hooks/useMemoIcon.d.ts +8 -8
- package/hooks/useMemoIcon.js +27 -27
- package/index.d.ts +14 -14
- package/index.js +14 -14
- package/internal/themes/SideMenuTheme.d.ts +132 -132
- package/internal/themes/SideMenuTheme.js +291 -291
- package/lib/theming/ThemeHelpers.d.ts +18 -18
- package/lib/theming/ThemeHelpers.js +77 -77
- package/lib/theming/ThemeTypes.d.ts +3 -3
- package/lib/theming/ThemeTypes.js +1 -0
- package/lib/utils/memo.d.ts +1 -1
- package/lib/utils/memo.js +9 -9
- package/lib/utils/scripts.d.ts +5 -5
- package/lib/utils/scripts.js +10 -10
- package/package.json +4 -4
- package/src/Navigation.d.ts +52 -52
- package/src/Navigation.js +191 -156
- package/src/SideMenu/SideMenu.d.ts +90 -90
- package/src/SideMenu/SideMenu.js +315 -315
- package/src/SideMenu/SideMenu.styles.d.ts +27 -27
- package/src/SideMenu/SideMenu.styles.js +77 -77
- package/src/SideMenuAvatar/SideMenuAvatar.d.ts +13 -13
- package/src/SideMenuAvatar/SideMenuAvatar.js +18 -18
- package/src/SideMenuBody/SideMenuBody.d.ts +13 -13
- package/src/SideMenuBody/SideMenuBody.js +27 -27
- package/src/SideMenuBody/SideMenuBody.styles.d.ts +5 -5
- package/src/SideMenuBody/SideMenuBody.styles.js +13 -13
- package/src/SideMenuContext.d.ts +30 -30
- package/src/SideMenuContext.js +2 -2
- package/src/SideMenuDivider/SideMenuDivider.d.ts +10 -10
- package/src/SideMenuDivider/SideMenuDivider.js +19 -19
- package/src/SideMenuDivider/SideMenuDivider.styles.d.ts +4 -4
- package/src/SideMenuDivider/SideMenuDivider.styles.js +10 -10
- package/src/SideMenuDropdown/SideMenuDropdown.d.ts +17 -17
- package/src/SideMenuDropdown/SideMenuDropdown.js +40 -40
- package/src/SideMenuDropdown/SideMenuDropdown.styles.d.ts +7 -7
- package/src/SideMenuDropdown/SideMenuDropdown.styles.js +20 -20
- package/src/SideMenuFooter/SideMenuFooter.d.ts +13 -13
- package/src/SideMenuFooter/SideMenuFooter.js +34 -34
- package/src/SideMenuFooter/SideMenuFooter.styles.d.ts +6 -6
- package/src/SideMenuFooter/SideMenuFooter.styles.js +16 -16
- package/src/SideMenuHeader/SideMenuHeader.d.ts +13 -13
- package/src/SideMenuHeader/SideMenuHeader.js +39 -39
- package/src/SideMenuHeader/SideMenuHeader.styles.d.ts +8 -8
- package/src/SideMenuHeader/SideMenuHeader.styles.js +22 -22
- package/src/SideMenuItem/SideMenuItem.d.ts +15 -15
- package/src/SideMenuItem/SideMenuItem.js +16 -16
- package/src/SideMenuLink/SideMenuLink.d.ts +16 -16
- package/src/SideMenuLink/SideMenuLink.js +21 -21
- package/src/SideMenuLink/SideMenuLink.styles.d.ts +3 -3
- package/src/SideMenuLink/SideMenuLink.styles.js +9 -9
- package/src/SideMenuOrganisations/SideMenuOrganisations.d.ts +10 -10
- package/src/SideMenuOrganisations/SideMenuOrganisations.js +16 -16
- package/src/SideMenuSubItem/SideMenuSubItem.d.ts +12 -12
- package/src/SideMenuSubItem/SideMenuSubItem.js +15 -15
- package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.d.ts +13 -13
- package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.js +26 -26
- package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.styles.d.ts +5 -5
- package/src/SideMenuSubItemHeader/SideMenuSubItemHeader.styles.js +13 -13
- package/src/SideMenuSubLink/SideMenuSubLink.d.ts +14 -14
- package/src/SideMenuSubLink/SideMenuSubLink.js +18 -18
- package/src/Tree.d.ts +17 -17
- package/src/Tree.js +133 -133
- package/src/internal/BackButton.d.ts +9 -9
- package/src/internal/BackButton.js +25 -25
- package/src/internal/Backdrop.d.ts +4 -4
- package/src/internal/Backdrop.js +13 -13
- package/src/internal/Backdrop.styles.d.ts +3 -3
- package/src/internal/Backdrop.styles.js +10 -10
- package/src/internal/Burger.d.ts +1 -1
- package/src/internal/Burger.js +13 -13
- package/src/internal/Burger.styles.d.ts +4 -4
- package/src/internal/Burger.styles.js +11 -11
- package/src/internal/ClickableElement.d.ts +32 -32
- package/src/internal/ClickableElement.js +141 -141
- package/src/internal/ClickableElement.styles.d.ts +10 -10
- package/src/internal/ClickableElement.styles.js +29 -29
- package/src/internal/InnerSubMenu.d.ts +10 -10
- package/src/internal/InnerSubMenu.js +21 -21
- package/src/internal/ItemContent/Caption.d.ts +9 -9
- package/src/internal/ItemContent/Caption.js +73 -73
- package/src/internal/ItemContent/Caption.styles.d.ts +19 -19
- package/src/internal/ItemContent/Caption.styles.js +51 -51
- package/src/internal/ItemContent/Icon.d.ts +6 -6
- package/src/internal/ItemContent/Icon.js +42 -42
- package/src/internal/ItemContent/Icon.styles.d.ts +10 -10
- package/src/internal/ItemContent/Icon.styles.js +28 -28
- package/src/internal/ItemContent/ItemContent.d.ts +8 -8
- package/src/internal/ItemContent/ItemContent.js +68 -68
- package/src/internal/ItemContent/ItemContent.styles.d.ts +14 -14
- package/src/internal/ItemContent/ItemContent.styles.js +40 -40
- package/src/internal/ItemContent/Marker.d.ts +7 -7
- package/src/internal/ItemContent/Marker.js +21 -21
- package/src/internal/ItemContent/Marker.styles.d.ts +11 -11
- package/src/internal/ItemContent/Marker.styles.js +31 -31
- package/src/internal/NestedMenu.d.ts +10 -10
- package/src/internal/NestedMenu.js +26 -26
- package/src/internal/NestedMenu.styles.d.ts +4 -4
- package/src/internal/NestedMenu.styles.js +10 -10
- package/src/internal/RightBorder.d.ts +9 -9
- package/src/internal/RightBorder.js +33 -33
- package/src/internal/RightBorder.styles.d.ts +5 -5
- package/src/internal/RightBorder.styles.js +13 -13
- package/src/internal/SeparatedSubMenu.d.ts +11 -11
- package/src/internal/SeparatedSubMenu.js +64 -64
- package/src/internal/SeparatedSubMenu.styles.d.ts +13 -13
- package/src/internal/SeparatedSubMenu.styles.js +33 -33
- package/src/internal/SideMenuLogotype.d.ts +6 -6
- package/src/internal/SideMenuLogotype.js +80 -79
- package/src/internal/SideMenuLogotype.styles.d.ts +12 -12
- package/src/internal/SideMenuLogotype.styles.js +31 -31
- package/src/internal/SubMenu.d.ts +13 -13
- package/src/internal/SubMenu.js +25 -25
|
@@ -1,40 +1,40 @@
|
|
|
1
|
-
import { __assign, __rest } from "tslib";
|
|
2
|
-
import React, { forwardRef, useContext } from 'react';
|
|
3
|
-
import { ThemeContext, DropdownMenu } from '@skbkontur/react-ui';
|
|
4
|
-
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
5
|
-
import { jsStyles } from './SideMenuDropdown.styles';
|
|
6
|
-
import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
|
|
7
|
-
import { SideMenuContext } from '../SideMenuContext';
|
|
8
|
-
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
9
|
-
var SideMenuDropdownInner = forwardRef(function (_a, ref) {
|
|
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"]);
|
|
12
|
-
var context = useContext(SideMenuContext);
|
|
13
|
-
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
14
|
-
return (React.createElement("li", { className: cx((_b = {}, _b[jsStyles.wrapper()] = true, _b), className), ref: ref },
|
|
15
|
-
React.createElement(DropdownMenu, __assign({ caption: React.createElement("div", { className: cx((_c = {},
|
|
16
|
-
_c[jsStyles.label(theme)] = true,
|
|
17
|
-
_c[jsStyles.labelForTouchScreens(theme)] = context.isTouchScreen,
|
|
18
|
-
_c[jsStyles.minimizedLabel()] = !context.isOpened,
|
|
19
|
-
_c)) },
|
|
20
|
-
React.createElement(SideMenuItem, { icon: icon, caption: caption, subCaption: subCaption, marker: marker, id: id, _isDropdown: true, _isAvatar: _isAvatar })), positions: ['top left'], disableAnimations: true, menuWidth: menuWidth }, rest), React.Children.map(children, function (child) {
|
|
21
|
-
// @ts-expect-error: accessing private property
|
|
22
|
-
if (React.isValidElement(child) && (child === null || child === void 0 ? void 0 : child.type.__KONTUR_REACT_UI__) === 'MenuItem') {
|
|
23
|
-
return React.cloneElement(child, {
|
|
24
|
-
onClick: function () {
|
|
25
|
-
var _a, _b, _c;
|
|
26
|
-
(_a = context.toggleIsOpened) === null || _a === void 0 ? void 0 : _a.call(context);
|
|
27
|
-
(_c = (_b = child.props).onClick) === null || _c === void 0 ? void 0 : _c.call(_b);
|
|
28
|
-
},
|
|
29
|
-
});
|
|
30
|
-
}
|
|
31
|
-
return child;
|
|
32
|
-
}))));
|
|
33
|
-
});
|
|
34
|
-
SideMenuDropdownInner.displayName = 'SideMenuDropdown';
|
|
35
|
-
/**
|
|
36
|
-
* Элемент списка с выпадающим меню
|
|
37
|
-
*
|
|
38
|
-
* @visibleName SideMenu.Dropdown
|
|
39
|
-
*/
|
|
40
|
-
export var SideMenuDropdown = Object.assign(SideMenuDropdownInner, { __KONTUR_REACT_UI__: 'SideMenuDropdown' });
|
|
1
|
+
import { __assign, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef, useContext } from 'react';
|
|
3
|
+
import { ThemeContext, DropdownMenu } from '@skbkontur/react-ui';
|
|
4
|
+
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
5
|
+
import { jsStyles } from './SideMenuDropdown.styles';
|
|
6
|
+
import { SideMenuItem } from '../SideMenuItem/SideMenuItem';
|
|
7
|
+
import { SideMenuContext } from '../SideMenuContext';
|
|
8
|
+
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
9
|
+
var SideMenuDropdownInner = forwardRef(function (_a, ref) {
|
|
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"]);
|
|
12
|
+
var context = useContext(SideMenuContext);
|
|
13
|
+
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
14
|
+
return (React.createElement("li", { className: cx((_b = {}, _b[jsStyles.wrapper()] = true, _b), className), ref: ref },
|
|
15
|
+
React.createElement(DropdownMenu, __assign({ caption: React.createElement("div", { className: cx((_c = {},
|
|
16
|
+
_c[jsStyles.label(theme)] = true,
|
|
17
|
+
_c[jsStyles.labelForTouchScreens(theme)] = context.isTouchScreen,
|
|
18
|
+
_c[jsStyles.minimizedLabel()] = !context.isOpened,
|
|
19
|
+
_c)) },
|
|
20
|
+
React.createElement(SideMenuItem, { icon: icon, caption: caption, subCaption: subCaption, marker: marker, id: id, _isDropdown: true, _isAvatar: _isAvatar })), positions: ['top left'], disableAnimations: true, menuWidth: menuWidth }, rest), React.Children.map(children, function (child) {
|
|
21
|
+
// @ts-expect-error: accessing private property
|
|
22
|
+
if (React.isValidElement(child) && (child === null || child === void 0 ? void 0 : child.type.__KONTUR_REACT_UI__) === 'MenuItem') {
|
|
23
|
+
return React.cloneElement(child, {
|
|
24
|
+
onClick: function () {
|
|
25
|
+
var _a, _b, _c;
|
|
26
|
+
(_a = context.toggleIsOpened) === null || _a === void 0 ? void 0 : _a.call(context);
|
|
27
|
+
(_c = (_b = child.props).onClick) === null || _c === void 0 ? void 0 : _c.call(_b);
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
}
|
|
31
|
+
return child;
|
|
32
|
+
}))));
|
|
33
|
+
});
|
|
34
|
+
SideMenuDropdownInner.displayName = 'SideMenuDropdown';
|
|
35
|
+
/**
|
|
36
|
+
* Элемент списка с выпадающим меню
|
|
37
|
+
*
|
|
38
|
+
* @visibleName SideMenu.Dropdown
|
|
39
|
+
*/
|
|
40
|
+
export var SideMenuDropdown = Object.assign(SideMenuDropdownInner, { __KONTUR_REACT_UI__: 'SideMenuDropdown' });
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
-
export declare const jsStyles: {
|
|
3
|
-
label(t: SideMenuTheme): string;
|
|
4
|
-
labelForTouchScreens(t: SideMenuTheme): string;
|
|
5
|
-
minimizedLabel(): string;
|
|
6
|
-
wrapper(): string;
|
|
7
|
-
};
|
|
1
|
+
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
+
export declare const jsStyles: {
|
|
3
|
+
label(t: SideMenuTheme): string;
|
|
4
|
+
labelForTouchScreens(t: SideMenuTheme): string;
|
|
5
|
+
minimizedLabel(): string;
|
|
6
|
+
wrapper(): string;
|
|
7
|
+
};
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import { __makeTemplateObject } from "tslib";
|
|
2
|
-
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
-
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
-
import { transitionDuration } from '../SideMenu/SideMenu';
|
|
5
|
-
var styles = {
|
|
6
|
-
label: function (t) {
|
|
7
|
-
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: calc(", " - 2 * ", ");\n transition: width ", "ms ease-out;\n "], ["\n width: calc(", " - 2 * ", ");\n transition: width ", "ms ease-out;\n "])), t.sideMenuWidth, t.sideMenuMarginX, transitionDuration);
|
|
8
|
-
},
|
|
9
|
-
labelForTouchScreens: function (t) {
|
|
10
|
-
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: calc(", " - 2 * ", ");\n "], ["\n width: calc(", " - 2 * ", ");\n "])), t.sideMenuWidthForTouchScreens, t.sideMenuMarginX);
|
|
11
|
-
},
|
|
12
|
-
minimizedLabel: function () {
|
|
13
|
-
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n width: 100%;\n "], ["\n width: 100%;\n "])));
|
|
14
|
-
},
|
|
15
|
-
wrapper: function () {
|
|
16
|
-
return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n overflow-x: hidden;\n "], ["\n overflow-x: hidden;\n "])));
|
|
17
|
-
},
|
|
18
|
-
};
|
|
19
|
-
export var jsStyles = memoizeStyle(styles);
|
|
20
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
1
|
+
import { __makeTemplateObject } from "tslib";
|
|
2
|
+
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
+
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
+
import { transitionDuration } from '../SideMenu/SideMenu';
|
|
5
|
+
var styles = {
|
|
6
|
+
label: function (t) {
|
|
7
|
+
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n width: calc(", " - 2 * ", ");\n transition: width ", "ms ease-out;\n "], ["\n width: calc(", " - 2 * ", ");\n transition: width ", "ms ease-out;\n "])), t.sideMenuWidth, t.sideMenuMarginX, transitionDuration);
|
|
8
|
+
},
|
|
9
|
+
labelForTouchScreens: function (t) {
|
|
10
|
+
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n width: calc(", " - 2 * ", ");\n "], ["\n width: calc(", " - 2 * ", ");\n "])), t.sideMenuWidthForTouchScreens, t.sideMenuMarginX);
|
|
11
|
+
},
|
|
12
|
+
minimizedLabel: function () {
|
|
13
|
+
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n width: 100%;\n "], ["\n width: 100%;\n "])));
|
|
14
|
+
},
|
|
15
|
+
wrapper: function () {
|
|
16
|
+
return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n overflow-x: hidden;\n "], ["\n overflow-x: hidden;\n "])));
|
|
17
|
+
},
|
|
18
|
+
};
|
|
19
|
+
export var jsStyles = memoizeStyle(styles);
|
|
20
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
|
|
3
|
-
export interface SideMenuFooterProps extends CommonProps {
|
|
4
|
-
children?: React.ReactNode;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Нижняя часть меню
|
|
8
|
-
*
|
|
9
|
-
* @visibleName SideMenu.Footer
|
|
10
|
-
*/
|
|
11
|
-
export declare const SideMenuFooter: React.ForwardRefExoticComponent<SideMenuFooterProps & React.RefAttributes<HTMLDivElement>> & {
|
|
12
|
-
__KONTUR_REACT_UI__: string;
|
|
13
|
-
};
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { CommonProps } from '@skbkontur/react-ui/internal/CommonWrapper';
|
|
3
|
+
export interface SideMenuFooterProps extends CommonProps {
|
|
4
|
+
children?: React.ReactNode;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Нижняя часть меню
|
|
8
|
+
*
|
|
9
|
+
* @visibleName SideMenu.Footer
|
|
10
|
+
*/
|
|
11
|
+
export declare const SideMenuFooter: React.ForwardRefExoticComponent<SideMenuFooterProps & React.RefAttributes<HTMLDivElement>> & {
|
|
12
|
+
__KONTUR_REACT_UI__: string;
|
|
13
|
+
};
|
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
import { __assign, __read, __rest } from "tslib";
|
|
2
|
-
import React, { forwardRef, useContext, useEffect, useState } from 'react';
|
|
3
|
-
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
4
|
-
import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
|
|
5
|
-
import { jsStyles } from './SideMenuFooter.styles';
|
|
6
|
-
import { SideMenuContext } from '../SideMenuContext';
|
|
7
|
-
import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
|
|
8
|
-
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
9
|
-
var SideMenuFooterInner = forwardRef(function (_a, ref) {
|
|
10
|
-
var _b;
|
|
11
|
-
var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
|
|
12
|
-
var context = useContext(SideMenuContext);
|
|
13
|
-
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
14
|
-
var _c = __read(useState(false), 2), isFixed = _c[0], setIsFixed = _c[1];
|
|
15
|
-
useEffect(function () {
|
|
16
|
-
setIsFixed(!!context.hasScrollBar && !(context.scrollState === 'bottom'));
|
|
17
|
-
}, [context.hasScrollBar, context.scrollState]);
|
|
18
|
-
if (!(context.isMobile || context.isTablet) || (context.isOpened && (context.isMobile || context.isTablet))) {
|
|
19
|
-
return (React.createElement("footer", __assign({ className: cx((_b = {},
|
|
20
|
-
_b[jsStyles.root(theme)] = true,
|
|
21
|
-
_b[jsStyles.rootFixed(theme)] = isFixed,
|
|
22
|
-
_b[jsStyles.rootTransitionedForTabletsOrMobiles()] = context.isBeingTransitioned && (context.isMobile || context.isTablet),
|
|
23
|
-
_b), className), ref: ref }, rest),
|
|
24
|
-
React.createElement("ul", { className: jsStylesForSideMenu.list() }, children)));
|
|
25
|
-
}
|
|
26
|
-
return null;
|
|
27
|
-
});
|
|
28
|
-
SideMenuFooterInner.displayName = 'SideMenuFooter';
|
|
29
|
-
/**
|
|
30
|
-
* Нижняя часть меню
|
|
31
|
-
*
|
|
32
|
-
* @visibleName SideMenu.Footer
|
|
33
|
-
*/
|
|
34
|
-
export var SideMenuFooter = Object.assign(SideMenuFooterInner, { __KONTUR_REACT_UI__: 'SideMenuFooter' });
|
|
1
|
+
import { __assign, __read, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef, useContext, useEffect, useState } from 'react';
|
|
3
|
+
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
4
|
+
import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
|
|
5
|
+
import { jsStyles } from './SideMenuFooter.styles';
|
|
6
|
+
import { SideMenuContext } from '../SideMenuContext';
|
|
7
|
+
import { jsStylesForSideMenu } from '../SideMenu/SideMenu.styles';
|
|
8
|
+
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
9
|
+
var SideMenuFooterInner = forwardRef(function (_a, ref) {
|
|
10
|
+
var _b;
|
|
11
|
+
var className = _a.className, children = _a.children, rest = __rest(_a, ["className", "children"]);
|
|
12
|
+
var context = useContext(SideMenuContext);
|
|
13
|
+
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
14
|
+
var _c = __read(useState(false), 2), isFixed = _c[0], setIsFixed = _c[1];
|
|
15
|
+
useEffect(function () {
|
|
16
|
+
setIsFixed(!!context.hasScrollBar && !(context.scrollState === 'bottom'));
|
|
17
|
+
}, [context.hasScrollBar, context.scrollState]);
|
|
18
|
+
if (!(context.isMobile || context.isTablet) || (context.isOpened && (context.isMobile || context.isTablet))) {
|
|
19
|
+
return (React.createElement("footer", __assign({ className: cx((_b = {},
|
|
20
|
+
_b[jsStyles.root(theme)] = true,
|
|
21
|
+
_b[jsStyles.rootFixed(theme)] = isFixed,
|
|
22
|
+
_b[jsStyles.rootTransitionedForTabletsOrMobiles()] = context.isBeingTransitioned && (context.isMobile || context.isTablet),
|
|
23
|
+
_b), className), ref: ref }, rest),
|
|
24
|
+
React.createElement("ul", { className: jsStylesForSideMenu.list() }, children)));
|
|
25
|
+
}
|
|
26
|
+
return null;
|
|
27
|
+
});
|
|
28
|
+
SideMenuFooterInner.displayName = 'SideMenuFooter';
|
|
29
|
+
/**
|
|
30
|
+
* Нижняя часть меню
|
|
31
|
+
*
|
|
32
|
+
* @visibleName SideMenu.Footer
|
|
33
|
+
*/
|
|
34
|
+
export var SideMenuFooter = Object.assign(SideMenuFooterInner, { __KONTUR_REACT_UI__: 'SideMenuFooter' });
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
-
export declare const jsStyles: {
|
|
3
|
-
root(t: SideMenuTheme): string;
|
|
4
|
-
rootFixed(t: SideMenuTheme): string;
|
|
5
|
-
rootTransitionedForTabletsOrMobiles(): string;
|
|
6
|
-
};
|
|
1
|
+
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
+
export declare const jsStyles: {
|
|
3
|
+
root(t: SideMenuTheme): string;
|
|
4
|
+
rootFixed(t: SideMenuTheme): string;
|
|
5
|
+
rootTransitionedForTabletsOrMobiles(): string;
|
|
6
|
+
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { __makeTemplateObject } from "tslib";
|
|
2
|
-
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
-
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
-
var styles = {
|
|
5
|
-
root: function (t) {
|
|
6
|
-
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex-grow: 0;\n position: sticky;\n bottom: 0;\n padding-bottom: ", ";\n padding-top: ", ";\n margin: 0 ", ";\n background-color: ", ";\n "], ["\n flex-grow: 0;\n position: sticky;\n bottom: 0;\n padding-bottom: ", ";\n padding-top: ", ";\n margin: 0 ", ";\n background-color: ", ";\n "])), t.sideMenuFooterPaddingBottom, t.sideMenuFooterPaddingTop, t.sideMenuMarginX, t.sideMenuBgColor);
|
|
7
|
-
},
|
|
8
|
-
rootFixed: function (t) {
|
|
9
|
-
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n box-shadow: 0 -1px 0 ", ";\n "], ["\n box-shadow: 0 -1px 0 ", ";\n "])), t.sideMenuFooterDividerColor);
|
|
10
|
-
},
|
|
11
|
-
rootTransitionedForTabletsOrMobiles: function () {
|
|
12
|
-
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: static;\n "], ["\n position: static;\n "])));
|
|
13
|
-
},
|
|
14
|
-
};
|
|
15
|
-
export var jsStyles = memoizeStyle(styles);
|
|
16
|
-
var templateObject_1, templateObject_2, templateObject_3;
|
|
1
|
+
import { __makeTemplateObject } from "tslib";
|
|
2
|
+
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
+
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
+
var styles = {
|
|
5
|
+
root: function (t) {
|
|
6
|
+
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n flex-grow: 0;\n position: sticky;\n bottom: 0;\n padding-bottom: ", ";\n padding-top: ", ";\n margin: 0 ", ";\n background-color: ", ";\n "], ["\n flex-grow: 0;\n position: sticky;\n bottom: 0;\n padding-bottom: ", ";\n padding-top: ", ";\n margin: 0 ", ";\n background-color: ", ";\n "])), t.sideMenuFooterPaddingBottom, t.sideMenuFooterPaddingTop, t.sideMenuMarginX, t.sideMenuBgColor);
|
|
7
|
+
},
|
|
8
|
+
rootFixed: function (t) {
|
|
9
|
+
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n box-shadow: 0 -1px 0 ", ";\n "], ["\n box-shadow: 0 -1px 0 ", ";\n "])), t.sideMenuFooterDividerColor);
|
|
10
|
+
},
|
|
11
|
+
rootTransitionedForTabletsOrMobiles: function () {
|
|
12
|
+
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n position: static;\n "], ["\n position: static;\n "])));
|
|
13
|
+
},
|
|
14
|
+
};
|
|
15
|
+
export var jsStyles = memoizeStyle(styles);
|
|
16
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { LogotypeProps } from '@skbkontur/react-ui-addons/components/Logotype';
|
|
3
|
-
export interface SideMenuHeaderProps extends Partial<LogotypeProps> {
|
|
4
|
-
iconUrl?: string;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Контейнер для логотипа
|
|
8
|
-
*
|
|
9
|
-
* @visibleName SideMenu.Header
|
|
10
|
-
*/
|
|
11
|
-
export declare const SideMenuHeader: React.ForwardRefExoticComponent<SideMenuHeaderProps & React.RefAttributes<HTMLDivElement>> & {
|
|
12
|
-
__KONTUR_REACT_UI__: string;
|
|
13
|
-
};
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { LogotypeProps } from '@skbkontur/react-ui-addons/components/Logotype';
|
|
3
|
+
export interface SideMenuHeaderProps extends Partial<LogotypeProps> {
|
|
4
|
+
iconUrl?: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Контейнер для логотипа
|
|
8
|
+
*
|
|
9
|
+
* @visibleName SideMenu.Header
|
|
10
|
+
*/
|
|
11
|
+
export declare const SideMenuHeader: React.ForwardRefExoticComponent<SideMenuHeaderProps & React.RefAttributes<HTMLDivElement>> & {
|
|
12
|
+
__KONTUR_REACT_UI__: string;
|
|
13
|
+
};
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { __assign, __rest } from "tslib";
|
|
2
|
-
import React, { forwardRef, useContext, useEffect, useRef } from 'react';
|
|
3
|
-
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
4
|
-
import { mergeRefs } from '@skbkontur/react-ui/lib/utils';
|
|
5
|
-
import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
|
|
6
|
-
import { jsStyles } from './SideMenuHeader.styles';
|
|
7
|
-
import { SideMenuContext } from '../SideMenuContext';
|
|
8
|
-
import { SideMenuLogotype } from '../internal/SideMenuLogotype';
|
|
9
|
-
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
10
|
-
import { getDOMRect } from '@skbkontur/react-ui/lib/dom/getDOMRect';
|
|
11
|
-
var SideMenuHeaderInner = forwardRef(function (_a, ref) {
|
|
12
|
-
var _b;
|
|
13
|
-
var _c;
|
|
14
|
-
var className = _a.className, productLogo = _a.productLogo, konturLogo = _a.konturLogo, iconUrl = _a.iconUrl, style = _a.style, _d = _a.withWidget, withWidget = _d === void 0 ? true : _d, dataTid = _a["data-tid"], rest = __rest(_a, ["className", "productLogo", "konturLogo", "iconUrl", "style", "withWidget", 'data-tid']);
|
|
15
|
-
var context = useContext(SideMenuContext);
|
|
16
|
-
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
17
|
-
var headerWrapperRef = useRef(null);
|
|
18
|
-
useEffect(function () {
|
|
19
|
-
var _a;
|
|
20
|
-
if (headerWrapperRef.current) {
|
|
21
|
-
(_a = context.setHeaderHeight) === null || _a === void 0 ? void 0 : _a.call(context, getDOMRect(headerWrapperRef.current).height);
|
|
22
|
-
}
|
|
23
|
-
}, []);
|
|
24
|
-
return (React.createElement("header", { className: cx((_b = {},
|
|
25
|
-
_b[jsStyles.root(theme)] = true,
|
|
26
|
-
_b[jsStyles.rootForTabletsOrMobiles(theme)] = context.isMobile || context.isTablet,
|
|
27
|
-
_b[jsStyles.fixedRoot(theme)] = context.isOpened && !!context.hasScrollBar && !(context.scrollState === 'top'),
|
|
28
|
-
_b[jsStyles.collapsedRootForTabletsOrMobiles()] = !context.isOpened && (context.isMobile || context.isTablet),
|
|
29
|
-
_b[jsStyles.rootWithSeparatedMenuShown(theme)] = context.isOpened && context.isMobile && ((_c = context.navigation) === null || _c === void 0 ? void 0 : _c.isSeparatedMenuShown),
|
|
30
|
-
_b), className), ref: mergeRefs([headerWrapperRef, ref]), style: style, "data-tid": dataTid },
|
|
31
|
-
React.createElement(SideMenuLogotype, __assign({ productLogo: productLogo, konturLogo: konturLogo, iconUrl: iconUrl, withWidget: withWidget }, rest))));
|
|
32
|
-
});
|
|
33
|
-
SideMenuHeaderInner.displayName = 'SideMenuHeader';
|
|
34
|
-
/**
|
|
35
|
-
* Контейнер для логотипа
|
|
36
|
-
*
|
|
37
|
-
* @visibleName SideMenu.Header
|
|
38
|
-
*/
|
|
39
|
-
export var SideMenuHeader = Object.assign(SideMenuHeaderInner, { __KONTUR_REACT_UI__: 'SideMenuHeader' });
|
|
1
|
+
import { __assign, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef, useContext, useEffect, useRef } from 'react';
|
|
3
|
+
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
4
|
+
import { mergeRefs } from '@skbkontur/react-ui/lib/utils';
|
|
5
|
+
import { ThemeContext } from '@skbkontur/react-ui/lib/theming/ThemeContext';
|
|
6
|
+
import { jsStyles } from './SideMenuHeader.styles';
|
|
7
|
+
import { SideMenuContext } from '../SideMenuContext';
|
|
8
|
+
import { SideMenuLogotype } from '../internal/SideMenuLogotype';
|
|
9
|
+
import { getSideMenuTheme } from '../../lib/theming/ThemeHelpers';
|
|
10
|
+
import { getDOMRect } from '@skbkontur/react-ui/lib/dom/getDOMRect';
|
|
11
|
+
var SideMenuHeaderInner = forwardRef(function (_a, ref) {
|
|
12
|
+
var _b;
|
|
13
|
+
var _c;
|
|
14
|
+
var className = _a.className, productLogo = _a.productLogo, konturLogo = _a.konturLogo, iconUrl = _a.iconUrl, style = _a.style, _d = _a.withWidget, withWidget = _d === void 0 ? true : _d, dataTid = _a["data-tid"], rest = __rest(_a, ["className", "productLogo", "konturLogo", "iconUrl", "style", "withWidget", 'data-tid']);
|
|
15
|
+
var context = useContext(SideMenuContext);
|
|
16
|
+
var theme = getSideMenuTheme(useContext(ThemeContext));
|
|
17
|
+
var headerWrapperRef = useRef(null);
|
|
18
|
+
useEffect(function () {
|
|
19
|
+
var _a;
|
|
20
|
+
if (headerWrapperRef.current) {
|
|
21
|
+
(_a = context.setHeaderHeight) === null || _a === void 0 ? void 0 : _a.call(context, getDOMRect(headerWrapperRef.current).height);
|
|
22
|
+
}
|
|
23
|
+
}, []);
|
|
24
|
+
return (React.createElement("header", { className: cx((_b = {},
|
|
25
|
+
_b[jsStyles.root(theme)] = true,
|
|
26
|
+
_b[jsStyles.rootForTabletsOrMobiles(theme)] = context.isMobile || context.isTablet,
|
|
27
|
+
_b[jsStyles.fixedRoot(theme)] = context.isOpened && !!context.hasScrollBar && !(context.scrollState === 'top'),
|
|
28
|
+
_b[jsStyles.collapsedRootForTabletsOrMobiles()] = !context.isOpened && (context.isMobile || context.isTablet),
|
|
29
|
+
_b[jsStyles.rootWithSeparatedMenuShown(theme)] = context.isOpened && context.isMobile && ((_c = context.navigation) === null || _c === void 0 ? void 0 : _c.isSeparatedMenuShown),
|
|
30
|
+
_b), className), ref: mergeRefs([headerWrapperRef, ref]), style: style, "data-tid": dataTid },
|
|
31
|
+
React.createElement(SideMenuLogotype, __assign({ productLogo: productLogo, konturLogo: konturLogo, iconUrl: iconUrl, withWidget: withWidget }, rest))));
|
|
32
|
+
});
|
|
33
|
+
SideMenuHeaderInner.displayName = 'SideMenuHeader';
|
|
34
|
+
/**
|
|
35
|
+
* Контейнер для логотипа
|
|
36
|
+
*
|
|
37
|
+
* @visibleName SideMenu.Header
|
|
38
|
+
*/
|
|
39
|
+
export var SideMenuHeader = Object.assign(SideMenuHeaderInner, { __KONTUR_REACT_UI__: 'SideMenuHeader' });
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
-
export declare const jsStyles: {
|
|
3
|
-
root(t: SideMenuTheme): string;
|
|
4
|
-
rootForTabletsOrMobiles(t: SideMenuTheme): string;
|
|
5
|
-
collapsedRootForTabletsOrMobiles(): string;
|
|
6
|
-
rootWithSeparatedMenuShown(t: SideMenuTheme): string;
|
|
7
|
-
fixedRoot(t: SideMenuTheme): string;
|
|
8
|
-
};
|
|
1
|
+
import { SideMenuTheme } from '../../lib/theming/ThemeTypes';
|
|
2
|
+
export declare const jsStyles: {
|
|
3
|
+
root(t: SideMenuTheme): string;
|
|
4
|
+
rootForTabletsOrMobiles(t: SideMenuTheme): string;
|
|
5
|
+
collapsedRootForTabletsOrMobiles(): string;
|
|
6
|
+
rootWithSeparatedMenuShown(t: SideMenuTheme): string;
|
|
7
|
+
fixedRoot(t: SideMenuTheme): string;
|
|
8
|
+
};
|
|
@@ -1,22 +1,22 @@
|
|
|
1
|
-
import { __makeTemplateObject } from "tslib";
|
|
2
|
-
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
-
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
-
var styles = {
|
|
5
|
-
root: function (t) {
|
|
6
|
-
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: sticky;\n width: calc(100% - 2 * ", ");\n top: 0;\n z-index: 1;\n padding: ", " 0 ", ";\n margin: 0 ", ";\n background-color: ", ";\n "], ["\n position: sticky;\n width: calc(100% - 2 * ", ");\n top: 0;\n z-index: 1;\n padding: ", " 0 ", ";\n margin: 0 ", ";\n background-color: ", ";\n "])), t.sideMenuMarginX, t.sideMenuHeaderPaddingTop, t.sideMenuHeaderPaddingBottom, t.sideMenuMarginX, t.sideMenuBgColor);
|
|
7
|
-
},
|
|
8
|
-
rootForTabletsOrMobiles: function (t) {
|
|
9
|
-
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding-top: ", ";\n "], ["\n padding-top: ", ";\n "])), t.sideMenuHeaderPaddingTopForTouchScreens);
|
|
10
|
-
},
|
|
11
|
-
collapsedRootForTabletsOrMobiles: function () {
|
|
12
|
-
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background: transparent;\n "], ["\n background: transparent;\n "])));
|
|
13
|
-
},
|
|
14
|
-
rootWithSeparatedMenuShown: function (t) {
|
|
15
|
-
return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background: ", ";\n z-index: 9000;\n "], ["\n background: ", ";\n z-index: 9000;\n "])), t.sideMenuSeparatedSubMenuBgColor);
|
|
16
|
-
},
|
|
17
|
-
fixedRoot: function (t) {
|
|
18
|
-
return css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n box-shadow: 0 1px 0 ", ";\n "], ["\n box-shadow: 0 1px 0 ", ";\n "])), t.sideMenuHeaderDividerColor);
|
|
19
|
-
},
|
|
20
|
-
};
|
|
21
|
-
export var jsStyles = memoizeStyle(styles);
|
|
22
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
1
|
+
import { __makeTemplateObject } from "tslib";
|
|
2
|
+
import { css } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
3
|
+
import { memoizeStyle } from '../../lib/theming/ThemeHelpers';
|
|
4
|
+
var styles = {
|
|
5
|
+
root: function (t) {
|
|
6
|
+
return css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n position: sticky;\n width: calc(100% - 2 * ", ");\n top: 0;\n z-index: 1;\n padding: ", " 0 ", ";\n margin: 0 ", ";\n background-color: ", ";\n "], ["\n position: sticky;\n width: calc(100% - 2 * ", ");\n top: 0;\n z-index: 1;\n padding: ", " 0 ", ";\n margin: 0 ", ";\n background-color: ", ";\n "])), t.sideMenuMarginX, t.sideMenuHeaderPaddingTop, t.sideMenuHeaderPaddingBottom, t.sideMenuMarginX, t.sideMenuBgColor);
|
|
7
|
+
},
|
|
8
|
+
rootForTabletsOrMobiles: function (t) {
|
|
9
|
+
return css(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n padding-top: ", ";\n "], ["\n padding-top: ", ";\n "])), t.sideMenuHeaderPaddingTopForTouchScreens);
|
|
10
|
+
},
|
|
11
|
+
collapsedRootForTabletsOrMobiles: function () {
|
|
12
|
+
return css(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n background: transparent;\n "], ["\n background: transparent;\n "])));
|
|
13
|
+
},
|
|
14
|
+
rootWithSeparatedMenuShown: function (t) {
|
|
15
|
+
return css(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n background: ", ";\n z-index: 9000;\n "], ["\n background: ", ";\n z-index: 9000;\n "])), t.sideMenuSeparatedSubMenuBgColor);
|
|
16
|
+
},
|
|
17
|
+
fixedRoot: function (t) {
|
|
18
|
+
return css(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n box-shadow: 0 1px 0 ", ";\n "], ["\n box-shadow: 0 1px 0 ", ";\n "])), t.sideMenuHeaderDividerColor);
|
|
19
|
+
},
|
|
20
|
+
};
|
|
21
|
+
export var jsStyles = memoizeStyle(styles);
|
|
22
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { CommonClickableElementProps } from '../internal/ClickableElement';
|
|
3
|
-
export interface SideMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonClickableElementProps {
|
|
4
|
-
component?: React.ComponentType<any>;
|
|
5
|
-
}
|
|
6
|
-
/**
|
|
7
|
-
* Элемент списка
|
|
8
|
-
*
|
|
9
|
-
* Может принимать все атрибуты обычной HTML-кнопки
|
|
10
|
-
*
|
|
11
|
-
* @visibleName SideMenu.Item
|
|
12
|
-
*/
|
|
13
|
-
export declare const SideMenuItem: React.ForwardRefExoticComponent<SideMenuItemProps & React.RefAttributes<HTMLButtonElement>> & {
|
|
14
|
-
__KONTUR_REACT_UI__: string;
|
|
15
|
-
};
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { CommonClickableElementProps } from '../internal/ClickableElement';
|
|
3
|
+
export interface SideMenuItemProps extends React.ButtonHTMLAttributes<HTMLButtonElement>, CommonClickableElementProps {
|
|
4
|
+
component?: React.ComponentType<any>;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Элемент списка
|
|
8
|
+
*
|
|
9
|
+
* Может принимать все атрибуты обычной HTML-кнопки
|
|
10
|
+
*
|
|
11
|
+
* @visibleName SideMenu.Item
|
|
12
|
+
*/
|
|
13
|
+
export declare const SideMenuItem: React.ForwardRefExoticComponent<SideMenuItemProps & React.RefAttributes<HTMLButtonElement>> & {
|
|
14
|
+
__KONTUR_REACT_UI__: string;
|
|
15
|
+
};
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import { __assign, __rest } from "tslib";
|
|
2
|
-
import React, { forwardRef } from 'react';
|
|
3
|
-
import { ClickableElement } from '../internal/ClickableElement';
|
|
4
|
-
var SideMenuItemInner = forwardRef(function (_a, ref) {
|
|
5
|
-
var component = _a.component, rest = __rest(_a, ["component"]);
|
|
6
|
-
return React.createElement(ClickableElement, __assign({}, rest, { ref: ref, element: component !== null && component !== void 0 ? component : 'button' }));
|
|
7
|
-
});
|
|
8
|
-
SideMenuItemInner.displayName = 'SideMenuItem';
|
|
9
|
-
/**
|
|
10
|
-
* Элемент списка
|
|
11
|
-
*
|
|
12
|
-
* Может принимать все атрибуты обычной HTML-кнопки
|
|
13
|
-
*
|
|
14
|
-
* @visibleName SideMenu.Item
|
|
15
|
-
*/
|
|
16
|
-
export var SideMenuItem = Object.assign(SideMenuItemInner, { __KONTUR_REACT_UI__: 'SideMenuItem' });
|
|
1
|
+
import { __assign, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef } from 'react';
|
|
3
|
+
import { ClickableElement } from '../internal/ClickableElement';
|
|
4
|
+
var SideMenuItemInner = forwardRef(function (_a, ref) {
|
|
5
|
+
var component = _a.component, rest = __rest(_a, ["component"]);
|
|
6
|
+
return React.createElement(ClickableElement, __assign({}, rest, { ref: ref, element: component !== null && component !== void 0 ? component : 'button' }));
|
|
7
|
+
});
|
|
8
|
+
SideMenuItemInner.displayName = 'SideMenuItem';
|
|
9
|
+
/**
|
|
10
|
+
* Элемент списка
|
|
11
|
+
*
|
|
12
|
+
* Может принимать все атрибуты обычной HTML-кнопки
|
|
13
|
+
*
|
|
14
|
+
* @visibleName SideMenu.Item
|
|
15
|
+
*/
|
|
16
|
+
export var SideMenuItem = Object.assign(SideMenuItemInner, { __KONTUR_REACT_UI__: 'SideMenuItem' });
|
|
@@ -1,16 +1,16 @@
|
|
|
1
|
-
import React from 'react';
|
|
2
|
-
import { CommonClickableElementProps } from '../internal/ClickableElement';
|
|
3
|
-
export interface SideMenuLinkProps<T = string> extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>, CommonClickableElementProps {
|
|
4
|
-
component?: React.ComponentType<any>;
|
|
5
|
-
href: T;
|
|
6
|
-
}
|
|
7
|
-
/**
|
|
8
|
-
* Ссылка для `SideMenu`
|
|
9
|
-
*
|
|
10
|
-
* Визуально повторяет `SideMenu.Item`
|
|
11
|
-
*
|
|
12
|
-
* Может принимать все атрибуты обычной HTML-ссылки
|
|
13
|
-
*
|
|
14
|
-
* @visibleName SideMenu.Link
|
|
15
|
-
*/
|
|
16
|
-
export declare const SideMenuLink: <T = string>(props: SideMenuLinkProps<T>) => React.ReactElement;
|
|
1
|
+
import React from 'react';
|
|
2
|
+
import { CommonClickableElementProps } from '../internal/ClickableElement';
|
|
3
|
+
export interface SideMenuLinkProps<T = string> extends Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, 'href'>, CommonClickableElementProps {
|
|
4
|
+
component?: React.ComponentType<any>;
|
|
5
|
+
href: T;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Ссылка для `SideMenu`
|
|
9
|
+
*
|
|
10
|
+
* Визуально повторяет `SideMenu.Item`
|
|
11
|
+
*
|
|
12
|
+
* Может принимать все атрибуты обычной HTML-ссылки
|
|
13
|
+
*
|
|
14
|
+
* @visibleName SideMenu.Link
|
|
15
|
+
*/
|
|
16
|
+
export declare const SideMenuLink: <T = string>(props: SideMenuLinkProps<T>) => React.ReactElement;
|
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { __assign, __rest } from "tslib";
|
|
2
|
-
import React, { forwardRef } from 'react';
|
|
3
|
-
import { ClickableElement } from '../internal/ClickableElement';
|
|
4
|
-
import { jsStyles } from './SideMenuLink.styles';
|
|
5
|
-
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
6
|
-
var SideMenuLinkInner = forwardRef(function (_a, ref) {
|
|
7
|
-
var _b;
|
|
8
|
-
var className = _a.className, component = _a.component, rest = __rest(_a, ["className", "component"]);
|
|
9
|
-
return (React.createElement(ClickableElement, __assign({}, rest, { ref: ref, element: component !== null && component !== void 0 ? component : 'a', className: cx((_b = {}, _b[jsStyles.link()] = true, _b), className) })));
|
|
10
|
-
});
|
|
11
|
-
SideMenuLinkInner.displayName = 'SideMenuLink';
|
|
12
|
-
/**
|
|
13
|
-
* Ссылка для `SideMenu`
|
|
14
|
-
*
|
|
15
|
-
* Визуально повторяет `SideMenu.Item`
|
|
16
|
-
*
|
|
17
|
-
* Может принимать все атрибуты обычной HTML-ссылки
|
|
18
|
-
*
|
|
19
|
-
* @visibleName SideMenu.Link
|
|
20
|
-
*/
|
|
21
|
-
export var SideMenuLink = Object.assign(SideMenuLinkInner, { __KONTUR_REACT_UI__: 'SideMenuLink' });
|
|
1
|
+
import { __assign, __rest } from "tslib";
|
|
2
|
+
import React, { forwardRef } from 'react';
|
|
3
|
+
import { ClickableElement } from '../internal/ClickableElement';
|
|
4
|
+
import { jsStyles } from './SideMenuLink.styles';
|
|
5
|
+
import { cx } from '@skbkontur/react-ui/lib/theming/Emotion';
|
|
6
|
+
var SideMenuLinkInner = forwardRef(function (_a, ref) {
|
|
7
|
+
var _b;
|
|
8
|
+
var className = _a.className, component = _a.component, rest = __rest(_a, ["className", "component"]);
|
|
9
|
+
return (React.createElement(ClickableElement, __assign({}, rest, { ref: ref, element: component !== null && component !== void 0 ? component : 'a', className: cx((_b = {}, _b[jsStyles.link()] = true, _b), className) })));
|
|
10
|
+
});
|
|
11
|
+
SideMenuLinkInner.displayName = 'SideMenuLink';
|
|
12
|
+
/**
|
|
13
|
+
* Ссылка для `SideMenu`
|
|
14
|
+
*
|
|
15
|
+
* Визуально повторяет `SideMenu.Item`
|
|
16
|
+
*
|
|
17
|
+
* Может принимать все атрибуты обычной HTML-ссылки
|
|
18
|
+
*
|
|
19
|
+
* @visibleName SideMenu.Link
|
|
20
|
+
*/
|
|
21
|
+
export var SideMenuLink = Object.assign(SideMenuLinkInner, { __KONTUR_REACT_UI__: 'SideMenuLink' });
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export declare const jsStyles: {
|
|
2
|
-
link(): string;
|
|
3
|
-
};
|
|
1
|
+
export declare const jsStyles: {
|
|
2
|
+
link(): string;
|
|
3
|
+
};
|