@bigbinary/neeto-molecules 4.1.66 → 4.1.68
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/{ConfigureView-CLhj1NR4.js → ConfigureView-DOotR_-0.js} +10 -31
- package/dist/ConfigureView-DOotR_-0.js.map +1 -0
- package/dist/cjs/{ConfigureView-DuStircF.js → ConfigureView-DtQRvPmE.js} +8 -29
- package/dist/cjs/ConfigureView-DtQRvPmE.js.map +1 -0
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -2
- package/dist/cjs/v2/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +294 -181
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/HelpPopover.js +15 -9
- package/dist/cjs/v2/HelpPopover.js.map +1 -1
- package/dist/cjs/v2/MoreDropdown.js +1 -1
- package/dist/cjs/v2/MoreDropdown.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +85 -52
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -2
- package/dist/v2/ConfigurePageSidebar.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +296 -183
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/HelpPopover.js +16 -10
- package/dist/v2/HelpPopover.js.map +1 -1
- package/dist/v2/MoreDropdown.js +1 -1
- package/dist/v2/MoreDropdown.js.map +1 -1
- package/dist/v2/Sidebar.js +86 -53
- package/dist/v2/Sidebar.js.map +1 -1
- package/package.json +3 -3
- package/src/translations/en.json +2 -1
- package/dist/ConfigureView-CLhj1NR4.js.map +0 -1
- package/dist/cjs/ConfigureView-DuStircF.js.map +0 -1
package/dist/v2/HelpPopover.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
-
import { Popover, Typography } from '@bigbinary/neeto-atoms';
|
|
3
|
+
import { Popover, Typography, Button } from '@bigbinary/neeto-atoms';
|
|
4
4
|
import classnames from 'classnames';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -10,7 +10,7 @@ import 'react';
|
|
|
10
10
|
|
|
11
11
|
var SIZE = {
|
|
12
12
|
"default": 16,
|
|
13
|
-
large:
|
|
13
|
+
large: 18
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
var _excluded = ["label"];
|
|
@@ -38,7 +38,9 @@ var HelpPopover = function HelpPopover(_ref) {
|
|
|
38
38
|
alignOffset: alignOffset,
|
|
39
39
|
position: position,
|
|
40
40
|
sideOffset: sideOffset,
|
|
41
|
+
className: "!max-w-[calc(100vw-2rem)]",
|
|
41
42
|
closeDelay: 150,
|
|
43
|
+
collisionPadding: 12,
|
|
42
44
|
openDelay: 0,
|
|
43
45
|
trigger: /*#__PURE__*/jsx("button", {
|
|
44
46
|
"data-testid": "help-popover-button",
|
|
@@ -71,14 +73,18 @@ var HelpPopover = function HelpPopover(_ref) {
|
|
|
71
73
|
}) : description, helpLinkProps && function () {
|
|
72
74
|
var linkLabel = helpLinkProps.label,
|
|
73
75
|
restLinkProps = _objectWithoutProperties(helpLinkProps, _excluded);
|
|
74
|
-
return /*#__PURE__*/jsx(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
return /*#__PURE__*/jsx(Button, {
|
|
77
|
+
asChild: true,
|
|
78
|
+
className: "mt-3 self-start",
|
|
79
|
+
variant: "link",
|
|
80
|
+
children: /*#__PURE__*/jsx("a", _objectSpread(_objectSpread({
|
|
81
|
+
"data-testid": "help-popover-link-button",
|
|
82
|
+
rel: "noreferrer",
|
|
83
|
+
target: "_blank"
|
|
84
|
+
}, restLinkProps), {}, {
|
|
85
|
+
children: linkLabel !== null && linkLabel !== void 0 ? linkLabel : t("neetoMolecules.common.viewHelpArticle")
|
|
86
|
+
}))
|
|
87
|
+
});
|
|
82
88
|
}()]
|
|
83
89
|
})
|
|
84
90
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HelpPopover.js","sources":["../../src/v2/components/HelpPopover/constants.js","../../src/v2/components/HelpPopover/index.jsx"],"sourcesContent":["export const SIZE = { default: 16, large:
|
|
1
|
+
{"version":3,"file":"HelpPopover.js","sources":["../../src/v2/components/HelpPopover/constants.js","../../src/v2/components/HelpPopover/index.jsx"],"sourcesContent":["export const SIZE = { default: 16, large: 18 };\n","import { Button, Popover, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { CircleHelp } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZE } from \"./constants\";\n\nconst HelpPopover = ({\n title,\n size = \"large\",\n description,\n helpLinkProps,\n className,\n iconColor = \"currentColor\",\n icon: IconComponent = CircleHelp,\n side,\n sideOffset,\n align,\n alignOffset,\n}) => {\n const { t } = useTranslation();\n\n const position = align && align !== \"center\" ? `${side}-${align}` : side;\n\n return (\n <Popover\n {...{ alignOffset, position, sideOffset }}\n className=\"!max-w-[calc(100vw-2rem)]\"\n closeDelay={150}\n collisionPadding={12}\n openDelay={0}\n trigger={\n <button\n data-testid=\"help-popover-button\"\n type=\"button\"\n className={classNames(\n \"inline-flex cursor-pointer items-center justify-center rounded-full border-none bg-transparent p-0\",\n className\n )}\n >\n <IconComponent color={iconColor} size={SIZE[size]} />\n </button>\n }\n >\n <div className=\"flex flex-col\" onClick={event => event.stopPropagation()}>\n {title && (\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <h3 className=\"mb-2\" data-testid=\"help-popover-title\">\n {title}\n </h3>\n </Typography>\n )}\n {typeof description === \"string\" ? (\n <Typography\n color=\"muted\"\n data-testid=\"help-popover-description\"\n variant=\"body2\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps &&\n (() => {\n const { label: linkLabel, ...restLinkProps } = helpLinkProps;\n\n return (\n <Button asChild className=\"mt-3 self-start\" variant=\"link\">\n <a\n data-testid=\"help-popover-link-button\"\n rel=\"noreferrer\"\n target=\"_blank\"\n {...restLinkProps}\n >\n {linkLabel ?? t(\"neetoMolecules.common.viewHelpArticle\")}\n </a>\n </Button>\n );\n })()}\n </div>\n </Popover>\n );\n};\n\nHelpPopover.propTypes = {\n title: PropTypes.string,\n size: PropTypes.oneOf([\"default\", \"large\"]),\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n helpLinkProps: PropTypes.object,\n className: PropTypes.string,\n iconColor: PropTypes.string,\n icon: PropTypes.node,\n side: PropTypes.oneOf([\"top\", \"right\", \"bottom\", \"left\"]),\n sideOffset: PropTypes.number,\n align: PropTypes.oneOf([\"start\", \"center\", \"end\"]),\n alignOffset: PropTypes.number,\n};\n\nexport default HelpPopover;\n"],"names":["SIZE","large","HelpPopover","_ref","title","_ref$size","size","description","helpLinkProps","className","_ref$iconColor","iconColor","_ref$icon","icon","IconComponent","CircleHelp","side","sideOffset","align","alignOffset","_useTranslation","useTranslation","t","position","concat","_jsx","Popover","closeDelay","collisionPadding","openDelay","trigger","type","classNames","children","color","_jsxs","onClick","event","stopPropagation","Typography","asChild","variant","weight","linkLabel","label","restLinkProps","_objectWithoutProperties","_excluded","Button","_objectSpread","rel","target"],"mappings":"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"}
|
package/dist/v2/MoreDropdown.js
CHANGED
|
@@ -93,7 +93,7 @@ var MenuItem = function MenuItem(_ref) {
|
|
|
93
93
|
menuItems: menuItems
|
|
94
94
|
}, menuItemProps)));
|
|
95
95
|
}
|
|
96
|
-
return /*#__PURE__*/jsx(DropdownMenu.MenuItem
|
|
96
|
+
return /*#__PURE__*/jsx(DropdownMenu.MenuItem, _objectSpread$1(_objectSpread$1({
|
|
97
97
|
onClick: onClick,
|
|
98
98
|
role: "menuitem"
|
|
99
99
|
}, menuItemProps), {}, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MoreDropdown.js","sources":["../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.js","../../src/v2/components/MoreDropdown/constants.js","../../src/v2/components/MoreDropdown/Submenu.jsx","../../src/v2/components/MoreDropdown/MenuItem.jsx","../../src/v2/components/MoreDropdown/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\"circle\", { cx: \"12\", cy: \"5\", r: \"1\", key: \"gxeob9\" }],\n [\"circle\", { cx: \"12\", cy: \"19\", r: \"1\", key: \"lyex9k\" }]\n];\nconst EllipsisVertical = createLucideIcon(\"ellipsis-vertical\", __iconNode);\n\nexport { __iconNode, EllipsisVertical as default };\n//# sourceMappingURL=ellipsis-vertical.js.map\n","const BUTTON_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n tertiary: \"tertiary\",\n danger: \"danger\",\n danger_text: \"danger_text\",\n text: \"text\",\n link: \"link\",\n};\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nconst MENU_ITEM_TYPES = { menuItem: \"menuItem\", divider: \"divider\" };\n\nconst DEFAULT_TOOLTIP_PROPS = {\n disabled: true,\n position: \"bottom\",\n touch: [\"hold\", 500],\n};\n\nconst ICON_SIZES = { small: 20, medium: 24, large: 30 };\n\nconst STYLE_TO_VARIANT = {\n primary: \"default\",\n secondary: \"secondary\",\n tertiary: \"ghost\",\n danger: \"destructive\",\n danger_text: \"destructive\",\n text: \"ghost\",\n link: \"link\",\n};\n\nexport {\n BUTTON_STYLES,\n SIZES,\n STRATEGY,\n MENU_ITEM_TYPES,\n DEFAULT_TOOLTIP_PROPS,\n ICON_SIZES,\n STYLE_TO_VARIANT,\n};\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst Submenu = withT(({ t, label, menuItems = [] }) => (\n <DropdownMenu.SubMenu\n {...{ label }}\n triggerProps={{ \"aria-haspopup\": \"menu\" }}\n contentProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.submenuAriaLabel\", {\n label,\n }),\n }}\n >\n {menuItems.map(({ isVisible = true, key, ...itemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(itemProps.label || \"menu-item\")}\n {...itemProps}\n />\n );\n })}\n </DropdownMenu.SubMenu>\n));\n\nexport default Submenu;\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\n\nimport Submenu from \"./Submenu\";\n\nconst MenuItem = ({\n onClick,\n label,\n type = \"menuItem\",\n hasSubItems = false,\n menuItems,\n dropdownProps,\n ...menuItemProps\n}) => {\n if (type === \"divider\") return <DropdownMenu.Divider role=\"separator\" />;\n\n if (hasSubItems) {\n return (\n <Submenu {...{ dropdownProps, label, menuItems, ...menuItemProps }} />\n );\n }\n\n return (\n <DropdownMenu.MenuItem.Button\n {...{ onClick }}\n role=\"menuitem\"\n {...menuItemProps}\n >\n {label}\n </DropdownMenu.MenuItem.Button>\n );\n};\n\nexport default MenuItem;\n","import { Button, DropdownMenu, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Ellipsis, EllipsisVertical } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n DEFAULT_TOOLTIP_PROPS,\n MENU_ITEM_TYPES,\n STYLE_TO_VARIANT,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const { t } = useTranslation();\n\n const {\n isRounded: isRoundedButton,\n size: buttonSize = \"icon\",\n tooltipProps: customTooltipProps,\n style: buttonStyle,\n ...buttonProps\n } = dropdownButtonProps;\n\n const tooltipProps = mergeRight(DEFAULT_TOOLTIP_PROPS, customTooltipProps);\n const variant = STYLE_TO_VARIANT[buttonStyle] || \"ghost\";\n\n const TargetIcon = isVertical ? EllipsisVertical : Ellipsis;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip\n content={tooltipProps.content}\n position={tooltipProps.position || \"bottom\"}\n >\n <span>\n <Button\n {...{ variant }}\n disabled\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"more-dropdown-button\"\n icon={TargetIcon}\n size={buttonSize}\n className={classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n })}\n {...buttonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <DropdownMenu\n customTarget={\n <Button\n {...{ variant }}\n aria-haspopup=\"menu\"\n aria-label={t(\"neetoMolecules.moreDropdown.buttonAriaLabel\")}\n data-dropdown-button-style=\"more-dropdown\"\n disabled={isDropdownDisabled}\n icon={TargetIcon}\n size={buttonSize}\n className={classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n })}\n {...buttonProps}\n />\n }\n dropdownProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.menuAriaLabel\"),\n }}\n {...dropdownProps}\n >\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(menuItemProps.label || \"menu-item\")}\n {...menuItemProps}\n />\n );\n })}\n {menuBottomChildren}\n </DropdownMenu>\n );\n};\n\nMoreDropdown.propTypes = {\n dropdownButtonProps: PropTypes.shape({\n style: PropTypes.oneOf([\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"danger\",\n \"danger_text\",\n \"text\",\n \"link\",\n ]),\n iconSize: PropTypes.number,\n disabled: PropTypes.bool,\n isRounded: PropTypes.bool,\n }),\n isVertical: PropTypes.bool,\n isDisabled: PropTypes.bool,\n dropdownProps: PropTypes.object,\n menuTopChildren: PropTypes.node,\n menuBottomChildren: PropTypes.node,\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n key: PropTypes.string,\n type: PropTypes.oneOf(Object.values(MENU_ITEM_TYPES)),\n isVisible: PropTypes.bool,\n hasSubItems: PropTypes.bool,\n dropdownProps: PropTypes.shape({\n position: PropTypes.string,\n trigger: PropTypes.string,\n }),\n })\n ),\n};\n\nexport default MoreDropdown;\n"],"names":["DEFAULT_TOOLTIP_PROPS","disabled","position","touch","STYLE_TO_VARIANT","primary","secondary","tertiary","danger","danger_text","text","link","Submenu","withT","_ref","t","label","_ref$menuItems","menuItems","_jsx","DropdownMenu","SubMenu","triggerProps","contentProps","children","map","_ref2","_ref2$isVisible","isVisible","key","itemProps","_objectWithoutProperties","_excluded","MenuItem","_objectSpread","hyphenate","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","dropdownProps","menuItemProps","Divider","role","Button","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_useTranslation","useTranslation","isRoundedButton","isRounded","_dropdownButtonProps$","size","buttonSize","customTooltipProps","tooltipProps","buttonStyle","style","buttonProps","mergeRight","variant","TargetIcon","EllipsisVertical","Ellipsis","isDropdownDisabled","Tooltip","content","icon","className","classnames","_jsxs","customTarget","_excluded2"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"MoreDropdown.js","sources":["../../node_modules/lucide-react/dist/esm/icons/ellipsis-vertical.js","../../src/v2/components/MoreDropdown/constants.js","../../src/v2/components/MoreDropdown/Submenu.jsx","../../src/v2/components/MoreDropdown/MenuItem.jsx","../../src/v2/components/MoreDropdown/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.7.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.js';\n\nconst __iconNode = [\n [\"circle\", { cx: \"12\", cy: \"12\", r: \"1\", key: \"41hilf\" }],\n [\"circle\", { cx: \"12\", cy: \"5\", r: \"1\", key: \"gxeob9\" }],\n [\"circle\", { cx: \"12\", cy: \"19\", r: \"1\", key: \"lyex9k\" }]\n];\nconst EllipsisVertical = createLucideIcon(\"ellipsis-vertical\", __iconNode);\n\nexport { __iconNode, EllipsisVertical as default };\n//# sourceMappingURL=ellipsis-vertical.js.map\n","const BUTTON_STYLES = {\n primary: \"primary\",\n secondary: \"secondary\",\n tertiary: \"tertiary\",\n danger: \"danger\",\n danger_text: \"danger_text\",\n text: \"text\",\n link: \"link\",\n};\n\nconst SIZES = { small: \"small\", medium: \"medium\", large: \"large\" };\n\nconst STRATEGY = { absolute: \"absolute\", fixed: \"fixed\" };\n\nconst MENU_ITEM_TYPES = { menuItem: \"menuItem\", divider: \"divider\" };\n\nconst DEFAULT_TOOLTIP_PROPS = {\n disabled: true,\n position: \"bottom\",\n touch: [\"hold\", 500],\n};\n\nconst ICON_SIZES = { small: 20, medium: 24, large: 30 };\n\nconst STYLE_TO_VARIANT = {\n primary: \"default\",\n secondary: \"secondary\",\n tertiary: \"ghost\",\n danger: \"destructive\",\n danger_text: \"destructive\",\n text: \"ghost\",\n link: \"link\",\n};\n\nexport {\n BUTTON_STYLES,\n SIZES,\n STRATEGY,\n MENU_ITEM_TYPES,\n DEFAULT_TOOLTIP_PROPS,\n ICON_SIZES,\n STYLE_TO_VARIANT,\n};\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\n\nimport MenuItem from \"./MenuItem\";\n\nconst Submenu = withT(({ t, label, menuItems = [] }) => (\n <DropdownMenu.SubMenu\n {...{ label }}\n triggerProps={{ \"aria-haspopup\": \"menu\" }}\n contentProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.submenuAriaLabel\", {\n label,\n }),\n }}\n >\n {menuItems.map(({ isVisible = true, key, ...itemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(itemProps.label || \"menu-item\")}\n {...itemProps}\n />\n );\n })}\n </DropdownMenu.SubMenu>\n));\n\nexport default Submenu;\n","import { DropdownMenu } from \"@bigbinary/neeto-atoms\";\n\nimport Submenu from \"./Submenu\";\n\nconst MenuItem = ({\n onClick,\n label,\n type = \"menuItem\",\n hasSubItems = false,\n menuItems,\n dropdownProps,\n ...menuItemProps\n}) => {\n if (type === \"divider\") return <DropdownMenu.Divider role=\"separator\" />;\n\n if (hasSubItems) {\n return (\n <Submenu {...{ dropdownProps, label, menuItems, ...menuItemProps }} />\n );\n }\n\n return (\n <DropdownMenu.MenuItem {...{ onClick }} role=\"menuitem\" {...menuItemProps}>\n {label}\n </DropdownMenu.MenuItem>\n );\n};\n\nexport default MenuItem;\n","import { Button, DropdownMenu, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { Ellipsis, EllipsisVertical } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { mergeRight } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n DEFAULT_TOOLTIP_PROPS,\n MENU_ITEM_TYPES,\n STYLE_TO_VARIANT,\n} from \"./constants\";\nimport MenuItem from \"./MenuItem\";\n\nconst MoreDropdown = ({\n dropdownButtonProps = {},\n isVertical = false,\n isDisabled = false,\n dropdownProps = {},\n menuTopChildren,\n menuBottomChildren,\n menuItems = [],\n}) => {\n const { t } = useTranslation();\n\n const {\n isRounded: isRoundedButton,\n size: buttonSize = \"icon\",\n tooltipProps: customTooltipProps,\n style: buttonStyle,\n ...buttonProps\n } = dropdownButtonProps;\n\n const tooltipProps = mergeRight(DEFAULT_TOOLTIP_PROPS, customTooltipProps);\n const variant = STYLE_TO_VARIANT[buttonStyle] || \"ghost\";\n\n const TargetIcon = isVertical ? EllipsisVertical : Ellipsis;\n\n const isDropdownDisabled = isDisabled || dropdownProps.disabled;\n\n if (isDropdownDisabled && !tooltipProps.disabled) {\n return (\n <Tooltip\n content={tooltipProps.content}\n position={tooltipProps.position || \"bottom\"}\n >\n <span>\n <Button\n {...{ variant }}\n disabled\n data-dropdown-button-style=\"more-dropdown\"\n data-testid=\"more-dropdown-button\"\n icon={TargetIcon}\n size={buttonSize}\n className={classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n })}\n {...buttonProps}\n />\n </span>\n </Tooltip>\n );\n }\n\n return (\n <DropdownMenu\n customTarget={\n <Button\n {...{ variant }}\n aria-haspopup=\"menu\"\n aria-label={t(\"neetoMolecules.moreDropdown.buttonAriaLabel\")}\n data-dropdown-button-style=\"more-dropdown\"\n disabled={isDropdownDisabled}\n icon={TargetIcon}\n size={buttonSize}\n className={classnames(\"shrink-0\", {\n \"rounded-full\": isRoundedButton,\n })}\n {...buttonProps}\n />\n }\n dropdownProps={{\n \"aria-label\": t(\"neetoMolecules.moreDropdown.menuAriaLabel\"),\n }}\n {...dropdownProps}\n >\n {menuTopChildren}\n {menuItems.map(({ isVisible = true, key, ...menuItemProps }) => {\n if (!isVisible) return null;\n\n return (\n <MenuItem\n key={key ?? hyphenate(menuItemProps.label || \"menu-item\")}\n {...menuItemProps}\n />\n );\n })}\n {menuBottomChildren}\n </DropdownMenu>\n );\n};\n\nMoreDropdown.propTypes = {\n dropdownButtonProps: PropTypes.shape({\n style: PropTypes.oneOf([\n \"primary\",\n \"secondary\",\n \"tertiary\",\n \"danger\",\n \"danger_text\",\n \"text\",\n \"link\",\n ]),\n iconSize: PropTypes.number,\n disabled: PropTypes.bool,\n isRounded: PropTypes.bool,\n }),\n isVertical: PropTypes.bool,\n isDisabled: PropTypes.bool,\n dropdownProps: PropTypes.object,\n menuTopChildren: PropTypes.node,\n menuBottomChildren: PropTypes.node,\n menuItems: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n onClick: PropTypes.func,\n key: PropTypes.string,\n type: PropTypes.oneOf(Object.values(MENU_ITEM_TYPES)),\n isVisible: PropTypes.bool,\n hasSubItems: PropTypes.bool,\n dropdownProps: PropTypes.shape({\n position: PropTypes.string,\n trigger: PropTypes.string,\n }),\n })\n ),\n};\n\nexport default MoreDropdown;\n"],"names":["DEFAULT_TOOLTIP_PROPS","disabled","position","touch","STYLE_TO_VARIANT","primary","secondary","tertiary","danger","danger_text","text","link","Submenu","withT","_ref","t","label","_ref$menuItems","menuItems","_jsx","DropdownMenu","SubMenu","triggerProps","contentProps","children","map","_ref2","_ref2$isVisible","isVisible","key","itemProps","_objectWithoutProperties","_excluded","MenuItem","_objectSpread","hyphenate","onClick","_ref$type","type","_ref$hasSubItems","hasSubItems","dropdownProps","menuItemProps","Divider","role","MoreDropdown","_ref$dropdownButtonPr","dropdownButtonProps","_ref$isVertical","isVertical","_ref$isDisabled","isDisabled","_ref$dropdownProps","menuTopChildren","menuBottomChildren","_useTranslation","useTranslation","isRoundedButton","isRounded","_dropdownButtonProps$","size","buttonSize","customTooltipProps","tooltipProps","buttonStyle","style","buttonProps","mergeRight","variant","TargetIcon","EllipsisVertical","Ellipsis","isDropdownDisabled","Tooltip","content","Button","icon","className","classnames","_jsxs","customTarget","_excluded2"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/v2/Sidebar.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
2
|
import { memo, useState, Fragment, useRef, useEffect, useCallback, useMemo } from 'react';
|
|
3
|
-
import { SidebarMenuItem, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuButton, SidebarMenuSub, SidebarProvider, Sidebar as Sidebar$1, SidebarHeader, SidebarTrigger, SidebarContent, SidebarRail } from '@bigbinary/neeto-atoms/primitives';
|
|
3
|
+
import { SidebarMenuItem, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuButton, SidebarMenuSub, SidebarProvider, useSidebar, Sidebar as Sidebar$1, SidebarHeader, SidebarTrigger, SidebarContent, SidebarRail } from '@bigbinary/neeto-atoms/primitives';
|
|
4
4
|
import { capitalize, isPresent, hyphenate, isNotEmpty, isNot } from '@bigbinary/neeto-cist';
|
|
5
5
|
import useLocalStorage from '@bigbinary/neeto-commons-frontend/react-utils/useLocalStorage';
|
|
6
6
|
import { append, is, findLast } from 'ramda';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
8
|
import { Link, useLocation, useHistory } from 'react-router-dom';
|
|
9
9
|
import { u as useKeyboardShortcutsPaneState } from '../useKeyboardShortcutsPaneState-dNIbb_PI.js';
|
|
10
|
-
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem,
|
|
10
|
+
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem, g as getSidebarStateLocalStorageKey, c as SIDEBAR_WIDTH_KEY, d as DEFAULT_SIDEBAR_WIDTH, e as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, C as ConfigureView, h as getActiveConfigurePageLink, M as MIN_SIDEBAR_WIDTH, i as MAX_SIDEBAR_WIDTH } from '../ConfigureView-DOotR_-0.js';
|
|
11
11
|
import classnames from 'classnames';
|
|
12
12
|
import { globalProps as globalProps$1 } from '@bigbinary/neeto-commons-frontend/initializers';
|
|
13
13
|
import Neeto from '@bigbinary/neeto-icons/typeface-logos/Neeto';
|
|
@@ -20,10 +20,10 @@ import { DropdownMenu, Badge, Tooltip, Button } from '@bigbinary/neeto-atoms';
|
|
|
20
20
|
import { P as Plus } from '../plus-clM1IC_E.js';
|
|
21
21
|
import { E as Ellipsis } from '../ellipsis-DpI9xqUK.js';
|
|
22
22
|
import { C as ChevronRight } from '../chevron-right-DcaO-Hlu.js';
|
|
23
|
+
import { n } from '../inject-css-C2dztUxs.js';
|
|
23
24
|
import 'zustand/shallow';
|
|
24
25
|
import '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
|
|
25
26
|
import 'zustand';
|
|
26
|
-
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
27
27
|
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
28
28
|
import '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
|
|
29
29
|
import '@bigbinary/neeto-filters-frontend/v2';
|
|
@@ -45,7 +45,7 @@ var Header = function Header(_ref) {
|
|
|
45
45
|
"data-testid": "sidebar-info",
|
|
46
46
|
children: /*#__PURE__*/jsx(Link, {
|
|
47
47
|
to: DEFAULT_HOME_PATH,
|
|
48
|
-
className: classnames("block w-full", {
|
|
48
|
+
className: classnames("mt-2 block w-full py-2", {
|
|
49
49
|
"cursor-pointer": isOnboarded,
|
|
50
50
|
"pointer-events-none": !isOnboarded
|
|
51
51
|
}),
|
|
@@ -78,7 +78,7 @@ var AddAction = function AddAction(_ref) {
|
|
|
78
78
|
children: /*#__PURE__*/jsx(Plus, {})
|
|
79
79
|
}),
|
|
80
80
|
children: actions.map(function (action) {
|
|
81
|
-
return /*#__PURE__*/jsx(DropdownMenu.MenuItem
|
|
81
|
+
return /*#__PURE__*/jsx(DropdownMenu.MenuItem, {
|
|
82
82
|
onClick: function onClick() {
|
|
83
83
|
var _action$onClick;
|
|
84
84
|
(_action$onClick = action.onClick) === null || _action$onClick === void 0 || _action$onClick.call(action);
|
|
@@ -382,6 +382,9 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
382
382
|
});
|
|
383
383
|
};
|
|
384
384
|
|
|
385
|
+
var css = "[data-slot=sidebar][data-mobile=true]:has(.nm-sidebar-shadcn-header){max-width:min(var(--sidebar-width),85vw)!important;width:var(--sidebar-width)!important}";
|
|
386
|
+
n(css,{});
|
|
387
|
+
|
|
385
388
|
var Sidebar = function Sidebar(_ref) {
|
|
386
389
|
var navLinks = _ref.navLinks,
|
|
387
390
|
_ref$moreNavLinks = _ref.moreNavLinks,
|
|
@@ -393,26 +396,65 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
393
396
|
showWorkspaceName = _ref$showWorkspaceNam === void 0 ? false : _ref$showWorkspaceNam,
|
|
394
397
|
_ref$isExpandable = _ref.isExpandable,
|
|
395
398
|
isExpandable = _ref$isExpandable === void 0 ? true : _ref$isExpandable;
|
|
399
|
+
var _useLocalStorage = useLocalStorage(getSidebarStateLocalStorageKey(), false),
|
|
400
|
+
_useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
|
|
401
|
+
isSidebarCollapsed = _useLocalStorage2[0],
|
|
402
|
+
setIsSidebarCollapsed = _useLocalStorage2[1];
|
|
403
|
+
var _useLocalStorage3 = useLocalStorage(SIDEBAR_WIDTH_KEY, DEFAULT_SIDEBAR_WIDTH),
|
|
404
|
+
_useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
|
|
405
|
+
sidebarWidthRaw = _useLocalStorage4[0],
|
|
406
|
+
setSidebarWidth = _useLocalStorage4[1];
|
|
407
|
+
var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;
|
|
408
|
+
return /*#__PURE__*/jsx(SidebarProvider, {
|
|
409
|
+
className: "!w-auto",
|
|
410
|
+
open: !isSidebarCollapsed,
|
|
411
|
+
style: {
|
|
412
|
+
"--sidebar-width": "".concat(sidebarWidth / 16, "rem")
|
|
413
|
+
},
|
|
414
|
+
onOpenChange: function onOpenChange(open) {
|
|
415
|
+
return setIsSidebarCollapsed(!open);
|
|
416
|
+
},
|
|
417
|
+
children: /*#__PURE__*/jsx(SidebarBody, {
|
|
418
|
+
customLogo: customLogo,
|
|
419
|
+
isCountsLoading: isCountsLoading,
|
|
420
|
+
isExpandable: isExpandable,
|
|
421
|
+
isSidebarCollapsed: isSidebarCollapsed,
|
|
422
|
+
moreNavLinks: moreNavLinks,
|
|
423
|
+
navLinks: navLinks,
|
|
424
|
+
setIsSidebarCollapsed: setIsSidebarCollapsed,
|
|
425
|
+
setSidebarWidth: setSidebarWidth,
|
|
426
|
+
showWorkspaceName: showWorkspaceName,
|
|
427
|
+
sidebarWidth: sidebarWidth
|
|
428
|
+
})
|
|
429
|
+
});
|
|
430
|
+
};
|
|
431
|
+
var SidebarBody = function SidebarBody(_ref2) {
|
|
432
|
+
var navLinks = _ref2.navLinks,
|
|
433
|
+
moreNavLinks = _ref2.moreNavLinks,
|
|
434
|
+
customLogo = _ref2.customLogo,
|
|
435
|
+
isCountsLoading = _ref2.isCountsLoading,
|
|
436
|
+
showWorkspaceName = _ref2.showWorkspaceName,
|
|
437
|
+
isExpandable = _ref2.isExpandable,
|
|
438
|
+
isSidebarCollapsed = _ref2.isSidebarCollapsed,
|
|
439
|
+
setIsSidebarCollapsed = _ref2.setIsSidebarCollapsed,
|
|
440
|
+
sidebarWidth = _ref2.sidebarWidth,
|
|
441
|
+
setSidebarWidth = _ref2.setSidebarWidth;
|
|
442
|
+
var _useSidebar = useSidebar(),
|
|
443
|
+
isMobile = _useSidebar.isMobile,
|
|
444
|
+
setOpenMobile = _useSidebar.setOpenMobile,
|
|
445
|
+
openMobile = _useSidebar.openMobile;
|
|
396
446
|
var _useKeyboardShortcuts = useKeyboardShortcutsPaneState(),
|
|
397
447
|
_useKeyboardShortcuts2 = _slicedToArray(_useKeyboardShortcuts, 1),
|
|
398
448
|
isKeyboardShortcutsPaneOpen = _useKeyboardShortcuts2[0];
|
|
399
|
-
var
|
|
400
|
-
_useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
|
|
401
|
-
selectedNavLinkRoute = _useLocalStorage2[0],
|
|
402
|
-
setSelectedNavLinkRoute = _useLocalStorage2[1];
|
|
403
|
-
var _useLocalStorage3 = useLocalStorage(getSidebarStateLocalStorageKey(), false),
|
|
404
|
-
_useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
|
|
405
|
-
isSidebarCollapsed = _useLocalStorage4[0],
|
|
406
|
-
setIsSidebarCollapsed = _useLocalStorage4[1];
|
|
407
|
-
var _useLocalStorage5 = useLocalStorage(SIDEBAR_WIDTH_KEY, DEFAULT_SIDEBAR_WIDTH),
|
|
449
|
+
var _useLocalStorage5 = useLocalStorage(SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, null),
|
|
408
450
|
_useLocalStorage6 = _slicedToArray(_useLocalStorage5, 2),
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;
|
|
451
|
+
selectedNavLinkRoute = _useLocalStorage6[0],
|
|
452
|
+
setSelectedNavLinkRoute = _useLocalStorage6[1];
|
|
412
453
|
var isDraggingRef = useRef(false);
|
|
413
454
|
var hasDraggedRef = useRef(false);
|
|
414
455
|
var startXRef = useRef(null);
|
|
415
456
|
var startWidthRef = useRef(null);
|
|
457
|
+
var isInitialMountRef = useRef(true);
|
|
416
458
|
var location = useLocation();
|
|
417
459
|
var history = useHistory();
|
|
418
460
|
var _useTranslation = useTranslation(),
|
|
@@ -420,18 +462,22 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
420
462
|
var isRTL = document.documentElement.dir === "rtl";
|
|
421
463
|
var sidebarSide = isRTL ? "right" : "left";
|
|
422
464
|
useEffect(function () {
|
|
423
|
-
if (
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
setIsSidebarCollapsed(false);
|
|
465
|
+
if (isInitialMountRef.current) {
|
|
466
|
+
isInitialMountRef.current = false;
|
|
467
|
+
return;
|
|
427
468
|
}
|
|
428
|
-
|
|
429
|
-
|
|
469
|
+
if (isMobile) {
|
|
470
|
+
if (isKeyboardShortcutsPaneOpen) setOpenMobile(false);
|
|
471
|
+
return;
|
|
472
|
+
}
|
|
473
|
+
if (isKeyboardShortcutsPaneOpen) setIsSidebarCollapsed(true);else setIsSidebarCollapsed(false);
|
|
474
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed / setOpenMobile may not be stable across renders
|
|
475
|
+
}, [isKeyboardShortcutsPaneOpen, isMobile]);
|
|
430
476
|
useEffect(function () {
|
|
431
477
|
if (!isPresent(navLinks)) return;
|
|
432
|
-
var currentLink = findLast(function (
|
|
433
|
-
var to =
|
|
434
|
-
isActive =
|
|
478
|
+
var currentLink = findLast(function (_ref3) {
|
|
479
|
+
var to = _ref3.to,
|
|
480
|
+
isActive = _ref3.isActive;
|
|
435
481
|
var url = new URL(to, window.location.href);
|
|
436
482
|
return is(Function, isActive) ? isActive() : location.pathname.includes(url.pathname);
|
|
437
483
|
})(navLinks);
|
|
@@ -440,12 +486,8 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
440
486
|
}
|
|
441
487
|
// eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only: sets initial selected route from current URL
|
|
442
488
|
}, []);
|
|
443
|
-
|
|
444
|
-
// Drag-to-resize via SidebarRail: intercept mousedown to start drag,
|
|
445
|
-
// update --sidebar-width directly on DOM for instant feedback,
|
|
446
|
-
// persist to localStorage on mouseup.
|
|
447
489
|
var handleRailMouseDown = useCallback(function (e) {
|
|
448
|
-
if (!isExpandable) return;
|
|
490
|
+
if (!isExpandable || isMobile) return;
|
|
449
491
|
isDraggingRef.current = true;
|
|
450
492
|
hasDraggedRef.current = false;
|
|
451
493
|
startXRef.current = e.clientX;
|
|
@@ -455,9 +497,7 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
455
497
|
document.body.style.cursor = "col-resize";
|
|
456
498
|
document.body.style.userSelect = "none";
|
|
457
499
|
e.preventDefault();
|
|
458
|
-
}, [sidebarWidth, isExpandable]);
|
|
459
|
-
|
|
460
|
-
// Prevent SidebarRail's built-in toggle when user dragged to resize
|
|
500
|
+
}, [sidebarWidth, isExpandable, isMobile]);
|
|
461
501
|
var handleRailClick = useCallback(function (e) {
|
|
462
502
|
if (!hasDraggedRef.current) return;
|
|
463
503
|
e.preventDefault();
|
|
@@ -465,12 +505,11 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
465
505
|
hasDraggedRef.current = false;
|
|
466
506
|
}, []);
|
|
467
507
|
useEffect(function () {
|
|
468
|
-
if (!isExpandable) return undefined;
|
|
508
|
+
if (!isExpandable || isMobile) return undefined;
|
|
469
509
|
var onMouseMove = function onMouseMove(e) {
|
|
470
510
|
if (!isDraggingRef.current) return;
|
|
471
511
|
hasDraggedRef.current = true;
|
|
472
512
|
var dx = e.clientX - startXRef.current;
|
|
473
|
-
// In RTL, dragging right shrinks, dragging left expands
|
|
474
513
|
var rtl = document.documentElement.dir === "rtl";
|
|
475
514
|
var newWidth = startWidthRef.current + (rtl ? -dx : dx);
|
|
476
515
|
newWidth = Math.max(MIN_SIDEBAR_WIDTH, Math.min(newWidth, MAX_SIDEBAR_WIDTH));
|
|
@@ -498,10 +537,10 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
498
537
|
document.removeEventListener("mousemove", onMouseMove);
|
|
499
538
|
document.removeEventListener("mouseup", onMouseUp);
|
|
500
539
|
};
|
|
501
|
-
}, [isExpandable, setSidebarWidth]);
|
|
540
|
+
}, [isExpandable, isMobile, setSidebarWidth]);
|
|
502
541
|
useEffect(function () {
|
|
503
|
-
document.documentElement.style.setProperty("--nv-sidebar-width", "".concat(sidebarWidth / 16, "rem"));
|
|
504
|
-
}, [sidebarWidth]);
|
|
542
|
+
document.documentElement.style.setProperty("--nv-sidebar-width", isMobile ? "0rem" : "".concat(sidebarWidth / 16, "rem"));
|
|
543
|
+
}, [sidebarWidth, isMobile]);
|
|
505
544
|
var handleGoBack = function handleGoBack(event) {
|
|
506
545
|
event.preventDefault();
|
|
507
546
|
setSelectedNavLinkRoute(null);
|
|
@@ -521,27 +560,20 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
521
560
|
});
|
|
522
561
|
}, [location.pathname, navLinks]);
|
|
523
562
|
var isSelectedNavLinkVisible = selectedNavLinkRoute && (activeLink === null || activeLink === void 0 ? void 0 : activeLink.to) === selectedNavLinkRoute && isNotEmpty(navLinks);
|
|
524
|
-
return /*#__PURE__*/jsxs(
|
|
525
|
-
className: "!w-auto",
|
|
526
|
-
open: !isSidebarCollapsed,
|
|
527
|
-
style: {
|
|
528
|
-
"--sidebar-width": "".concat(sidebarWidth / 16, "rem")
|
|
529
|
-
},
|
|
530
|
-
onOpenChange: function onOpenChange(open) {
|
|
531
|
-
return setIsSidebarCollapsed(!open);
|
|
532
|
-
},
|
|
563
|
+
return /*#__PURE__*/jsxs(Fragment$1, {
|
|
533
564
|
children: [/*#__PURE__*/jsxs(Sidebar$1, {
|
|
534
565
|
collapsible: "offcanvas",
|
|
535
566
|
side: sidebarSide,
|
|
536
567
|
children: [/*#__PURE__*/jsxs(SidebarHeader, {
|
|
537
|
-
className: "relative p-0",
|
|
568
|
+
className: "nm-sidebar-shadcn-header relative p-0",
|
|
538
569
|
children: [/*#__PURE__*/jsx(Header$1, {
|
|
539
570
|
customLogo: customLogo,
|
|
540
571
|
clearSettingsNav: function clearSettingsNav() {
|
|
541
572
|
return setSelectedNavLinkRoute(null);
|
|
542
573
|
}
|
|
543
574
|
}), /*#__PURE__*/jsx(SidebarTrigger, {
|
|
544
|
-
className: "absolute end-2 top-3"
|
|
575
|
+
className: "absolute end-2 top-3",
|
|
576
|
+
title: t("neetoMolecules.sidebar.hideMenu")
|
|
545
577
|
}), showWorkspaceName && /*#__PURE__*/jsxs("div", {
|
|
546
578
|
className: "border-sidebar-border border-b px-4 py-2",
|
|
547
579
|
children: [/*#__PURE__*/jsx("h5", {
|
|
@@ -562,12 +594,13 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
562
594
|
navLinks: navLinks,
|
|
563
595
|
setSelectedNavLinkRoute: setSelectedNavLinkRoute
|
|
564
596
|
})
|
|
565
|
-
}), isExpandable && /*#__PURE__*/jsx(SidebarRail, {
|
|
597
|
+
}), !isMobile && isExpandable && !isSidebarCollapsed && /*#__PURE__*/jsx(SidebarRail, {
|
|
566
598
|
onClickCapture: handleRailClick,
|
|
567
599
|
onMouseDown: handleRailMouseDown
|
|
568
600
|
})]
|
|
569
|
-
}), isSidebarCollapsed && /*#__PURE__*/jsx(SidebarTrigger, {
|
|
570
|
-
className: "fixed start-2 top-
|
|
601
|
+
}), (isMobile && !openMobile || !isMobile && isSidebarCollapsed) && /*#__PURE__*/jsx(SidebarTrigger, {
|
|
602
|
+
className: "bg-background hover:bg-accent fixed start-2 top-2 z-50 size-9 rounded-full border shadow-sm",
|
|
603
|
+
title: t("neetoMolecules.sidebar.showMenu")
|
|
571
604
|
})]
|
|
572
605
|
});
|
|
573
606
|
};
|