@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.
@@ -12,7 +12,7 @@ require('react');
12
12
 
13
13
  var SIZE = {
14
14
  "default": 16,
15
- large: 20
15
+ large: 18
16
16
  };
17
17
 
18
18
  var _excluded = ["label"];
@@ -40,7 +40,9 @@ var HelpPopover = function HelpPopover(_ref) {
40
40
  alignOffset: alignOffset,
41
41
  position: position,
42
42
  sideOffset: sideOffset,
43
+ className: "!max-w-[calc(100vw-2rem)]",
43
44
  closeDelay: 150,
45
+ collisionPadding: 12,
44
46
  openDelay: 0,
45
47
  trigger: /*#__PURE__*/jsxRuntime.jsx("button", {
46
48
  "data-testid": "help-popover-button",
@@ -73,14 +75,18 @@ var HelpPopover = function HelpPopover(_ref) {
73
75
  }) : description, helpLinkProps && function () {
74
76
  var linkLabel = helpLinkProps.label,
75
77
  restLinkProps = _objectWithoutProperties(helpLinkProps, _excluded);
76
- return /*#__PURE__*/jsxRuntime.jsx("a", _objectSpread(_objectSpread({
77
- className: "text-primary mt-3 text-sm hover:underline",
78
- "data-testid": "help-popover-link-button",
79
- rel: "noreferrer",
80
- target: "_blank"
81
- }, restLinkProps), {}, {
82
- children: linkLabel !== null && linkLabel !== void 0 ? linkLabel : t("neetoMolecules.common.viewHelpArticle")
83
- }));
78
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
79
+ asChild: true,
80
+ className: "mt-3 self-start",
81
+ variant: "link",
82
+ children: /*#__PURE__*/jsxRuntime.jsx("a", _objectSpread(_objectSpread({
83
+ "data-testid": "help-popover-link-button",
84
+ rel: "noreferrer",
85
+ target: "_blank"
86
+ }, restLinkProps), {}, {
87
+ children: linkLabel !== null && linkLabel !== void 0 ? linkLabel : t("neetoMolecules.common.viewHelpArticle")
88
+ }))
89
+ });
84
90
  }()]
85
91
  })
86
92
  });
@@ -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: 20 };\n","import { 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 closeDelay={150}\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 <a\n className=\"text-primary mt-3 text-sm hover:underline\"\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 );\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","openDelay","trigger","type","classNames","children","color","_jsxs","onClick","event","stopPropagation","Typography","asChild","variant","weight","linkLabel","label","restLinkProps","_objectWithoutProperties","_excluded","_objectSpread","rel","target"],"mappings":"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"}
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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"}
@@ -95,7 +95,7 @@ var MenuItem = function MenuItem(_ref) {
95
95
  menuItems: menuItems
96
96
  }, menuItemProps)));
97
97
  }
