@hyphen/hyphen-components 2.25.0 → 2.25.2
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/hyphen-components.cjs.development.js +15 -10
- package/dist/hyphen-components.cjs.development.js.map +1 -1
- package/dist/hyphen-components.cjs.production.min.js +1 -1
- package/dist/hyphen-components.cjs.production.min.js.map +1 -1
- package/dist/hyphen-components.esm.js +15 -10
- package/dist/hyphen-components.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/Sidebar/Sidebar.tsx +15 -11
|
@@ -3823,7 +3823,9 @@ var SidebarProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
3823
3823
|
children = _ref.children,
|
|
3824
3824
|
props = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
3825
3825
|
var isMobile = useIsMobile();
|
|
3826
|
-
var _useState = useState(
|
|
3826
|
+
var _useState = useState(function () {
|
|
3827
|
+
return isMobile ? false : openProp != null ? openProp : defaultOpen;
|
|
3828
|
+
}),
|
|
3827
3829
|
openMobile = _useState[0],
|
|
3828
3830
|
setOpenMobile = _useState[1];
|
|
3829
3831
|
// Manages sidebar open state with a fallback to internal state when openProp is not provided
|
|
@@ -3831,6 +3833,14 @@ var SidebarProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
3831
3833
|
_open = _useState2[0],
|
|
3832
3834
|
_setOpen = _useState2[1];
|
|
3833
3835
|
var open = openProp != null ? openProp : _open;
|
|
3836
|
+
// Update open state when openProp or isMobile changes
|
|
3837
|
+
useEffect(function () {
|
|
3838
|
+
if (isMobile) {
|
|
3839
|
+
setOpenMobile(false); // Always start closed on mobile
|
|
3840
|
+
} else {
|
|
3841
|
+
_setOpen(openProp != null ? openProp : defaultOpen); // Use desktop state
|
|
3842
|
+
}
|
|
3843
|
+
}, [isMobile, openProp, defaultOpen]);
|
|
3834
3844
|
var setOpen = useCallback(function (value) {
|
|
3835
3845
|
var newOpenState = typeof value === 'function' ? value(open) : value;
|
|
3836
3846
|
if (newOpenState !== open) {
|
|
@@ -3864,12 +3874,6 @@ var SidebarProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
3864
3874
|
return window.removeEventListener('keydown', handleKeyDown);
|
|
3865
3875
|
};
|
|
3866
3876
|
}, [toggleSidebar]);
|
|
3867
|
-
// Update open state when `isMobile` changes
|
|
3868
|
-
useEffect(function () {
|
|
3869
|
-
if (isMobile && open) {
|
|
3870
|
-
setOpenMobile(open);
|
|
3871
|
-
}
|
|
3872
|
-
}, [isMobile, open]);
|
|
3873
3877
|
// Assign state for data attributes
|
|
3874
3878
|
var state = open ? 'expanded' : 'collapsed';
|
|
3875
3879
|
var contextValue = useMemo(function () {
|
|
@@ -3918,7 +3922,8 @@ var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref2, ref) {
|
|
|
3918
3922
|
placement: side
|
|
3919
3923
|
}, React__default.createElement(Box, {
|
|
3920
3924
|
"data-sidebar": "sidebar",
|
|
3921
|
-
"data-mobile": "true"
|
|
3925
|
+
"data-mobile": "true",
|
|
3926
|
+
height: "100"
|
|
3922
3927
|
}, children));
|
|
3923
3928
|
}
|
|
3924
3929
|
if (collapsible === 'none') {
|
|
@@ -3982,7 +3987,7 @@ var SidebarTrigger = /*#__PURE__*/React__default.forwardRef(function (_ref3, ref
|
|
|
3982
3987
|
variant: "tertiary",
|
|
3983
3988
|
size: "sm",
|
|
3984
3989
|
iconPrefix: "dock-left",
|
|
3985
|
-
className: className,
|
|
3990
|
+
className: classNames('m-left-sm m-left-0-tablet', className),
|
|
3986
3991
|
onClick: function onClick(event) {
|
|
3987
3992
|
_onClick == null || _onClick(event);
|
|
3988
3993
|
toggleSidebar();
|
|
@@ -3996,7 +4001,7 @@ var SidebarInset = /*#__PURE__*/React__default.forwardRef(function (_ref4, ref)
|
|
|
3996
4001
|
props = _objectWithoutPropertiesLoose(_ref4, _excluded4);
|
|
3997
4002
|
return React__default.createElement("main", _extends({
|
|
3998
4003
|
ref: ref,
|
|
3999
|
-
className: classNames('display-flex flex-auto flex-direction-column g-lg align-items-flex-start p-lg background-color-secondary', className)
|
|
4004
|
+
className: classNames('display-flex flex-auto flex-direction-column g-lg align-items-flex-start p-h-0 p-top-lg p-bottom-0 p-lg-tablet background-color-secondary', className)
|
|
4000
4005
|
}, props));
|
|
4001
4006
|
});
|
|
4002
4007
|
SidebarInset.displayName = 'SidebarInset';
|