@gravity-ui/navigation 2.24.1 → 2.26.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/build/cjs/AsideHeader.js +1 -1
- package/build/cjs/Drawer.js +5 -5
- package/build/cjs/Drawer.js.map +1 -1
- package/build/cjs/{FooterItem-003eb137.js → FooterItem-7491de3b.js} +1 -1
- package/build/cjs/{FooterItem-003eb137.js.map → FooterItem-7491de3b.js.map} +1 -1
- package/build/cjs/{HotkeysPanel-d971b094.js → HotkeysPanel-c3315c0b.js} +1 -1
- package/build/cjs/{HotkeysPanel-d971b094.js.map → HotkeysPanel-c3315c0b.js.map} +1 -1
- package/build/cjs/{PageLayoutAside-af13d746.js → PageLayoutAside-946fbebf.js} +14 -6
- package/build/cjs/PageLayoutAside-946fbebf.js.map +1 -0
- package/build/cjs/PageLayoutAside.js +1 -1
- package/build/cjs/components/AsideHeader/types.d.ts +6 -0
- package/build/cjs/components/Drawer/Drawer.d.ts +10 -0
- package/build/cjs/components/types.d.ts +1 -0
- package/build/cjs/index.js +3 -3
- package/build/cjs/index4.js +1 -1
- package/build/cjs/index6.js +1 -1
- package/build/esm/AsideHeader.js +1 -1
- package/build/esm/Drawer.js +5 -5
- package/build/esm/Drawer.js.map +1 -1
- package/build/esm/{FooterItem-42f3ac69.js → FooterItem-f9f2cf2b.js} +1 -1
- package/build/esm/{FooterItem-42f3ac69.js.map → FooterItem-f9f2cf2b.js.map} +1 -1
- package/build/esm/{HotkeysPanel-f0e2a06c.js → HotkeysPanel-c6beeaf4.js} +1 -1
- package/build/esm/{HotkeysPanel-f0e2a06c.js.map → HotkeysPanel-c6beeaf4.js.map} +1 -1
- package/build/esm/{PageLayoutAside-0c0d6943.js → PageLayoutAside-d78babcb.js} +14 -6
- package/build/esm/PageLayoutAside-d78babcb.js.map +1 -0
- package/build/esm/PageLayoutAside.js +1 -1
- package/build/esm/components/AsideHeader/types.d.ts +6 -0
- package/build/esm/components/Drawer/Drawer.d.ts +10 -0
- package/build/esm/components/types.d.ts +1 -0
- package/build/esm/index.js +4 -4
- package/build/esm/index4.js +1 -1
- package/build/esm/index6.js +1 -1
- package/package.json +1 -1
- package/build/cjs/PageLayoutAside-af13d746.js.map +0 -1
- package/build/esm/PageLayoutAside-0c0d6943.js.map +0 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
require('react');
|
|
6
|
-
var PageLayoutAside = require('./PageLayoutAside-
|
|
6
|
+
var PageLayoutAside = require('./PageLayoutAside-946fbebf.js');
|
|
7
7
|
require('@gravity-ui/uikit');
|
|
8
8
|
require('./debounce-8772fd80.js');
|
|
9
9
|
require('./utils-db3e03c2.js');
|
|
@@ -9,6 +9,11 @@ export interface LayoutProps {
|
|
|
9
9
|
className?: string;
|
|
10
10
|
topAlert?: AsideHeaderTopAlertProps;
|
|
11
11
|
}
|
|
12
|
+
export interface EditMenuProps {
|
|
13
|
+
onOpenEditMode?: () => void;
|
|
14
|
+
onToggleMenuItem?: (changedItem: MenuItem) => void;
|
|
15
|
+
onResetSettingsToDefault?: () => void;
|
|
16
|
+
}
|
|
12
17
|
export interface AsideHeaderGeneralProps extends QAProps {
|
|
13
18
|
logo?: LogoProps;
|
|
14
19
|
multipleTooltip?: boolean;
|
|
@@ -26,6 +31,7 @@ export interface AsideHeaderGeneralProps extends QAProps {
|
|
|
26
31
|
compact: boolean;
|
|
27
32
|
asideRef: React.RefObject<HTMLDivElement>;
|
|
28
33
|
}) => React.ReactNode;
|
|
34
|
+
editMenuProps?: EditMenuProps;
|
|
29
35
|
onClosePanel?: () => void;
|
|
30
36
|
onChangeCompact?: (compact: boolean) => void;
|
|
31
37
|
openModalSubscriber?: (subscriber: OpenModalSubscriber) => void;
|
|
@@ -35,6 +35,11 @@ export interface DrawerItemProps {
|
|
|
35
35
|
minResizeWidth?: number;
|
|
36
36
|
/** The maximum width of the resizable drawer item */
|
|
37
37
|
maxResizeWidth?: number;
|
|
38
|
+
/**
|
|
39
|
+
* Keep child components mounted when closed, prioritized over Drawer.keepMounted property
|
|
40
|
+
* @default false
|
|
41
|
+
* */
|
|
42
|
+
keepMounted?: boolean;
|
|
38
43
|
}
|
|
39
44
|
export declare const DrawerItem: React.ForwardRefExoticComponent<DrawerItemProps & React.RefAttributes<HTMLDivElement>>;
|
|
40
45
|
type DrawerChild = React.ReactElement<DrawerItemProps>;
|
|
@@ -60,6 +65,11 @@ export interface DrawerProps {
|
|
|
60
65
|
hideVeil?: boolean;
|
|
61
66
|
/** Optional flag to not use `Portal` for drawer */
|
|
62
67
|
disablePortal?: boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Keep child components mounted when closed
|
|
70
|
+
* @default false
|
|
71
|
+
* */
|
|
72
|
+
keepMounted?: boolean;
|
|
63
73
|
}
|
|
64
74
|
export declare const Drawer: React.FC<DrawerProps>;
|
|
65
75
|
export {};
|
package/build/cjs/index.js
CHANGED
|
@@ -6,10 +6,10 @@ var AsideHeader = require('./AsideHeader.js');
|
|
|
6
6
|
var AsideHeaderContext = require('./AsideHeaderContext.js');
|
|
7
7
|
var FooterItem = require('./FooterItem.js');
|
|
8
8
|
var PageLayout = require('./PageLayout.js');
|
|
9
|
-
var PageLayoutAside = require('./PageLayoutAside-
|
|
9
|
+
var PageLayoutAside = require('./PageLayoutAside-946fbebf.js');
|
|
10
10
|
var AsideFallback = require('./AsideFallback.js');
|
|
11
11
|
var Drawer = require('./Drawer.js');
|
|
12
|
-
var FooterItem$1 = require('./FooterItem-
|
|
12
|
+
var FooterItem$1 = require('./FooterItem-7491de3b.js');
|
|
13
13
|
var React = require('react');
|
|
14
14
|
var uikit = require('@gravity-ui/uikit');
|
|
15
15
|
var debounce = require('./debounce-8772fd80.js');
|
|
@@ -19,7 +19,7 @@ var styleInject_es = require('./style-inject.es-dcee06b6.js');
|
|
|
19
19
|
var icons = require('@gravity-ui/icons');
|
|
20
20
|
var ActionBar = require('./ActionBar-3c6cdf57.js');
|
|
21
21
|
var Title = require('./Title-54580605.js');
|
|
22
|
-
var HotkeysPanel = require('./HotkeysPanel-
|
|
22
|
+
var HotkeysPanel = require('./HotkeysPanel-c3315c0b.js');
|
|
23
23
|
var Settings = require('./Settings-8dc2a8ee.js');
|
|
24
24
|
require('./Item-7c1b54f5.js');
|
|
25
25
|
require('./constants-d81c3867.js');
|
package/build/cjs/index4.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var HotkeysPanel = require('./HotkeysPanel-
|
|
5
|
+
var HotkeysPanel = require('./HotkeysPanel-c3315c0b.js');
|
|
6
6
|
require('./tslib.es6-705c6589.js');
|
|
7
7
|
require('react');
|
|
8
8
|
require('@gravity-ui/uikit');
|
package/build/cjs/index6.js
CHANGED
package/build/esm/AsideHeader.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { _ as __rest } from './tslib.es6-3cd4e99f.js';
|
|
2
2
|
import React__default from 'react';
|
|
3
3
|
import { PageLayout } from './PageLayout.js';
|
|
4
|
-
import { P as PageLayoutAside } from './PageLayoutAside-
|
|
4
|
+
import { P as PageLayoutAside } from './PageLayoutAside-d78babcb.js';
|
|
5
5
|
import './Content-f94ba85d.js';
|
|
6
6
|
import './constants-b1604ff5.js';
|
|
7
7
|
import './AsideHeaderContext.js';
|
package/build/esm/Drawer.js
CHANGED
|
@@ -3096,7 +3096,7 @@ styleInject(css_248z);
|
|
|
3096
3096
|
const b = block('drawer');
|
|
3097
3097
|
const TIMEOUT = 300;
|
|
3098
3098
|
const DrawerItem = React__default.forwardRef(function DrawerItem(props, ref) {
|
|
3099
|
-
const { visible, content, children, direction = 'left', className, resizable, width, minResizeWidth, maxResizeWidth, onResize, } = props;
|
|
3099
|
+
const { visible, content, children, direction = 'left', className, resizable, width, minResizeWidth, maxResizeWidth, onResize, keepMounted = false, } = props;
|
|
3100
3100
|
const itemRef = React__default.useRef(null);
|
|
3101
3101
|
const handleRef = useForkRef(ref, itemRef);
|
|
3102
3102
|
const cssDirection = direction === 'left' ? undefined : direction;
|
|
@@ -3109,11 +3109,11 @@ const DrawerItem = React__default.forwardRef(function DrawerItem(props, ref) {
|
|
|
3109
3109
|
});
|
|
3110
3110
|
const resizerElement = resizable ? (React__default.createElement("div", Object.assign({ className: b('resizer', { direction }) }, resizerHandlers),
|
|
3111
3111
|
React__default.createElement("div", { className: b('resizer-handle') }))) : null;
|
|
3112
|
-
return (React__default.createElement(CSSTransition, { in: visible, timeout: TIMEOUT, unmountOnExit:
|
|
3112
|
+
return (React__default.createElement(CSSTransition, { in: visible, timeout: TIMEOUT, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, classNames: b('item-transition', { direction: cssDirection }), nodeRef: itemRef },
|
|
3113
3113
|
React__default.createElement("div", { ref: handleRef, className: b('item', { direction: cssDirection }, className), style: { width: resizable ? `${resizedWidth}px` : undefined } },
|
|
3114
3114
|
resizerElement, children !== null && children !== void 0 ? children : content)));
|
|
3115
3115
|
});
|
|
3116
|
-
const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEscape, preventScrollBody = true, hideVeil, disablePortal = true, }) => {
|
|
3116
|
+
const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEscape, preventScrollBody = true, hideVeil, disablePortal = true, keepMounted = false, }) => {
|
|
3117
3117
|
let someItemVisible = false;
|
|
3118
3118
|
React__default.Children.forEach(children, (child) => {
|
|
3119
3119
|
if (React__default.isValidElement(child) && child.type === DrawerItem) {
|
|
@@ -3139,7 +3139,7 @@ const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEsca
|
|
|
3139
3139
|
useBodyScrollLock({ enabled: preventScrollBody && someItemVisible });
|
|
3140
3140
|
const containerRef = React__default.useRef(null);
|
|
3141
3141
|
const veilRef = React__default.useRef(null);
|
|
3142
|
-
const drawer = (React__default.createElement(Transition, { in: someItemVisible, timeout: { enter: 0, exit: TIMEOUT }, mountOnEnter:
|
|
3142
|
+
const drawer = (React__default.createElement(Transition, { in: someItemVisible, timeout: { enter: 0, exit: TIMEOUT }, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, nodeRef: containerRef }, (state) => {
|
|
3143
3143
|
const childrenVisible = someItemVisible && state === 'entered';
|
|
3144
3144
|
return (React__default.createElement("div", { ref: containerRef, className: b({ hideVeil }, className), style: style },
|
|
3145
3145
|
React__default.createElement(CSSTransition, { in: childrenVisible, timeout: TIMEOUT, unmountOnExit: true, classNames: b('veil-transition'), nodeRef: veilRef },
|
|
@@ -3148,7 +3148,7 @@ const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEsca
|
|
|
3148
3148
|
if (React__default.isValidElement(child) &&
|
|
3149
3149
|
child.type === DrawerItem) {
|
|
3150
3150
|
const childVisible = Boolean(child.props.visible);
|
|
3151
|
-
return React__default.cloneElement(child, Object.assign(Object.assign({}, child.props), { visible: childVisible && childrenVisible }));
|
|
3151
|
+
return React__default.cloneElement(child, Object.assign(Object.assign({ keepMounted }, child.props), { visible: childVisible && childrenVisible }));
|
|
3152
3152
|
}
|
|
3153
3153
|
return child;
|
|
3154
3154
|
})));
|