98
- return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu.MenuItem.Button, _objectSpread$1(_objectSpread$1({
98
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu.MenuItem, _objectSpread$1(_objectSpread$1({
99
99
  onClick: onClick,
100
100
  role: "menuitem"
101
101
  }, 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":["createLucideIcon","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":["createLucideIcon","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]}
@@ -9,7 +9,7 @@ var ramda = require('ramda');
9
9
  var reactI18next = require('react-i18next');
10
10
  var reactRouterDom = require('react-router-dom');
11
11
  var useKeyboardShortcutsPaneState = require('../useKeyboardShortcutsPaneState-BG_xVteC.js');
12
- var ConfigureView = require('../ConfigureView-DuStircF.js');
12
+ var ConfigureView = require('../ConfigureView-DtQRvPmE.js');
13
13
  var classnames = require('classnames');
14
14
  var initializers = require('@bigbinary/neeto-commons-frontend/initializers');
15
15
  var Neeto = require('@bigbinary/neeto-icons/typeface-logos/Neeto');
@@ -22,10 +22,10 @@ var neetoAtoms = require('@bigbinary/neeto-atoms');
22
22
  var plus = require('../plus-MoDFAiKt.js');
23
23
  var ellipsis = require('../ellipsis-BcfLTtl5.js');
24
24
  var chevronRight = require('../chevron-right-DpleLIQp.js');
25
+ var injectCss = require('../inject-css-B6qYtOJe.js');
25
26
  require('zustand/shallow');
26
27
  require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
27
28
  require('zustand');
28
- require('@bigbinary/neeto-commons-frontend/react-utils');
29
29
  require('@bigbinary/neeto-commons-frontend/utils/general');
30
30
  require('@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint');
31
31
  require('@bigbinary/neeto-filters-frontend/v2');
@@ -66,7 +66,7 @@ var Header$1 = function Header(_ref) {
66
66
  "data-testid": "sidebar-info",
67
67
  children: /*#__PURE__*/jsxRuntime.jsx(reactRouterDom.Link, {
68
68
  to: ConfigureView.DEFAULT_HOME_PATH,
69
- className: classnames("block w-full", {
69
+ className: classnames("mt-2 block w-full py-2", {
70
70
  "cursor-pointer": isOnboarded,
71
71
  "pointer-events-none": !isOnboarded
72
72
  }),
@@ -99,7 +99,7 @@ var AddAction = function AddAction(_ref) {
99
99
  children: /*#__PURE__*/jsxRuntime.jsx(plus.Plus, {})
100
100
  }),
101
101
  children: actions.map(function (action) {
102
- return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu.MenuItem.Button, {
102
+ return /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.DropdownMenu.MenuItem, {
103
103
  onClick: function onClick() {
104
104
  var _action$onClick;
105
105
  (_action$onClick = action.onClick) === null || _action$onClick === void 0 || _action$onClick.call(action);
@@ -403,6 +403,9 @@ var NavLinks = function NavLinks(_ref) {
403
403
  });
404
404
  };
405
405
 
406
+ 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}";
407
+ injectCss.n(css,{});
408
+
406
409
  var Sidebar = function Sidebar(_ref) {
407
410
  var navLinks = _ref.navLinks,
408
411
  _ref$moreNavLinks = _ref.moreNavLinks,
@@ -414,26 +417,65 @@ var Sidebar = function Sidebar(_ref) {
414
417
  showWorkspaceName = _ref$showWorkspaceNam === void 0 ? false : _ref$showWorkspaceNam,
415
418
  _ref$isExpandable = _ref.isExpandable,
416
419
  isExpandable = _ref$isExpandable === void 0 ? true : _ref$isExpandable;
420
+ var _useLocalStorage = useLocalStorage(ConfigureView.getSidebarStateLocalStorageKey(), false),
421
+ _useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
422
+ isSidebarCollapsed = _useLocalStorage2[0],
423
+ setIsSidebarCollapsed = _useLocalStorage2[1];
424
+ var _useLocalStorage3 = useLocalStorage(ConfigureView.SIDEBAR_WIDTH_KEY, ConfigureView.DEFAULT_SIDEBAR_WIDTH),
425
+ _useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
426
+ sidebarWidthRaw = _useLocalStorage4[0],
427
+ setSidebarWidth = _useLocalStorage4[1];
428
+ var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || ConfigureView.DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || ConfigureView.DEFAULT_SIDEBAR_WIDTH;
429
+ return /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarProvider, {
430
+ className: "!w-auto",
431
+ open: !isSidebarCollapsed,
432
+ style: {
433
+ "--sidebar-width": "".concat(sidebarWidth / 16, "rem")
434
+ },
435
+ onOpenChange: function onOpenChange(open) {
436
+ return setIsSidebarCollapsed(!open);
437
+ },
438
+ children: /*#__PURE__*/jsxRuntime.jsx(SidebarBody, {
439
+ customLogo: customLogo,
440
+ isCountsLoading: isCountsLoading,
441
+ isExpandable: isExpandable,
442
+ isSidebarCollapsed: isSidebarCollapsed,
443
+ moreNavLinks: moreNavLinks,
444
+ navLinks: navLinks,
445
+ setIsSidebarCollapsed: setIsSidebarCollapsed,
446
+ setSidebarWidth: setSidebarWidth,
447
+ showWorkspaceName: showWorkspaceName,
448
+ sidebarWidth: sidebarWidth
449
+ })
450
+ });
451
+ };
452
+ var SidebarBody = function SidebarBody(_ref2) {
453
+ var navLinks = _ref2.navLinks,
454
+ moreNavLinks = _ref2.moreNavLinks,
455
+ customLogo = _ref2.customLogo,
456
+ isCountsLoading = _ref2.isCountsLoading,
457
+ showWorkspaceName = _ref2.showWorkspaceName,
458
+ isExpandable = _ref2.isExpandable,
459
+ isSidebarCollapsed = _ref2.isSidebarCollapsed,
460
+ setIsSidebarCollapsed = _ref2.setIsSidebarCollapsed,
461
+ sidebarWidth = _ref2.sidebarWidth,
462
+ setSidebarWidth = _ref2.setSidebarWidth;
463
+ var _useSidebar = primitives.useSidebar(),
464
+ isMobile = _useSidebar.isMobile,
465
+ setOpenMobile = _useSidebar.setOpenMobile,
466
+ openMobile = _useSidebar.openMobile;
417
467
  var _useKeyboardShortcuts = useKeyboardShortcutsPaneState.useKeyboardShortcutsPaneState(),
418
468
  _useKeyboardShortcuts2 = _slicedToArray(_useKeyboardShortcuts, 1),
419
469
  isKeyboardShortcutsPaneOpen = _useKeyboardShortcuts2[0];
420
- var _useLocalStorage = useLocalStorage(ConfigureView.SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, null),
421
- _useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
422
- selectedNavLinkRoute = _useLocalStorage2[0],
423
- setSelectedNavLinkRoute = _useLocalStorage2[1];
424
- var _useLocalStorage3 = useLocalStorage(ConfigureView.getSidebarStateLocalStorageKey(), false),
425
- _useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
426
- isSidebarCollapsed = _useLocalStorage4[0],
427
- setIsSidebarCollapsed = _useLocalStorage4[1];
428
- var _useLocalStorage5 = useLocalStorage(ConfigureView.SIDEBAR_WIDTH_KEY, ConfigureView.DEFAULT_SIDEBAR_WIDTH),
470
+ var _useLocalStorage5 = useLocalStorage(ConfigureView.SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, null),
429
471
  _useLocalStorage6 = _slicedToArray(_useLocalStorage5, 2),
430
- sidebarWidthRaw = _useLocalStorage6[0],
431
- setSidebarWidth = _useLocalStorage6[1];
432
- var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || ConfigureView.DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || ConfigureView.DEFAULT_SIDEBAR_WIDTH;
472
+ selectedNavLinkRoute = _useLocalStorage6[0],
473
+ setSelectedNavLinkRoute = _useLocalStorage6[1];
433
474
  var isDraggingRef = React.useRef(false);
434
475
  var hasDraggedRef = React.useRef(false);
435
476
  var startXRef = React.useRef(null);
436
477
  var startWidthRef = React.useRef(null);
478
+ var isInitialMountRef = React.useRef(true);
437
479
  var location = reactRouterDom.useLocation();
438
480
  var history = reactRouterDom.useHistory();
439
481
  var _useTranslation = reactI18next.useTranslation(),
@@ -441,18 +483,22 @@ var Sidebar = function Sidebar(_ref) {
441
483
  var isRTL = document.documentElement.dir === "rtl";
442
484
  var sidebarSide = isRTL ? "right" : "left";
443
485
  React.useEffect(function () {
444
- if (isKeyboardShortcutsPaneOpen) {
445
- setIsSidebarCollapsed(true);
446
- } else if (window.innerWidth > 768) {
447
- setIsSidebarCollapsed(false);
486
+ if (isInitialMountRef.current) {
487
+ isInitialMountRef.current = false;
488
+ return;
448
489
  }
449
- // eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed may not be stable across renders
450
- }, [isKeyboardShortcutsPaneOpen]);
490
+ if (isMobile) {
491
+ if (isKeyboardShortcutsPaneOpen) setOpenMobile(false);
492
+ return;
493
+ }
494
+ if (isKeyboardShortcutsPaneOpen) setIsSidebarCollapsed(true);else setIsSidebarCollapsed(false);
495
+ // eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed / setOpenMobile may not be stable across renders
496
+ }, [isKeyboardShortcutsPaneOpen, isMobile]);
451
497
  React.useEffect(function () {
452
498
  if (!neetoCist.isPresent(navLinks)) return;
453
- var currentLink = ramda.findLast(function (_ref2) {
454
- var to = _ref2.to,
455
- isActive = _ref2.isActive;
499
+ var currentLink = ramda.findLast(function (_ref3) {
500
+ var to = _ref3.to,
501
+ isActive = _ref3.isActive;
456
502
  var url = new URL(to, window.location.href);
457
503
  return ramda.is(Function, isActive) ? isActive() : location.pathname.includes(url.pathname);
458
504
  })(navLinks);
@@ -461,12 +507,8 @@ var Sidebar = function Sidebar(_ref) {
461
507
  }
462
508
  // eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only: sets initial selected route from current URL
463
509
  }, []);
464
-
465
- // Drag-to-resize via SidebarRail: intercept mousedown to start drag,
466
- // update --sidebar-width directly on DOM for instant feedback,
467
- // persist to localStorage on mouseup.
468
510
  var handleRailMouseDown = React.useCallback(function (e) {
469
- if (!isExpandable) return;
511
+ if (!isExpandable || isMobile) return;
470
512
  isDraggingRef.current = true;
471
513
  hasDraggedRef.current = false;
472
514
  startXRef.current = e.clientX;
@@ -476,9 +518,7 @@ var Sidebar = function Sidebar(_ref) {
476
518
  document.body.style.cursor = "col-resize";
477
519
  document.body.style.userSelect = "none";
478
520
  e.preventDefault();
479
- }, [sidebarWidth, isExpandable]);
480
-
481
- // Prevent SidebarRail's built-in toggle when user dragged to resize
521
+ }, [sidebarWidth, isExpandable, isMobile]);
482
522
  var handleRailClick = React.useCallback(function (e) {
483
523
  if (!hasDraggedRef.current) return;
484
524
  e.preventDefault();
@@ -486,12 +526,11 @@ var Sidebar = function Sidebar(_ref) {
486
526
  hasDraggedRef.current = false;
487
527
  }, []);
488
528
  React.useEffect(function () {
489
- if (!isExpandable) return undefined;
529
+ if (!isExpandable || isMobile) return undefined;
490
530
  var onMouseMove = function onMouseMove(e) {
491
531
  if (!isDraggingRef.current) return;
492
532
  hasDraggedRef.current = true;
493
533
  var dx = e.clientX - startXRef.current;
494
- // In RTL, dragging right shrinks, dragging left expands
495
534
  var rtl = document.documentElement.dir === "rtl";
496
535
  var newWidth = startWidthRef.current + (rtl ? -dx : dx);
497
536
  newWidth = Math.max(ConfigureView.MIN_SIDEBAR_WIDTH, Math.min(newWidth, ConfigureView.MAX_SIDEBAR_WIDTH));
@@ -519,10 +558,10 @@ var Sidebar = function Sidebar(_ref) {
519
558
  document.removeEventListener("mousemove", onMouseMove);
520
559
  document.removeEventListener("mouseup", onMouseUp);
521
560
  };
522
- }, [isExpandable, setSidebarWidth]);
561
+ }, [isExpandable, isMobile, setSidebarWidth]);
523
562
  React.useEffect(function () {
524
- document.documentElement.style.setProperty("--nv-sidebar-width", "".concat(sidebarWidth / 16, "rem"));
525
- }, [sidebarWidth]);
563
+ document.documentElement.style.setProperty("--nv-sidebar-width", isMobile ? "0rem" : "".concat(sidebarWidth / 16, "rem"));
564
+ }, [sidebarWidth, isMobile]);
526
565
  var handleGoBack = function handleGoBack(event) {
527
566
  event.preventDefault();
528
567
  setSelectedNavLinkRoute(null);
@@ -542,27 +581,20 @@ var Sidebar = function Sidebar(_ref) {
542
581
  });
543
582
  }, [location.pathname, navLinks]);
544
583
  var isSelectedNavLinkVisible = selectedNavLinkRoute && (activeLink === null || activeLink === void 0 ? void 0 : activeLink.to) === selectedNavLinkRoute && neetoCist.isNotEmpty(navLinks);
545
- return /*#__PURE__*/jsxRuntime.jsxs(primitives.SidebarProvider, {
546
- className: "!w-auto",
547
- open: !isSidebarCollapsed,
548
- style: {
549
- "--sidebar-width": "".concat(sidebarWidth / 16, "rem")
550
- },
551
- onOpenChange: function onOpenChange(open) {
552
- return setIsSidebarCollapsed(!open);
553
- },
584
+ return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
554
585
  children: [/*#__PURE__*/jsxRuntime.jsxs(primitives.Sidebar, {
555
586
  collapsible: "offcanvas",
556
587
  side: sidebarSide,
557
588
  children: [/*#__PURE__*/jsxRuntime.jsxs(primitives.SidebarHeader, {
558
- className: "relative p-0",
589
+ className: "nm-sidebar-shadcn-header relative p-0",
559
590
  children: [/*#__PURE__*/jsxRuntime.jsx(Header, {
560
591
  customLogo: customLogo,
561
592
  clearSettingsNav: function clearSettingsNav() {
562
593
  return setSelectedNavLinkRoute(null);
563
594
  }
564
595
  }), /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarTrigger, {
565
- className: "absolute end-2 top-3"
596
+ className: "absolute end-2 top-3",
597
+ title: t("neetoMolecules.sidebar.hideMenu")
566
598
  }), showWorkspaceName && /*#__PURE__*/jsxRuntime.jsxs("div", {
567
599
  className: "border-sidebar-border border-b px-4 py-2",
568
600
  children: [/*#__PURE__*/jsxRuntime.jsx("h5", {
@@ -583,12 +615,13 @@ var Sidebar = function Sidebar(_ref) {
583
615
  navLinks: navLinks,
584
616
  setSelectedNavLinkRoute: setSelectedNavLinkRoute
585
617
  })
586
- }), isExpandable && /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarRail, {
618
+ }), !isMobile && isExpandable && !isSidebarCollapsed && /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarRail, {
587
619
  onClickCapture: handleRailClick,
588
620
  onMouseDown: handleRailMouseDown
589
621
  })]
590
- }), isSidebarCollapsed && /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarTrigger, {
591
- className: "fixed start-2 top-3 z-50"
622
+ }), (isMobile && !openMobile || !isMobile && isSidebarCollapsed) && /*#__PURE__*/jsxRuntime.jsx(primitives.SidebarTrigger, {
623
+ className: "bg-background hover:bg-accent fixed start-2 top-2 z-50 size-9 rounded-full border shadow-sm",
624
+ title: t("neetoMolecules.sidebar.showMenu")
592
625
  })]
593
626
  });
594
627
  };