@hyphen/hyphen-components 7.2.0 → 7.3.1
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/components/Sidebar/Sidebar.d.ts +20 -13
- package/dist/components/Sidebar/Sidebar.stories.d.ts +2 -0
- package/dist/hyphen-components.cjs.development.js +280 -161
- 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 +280 -161
- package/dist/hyphen-components.esm.js.map +1 -1
- package/package.json +2 -2
- package/src/components/Sidebar/Sidebar.stories.tsx +104 -1
- package/src/components/Sidebar/Sidebar.test.tsx +178 -3
- package/src/components/Sidebar/Sidebar.tsx +424 -194
|
@@ -3854,7 +3854,7 @@ TooltipContent.displayName = TooltipPrimitive.Content.displayName;
|
|
|
3854
3854
|
|
|
3855
3855
|
var _excluded$3 = ["defaultOpen", "open", "storageKey", "onOpenChange", "className", "style", "children"],
|
|
3856
3856
|
_excluded2 = ["side", "collapsible", "className", "children"],
|
|
3857
|
-
_excluded3 = ["className", "onClick"],
|
|
3857
|
+
_excluded3 = ["className", "onClick", "side", "iconName"],
|
|
3858
3858
|
_excluded4 = ["className"],
|
|
3859
3859
|
_excluded5 = ["className"],
|
|
3860
3860
|
_excluded6 = ["className"],
|
|
@@ -3871,92 +3871,190 @@ var _excluded$3 = ["defaultOpen", "open", "storageKey", "onOpenChange", "classNa
|
|
|
3871
3871
|
_excluded15 = ["className"];
|
|
3872
3872
|
var SIDEBAR_WIDTH = '16rem';
|
|
3873
3873
|
var SIDEBAR_WIDTH_ICON = '44px';
|
|
3874
|
-
var
|
|
3875
|
-
var
|
|
3876
|
-
|
|
3877
|
-
|
|
3878
|
-
|
|
3879
|
-
|
|
3874
|
+
var SIDEBAR_KEYBOARD_SHORTCUT_LEFT = '[';
|
|
3875
|
+
var SIDEBAR_KEYBOARD_SHORTCUT_RIGHT = ']';
|
|
3876
|
+
var SidebarIsMobileContext = /*#__PURE__*/React__default.createContext(null);
|
|
3877
|
+
var SidebarLeftContext = /*#__PURE__*/React__default.createContext(null);
|
|
3878
|
+
var SidebarRightContext = /*#__PURE__*/React__default.createContext(null);
|
|
3879
|
+
var SidebarSideContext = /*#__PURE__*/React__default.createContext('left');
|
|
3880
|
+
var resolveSideValue = function resolveSideValue(value, side, fallback) {
|
|
3881
|
+
if (typeof value === 'boolean') {
|
|
3882
|
+
return value;
|
|
3880
3883
|
}
|
|
3881
|
-
|
|
3882
|
-
|
|
3883
|
-
|
|
3884
|
-
|
|
3885
|
-
|
|
3886
|
-
|
|
3887
|
-
|
|
3888
|
-
|
|
3889
|
-
|
|
3890
|
-
|
|
3891
|
-
|
|
3892
|
-
|
|
3893
|
-
|
|
3894
|
-
|
|
3895
|
-
|
|
3896
|
-
|
|
3884
|
+
if (value && typeof value === 'object' && typeof value[side] === 'boolean') {
|
|
3885
|
+
return value[side];
|
|
3886
|
+
}
|
|
3887
|
+
return fallback;
|
|
3888
|
+
};
|
|
3889
|
+
var resolveControlledOpen = function resolveControlledOpen(value, side) {
|
|
3890
|
+
if (typeof value === 'boolean') {
|
|
3891
|
+
return value;
|
|
3892
|
+
}
|
|
3893
|
+
if (value && typeof value === 'object' && typeof value[side] === 'boolean') {
|
|
3894
|
+
return value[side];
|
|
3895
|
+
}
|
|
3896
|
+
return undefined;
|
|
3897
|
+
};
|
|
3898
|
+
var resolveStorageKey = function resolveStorageKey(storageKey, side) {
|
|
3899
|
+
if (typeof storageKey === 'string') {
|
|
3900
|
+
return side === 'left' ? storageKey : storageKey + "_right";
|
|
3901
|
+
}
|
|
3902
|
+
if (storageKey && typeof storageKey === 'object') {
|
|
3903
|
+
var _storageKey$side;
|
|
3904
|
+
return (_storageKey$side = storageKey[side]) != null ? _storageKey$side : side === 'left' ? 'sidebar_expanded' : 'sidebar_expanded_right';
|
|
3905
|
+
}
|
|
3906
|
+
return side === 'left' ? 'sidebar_expanded' : 'sidebar_expanded_right';
|
|
3907
|
+
};
|
|
3908
|
+
var getSidebarWidth = function getSidebarWidth(state, collapsible) {
|
|
3909
|
+
return state === 'collapsed' && collapsible === 'icon' ? 'var(--sidebar-width-icon)' : state === 'collapsed' ? '0' : 'var(--sidebar-width)';
|
|
3910
|
+
};
|
|
3911
|
+
var getSidebarOffsetStyles = function getSidebarOffsetStyles(side, state, collapsible) {
|
|
3912
|
+
var isVisible = state === 'expanded' || collapsible === 'icon';
|
|
3913
|
+
return {
|
|
3914
|
+
left: side === 'left' ? isVisible ? '0' : 'calc(var(--sidebar-width)*-1)' : undefined,
|
|
3915
|
+
right: side === 'right' ? isVisible ? '0' : 'calc(var(--sidebar-width)*-1)' : undefined
|
|
3916
|
+
};
|
|
3917
|
+
};
|
|
3918
|
+
var useSidebarSideState = function useSidebarSideState(_ref) {
|
|
3919
|
+
var side = _ref.side,
|
|
3920
|
+
isMobile = _ref.isMobile,
|
|
3921
|
+
defaultOpen = _ref.defaultOpen,
|
|
3922
|
+
openProp = _ref.openProp,
|
|
3923
|
+
onOpenChange = _ref.onOpenChange,
|
|
3924
|
+
storageKey = _ref.storageKey,
|
|
3925
|
+
lastToggledSideRef = _ref.lastToggledSideRef;
|
|
3926
|
+
var defaultFallback = typeof defaultOpen === 'boolean' ? defaultOpen : true;
|
|
3927
|
+
var initialDefaultOpen = resolveSideValue(defaultOpen, side, defaultFallback);
|
|
3928
|
+
var controlledOpen = resolveControlledOpen(openProp, side);
|
|
3929
|
+
var isControlled = typeof controlledOpen === 'boolean';
|
|
3930
|
+
var _useState = useState(controlledOpen != null ? controlledOpen : initialDefaultOpen),
|
|
3931
|
+
uncontrolledOpen = _useState[0],
|
|
3932
|
+
setUncontrolledOpen = _useState[1];
|
|
3933
|
+
var _useState2 = useState(function () {
|
|
3934
|
+
return isMobile ? false : controlledOpen != null ? controlledOpen : initialDefaultOpen;
|
|
3897
3935
|
}),
|
|
3898
|
-
openMobile =
|
|
3899
|
-
setOpenMobile =
|
|
3900
|
-
|
|
3901
|
-
var _useState2 = useState(openProp != null ? openProp : defaultOpen),
|
|
3902
|
-
_open = _useState2[0],
|
|
3903
|
-
_setOpen = _useState2[1];
|
|
3904
|
-
var open = openProp != null ? openProp : _open;
|
|
3905
|
-
// Update open state when openProp or isMobile changes
|
|
3936
|
+
openMobile = _useState2[0],
|
|
3937
|
+
setOpenMobile = _useState2[1];
|
|
3938
|
+
var open = controlledOpen != null ? controlledOpen : uncontrolledOpen;
|
|
3906
3939
|
useEffect(function () {
|
|
3907
3940
|
if (isMobile) {
|
|
3908
|
-
setOpenMobile(false);
|
|
3941
|
+
setOpenMobile(false);
|
|
3909
3942
|
} else {
|
|
3910
|
-
|
|
3943
|
+
setUncontrolledOpen(controlledOpen != null ? controlledOpen : initialDefaultOpen);
|
|
3911
3944
|
}
|
|
3912
|
-
}, [isMobile,
|
|
3945
|
+
}, [isMobile, controlledOpen, initialDefaultOpen]);
|
|
3913
3946
|
var setOpen = useCallback(function (value) {
|
|
3914
3947
|
var newOpenState = typeof value === 'function' ? value(open) : value;
|
|
3915
|
-
if (newOpenState
|
|
3916
|
-
|
|
3917
|
-
setOpenProp(newOpenState);
|
|
3918
|
-
} else {
|
|
3919
|
-
_setOpen(newOpenState);
|
|
3920
|
-
}
|
|
3921
|
-
localStorage.setItem(storageKey, "" + newOpenState);
|
|
3948
|
+
if (newOpenState === open) {
|
|
3949
|
+
return;
|
|
3922
3950
|
}
|
|
3923
|
-
|
|
3924
|
-
|
|
3951
|
+
if (!isControlled) {
|
|
3952
|
+
setUncontrolledOpen(newOpenState);
|
|
3953
|
+
}
|
|
3954
|
+
onOpenChange == null || onOpenChange(newOpenState, side);
|
|
3955
|
+
var key = resolveStorageKey(storageKey, side);
|
|
3956
|
+
localStorage.setItem(key, "" + newOpenState);
|
|
3957
|
+
}, [open, isControlled, onOpenChange, side, storageKey]);
|
|
3925
3958
|
var toggleSidebar = useCallback(function () {
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3959
|
+
lastToggledSideRef.current = side;
|
|
3960
|
+
isMobile ? setOpenMobile(function (value) {
|
|
3961
|
+
return !value;
|
|
3962
|
+
}) : setOpen(function (value) {
|
|
3963
|
+
return !value;
|
|
3930
3964
|
});
|
|
3931
|
-
}, [isMobile, setOpen,
|
|
3932
|
-
// Keydown event handler for toggling sidebar
|
|
3933
|
-
useEffect(function () {
|
|
3934
|
-
var handleKeyDown = function handleKeyDown(event) {
|
|
3935
|
-
if (event.key === SIDEBAR_KEYBOARD_SHORTCUT) {
|
|
3936
|
-
event.preventDefault();
|
|
3937
|
-
toggleSidebar();
|
|
3938
|
-
}
|
|
3939
|
-
};
|
|
3940
|
-
window.addEventListener('keydown', handleKeyDown);
|
|
3941
|
-
return function () {
|
|
3942
|
-
return window.removeEventListener('keydown', handleKeyDown);
|
|
3943
|
-
};
|
|
3944
|
-
}, [toggleSidebar]);
|
|
3945
|
-
// Assign state for data attributes
|
|
3965
|
+
}, [isMobile, setOpen, side, lastToggledSideRef]);
|
|
3946
3966
|
var state = open ? 'expanded' : 'collapsed';
|
|
3947
|
-
|
|
3967
|
+
return useMemo(function () {
|
|
3948
3968
|
return {
|
|
3949
3969
|
state: state,
|
|
3950
3970
|
open: open,
|
|
3951
3971
|
setOpen: setOpen,
|
|
3952
|
-
isMobile: isMobile,
|
|
3953
3972
|
openMobile: openMobile,
|
|
3954
3973
|
setOpenMobile: setOpenMobile,
|
|
3955
3974
|
toggleSidebar: toggleSidebar
|
|
3956
3975
|
};
|
|
3957
|
-
}, [state, open, setOpen,
|
|
3958
|
-
|
|
3959
|
-
|
|
3976
|
+
}, [state, open, setOpen, openMobile, setOpenMobile, toggleSidebar]);
|
|
3977
|
+
};
|
|
3978
|
+
function useSidebar(sideOverride) {
|
|
3979
|
+
var isMobile = React__default.useContext(SidebarIsMobileContext);
|
|
3980
|
+
if (typeof isMobile !== 'boolean') {
|
|
3981
|
+
throw new Error('useSidebar must be used within a SidebarProvider.');
|
|
3982
|
+
}
|
|
3983
|
+
var contextSide = React__default.useContext(SidebarSideContext);
|
|
3984
|
+
var side = sideOverride != null ? sideOverride : contextSide;
|
|
3985
|
+
var sideContext = React__default.useContext(side === 'left' ? SidebarLeftContext : SidebarRightContext);
|
|
3986
|
+
if (!sideContext) {
|
|
3987
|
+
throw new Error('useSidebar must be used within a SidebarProvider.');
|
|
3988
|
+
}
|
|
3989
|
+
return _extends({}, sideContext, {
|
|
3990
|
+
isMobile: isMobile,
|
|
3991
|
+
side: side
|
|
3992
|
+
});
|
|
3993
|
+
}
|
|
3994
|
+
var SidebarProvider = /*#__PURE__*/forwardRef(function (_ref2, ref) {
|
|
3995
|
+
var _ref2$defaultOpen = _ref2.defaultOpen,
|
|
3996
|
+
defaultOpen = _ref2$defaultOpen === void 0 ? true : _ref2$defaultOpen,
|
|
3997
|
+
openProp = _ref2.open,
|
|
3998
|
+
_ref2$storageKey = _ref2.storageKey,
|
|
3999
|
+
storageKey = _ref2$storageKey === void 0 ? 'sidebar_expanded' : _ref2$storageKey,
|
|
4000
|
+
setOpenProp = _ref2.onOpenChange,
|
|
4001
|
+
className = _ref2.className,
|
|
4002
|
+
style = _ref2.style,
|
|
4003
|
+
children = _ref2.children,
|
|
4004
|
+
props = _objectWithoutPropertiesLoose(_ref2, _excluded$3);
|
|
4005
|
+
var isMobile = useIsMobile();
|
|
4006
|
+
var lastToggledSideRef = React__default.useRef('left');
|
|
4007
|
+
var leftToggleRef = React__default.useRef(null);
|
|
4008
|
+
var rightToggleRef = React__default.useRef(null);
|
|
4009
|
+
var leftState = useSidebarSideState({
|
|
4010
|
+
side: 'left',
|
|
4011
|
+
isMobile: isMobile,
|
|
4012
|
+
defaultOpen: defaultOpen,
|
|
4013
|
+
openProp: openProp,
|
|
4014
|
+
onOpenChange: setOpenProp,
|
|
4015
|
+
storageKey: storageKey,
|
|
4016
|
+
lastToggledSideRef: lastToggledSideRef
|
|
4017
|
+
});
|
|
4018
|
+
var rightState = useSidebarSideState({
|
|
4019
|
+
side: 'right',
|
|
4020
|
+
isMobile: isMobile,
|
|
4021
|
+
defaultOpen: defaultOpen,
|
|
4022
|
+
openProp: openProp,
|
|
4023
|
+
onOpenChange: setOpenProp,
|
|
4024
|
+
storageKey: storageKey,
|
|
4025
|
+
lastToggledSideRef: lastToggledSideRef
|
|
4026
|
+
});
|
|
4027
|
+
useEffect(function () {
|
|
4028
|
+
leftToggleRef.current = leftState.toggleSidebar;
|
|
4029
|
+
}, [leftState.toggleSidebar]);
|
|
4030
|
+
useEffect(function () {
|
|
4031
|
+
rightToggleRef.current = rightState.toggleSidebar;
|
|
4032
|
+
}, [rightState.toggleSidebar]);
|
|
4033
|
+
useEffect(function () {
|
|
4034
|
+
var handleKeyDown = function handleKeyDown(event) {
|
|
4035
|
+
var target = event.target;
|
|
4036
|
+
if (target && (target.tagName === 'INPUT' || target.tagName === 'TEXTAREA' || target.tagName === 'SELECT' || target.isContentEditable)) {
|
|
4037
|
+
return;
|
|
4038
|
+
}
|
|
4039
|
+
var shortcutSide = event.key === SIDEBAR_KEYBOARD_SHORTCUT_LEFT ? 'left' : event.key === SIDEBAR_KEYBOARD_SHORTCUT_RIGHT ? 'right' : null;
|
|
4040
|
+
if (!shortcutSide) {
|
|
4041
|
+
return;
|
|
4042
|
+
}
|
|
4043
|
+
event.preventDefault();
|
|
4044
|
+
var toggleSidebar = shortcutSide === 'left' ? leftToggleRef.current : rightToggleRef.current;
|
|
4045
|
+
toggleSidebar == null || toggleSidebar();
|
|
4046
|
+
};
|
|
4047
|
+
window.addEventListener('keydown', handleKeyDown);
|
|
4048
|
+
return function () {
|
|
4049
|
+
return window.removeEventListener('keydown', handleKeyDown);
|
|
4050
|
+
};
|
|
4051
|
+
}, []);
|
|
4052
|
+
return React__default.createElement(SidebarIsMobileContext.Provider, {
|
|
4053
|
+
value: isMobile
|
|
4054
|
+
}, React__default.createElement(SidebarLeftContext.Provider, {
|
|
4055
|
+
value: leftState
|
|
4056
|
+
}, React__default.createElement(SidebarRightContext.Provider, {
|
|
4057
|
+
value: rightState
|
|
3960
4058
|
}, React__default.createElement(TooltipProvider, {
|
|
3961
4059
|
delayDuration: 0
|
|
3962
4060
|
}, React__default.createElement("div", _extends({
|
|
@@ -3967,24 +4065,26 @@ var SidebarProvider = /*#__PURE__*/forwardRef(function (_ref, ref) {
|
|
|
3967
4065
|
}, style),
|
|
3968
4066
|
className: classNames('display-flex w-100 background-color-secondary', className),
|
|
3969
4067
|
ref: ref
|
|
3970
|
-
}, props), children)));
|
|
4068
|
+
}, props), children)))));
|
|
3971
4069
|
});
|
|
3972
4070
|
SidebarProvider.displayName = 'SidebarProvider';
|
|
3973
|
-
var Sidebar = /*#__PURE__*/React__default.forwardRef(function (
|
|
3974
|
-
var
|
|
3975
|
-
side =
|
|
3976
|
-
|
|
3977
|
-
collapsible =
|
|
3978
|
-
className =
|
|
3979
|
-
children =
|
|
3980
|
-
props = _objectWithoutPropertiesLoose(
|
|
3981
|
-
var _useSidebar = useSidebar(),
|
|
4071
|
+
var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref3, ref) {
|
|
4072
|
+
var _ref3$side = _ref3.side,
|
|
4073
|
+
side = _ref3$side === void 0 ? 'left' : _ref3$side,
|
|
4074
|
+
_ref3$collapsible = _ref3.collapsible,
|
|
4075
|
+
collapsible = _ref3$collapsible === void 0 ? 'offcanvas' : _ref3$collapsible,
|
|
4076
|
+
className = _ref3.className,
|
|
4077
|
+
children = _ref3.children,
|
|
4078
|
+
props = _objectWithoutPropertiesLoose(_ref3, _excluded2);
|
|
4079
|
+
var _useSidebar = useSidebar(side),
|
|
3982
4080
|
isMobile = _useSidebar.isMobile,
|
|
3983
4081
|
state = _useSidebar.state,
|
|
3984
4082
|
openMobile = _useSidebar.openMobile,
|
|
3985
4083
|
setOpenMobile = _useSidebar.setOpenMobile;
|
|
3986
4084
|
if (isMobile) {
|
|
3987
|
-
return React__default.createElement(
|
|
4085
|
+
return React__default.createElement(SidebarSideContext.Provider, {
|
|
4086
|
+
value: side
|
|
4087
|
+
}, React__default.createElement(Drawer, {
|
|
3988
4088
|
isOpen: openMobile,
|
|
3989
4089
|
onDismiss: function onDismiss() {
|
|
3990
4090
|
return setOpenMobile(false);
|
|
@@ -3994,18 +4094,22 @@ var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref2, ref) {
|
|
|
3994
4094
|
"data-sidebar": "sidebar",
|
|
3995
4095
|
"data-mobile": "true",
|
|
3996
4096
|
height: "100"
|
|
3997
|
-
}, children));
|
|
4097
|
+
}, children)));
|
|
3998
4098
|
}
|
|
3999
4099
|
if (collapsible === 'none') {
|
|
4000
|
-
return React__default.createElement(
|
|
4100
|
+
return React__default.createElement(SidebarSideContext.Provider, {
|
|
4101
|
+
value: side
|
|
4102
|
+
}, React__default.createElement("div", _extends({
|
|
4001
4103
|
className: classNames('group display-flex h-100 font-size-xs flex-direction-column background-color-secondary font-color-base', className),
|
|
4002
4104
|
style: {
|
|
4003
4105
|
width: 'var(--sidebar-width)'
|
|
4004
4106
|
},
|
|
4005
4107
|
ref: ref
|
|
4006
|
-
}, props), children);
|
|
4108
|
+
}, props), children));
|
|
4007
4109
|
}
|
|
4008
|
-
return React__default.createElement(
|
|
4110
|
+
return React__default.createElement(SidebarSideContext.Provider, {
|
|
4111
|
+
value: side
|
|
4112
|
+
}, React__default.createElement(Box, {
|
|
4009
4113
|
ref: ref,
|
|
4010
4114
|
background: "primary",
|
|
4011
4115
|
display: {
|
|
@@ -4015,6 +4119,9 @@ var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref2, ref) {
|
|
|
4015
4119
|
color: "base",
|
|
4016
4120
|
fontSize: "sm",
|
|
4017
4121
|
position: "relative",
|
|
4122
|
+
style: side === 'right' && collapsible === 'offcanvas' ? {
|
|
4123
|
+
overflowX: 'hidden'
|
|
4124
|
+
} : undefined,
|
|
4018
4125
|
"data-state": state,
|
|
4019
4126
|
"data-collapsible": collapsible,
|
|
4020
4127
|
"data-side": side,
|
|
@@ -4026,14 +4133,13 @@ var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref2, ref) {
|
|
|
4026
4133
|
transitionDuration: 'var(--sidebar-transition-duration, 200ms)',
|
|
4027
4134
|
animationDuration: 'var(--sidebar-transition-duration, 200ms)',
|
|
4028
4135
|
transitionProperty: 'width',
|
|
4029
|
-
width: state
|
|
4136
|
+
width: getSidebarWidth(state, collapsible),
|
|
4030
4137
|
height: '100svh'
|
|
4031
4138
|
},
|
|
4032
4139
|
className: classNames('position-relative', className)
|
|
4033
4140
|
}), React__default.createElement("div", _extends({
|
|
4034
4141
|
className: classNames('position-absolute display-none display-flex-desktop ', className),
|
|
4035
|
-
style: {
|
|
4036
|
-
left: state === 'expanded' || collapsible === 'icon' ? '0' : 'calc(var(--sidebar-width)*-1)',
|
|
4142
|
+
style: _extends({}, getSidebarOffsetStyles(side, state, collapsible), {
|
|
4037
4143
|
top: '0',
|
|
4038
4144
|
bottom: '0',
|
|
4039
4145
|
zIndex: 'var(--size-z-index-drawer)',
|
|
@@ -4044,46 +4150,55 @@ var Sidebar = /*#__PURE__*/React__default.forwardRef(function (_ref2, ref) {
|
|
|
4044
4150
|
transitionProperty: 'left, right, width',
|
|
4045
4151
|
width: state === 'collapsed' && collapsible === 'icon' ? 'var(--sidebar-width-icon)' : 'var(--sidebar-width)',
|
|
4046
4152
|
height: '100svh'
|
|
4047
|
-
}
|
|
4153
|
+
})
|
|
4048
4154
|
}, props), React__default.createElement("div", {
|
|
4049
4155
|
"data-sidebar": "sidebar",
|
|
4050
|
-
className:
|
|
4051
|
-
|
|
4156
|
+
className: classNames('display-flex h-100 w-100 flex-direction-column background-color-secondary font-color-base', {
|
|
4157
|
+
'p-right-lg-desktop': side === 'right'
|
|
4158
|
+
})
|
|
4159
|
+
}, children))));
|
|
4052
4160
|
});
|
|
4053
4161
|
Sidebar.displayName = 'Sidebar';
|
|
4054
|
-
var SidebarTrigger = /*#__PURE__*/React__default.forwardRef(function (
|
|
4055
|
-
var className =
|
|
4056
|
-
_onClick =
|
|
4057
|
-
|
|
4058
|
-
|
|
4059
|
-
|
|
4162
|
+
var SidebarTrigger = /*#__PURE__*/React__default.forwardRef(function (_ref4, ref) {
|
|
4163
|
+
var className = _ref4.className,
|
|
4164
|
+
_onClick = _ref4.onClick,
|
|
4165
|
+
side = _ref4.side,
|
|
4166
|
+
_ref4$iconName = _ref4.iconName,
|
|
4167
|
+
iconName = _ref4$iconName === void 0 ? 'dock-left' : _ref4$iconName,
|
|
4168
|
+
props = _objectWithoutPropertiesLoose(_ref4, _excluded3);
|
|
4169
|
+
var _useSidebar2 = useSidebar(side),
|
|
4170
|
+
toggleSidebar = _useSidebar2.toggleSidebar,
|
|
4171
|
+
contextSide = _useSidebar2.side;
|
|
4060
4172
|
return React__default.createElement(Button, _extends({
|
|
4061
4173
|
ref: ref,
|
|
4062
4174
|
"data-sidebar": "trigger",
|
|
4063
4175
|
variant: "tertiary",
|
|
4064
4176
|
size: "sm",
|
|
4065
|
-
iconPrefix:
|
|
4066
|
-
className: classNames(
|
|
4177
|
+
iconPrefix: iconName,
|
|
4178
|
+
className: classNames({
|
|
4179
|
+
'm-left-sm m-left-0-tablet': contextSide === 'left',
|
|
4180
|
+
'm-right-sm m-right-0-tablet': contextSide === 'right'
|
|
4181
|
+
}, className),
|
|
4067
4182
|
onClick: function onClick(event) {
|
|
4068
4183
|
_onClick == null || _onClick(event);
|
|
4069
4184
|
toggleSidebar();
|
|
4070
4185
|
},
|
|
4071
|
-
"aria-label": "
|
|
4186
|
+
"aria-label": "Toggle " + contextSide + " sidebar"
|
|
4072
4187
|
}, props));
|
|
4073
4188
|
});
|
|
4074
4189
|
SidebarTrigger.displayName = 'SidebarTrigger';
|
|
4075
|
-
var SidebarInset = /*#__PURE__*/React__default.forwardRef(function (
|
|
4076
|
-
var className =
|
|
4077
|
-
props = _objectWithoutPropertiesLoose(
|
|
4190
|
+
var SidebarInset = /*#__PURE__*/React__default.forwardRef(function (_ref5, ref) {
|
|
4191
|
+
var className = _ref5.className,
|
|
4192
|
+
props = _objectWithoutPropertiesLoose(_ref5, _excluded4);
|
|
4078
4193
|
return React__default.createElement("main", _extends({
|
|
4079
4194
|
ref: ref,
|
|
4080
4195
|
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)
|
|
4081
4196
|
}, props));
|
|
4082
4197
|
});
|
|
4083
4198
|
SidebarInset.displayName = 'SidebarInset';
|
|
4084
|
-
var SidebarHeader = /*#__PURE__*/React__default.forwardRef(function (
|
|
4085
|
-
var className =
|
|
4086
|
-
props = _objectWithoutPropertiesLoose(
|
|
4199
|
+
var SidebarHeader = /*#__PURE__*/React__default.forwardRef(function (_ref6, ref) {
|
|
4200
|
+
var className = _ref6.className,
|
|
4201
|
+
props = _objectWithoutPropertiesLoose(_ref6, _excluded5);
|
|
4087
4202
|
var _useSidebar3 = useSidebar(),
|
|
4088
4203
|
state = _useSidebar3.state;
|
|
4089
4204
|
var isCollapsed = state === 'collapsed';
|
|
@@ -4096,9 +4211,9 @@ var SidebarHeader = /*#__PURE__*/React__default.forwardRef(function (_ref5, ref)
|
|
|
4096
4211
|
}, props));
|
|
4097
4212
|
});
|
|
4098
4213
|
SidebarHeader.displayName = 'SidebarHeader';
|
|
4099
|
-
var SidebarFooter = /*#__PURE__*/React__default.forwardRef(function (
|
|
4100
|
-
var className =
|
|
4101
|
-
props = _objectWithoutPropertiesLoose(
|
|
4214
|
+
var SidebarFooter = /*#__PURE__*/React__default.forwardRef(function (_ref7, ref) {
|
|
4215
|
+
var className = _ref7.className,
|
|
4216
|
+
props = _objectWithoutPropertiesLoose(_ref7, _excluded6);
|
|
4102
4217
|
return React__default.createElement("div", _extends({
|
|
4103
4218
|
ref: ref,
|
|
4104
4219
|
"data-sidebar": "footer",
|
|
@@ -4106,9 +4221,9 @@ var SidebarFooter = /*#__PURE__*/React__default.forwardRef(function (_ref6, ref)
|
|
|
4106
4221
|
}, props));
|
|
4107
4222
|
});
|
|
4108
4223
|
SidebarFooter.displayName = 'SidebarFooter';
|
|
4109
|
-
var SidebarContent = /*#__PURE__*/React__default.forwardRef(function (
|
|
4110
|
-
var className =
|
|
4111
|
-
props = _objectWithoutPropertiesLoose(
|
|
4224
|
+
var SidebarContent = /*#__PURE__*/React__default.forwardRef(function (_ref8, ref) {
|
|
4225
|
+
var className = _ref8.className,
|
|
4226
|
+
props = _objectWithoutPropertiesLoose(_ref8, _excluded7);
|
|
4112
4227
|
return React__default.createElement("div", _extends({
|
|
4113
4228
|
ref: ref,
|
|
4114
4229
|
"data-sidebar": "content",
|
|
@@ -4120,9 +4235,9 @@ var SidebarContent = /*#__PURE__*/React__default.forwardRef(function (_ref7, ref
|
|
|
4120
4235
|
}, props));
|
|
4121
4236
|
});
|
|
4122
4237
|
SidebarContent.displayName = 'SidebarContent';
|
|
4123
|
-
var SidebarMenu = /*#__PURE__*/React__default.forwardRef(function (
|
|
4124
|
-
var className =
|
|
4125
|
-
props = _objectWithoutPropertiesLoose(
|
|
4238
|
+
var SidebarMenu = /*#__PURE__*/React__default.forwardRef(function (_ref9, ref) {
|
|
4239
|
+
var className = _ref9.className,
|
|
4240
|
+
props = _objectWithoutPropertiesLoose(_ref9, _excluded8);
|
|
4126
4241
|
return React__default.createElement("ul", _extends({
|
|
4127
4242
|
ref: ref,
|
|
4128
4243
|
"data-sidebar": "menu",
|
|
@@ -4133,9 +4248,9 @@ var SidebarMenu = /*#__PURE__*/React__default.forwardRef(function (_ref8, ref) {
|
|
|
4133
4248
|
}, props));
|
|
4134
4249
|
});
|
|
4135
4250
|
SidebarMenu.displayName = 'SidebarMenu';
|
|
4136
|
-
var SidebarMenuItem = /*#__PURE__*/React__default.forwardRef(function (
|
|
4137
|
-
var className =
|
|
4138
|
-
props = _objectWithoutPropertiesLoose(
|
|
4251
|
+
var SidebarMenuItem = /*#__PURE__*/React__default.forwardRef(function (_ref0, ref) {
|
|
4252
|
+
var className = _ref0.className,
|
|
4253
|
+
props = _objectWithoutPropertiesLoose(_ref0, _excluded9);
|
|
4139
4254
|
return React__default.createElement("li", _extends({
|
|
4140
4255
|
ref: ref,
|
|
4141
4256
|
"data-sidebar": "menu-item",
|
|
@@ -4146,18 +4261,19 @@ var SidebarMenuItem = /*#__PURE__*/React__default.forwardRef(function (_ref9, re
|
|
|
4146
4261
|
}, props));
|
|
4147
4262
|
});
|
|
4148
4263
|
SidebarMenuItem.displayName = 'SidebarMenuItem';
|
|
4149
|
-
var SidebarMenuButton = /*#__PURE__*/React__default.forwardRef(function (
|
|
4150
|
-
var
|
|
4151
|
-
asChild =
|
|
4152
|
-
|
|
4153
|
-
isActive =
|
|
4154
|
-
tooltip =
|
|
4155
|
-
className =
|
|
4156
|
-
props = _objectWithoutPropertiesLoose(
|
|
4264
|
+
var SidebarMenuButton = /*#__PURE__*/React__default.forwardRef(function (_ref1, ref) {
|
|
4265
|
+
var _ref1$asChild = _ref1.asChild,
|
|
4266
|
+
asChild = _ref1$asChild === void 0 ? false : _ref1$asChild,
|
|
4267
|
+
_ref1$isActive = _ref1.isActive,
|
|
4268
|
+
isActive = _ref1$isActive === void 0 ? false : _ref1$isActive,
|
|
4269
|
+
tooltip = _ref1.tooltip,
|
|
4270
|
+
className = _ref1.className,
|
|
4271
|
+
props = _objectWithoutPropertiesLoose(_ref1, _excluded0);
|
|
4157
4272
|
var Comp = asChild ? Slot : 'button';
|
|
4158
4273
|
var _useSidebar4 = useSidebar(),
|
|
4159
4274
|
isMobile = _useSidebar4.isMobile,
|
|
4160
|
-
state = _useSidebar4.state
|
|
4275
|
+
state = _useSidebar4.state,
|
|
4276
|
+
side = _useSidebar4.side;
|
|
4161
4277
|
var button = React__default.createElement(Comp, _extends({
|
|
4162
4278
|
ref: ref,
|
|
4163
4279
|
"data-sidebar": "menu-button",
|
|
@@ -4178,15 +4294,15 @@ var SidebarMenuButton = /*#__PURE__*/React__default.forwardRef(function (_ref0,
|
|
|
4178
4294
|
return React__default.createElement(Tooltip, null, React__default.createElement(TooltipTrigger, {
|
|
4179
4295
|
asChild: true
|
|
4180
4296
|
}, button), React__default.createElement(TooltipContent, _extends({
|
|
4181
|
-
side:
|
|
4297
|
+
side: side === 'right' ? 'left' : 'right',
|
|
4182
4298
|
align: "center",
|
|
4183
4299
|
hidden: state !== 'collapsed' || isMobile
|
|
4184
4300
|
}, tooltip)));
|
|
4185
4301
|
});
|
|
4186
4302
|
SidebarMenuButton.displayName = 'SidebarMenuButton';
|
|
4187
|
-
var SidebarGroup = /*#__PURE__*/React__default.forwardRef(function (
|
|
4188
|
-
var className =
|
|
4189
|
-
props = _objectWithoutPropertiesLoose(
|
|
4303
|
+
var SidebarGroup = /*#__PURE__*/React__default.forwardRef(function (_ref10, ref) {
|
|
4304
|
+
var className = _ref10.className,
|
|
4305
|
+
props = _objectWithoutPropertiesLoose(_ref10, _excluded1);
|
|
4190
4306
|
return React__default.createElement("div", _extends({
|
|
4191
4307
|
ref: ref,
|
|
4192
4308
|
"data-sidebar": "group",
|
|
@@ -4194,9 +4310,9 @@ var SidebarGroup = /*#__PURE__*/React__default.forwardRef(function (_ref1, ref)
|
|
|
4194
4310
|
}, props));
|
|
4195
4311
|
});
|
|
4196
4312
|
SidebarGroup.displayName = 'SidebarGroup';
|
|
4197
|
-
var SidebarGroupLabel = /*#__PURE__*/React__default.forwardRef(function (
|
|
4198
|
-
var className =
|
|
4199
|
-
props = _objectWithoutPropertiesLoose(
|
|
4313
|
+
var SidebarGroupLabel = /*#__PURE__*/React__default.forwardRef(function (_ref11, ref) {
|
|
4314
|
+
var className = _ref11.className,
|
|
4315
|
+
props = _objectWithoutPropertiesLoose(_ref11, _excluded10);
|
|
4200
4316
|
return React__default.createElement("div", _extends({
|
|
4201
4317
|
ref: ref,
|
|
4202
4318
|
"data-sidebar": "group-label",
|
|
@@ -4204,9 +4320,9 @@ var SidebarGroupLabel = /*#__PURE__*/React__default.forwardRef(function (_ref10,
|
|
|
4204
4320
|
}, props));
|
|
4205
4321
|
});
|
|
4206
4322
|
SidebarGroupLabel.displayName = 'SidebarGroupLabel';
|
|
4207
|
-
var SidebarMenuSub = /*#__PURE__*/React__default.forwardRef(function (
|
|
4208
|
-
var className =
|
|
4209
|
-
props = _objectWithoutPropertiesLoose(
|
|
4323
|
+
var SidebarMenuSub = /*#__PURE__*/React__default.forwardRef(function (_ref12, ref) {
|
|
4324
|
+
var className = _ref12.className,
|
|
4325
|
+
props = _objectWithoutPropertiesLoose(_ref12, _excluded11);
|
|
4210
4326
|
return React__default.createElement("ul", _extends({
|
|
4211
4327
|
ref: ref,
|
|
4212
4328
|
"data-sidebar": "menu-sub",
|
|
@@ -4217,19 +4333,19 @@ var SidebarMenuSub = /*#__PURE__*/React__default.forwardRef(function (_ref11, re
|
|
|
4217
4333
|
}, props));
|
|
4218
4334
|
});
|
|
4219
4335
|
SidebarMenuSub.displayName = 'SidebarMenuSub';
|
|
4220
|
-
var SidebarMenuSubItem = /*#__PURE__*/React__default.forwardRef(function (
|
|
4221
|
-
var props = _extends({}, (_objectDestructuringEmpty(
|
|
4336
|
+
var SidebarMenuSubItem = /*#__PURE__*/React__default.forwardRef(function (_ref13, ref) {
|
|
4337
|
+
var props = _extends({}, (_objectDestructuringEmpty(_ref13), _ref13));
|
|
4222
4338
|
return React__default.createElement("li", _extends({
|
|
4223
4339
|
ref: ref
|
|
4224
4340
|
}, props));
|
|
4225
4341
|
});
|
|
4226
4342
|
SidebarMenuSubItem.displayName = 'SidebarMenuSubItem';
|
|
4227
|
-
var SidebarMenuSubButton = /*#__PURE__*/React__default.forwardRef(function (
|
|
4228
|
-
var
|
|
4229
|
-
asChild =
|
|
4230
|
-
isActive =
|
|
4231
|
-
className =
|
|
4232
|
-
props = _objectWithoutPropertiesLoose(
|
|
4343
|
+
var SidebarMenuSubButton = /*#__PURE__*/React__default.forwardRef(function (_ref14, ref) {
|
|
4344
|
+
var _ref14$asChild = _ref14.asChild,
|
|
4345
|
+
asChild = _ref14$asChild === void 0 ? false : _ref14$asChild,
|
|
4346
|
+
isActive = _ref14.isActive,
|
|
4347
|
+
className = _ref14.className,
|
|
4348
|
+
props = _objectWithoutPropertiesLoose(_ref14, _excluded12);
|
|
4233
4349
|
var Comp = asChild ? Slot : 'a';
|
|
4234
4350
|
return React__default.createElement(Comp, _extends({
|
|
4235
4351
|
ref: ref,
|
|
@@ -4242,11 +4358,11 @@ var SidebarMenuSubButton = /*#__PURE__*/React__default.forwardRef(function (_ref
|
|
|
4242
4358
|
}, props));
|
|
4243
4359
|
});
|
|
4244
4360
|
SidebarMenuSubButton.displayName = 'SidebarMenuSubButton';
|
|
4245
|
-
var SidebarMenuAction = /*#__PURE__*/React__default.forwardRef(function (
|
|
4246
|
-
var className =
|
|
4247
|
-
|
|
4248
|
-
asChild =
|
|
4249
|
-
props = _objectWithoutPropertiesLoose(
|
|
4361
|
+
var SidebarMenuAction = /*#__PURE__*/React__default.forwardRef(function (_ref15, ref) {
|
|
4362
|
+
var className = _ref15.className,
|
|
4363
|
+
_ref15$asChild = _ref15.asChild,
|
|
4364
|
+
asChild = _ref15$asChild === void 0 ? false : _ref15$asChild,
|
|
4365
|
+
props = _objectWithoutPropertiesLoose(_ref15, _excluded13);
|
|
4250
4366
|
var Comp = asChild ? Slot : 'button';
|
|
4251
4367
|
return React__default.createElement(Comp, _extends({
|
|
4252
4368
|
ref: ref,
|
|
@@ -4259,28 +4375,31 @@ var SidebarMenuAction = /*#__PURE__*/React__default.forwardRef(function (_ref14,
|
|
|
4259
4375
|
}, props));
|
|
4260
4376
|
});
|
|
4261
4377
|
SidebarMenuAction.displayName = 'SidebarMenuAction';
|
|
4262
|
-
var SidebarRail = /*#__PURE__*/React__default.forwardRef(function (
|
|
4263
|
-
var className =
|
|
4264
|
-
props = _objectWithoutPropertiesLoose(
|
|
4378
|
+
var SidebarRail = /*#__PURE__*/React__default.forwardRef(function (_ref16, ref) {
|
|
4379
|
+
var className = _ref16.className,
|
|
4380
|
+
props = _objectWithoutPropertiesLoose(_ref16, _excluded14);
|
|
4265
4381
|
var _useSidebar5 = useSidebar(),
|
|
4266
4382
|
open = _useSidebar5.open,
|
|
4267
|
-
toggleSidebar = _useSidebar5.toggleSidebar
|
|
4268
|
-
|
|
4383
|
+
toggleSidebar = _useSidebar5.toggleSidebar,
|
|
4384
|
+
side = _useSidebar5.side;
|
|
4385
|
+
var shortcutLabel = side === 'left' ? SIDEBAR_KEYBOARD_SHORTCUT_LEFT : SIDEBAR_KEYBOARD_SHORTCUT_RIGHT;
|
|
4386
|
+
var caretIcon = open ? side === 'right' ? 'caret-sm-right' : 'caret-sm-left' : side === 'right' ? 'caret-sm-left' : 'caret-sm-right';
|
|
4269
4387
|
return React__default.createElement("button", _extends({
|
|
4270
4388
|
ref: ref,
|
|
4271
4389
|
"data-sidebar": "rail",
|
|
4272
4390
|
"aria-label": "Toggle Sidebar",
|
|
4273
4391
|
tabIndex: -1,
|
|
4274
4392
|
onClick: toggleSidebar,
|
|
4275
|
-
title: "Toggle Sidebar
|
|
4393
|
+
title: "Toggle Sidebar " + shortcutLabel,
|
|
4276
4394
|
className: classNames(styles$8.rail, 'hover-show-child background-color-transparent display-flex p-top-5xl p-left-xl p-right-0 justify-content-center position-absolute', {
|
|
4277
|
-
'cursor-w-resize': open,
|
|
4278
|
-
'cursor-e-resize': !open
|
|
4395
|
+
'cursor-w-resize': open && side === 'left' || !open && side === 'right',
|
|
4396
|
+
'cursor-e-resize': !open && side === 'left' || open && side === 'right'
|
|
4279
4397
|
}, className),
|
|
4280
4398
|
style: {
|
|
4281
4399
|
top: '20px',
|
|
4282
4400
|
bottom: '20px',
|
|
4283
|
-
right: '-14px',
|
|
4401
|
+
right: side === 'left' ? '-14px' : undefined,
|
|
4402
|
+
left: side === 'right' ? '-14px' : undefined,
|
|
4284
4403
|
width: '10px'
|
|
4285
4404
|
}
|
|
4286
4405
|
}, props), React__default.createElement(Box, {
|
|
@@ -4296,17 +4415,17 @@ var SidebarRail = /*#__PURE__*/React__default.forwardRef(function (_ref15, ref)
|
|
|
4296
4415
|
alignItems: "center",
|
|
4297
4416
|
justifyContent: "center",
|
|
4298
4417
|
className: classNames('hover-child', {
|
|
4299
|
-
'cursor-w-resize': open,
|
|
4300
|
-
'cursor-e-resize': !open
|
|
4418
|
+
'cursor-w-resize': open && side === 'left' || !open && side === 'right',
|
|
4419
|
+
'cursor-e-resize': !open && side === 'left' || open && side === 'right'
|
|
4301
4420
|
}, className)
|
|
4302
4421
|
}, React__default.createElement(Icon, {
|
|
4303
4422
|
name: caretIcon
|
|
4304
4423
|
})));
|
|
4305
4424
|
});
|
|
4306
4425
|
SidebarRail.displayName = 'SidebarRail';
|
|
4307
|
-
var SidebarMenuBadge = /*#__PURE__*/React__default.forwardRef(function (
|
|
4308
|
-
var className =
|
|
4309
|
-
props = _objectWithoutPropertiesLoose(
|
|
4426
|
+
var SidebarMenuBadge = /*#__PURE__*/React__default.forwardRef(function (_ref17, ref) {
|
|
4427
|
+
var className = _ref17.className,
|
|
4428
|
+
props = _objectWithoutPropertiesLoose(_ref17, _excluded15);
|
|
4310
4429
|
return React__default.createElement("div", _extends({
|
|
4311
4430
|
ref: ref,
|
|
4312
4431
|
"data-sidebar": "menu-badge",
|