@gravity-ui/navigation 2.25.0 → 2.27.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 +2 -2
- package/build/cjs/Drawer.js +11 -7
- package/build/cjs/Drawer.js.map +1 -1
- package/build/cjs/{FooterItem-003eb137.js → FooterItem-286094ab.js} +1 -1
- package/build/cjs/{FooterItem-003eb137.js.map → FooterItem-286094ab.js.map} +1 -1
- package/build/cjs/FooterItem.js +1 -1
- package/build/cjs/{HotkeysPanel-d971b094.js → HotkeysPanel-4b97825e.js} +1 -1
- package/build/cjs/{HotkeysPanel-d971b094.js.map → HotkeysPanel-4b97825e.js.map} +1 -1
- package/build/cjs/{Item-7c1b54f5.js → Item-122f7db4.js} +3 -2
- package/build/cjs/Item-122f7db4.js.map +1 -0
- package/build/cjs/{PageLayoutAside-e729d911.js → PageLayoutAside-ace87c16.js} +8 -8
- package/build/cjs/PageLayoutAside-ace87c16.js.map +1 -0
- package/build/cjs/PageLayoutAside.js +2 -2
- package/build/cjs/components/AsideHeader/types.d.ts +1 -0
- package/build/cjs/components/CompositeBar/CompositeBar.d.ts +1 -0
- package/build/cjs/components/CompositeBar/Item/Item.d.ts +1 -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 +4 -4
- package/build/cjs/index4.js +1 -1
- package/build/cjs/index6.js +1 -1
- package/build/esm/AsideHeader.js +2 -2
- package/build/esm/Drawer.js +11 -7
- package/build/esm/Drawer.js.map +1 -1
- package/build/esm/{FooterItem-42f3ac69.js → FooterItem-2552f5a6.js} +1 -1
- package/build/esm/{FooterItem-42f3ac69.js.map → FooterItem-2552f5a6.js.map} +1 -1
- package/build/esm/FooterItem.js +1 -1
- package/build/esm/{HotkeysPanel-f0e2a06c.js → HotkeysPanel-cab8d5ab.js} +1 -1
- package/build/esm/{HotkeysPanel-f0e2a06c.js.map → HotkeysPanel-cab8d5ab.js.map} +1 -1
- package/build/esm/{Item-fb2a4efc.js → Item-e9769642.js} +3 -2
- package/build/esm/Item-e9769642.js.map +1 -0
- package/build/esm/{PageLayoutAside-5f020459.js → PageLayoutAside-e48dea45.js} +8 -8
- package/build/esm/PageLayoutAside-e48dea45.js.map +1 -0
- package/build/esm/PageLayoutAside.js +2 -2
- package/build/esm/components/AsideHeader/types.d.ts +1 -0
- package/build/esm/components/CompositeBar/CompositeBar.d.ts +1 -0
- package/build/esm/components/CompositeBar/Item/Item.d.ts +1 -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 +5 -5
- package/build/esm/index4.js +1 -1
- package/build/esm/index6.js +1 -1
- package/package.json +1 -1
- package/build/cjs/Item-7c1b54f5.js.map +0 -1
- package/build/cjs/PageLayoutAside-e729d911.js.map +0 -1
- package/build/esm/Item-fb2a4efc.js.map +0 -1
- package/build/esm/PageLayoutAside-5f020459.js.map +0 -1
package/build/cjs/AsideHeader.js
CHANGED
|
@@ -5,7 +5,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
|
5
5
|
var tslib_es6 = require('./tslib.es6-705c6589.js');
|
|
6
6
|
var React = require('react');
|
|
7
7
|
var PageLayout = require('./PageLayout.js');
|
|
8
|
-
var PageLayoutAside = require('./PageLayoutAside-
|
|
8
|
+
var PageLayoutAside = require('./PageLayoutAside-ace87c16.js');
|
|
9
9
|
require('./Content-64d5738a.js');
|
|
10
10
|
require('./constants-d81c3867.js');
|
|
11
11
|
require('./AsideHeaderContext.js');
|
|
@@ -16,7 +16,7 @@ require('./style-inject.es-dcee06b6.js');
|
|
|
16
16
|
require('@gravity-ui/uikit');
|
|
17
17
|
require('@gravity-ui/icons');
|
|
18
18
|
require('@gravity-ui/uikit/i18n');
|
|
19
|
-
require('./Item-
|
|
19
|
+
require('./Item-122f7db4.js');
|
|
20
20
|
require('./debounce-8772fd80.js');
|
|
21
21
|
require('./divider-collapsed-b743122e.js');
|
|
22
22
|
require('./Drawer.js');
|
package/build/cjs/Drawer.js
CHANGED
|
@@ -3117,13 +3117,14 @@ function useResizableDrawerItem(params) {
|
|
|
3117
3117
|
return { resizedWidth: displayWidth, resizerHandlers: handlers };
|
|
3118
3118
|
}
|
|
3119
3119
|
|
|
3120
|
-
var css_248z = ".gn-drawer{--_--item-shadow-default:0 1px 5px 0 var(--g-color-sfx-shadow);--_--resizer-width:8px;--_--resizer-color:var(--g-color-base-generic);--_--resizer-handle-color:var(--g-color-line-generic);--_--resizer-handle-color-hover:var(--g-color-line-generic-hover);--_--resizer-z-index:100;--_--veil-background-color:var(--g-color-sfx-veil);pointer-events:none}.gn-drawer_hideVeil{--_--item-shadow:var(--gn-drawer-item-shadow,var(--_--item-shadow-default))}.gn-drawer__item{background-color:var(--g-color-base-background);bottom:0;box-shadow:var(--_--item-shadow,none);height:100%;left:0;pointer-events:auto;position:absolute;top:0;will-change:transform;z-index:var(--gn-drawer-item-z-index)}.gn-drawer__item_direction_right{left:auto;right:0}.gn-drawer__item-transition-enter{transform:translate(-100%)}.gn-drawer__item-transition_direction_right-enter{transform:translate(100%)}.gn-drawer__item-transition-enter-active,.gn-drawer__item-transition_direction_right-enter-active{transform:translate(0);transition:transform .3s}.gn-drawer__item-transition-enter-done,.gn-drawer__item-transition_direction_right-enter-done{filter:blur(0);transform:translateZ(0)}.gn-drawer__item-transition-exit,.gn-drawer__item-transition_direction_right-exit{transform:translate(0)}.gn-drawer__item-transition-exit-active,.gn-drawer__item-transition_direction_right-exit-active{transition:transform .3s}.gn-drawer__item-transition-exit-active{transform:translate(-100%)}.gn-drawer__item-transition_direction_right-exit-active{transform:translate(100%)}.gn-drawer__item-transition-exit-done,.gn-drawer__item-transition_direction_right-exit-done{visibility:hidden}.gn-drawer__veil{background-color:var(--gn-drawer-veil-background-color,var(--_--veil-background-color));inset:0;pointer-events:auto;position:absolute;z-index:var(--gn-drawer-veil-z-index)}.gn-drawer__veil_hidden{display:none}.gn-drawer__veil-transition-enter{opacity:0}.gn-drawer__veil-transition-enter-active{opacity:1;transition:opacity .3s}.gn-drawer__veil-transition-exit{opacity:1}.gn-drawer__veil-transition-exit-active{opacity:0;transition:opacity .3s}.gn-drawer__veil-transition-exit-done{visibility:hidden}.gn-drawer__resizer-handle{background:var(--gn-drawer-item-resizer-handle-color,var(--_--resizer-handle-color));border-radius:2px;height:28px;width:2px}.gn-drawer__resizer{align-items:center;background:var(--gn-drawer-item-resizer-color,var(--_--resizer-color));cursor:col-resize;display:flex;flex-direction:column;height:100%;justify-content:center;position:absolute;top:0;width:var(--gn-drawer-item-resizer-width,var(--_--resizer-width));z-index:var(--gn-drawer-item-resizer-z-index,var(--_--resizer-z-index))}.gn-drawer__resizer_direction_right{left:0}.gn-drawer__resizer_direction_left{right:0}.gn-drawer__resizer:hover .gn-drawer__resizer-handle{background:var(--gn-drawer-item-resizer-handle-color-hover,var(--_--resizer-handle-color-hover))}";
|
|
3120
|
+
var css_248z = ".gn-drawer{--_--item-shadow-default:0 1px 5px 0 var(--g-color-sfx-shadow);--_--resizer-width:8px;--_--resizer-color:var(--g-color-base-generic);--_--resizer-handle-color:var(--g-color-line-generic);--_--resizer-handle-color-hover:var(--g-color-line-generic-hover);--_--resizer-z-index:100;--_--veil-background-color:var(--g-color-sfx-veil);pointer-events:none}.gn-drawer_hideVeil{--_--item-shadow:var(--gn-drawer-item-shadow,var(--_--item-shadow-default))}.gn-drawer__item{background-color:var(--g-color-base-background);bottom:0;box-shadow:var(--_--item-shadow,none);height:100%;left:0;pointer-events:auto;position:absolute;top:0;will-change:transform;z-index:var(--gn-drawer-item-z-index)}.gn-drawer__item_direction_right{left:auto;right:0}.gn-drawer__item-transition-enter{transform:translate(-100%)}.gn-drawer__item-transition_direction_right-enter{transform:translate(100%)}.gn-drawer__item-transition-enter-active,.gn-drawer__item-transition_direction_right-enter-active{transform:translate(0);transition:transform .3s}.gn-drawer__item-transition-enter-done,.gn-drawer__item-transition_direction_right-enter-done{filter:blur(0);transform:translateZ(0)}.gn-drawer__item-transition-exit,.gn-drawer__item-transition_direction_right-exit{transform:translate(0)}.gn-drawer__item-transition-exit-active,.gn-drawer__item-transition_direction_right-exit-active{transition:transform .3s}.gn-drawer__item-transition-exit-active{transform:translate(-100%)}.gn-drawer__item-transition_direction_right-exit-active{transform:translate(100%)}.gn-drawer__item-transition-exit-done,.gn-drawer__item-transition_direction_right-exit-done,.gn-drawer__item_hidden{visibility:hidden}.gn-drawer__veil{background-color:var(--gn-drawer-veil-background-color,var(--_--veil-background-color));inset:0;pointer-events:auto;position:absolute;z-index:var(--gn-drawer-veil-z-index)}.gn-drawer__veil_hidden{display:none}.gn-drawer__veil-transition-enter{opacity:0}.gn-drawer__veil-transition-enter-active{opacity:1;transition:opacity .3s}.gn-drawer__veil-transition-exit{opacity:1}.gn-drawer__veil-transition-exit-active{opacity:0;transition:opacity .3s}.gn-drawer__veil-transition-exit-done{visibility:hidden}.gn-drawer__resizer-handle{background:var(--gn-drawer-item-resizer-handle-color,var(--_--resizer-handle-color));border-radius:2px;height:28px;width:2px}.gn-drawer__resizer{align-items:center;background:var(--gn-drawer-item-resizer-color,var(--_--resizer-color));cursor:col-resize;display:flex;flex-direction:column;height:100%;justify-content:center;position:absolute;top:0;width:var(--gn-drawer-item-resizer-width,var(--_--resizer-width));z-index:var(--gn-drawer-item-resizer-z-index,var(--_--resizer-z-index))}.gn-drawer__resizer_direction_right{left:0}.gn-drawer__resizer_direction_left{right:0}.gn-drawer__resizer:hover .gn-drawer__resizer-handle{background:var(--gn-drawer-item-resizer-handle-color-hover,var(--_--resizer-handle-color-hover))}";
|
|
3121
3121
|
styleInject_es.styleInject(css_248z);
|
|
3122
3122
|
|
|
3123
3123
|
const b = cn.block('drawer');
|
|
3124
3124
|
const TIMEOUT = 300;
|
|
3125
3125
|
const DrawerItem = React__default["default"].forwardRef(function DrawerItem(props, ref) {
|
|
3126
|
-
const { visible, content, children, direction = 'left', className, resizable, width, minResizeWidth, maxResizeWidth, onResize, } = props;
|
|
3126
|
+
const { visible, content, children, direction = 'left', className, resizable, width, minResizeWidth, maxResizeWidth, onResize, keepMounted = false, } = props;
|
|
3127
|
+
const [isInitialRender, setInitialRender] = React__default["default"].useState(true);
|
|
3127
3128
|
const itemRef = React__default["default"].useRef(null);
|
|
3128
3129
|
const handleRef = uikit.useForkRef(ref, itemRef);
|
|
3129
3130
|
const cssDirection = direction === 'left' ? undefined : direction;
|
|
@@ -3134,13 +3135,16 @@ const DrawerItem = React__default["default"].forwardRef(function DrawerItem(prop
|
|
|
3134
3135
|
maxResizeWidth,
|
|
3135
3136
|
onResize,
|
|
3136
3137
|
});
|
|
3138
|
+
React__default["default"].useEffect(() => {
|
|
3139
|
+
setInitialRender(true);
|
|
3140
|
+
}, [direction]);
|
|
3137
3141
|
const resizerElement = resizable ? (React__default["default"].createElement("div", Object.assign({ className: b('resizer', { direction }) }, resizerHandlers),
|
|
3138
3142
|
React__default["default"].createElement("div", { className: b('resizer-handle') }))) : null;
|
|
3139
|
-
return (React__default["default"].createElement(CSSTransition, { in: visible, timeout: TIMEOUT, unmountOnExit:
|
|
3140
|
-
React__default["default"].createElement("div", { ref: handleRef, className: b('item', { direction: cssDirection }, className), style: { width: resizable ? `${resizedWidth}px` : undefined } },
|
|
3143
|
+
return (React__default["default"].createElement(CSSTransition, { in: visible, timeout: TIMEOUT, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, classNames: b('item-transition', { direction: cssDirection }), nodeRef: itemRef, onEnter: () => setInitialRender(false), onExit: () => setInitialRender(false) },
|
|
3144
|
+
React__default["default"].createElement("div", { ref: handleRef, className: b('item', { direction: cssDirection, hidden: isInitialRender && !visible }, [className]), style: { width: resizable ? `${resizedWidth}px` : undefined } },
|
|
3141
3145
|
resizerElement, children !== null && children !== void 0 ? children : content)));
|
|
3142
3146
|
});
|
|
3143
|
-
const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEscape, preventScrollBody = true, hideVeil, disablePortal = true, }) => {
|
|
3147
|
+
const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEscape, preventScrollBody = true, hideVeil, disablePortal = true, keepMounted = false, }) => {
|
|
3144
3148
|
let someItemVisible = false;
|
|
3145
3149
|
React__default["default"].Children.forEach(children, (child) => {
|
|
3146
3150
|
if (React__default["default"].isValidElement(child) && child.type === DrawerItem) {
|
|
@@ -3166,7 +3170,7 @@ const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEsca
|
|
|
3166
3170
|
uikit.useBodyScrollLock({ enabled: preventScrollBody && someItemVisible });
|
|
3167
3171
|
const containerRef = React__default["default"].useRef(null);
|
|
3168
3172
|
const veilRef = React__default["default"].useRef(null);
|
|
3169
|
-
const drawer = (React__default["default"].createElement(Transition, { in: someItemVisible, timeout: { enter: 0, exit: TIMEOUT }, mountOnEnter:
|
|
3173
|
+
const drawer = (React__default["default"].createElement(Transition, { in: someItemVisible, timeout: { enter: 0, exit: TIMEOUT }, mountOnEnter: !keepMounted, unmountOnExit: !keepMounted, nodeRef: containerRef }, (state) => {
|
|
3170
3174
|
const childrenVisible = someItemVisible && state === 'entered';
|
|
3171
3175
|
return (React__default["default"].createElement("div", { ref: containerRef, className: b({ hideVeil }, className), style: style },
|
|
3172
3176
|
React__default["default"].createElement(CSSTransition, { in: childrenVisible, timeout: TIMEOUT, unmountOnExit: true, classNames: b('veil-transition'), nodeRef: veilRef },
|
|
@@ -3175,7 +3179,7 @@ const Drawer = ({ className, veilClassName, children, style, onVeilClick, onEsca
|
|
|
3175
3179
|
if (React__default["default"].isValidElement(child) &&
|
|
3176
3180
|
child.type === DrawerItem) {
|
|
3177
3181
|
const childVisible = Boolean(child.props.visible);
|
|
3178
|
-
return React__default["default"].cloneElement(child, Object.assign(Object.assign({}, child.props), { visible: childVisible && childrenVisible }));
|
|
3182
|
+
return React__default["default"].cloneElement(child, Object.assign(Object.assign({ keepMounted }, child.props), { visible: childVisible && childrenVisible }));
|
|
3179
3183
|
}
|
|
3180
3184
|
return child;
|
|
3181
3185
|
})));
|