@cloud-ru/ds-drawer 1.0.4-preview-d4c70f71.0 → 1.0.4-preview-fe0a44cc.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/dist/cjs/components/DrawerCustom/DrawerCustom.js +2 -4
- package/dist/cjs/components/DrawerCustom/styles.module.css +0 -1
- package/dist/cjs/style.css +0 -1
- package/dist/esm/components/DrawerCustom/DrawerCustom.js +3 -5
- package/dist/esm/components/DrawerCustom/styles.module.css +0 -1
- package/dist/esm/style.css +0 -1
- package/dist/tsconfig.cjs.tsbuildinfo +1 -1
- package/dist/tsconfig.esm.tsbuildinfo +1 -1
- package/package.json +6 -6
- package/src/components/DrawerCustom/DrawerCustom.tsx +4 -5
- package/src/components/DrawerCustom/styles.module.scss +0 -3
|
@@ -53,11 +53,9 @@ function DrawerFrame(props) {
|
|
|
53
53
|
const outerScrollLock = (0, hooks_1.useOuterScrollLock)(Boolean(open));
|
|
54
54
|
// Без явного container портал идёт через PortalContextProvider (как у Modal): скоуп к локальному
|
|
55
55
|
// элементу и отказ от body-level scroll lock, который rc-drawer ставит при рендере в document.body.
|
|
56
|
-
// Ноду резолвим сами (а не отдаём селектор в rc-drawer), чтобы `getContainer` и разметка корня
|
|
57
|
-
// опирались на один и тот же результат.
|
|
58
56
|
const portalContextRef = (0, portal_context_1.usePortalContext)();
|
|
59
|
-
const resolvedContainer = (
|
|
60
|
-
return ((0, jsx_runtime_1.jsx)(RcDrawer, { resizable: drawerResizable, panelRef: checkElement, mask: showBlackout, maskClosable: showBlackout, keyboard: showBlackout, "data-showblackout": showBlackout, open: open, onClose: onClose, push: push, getContainer: resolvedContainer, placement: position, destroyOnHidden: true, rootClassName: (0, classnames_1.default)(styles_module_scss_1.default.drawerRoot,
|
|
57
|
+
const resolvedContainer = container ?? (portalContextRef.current ? () => portalContextRef.current : undefined);
|
|
58
|
+
return ((0, jsx_runtime_1.jsx)(RcDrawer, { resizable: drawerResizable, panelRef: checkElement, mask: showBlackout, maskClosable: showBlackout, keyboard: showBlackout, "data-showblackout": showBlackout, open: open, onClose: onClose, push: push, getContainer: resolvedContainer, placement: position, destroyOnHidden: true, rootClassName: (0, classnames_1.default)(styles_module_scss_1.default.drawerRoot, rootClassName), style: drawerPanelStyle, classNames: {
|
|
61
59
|
section: (0, classnames_1.default)(styles_module_scss_1.default.drawer, className),
|
|
62
60
|
}, size: isPredefinedWidth ? 'null' : width, ...(0, utils_1.extractSupportProps)(rest), "data-content-wrapper": true, "data-position": position, "data-width": isPredefinedWidth ? width : undefined, "data-height-auto": heightAutoVertical ? true : undefined, "data-acrylic-appearance": 'neutral', "data-acrylic-level": '1Level', prefixCls: 'snack-rc-drawer', ...(disableMotions ? {} : constants_2.motionProps), children: (0, jsx_runtime_1.jsxs)(react_remove_scroll_1.RemoveScroll, { enabled: showBlackout || outerScrollLock, removeScrollBar: false, ref: focusTrapRef, className: styles_module_scss_1.default.focusScope, children: [showButtonClosed && ((0, jsx_runtime_1.jsx)("div", { className: styles_module_scss_1.default.showButtonClosedWrapper, children: (0, jsx_runtime_1.jsx)(popup_private_1.PopupCloseButton, { className: styles_module_scss_1.default.showButtonClosed, "aria-label": 'close drawer', "data-test-id": constants_1.TEST_IDS.closeButton, onClick: onClose }) })), (0, jsx_runtime_1.jsx)(bottom_sheet_1.OverlaySurfaceProvider, { surface: bottom_sheet_1.OVERLAY_SURFACE.Drawer, bodyHeightAuto: heightAutoVertical, children: children }), tooltip, nestedDrawer] }) }));
|
|
63
61
|
}
|
|
@@ -43,7 +43,6 @@
|
|
|
43
43
|
flex-grow:1;
|
|
44
44
|
box-sizing:border-box;
|
|
45
45
|
width:100%;
|
|
46
|
-
min-height:0;
|
|
47
46
|
box-shadow:var(--sn-boxShadow-elevation-level5, var(--sn-theme-effect-shadow-level5-layer1-positionX, 0) var(--sn-theme-effect-shadow-level5-layer1-positionY, 0) var(--sn-theme-effect-shadow-level5-layer1-blur, 16px) var(--sn-theme-effect-shadow-level5-layer1-speed, 0) var(--sn-theme-effect-shadow-layer1Color, rgba(0, 0, 0, 0.0784313725)), var(--sn-theme-effect-shadow-level5-layer2-positionX, 0) var(--sn-theme-effect-shadow-level5-layer2-positionY, 24px) var(--sn-theme-effect-shadow-level5-layer2-blur, 16px) var(--sn-theme-effect-shadow-level5-layer2-speed, 4px) var(--sn-theme-effect-shadow-layer2Color, rgba(0, 0, 0, 0.0784313725)));
|
|
48
47
|
}
|
|
49
48
|
.drawerRoot:global(.snack-rc-drawer) :global .snack-rc-drawer-content-wrapper{
|
package/dist/cjs/style.css
CHANGED
|
@@ -62,7 +62,6 @@
|
|
|
62
62
|
flex-grow:1;
|
|
63
63
|
box-sizing:border-box;
|
|
64
64
|
width:100%;
|
|
65
|
-
min-height:0;
|
|
66
65
|
box-shadow:var(--sn-boxShadow-elevation-level5, var(--sn-theme-effect-shadow-level5-layer1-positionX, 0) var(--sn-theme-effect-shadow-level5-layer1-positionY, 0) var(--sn-theme-effect-shadow-level5-layer1-blur, 16px) var(--sn-theme-effect-shadow-level5-layer1-speed, 0) var(--sn-theme-effect-shadow-layer1Color, rgba(0, 0, 0, 0.0784313725)), var(--sn-theme-effect-shadow-level5-layer2-positionX, 0) var(--sn-theme-effect-shadow-level5-layer2-positionY, 24px) var(--sn-theme-effect-shadow-level5-layer2-blur, 16px) var(--sn-theme-effect-shadow-level5-layer2-speed, 4px) var(--sn-theme-effect-shadow-layer2Color, rgba(0, 0, 0, 0.0784313725)));
|
|
67
66
|
}
|
|
68
67
|
.drawerRoot:global(.snack-rc-drawer) :global .snack-rc-drawer-content-wrapper{
|
|
@@ -2,7 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
2
2
|
import { isMobileLayout, useAdaptiveLayout } from '@cloud-ru/ds-adaptive';
|
|
3
3
|
import { BottomSheetCustom, OVERLAY_SURFACE, OverlaySurfaceProvider } from '@cloud-ru/ds-bottom-sheet';
|
|
4
4
|
import { PopupCloseButton } from '@cloud-ru/ds-popup-private';
|
|
5
|
-
import {
|
|
5
|
+
import { usePortalContext } from '@cloud-ru/ds-portal-context';
|
|
6
6
|
import { extractSupportProps, useModalOpenState } from '@cloud-ru/ds-utils';
|
|
7
7
|
import RcDrawerImport from '@rc-component/drawer';
|
|
8
8
|
import cn from 'classnames';
|
|
@@ -47,11 +47,9 @@ function DrawerFrame(props) {
|
|
|
47
47
|
const outerScrollLock = useOuterScrollLock(Boolean(open));
|
|
48
48
|
// Без явного container портал идёт через PortalContextProvider (как у Modal): скоуп к локальному
|
|
49
49
|
// элементу и отказ от body-level scroll lock, который rc-drawer ставит при рендере в document.body.
|
|
50
|
-
// Ноду резолвим сами (а не отдаём селектор в rc-drawer), чтобы `getContainer` и разметка корня
|
|
51
|
-
// опирались на один и тот же результат.
|
|
52
50
|
const portalContextRef = usePortalContext();
|
|
53
|
-
const resolvedContainer =
|
|
54
|
-
return (_jsx(RcDrawer, { resizable: drawerResizable, panelRef: checkElement, mask: showBlackout, maskClosable: showBlackout, keyboard: showBlackout, "data-showblackout": showBlackout, open: open, onClose: onClose, push: push, getContainer: resolvedContainer, placement: position, destroyOnHidden: true, rootClassName: cn(styles.drawerRoot,
|
|
51
|
+
const resolvedContainer = container ?? (portalContextRef.current ? () => portalContextRef.current : undefined);
|
|
52
|
+
return (_jsx(RcDrawer, { resizable: drawerResizable, panelRef: checkElement, mask: showBlackout, maskClosable: showBlackout, keyboard: showBlackout, "data-showblackout": showBlackout, open: open, onClose: onClose, push: push, getContainer: resolvedContainer, placement: position, destroyOnHidden: true, rootClassName: cn(styles.drawerRoot, rootClassName), style: drawerPanelStyle, classNames: {
|
|
55
53
|
section: cn(styles.drawer, className),
|
|
56
54
|
}, size: isPredefinedWidth ? 'null' : width, ...extractSupportProps(rest), "data-content-wrapper": true, "data-position": position, "data-width": isPredefinedWidth ? width : undefined, "data-height-auto": heightAutoVertical ? true : undefined, "data-acrylic-appearance": 'neutral', "data-acrylic-level": '1Level', prefixCls: 'snack-rc-drawer', ...(disableMotions ? {} : motionProps), children: _jsxs(RemoveScroll, { enabled: showBlackout || outerScrollLock, removeScrollBar: false, ref: focusTrapRef, className: styles.focusScope, children: [showButtonClosed && (_jsx("div", { className: styles.showButtonClosedWrapper, children: _jsx(PopupCloseButton, { className: styles.showButtonClosed, "aria-label": 'close drawer', "data-test-id": TEST_IDS.closeButton, onClick: onClose }) })), _jsx(OverlaySurfaceProvider, { surface: OVERLAY_SURFACE.Drawer, bodyHeightAuto: heightAutoVertical, children: children }), tooltip, nestedDrawer] }) }));
|
|
57
55
|
}
|
|
@@ -43,7 +43,6 @@
|
|
|
43
43
|
flex-grow:1;
|
|
44
44
|
box-sizing:border-box;
|
|
45
45
|
width:100%;
|
|
46
|
-
min-height:0;
|
|
47
46
|
box-shadow:var(--sn-boxShadow-elevation-level5, var(--sn-theme-effect-shadow-level5-layer1-positionX, 0) var(--sn-theme-effect-shadow-level5-layer1-positionY, 0) var(--sn-theme-effect-shadow-level5-layer1-blur, 16px) var(--sn-theme-effect-shadow-level5-layer1-speed, 0) var(--sn-theme-effect-shadow-layer1Color, rgba(0, 0, 0, 0.0784313725)), var(--sn-theme-effect-shadow-level5-layer2-positionX, 0) var(--sn-theme-effect-shadow-level5-layer2-positionY, 24px) var(--sn-theme-effect-shadow-level5-layer2-blur, 16px) var(--sn-theme-effect-shadow-level5-layer2-speed, 4px) var(--sn-theme-effect-shadow-layer2Color, rgba(0, 0, 0, 0.0784313725)));
|
|
48
47
|
}
|
|
49
48
|
.drawerRoot:global(.snack-rc-drawer) :global .snack-rc-drawer-content-wrapper{
|
package/dist/esm/style.css
CHANGED
|
@@ -62,7 +62,6 @@
|
|
|
62
62
|
flex-grow:1;
|
|
63
63
|
box-sizing:border-box;
|
|
64
64
|
width:100%;
|
|
65
|
-
min-height:0;
|
|
66
65
|
box-shadow:var(--sn-boxShadow-elevation-level5, var(--sn-theme-effect-shadow-level5-layer1-positionX, 0) var(--sn-theme-effect-shadow-level5-layer1-positionY, 0) var(--sn-theme-effect-shadow-level5-layer1-blur, 16px) var(--sn-theme-effect-shadow-level5-layer1-speed, 0) var(--sn-theme-effect-shadow-layer1Color, rgba(0, 0, 0, 0.0784313725)), var(--sn-theme-effect-shadow-level5-layer2-positionX, 0) var(--sn-theme-effect-shadow-level5-layer2-positionY, 24px) var(--sn-theme-effect-shadow-level5-layer2-blur, 16px) var(--sn-theme-effect-shadow-level5-layer2-speed, 4px) var(--sn-theme-effect-shadow-layer2Color, rgba(0, 0, 0, 0.0784313725)));
|
|
67
66
|
}
|
|
68
67
|
.drawerRoot:global(.snack-rc-drawer) :global .snack-rc-drawer-content-wrapper{
|