@bigbinary/neeto-molecules 4.1.50 → 4.1.52

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.
Files changed (91) hide show
  1. package/dist/CalendarView.js +2 -1
  2. package/dist/CalendarView.js.map +1 -1
  3. package/dist/{Columns-BB50-jks.js → Columns-D68XA-e7.js} +2 -53
  4. package/dist/Columns-D68XA-e7.js.map +1 -0
  5. package/dist/Columns-cUgR6NTO.js +502 -0
  6. package/dist/Columns-cUgR6NTO.js.map +1 -0
  7. package/dist/Columns.js +2 -1
  8. package/dist/Columns.js.map +1 -1
  9. package/dist/StatusDropdown.js +1 -0
  10. package/dist/StatusDropdown.js.map +1 -1
  11. package/dist/SubHeader.js +2 -1
  12. package/dist/SubHeader.js.map +1 -1
  13. package/dist/Taxonomy.js +2 -1
  14. package/dist/Taxonomy.js.map +1 -1
  15. package/dist/circle-question-mark-Dib48f5Z.js +19 -0
  16. package/dist/circle-question-mark-Dib48f5Z.js.map +1 -0
  17. package/dist/cjs/CalendarView.js +2 -1
  18. package/dist/cjs/CalendarView.js.map +1 -1
  19. package/dist/cjs/{Columns-jm_CUnLP.js → Columns-BACqpEQU.js} +3 -54
  20. package/dist/cjs/Columns-BACqpEQU.js.map +1 -0
  21. package/dist/cjs/Columns-D3eocaeY.js +508 -0
  22. package/dist/cjs/Columns-D3eocaeY.js.map +1 -0
  23. package/dist/cjs/Columns.js +2 -1
  24. package/dist/cjs/Columns.js.map +1 -1
  25. package/dist/cjs/StatusDropdown.js +1 -0
  26. package/dist/cjs/StatusDropdown.js.map +1 -1
  27. package/dist/cjs/SubHeader.js +2 -1
  28. package/dist/cjs/SubHeader.js.map +1 -1
  29. package/dist/cjs/Taxonomy.js +2 -1
  30. package/dist/cjs/Taxonomy.js.map +1 -1
  31. package/dist/cjs/circle-question-mark-kxBMPyWQ.js +21 -0
  32. package/dist/cjs/circle-question-mark-kxBMPyWQ.js.map +1 -0
  33. package/dist/cjs/ellipsis-BcfLTtl5.js +21 -0
  34. package/dist/cjs/ellipsis-BcfLTtl5.js.map +1 -0
  35. package/dist/cjs/utilities.esm-jwIHISzF.js +58 -0
  36. package/dist/cjs/utilities.esm-jwIHISzF.js.map +1 -0
  37. package/dist/cjs/v2/Breadcrumbs.js +50 -0
  38. package/dist/cjs/v2/Breadcrumbs.js.map +1 -0
  39. package/dist/cjs/v2/Columns.js +34 -0
  40. package/dist/cjs/v2/Columns.js.map +1 -0
  41. package/dist/cjs/v2/Container.js +34 -0
  42. package/dist/cjs/v2/Container.js.map +1 -0
  43. package/dist/cjs/v2/FloatingActionMenu.js +10 -24
  44. package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
  45. package/dist/cjs/v2/Header.js +128 -0
  46. package/dist/cjs/v2/Header.js.map +1 -0
  47. package/dist/cjs/v2/HelpPopover.js +93 -0
  48. package/dist/cjs/v2/HelpPopover.js.map +1 -0
  49. package/dist/cjs/v2/MoreDropdown.js +201 -0
  50. package/dist/cjs/v2/MoreDropdown.js.map +1 -0
  51. package/dist/cjs/v2/Search.js +129 -0
  52. package/dist/cjs/v2/Search.js.map +1 -0
  53. package/dist/cjs/v2/Sidebar.js +3 -17
  54. package/dist/cjs/v2/Sidebar.js.map +1 -1
  55. package/dist/cjs/v2/SubHeader.js +246 -0
  56. package/dist/cjs/v2/SubHeader.js.map +1 -0
  57. package/dist/ellipsis-DpI9xqUK.js +19 -0
  58. package/dist/ellipsis-DpI9xqUK.js.map +1 -0
  59. package/dist/utilities.esm-CS21Daln.js +56 -0
  60. package/dist/utilities.esm-CS21Daln.js.map +1 -0
  61. package/dist/v2/Breadcrumbs.js +48 -0
  62. package/dist/v2/Breadcrumbs.js.map +1 -0
  63. package/dist/v2/Columns.js +22 -0
  64. package/dist/v2/Columns.js.map +1 -0
  65. package/dist/v2/Container.js +32 -0
  66. package/dist/v2/Container.js.map +1 -0
  67. package/dist/v2/FloatingActionMenu.js +8 -22
  68. package/dist/v2/FloatingActionMenu.js.map +1 -1
  69. package/dist/v2/Header.js +126 -0
  70. package/dist/v2/Header.js.map +1 -0
  71. package/dist/v2/HelpPopover.js +91 -0
  72. package/dist/v2/HelpPopover.js.map +1 -0
  73. package/dist/v2/MoreDropdown.js +199 -0
  74. package/dist/v2/MoreDropdown.js.map +1 -0
  75. package/dist/v2/Search.js +127 -0
  76. package/dist/v2/Search.js.map +1 -0
  77. package/dist/v2/Sidebar.js +2 -16
  78. package/dist/v2/Sidebar.js.map +1 -1
  79. package/dist/v2/SubHeader.js +244 -0
  80. package/dist/v2/SubHeader.js.map +1 -0
  81. package/package.json +1 -1
  82. package/types/v2/Breadcrumbs.d.ts +12 -0
  83. package/types/v2/Columns.d.ts +42 -0
  84. package/types/v2/Container.d.ts +8 -0
  85. package/types/v2/Header.d.ts +22 -0
  86. package/types/v2/HelpPopover.d.ts +23 -0
  87. package/types/v2/MoreDropdown.d.ts +42 -0
  88. package/types/v2/Search.d.ts +16 -0
  89. package/types/v2/SubHeader.d.ts +51 -0
  90. package/dist/Columns-BB50-jks.js.map +0 -1
  91. package/dist/cjs/Columns-jm_CUnLP.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Search.js","sources":["../../../src/v2/components/Search/utils.js","../../../src/v2/components/Search/index.jsx"],"sourcesContent":["import { getQueryParams } from \"neetocommons/utils\";\n\nexport const getInitialSearchValue = ({\n initialValue = \"\",\n enableUrlSync,\n searchParamName,\n}) => {\n if (enableUrlSync) {\n const queryParams = getQueryParams({ toCamelCase: false });\n\n return queryParams[searchParamName] ?? \"\";\n }\n\n return initialValue;\n};\n","import { useEffect, useId, useRef, useState } from \"react\";\n\nimport { Input, Label } from \"@bigbinary/neeto-atoms\";\nimport { Search as SearchIcon } from \"lucide-react\";\nimport useFuncDebounce from \"neetocommons/react-utils/useFuncDebounce\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport useUpdateEffect from \"neetocommons/react-utils/useUpdateEffect\";\nimport { buildUrl } from \"neetocommons/utils/general\";\nimport PropTypes from \"prop-types\";\nimport { mergeLeft, omit } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useHistory } from \"react-router-dom\";\n\nimport { getInitialSearchValue } from \"./utils\";\n\nconst Search = ({\n value,\n debounceTime = 300,\n onSearch,\n onChange,\n enableUrlSync = false,\n searchParamName = \"search_term\",\n className,\n label,\n ...inputProps\n}) => {\n const { t } = useTranslation();\n const queryParams = useQueryParams({ toCamelCase: false });\n const history = useHistory();\n const inputId = useId();\n\n const [internalValue, setInternalValue] = useState(\n getInitialSearchValue({\n initialValue: value,\n enableUrlSync,\n searchParamName,\n })\n );\n const trimmedValue = value?.trim();\n\n useUpdateEffect(() => {\n if (!enableUrlSync) return;\n\n const searchParamValue = queryParams?.[searchParamName] ?? \"\";\n setInternalValue(searchParamValue);\n }, [queryParams?.[searchParamName]]);\n\n const handleSearchQueryParams = trimmedValue => {\n if (!trimmedValue && !queryParams?.[searchParamName]) return;\n\n if (trimmedValue === queryParams?.[searchParamName]) return;\n\n const pathname = history.location.pathname;\n\n if (trimmedValue) {\n history.push(\n buildUrl(\n pathname,\n mergeLeft({ [searchParamName]: trimmedValue }, queryParams)\n )\n );\n } else {\n history.push(buildUrl(pathname, omit([searchParamName], queryParams)));\n }\n };\n\n const handleDebouncedSearchTermChange = useFuncDebounce(trimmedValue => {\n if (onSearch) onSearch(trimmedValue);\n else if (enableUrlSync) handleSearchQueryParams(trimmedValue);\n }, debounceTime);\n\n useUpdateEffect(() => {\n handleDebouncedSearchTermChange(trimmedValue);\n }, [trimmedValue]);\n\n const prevValueRef = useRef(value);\n if (value !== undefined && value !== prevValueRef.current) {\n setInternalValue(value);\n prevValueRef.current = value;\n }\n\n const handleOnChange = e => {\n const trimmedValue = e.target.value?.trim();\n onChange?.(e);\n setInternalValue(e.target.value);\n\n if (internalValue?.trim() !== trimmedValue) {\n handleDebouncedSearchTermChange(trimmedValue);\n }\n };\n\n useEffect(() => handleDebouncedSearchTermChange.cancel, []);\n\n return (\n <div {...{ className }}>\n {label && (\n <Label className=\"mb-1\" htmlFor={inputId}>\n {label}\n </Label>\n )}\n <div className=\"relative\">\n <SearchIcon className=\"text-muted-foreground pointer-events-none absolute top-1/2 left-3 size-4 -translate-y-1/2\" />\n <Input\n className=\"pl-9 [&::-webkit-search-cancel-button:hover]:cursor-pointer [&::-webkit-search-decoration:hover]:cursor-pointer\"\n id={inputId}\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n type=\"search\"\n value={internalValue}\n onChange={handleOnChange}\n {...inputProps}\n />\n </div>\n </div>\n );\n};\n\nSearch.propTypes = {\n value: PropTypes.string,\n debounceTime: PropTypes.number,\n onChange: PropTypes.func,\n onSearch: PropTypes.func,\n enableUrlSync: PropTypes.bool,\n searchParamName: PropTypes.string,\n inputProps: PropTypes.object,\n};\n\nexport default Search;\n"],"names":["getInitialSearchValue","_ref","_ref$initialValue","initialValue","enableUrlSync","searchParamName","_queryParams$searchPa","queryParams","getQueryParams","toCamelCase","Search","value","_ref$debounceTime","debounceTime","onSearch","onChange","_ref$enableUrlSync","_ref$searchParamName","className","label","inputProps","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","useQueryParams","history","useHistory","inputId","useId","_useState","useState","_useState2","_slicedToArray","internalValue","setInternalValue","trimmedValue","trim","useUpdateEffect","searchParamValue","handleSearchQueryParams","pathname","location","push","buildUrl","mergeLeft","_defineProperty","omit","handleDebouncedSearchTermChange","useFuncDebounce","prevValueRef","useRef","undefined","current","handleOnChange","e","_e$target$value","target","useEffect","cancel","_jsxs","children","_jsx","Label","htmlFor","SearchIcon","Input","_objectSpread","id","placeholder","type"],"mappings":"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"}
@@ -19,7 +19,7 @@ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
19
19
  var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
20
20
  var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
21
21
  var plus = require('../plus-MoDFAiKt.js');
22
- var createLucideIcon = require('../createLucideIcon-DBDhE7kE.js');
22
+ var ellipsis = require('../ellipsis-BcfLTtl5.js');
23
23
  var chevronRight = require('../chevron-right-DpleLIQp.js');
24
24
  require('zustand/shallow');
25
25
  require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
@@ -28,6 +28,7 @@ require('@bigbinary/neeto-commons-frontend/react-utils');
28
28
  require('@bigbinary/neeto-commons-frontend/utils/general');
29
29
  require('@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint');
30
30
  require('@bigbinary/neeto-filters-frontend/Segments');
31
+ require('../createLucideIcon-DBDhE7kE.js');
31
32
 
32
33
  function _interopNamespaceDefault(e) {
33
34
  var n = Object.create(null);
@@ -48,21 +49,6 @@ function _interopNamespaceDefault(e) {
48
49
 
49
50
  var AppIcons__namespace = /*#__PURE__*/_interopNamespaceDefault(AppIcons);
50
51
 
51
- /**
52
- * @license lucide-react v1.7.0 - ISC
53
- *
54
- * This source code is licensed under the ISC license.
55
- * See the LICENSE file in the root directory of this source tree.
56
- */
57
-
58
-
59
- const __iconNode = [
60
- ["circle", { cx: "12", cy: "12", r: "1", key: "41hilf" }],
61
- ["circle", { cx: "19", cy: "12", r: "1", key: "1wjl8i" }],
62
- ["circle", { cx: "5", cy: "12", r: "1", key: "1pcz8c" }]
63
- ];
64
- const Ellipsis = createLucideIcon.createLucideIcon("ellipsis", __iconNode);
65
-
66
52
  var Header$1 = function Header(_ref) {
67
53
  var _ProductTypefaceLogos;
68
54
  var customLogo = _ref.customLogo,
@@ -184,7 +170,7 @@ var MoreDropdown = function MoreDropdown(_ref) {
184
170
  children: /*#__PURE__*/jsxRuntime.jsxs("button", {
185
171
  className: "text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground flex w-full items-center gap-2 rounded-md p-2 text-sm outline-hidden",
186
172
  "data-testid": "more-nav-links-dropdown-button",
187
- children: [/*#__PURE__*/jsxRuntime.jsx(Ellipsis, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
173
+ children: [/*#__PURE__*/jsxRuntime.jsx(ellipsis.Ellipsis, {}), /*#__PURE__*/jsxRuntime.jsx("span", {
188
174
  className: "truncate",
189
175
  children: t("neetoMolecules.sidebar.more")
190
176
  })]
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../../../node_modules/lucide-react/dist/esm/icons/ellipsis.js","../../../src/v2/components/Sidebar/Components/Header.jsx","../../../src/v2/components/Sidebar/Components/AddAction.jsx","../../../src/v2/components/Sidebar/Components/PinIcon.jsx","../../../src/v2/components/Sidebar/Components/UnpinIcon.jsx","../../../src/v2/components/Sidebar/Components/MoreDropdown.jsx","../../../src/v2/components/Sidebar/Components/NavLinks.jsx","../../../src/v2/components/Sidebar/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: \"19\", cy: \"12\", r: \"1\", key: \"1wjl8i\" }],\n [\"circle\", { cx: \"5\", cy: \"12\", r: \"1\", key: \"1pcz8c\" }]\n];\nconst Ellipsis = createLucideIcon(\"ellipsis\", __iconNode);\n\nexport { __iconNode, Ellipsis as default };\n//# sourceMappingURL=ellipsis.js.map\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_PATH, SPECIAL_APP_NAMES } from \"../constants\";\n\nconst Header = ({ customLogo, clearSettingsNav }) => {\n const productName = globalProps.appName.substr(5);\n const normalizedName = (productName || \"\").trim().toLowerCase();\n const specialCase = SPECIAL_APP_NAMES[normalizedName];\n const logoName = specialCase\n ? `Neeto${specialCase}`\n : `Neeto${capitalize(normalizedName)}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n const isOnboarded = globalProps.user.isOnboarded !== false;\n\n return (\n <div className=\"px-4 py-3\" data-testid=\"sidebar-info\">\n <Link\n to={DEFAULT_HOME_PATH}\n className={classnames(\"block w-full\", {\n \"cursor-pointer\": isOnboarded,\n \"pointer-events-none\": !isOnboarded,\n })}\n onClick={clearSettingsNav}\n >\n {globalProps.sidebarTitle ? (\n <span className=\"text-sidebar-foreground text-xl leading-9 font-bold\">\n {globalProps.sidebarTitle}\n </span>\n ) : (\n <LogoComponent className=\"h-9 w-auto max-w-full\" />\n )}\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { Plus } from \"lucide-react\";\n\nconst AddAction = ({ actions }) => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <button\n className=\"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-sidebar-ring absolute end-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden focus-visible:ring-2 md:opacity-0 md:group-focus-within/menu-item:opacity-100 md:group-hover/menu-item:opacity-100\"\n data-testid=\"add-dropdown-trigger\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n >\n <Plus />\n </button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" side=\"bottom\">\n {actions.map(action => (\n <DropdownMenuItem\n key={action.key}\n onSelect={() => {\n action.onClick?.();\n }}\n >\n {action.label}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n);\n\nexport default AddAction;\n","const PinIcon = ({ size, otherProps }) => (\n <svg\n fill=\"currentColor\"\n height={size}\n viewBox=\"0 -960 960 960\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...otherProps}\n >\n <path d=\"m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40zm-286 80h252l-46-46v-314H400v314zm126 0\" />\n </svg>\n);\n\nexport default PinIcon;\n","const UnpinIcon = ({ size, otherProps }) => (\n <svg\n fill=\"currentColor\"\n height={size}\n viewBox=\"0 -960 960 960\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...otherProps}\n >\n <path d=\"m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40z\" />\n </svg>\n);\n\nexport default UnpinIcon;\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport { useState } from \"react\";\n\nimport {\n Badge,\n Button,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n SidebarMenuItem,\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { Ellipsis } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport PinIcon from \"./PinIcon\";\nimport UnpinIcon from \"./UnpinIcon\";\n\nimport { filterByPermissions } from \"../utils\";\n\nconst MoreDropdown = ({ moreNavLinks, isNavLinkPinned, handleTogglePin }) => {\n const { t } = useTranslation();\n const [isOpen, setIsOpen] = useState(false);\n const isRTL = document.documentElement.dir === \"rtl\";\n\n return (\n <SidebarMenuItem>\n <DropdownMenu open={isOpen} onOpenChange={setIsOpen}>\n <DropdownMenuTrigger asChild>\n <button\n className=\"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground flex w-full items-center gap-2 rounded-md p-2 text-sm outline-hidden\"\n data-testid=\"more-nav-links-dropdown-button\"\n >\n <Ellipsis />\n <span className=\"truncate\">{t(\"neetoMolecules.sidebar.more\")}</span>\n </button>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n align=\"start\"\n className=\"z-[99999] p-0\"\n data-testid=\"more-nav-links-dropdown-menu\"\n side={isRTL ? \"left\" : \"right\"}\n >\n {moreNavLinks.filter(filterByPermissions).map((navLink, index) => {\n const { label, icon, key: navLinkKey, to, onClick, tag } = navLink;\n const IconSVG = icon;\n const isPinned = isNavLinkPinned(navLink);\n\n return (\n <DropdownMenuItem\n data-testid={label}\n key={navLinkKey || index}\n onSelect={e => e.preventDefault()}\n >\n <CheckPointNavLinks\n {...{ onClick, to }}\n className=\"flex w-full cursor-pointer items-center justify-between gap-2 px-2 py-1\"\n >\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {icon && <IconSVG className=\"flex-shrink-0\" size={20} />}\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {label}\n {tag && <Badge {...tag} />}\n </span>\n </span>\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button\n className=\"flex-shrink-0\"\n data-testid=\"pin-button\"\n size=\"icon-sm\"\n variant=\"ghost\"\n onClick={event => handleTogglePin(navLink, event)}\n >\n {isPinned ? (\n <UnpinIcon otherProps={{}} size={16} />\n ) : (\n <PinIcon otherProps={{}} size={16} />\n )}\n </Button>\n </TooltipTrigger>\n <TooltipContent side=\"right\">\n {isPinned\n ? t(\"neetoMolecules.sidebar.unpin\")\n : t(\"neetoMolecules.sidebar.pin\")}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n </CheckPointNavLinks>\n </DropdownMenuItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n </SidebarMenuItem>\n );\n};\n\nexport default MoreDropdown;\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport { Fragment, useState } from \"react\";\n\nimport {\n Badge,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuItem,\n SidebarMenuButton,\n SidebarMenuSub,\n} from \"@bigbinary/neeto-atoms\";\nimport { ChevronRight } from \"lucide-react\";\nimport { isNot, hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { append, is } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport AddAction from \"./AddAction\";\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport MoreDropdown from \"./MoreDropdown\";\nimport SubLinkItem from \"./SubLinkItem\";\n\nimport { PINNED_MORE_NAV_LINKS_KEY } from \"../constants\";\nimport { filterByPermissions } from \"../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst NavLinks = ({\n navLinks,\n moreNavLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [expandedNavLinkKeys, setExpandedNavLinkKeys] = useState([]);\n const [pinnedNavLinks, setPinnedNavLinks] = useLocalStorage(\n PINNED_MORE_NAV_LINKS_KEY,\n []\n );\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) {\n setExpandedNavLinkKeys([]);\n\n return;\n }\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n const navLinkKey = navLink.key || navLink.to;\n if (isActive()) {\n const isExpanded = expandedNavLinkKeys.includes(navLinkKey);\n setExpandedNavLinkKeys(isExpanded ? [] : [navLinkKey]);\n navLink.resetPath !== true && event.preventDefault();\n\n return;\n }\n\n setExpandedNavLinkKeys([navLinkKey]);\n };\n\n const handleTogglePin = (navLink, event) => {\n event.preventDefault();\n event.stopPropagation();\n const navLinkKey = navLink.key || navLink.to;\n const isPinned = pinnedNavLinks.includes(navLinkKey);\n\n if (isPinned) {\n setPinnedNavLinks(pinnedNavLinks.filter(isNot(navLinkKey)));\n } else {\n setPinnedNavLinks([...pinnedNavLinks, navLinkKey]);\n }\n };\n\n const isNavLinkPinned = navLink => {\n if (!navLink) return false;\n const navLinkKey = navLink.key || navLink.to;\n\n return pinnedNavLinks.includes(navLinkKey);\n };\n\n const pinnedItems = moreNavLinks ? moreNavLinks.filter(isNavLinkPinned) : [];\n\n const activeMoreNavLink = moreNavLinks\n ? moreNavLinks.find(\n navLink =>\n navLink &&\n (location.pathname + location.search).startsWith(navLink.to)\n )\n : null;\n\n const additionalItems = [...pinnedItems];\n\n if (activeMoreNavLink && !isNavLinkPinned(activeMoreNavLink)) {\n additionalItems.push(activeMoreNavLink);\n }\n\n const combinedNavLinks = [...navLinks, ...additionalItems];\n\n return (\n <SidebarGroup>\n <SidebarGroupContent>\n <SidebarMenu className=\"gap-1\">\n {combinedNavLinks\n .filter(filterByPermissions)\n .map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n onClick,\n addActions = [],\n tag,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const navLinkKey = navLink.key || navLink.to;\n const isMenuExpanded =\n expandedNavLinkKeys.includes(navLinkKey) &&\n !isCountsLoadingDeprecated;\n\n const handleCaretClick = event => {\n event.preventDefault();\n event.stopPropagation();\n setExpandedNavLinkKeys(keys =>\n keys.includes(navLinkKey)\n ? keys.filter(isNot(navLinkKey))\n : append(navLinkKey, keys)\n );\n };\n\n return (\n <Fragment key={navLink.key || index}>\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={isActive()}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"font-medium\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event => {\n handleNavLinkClick({ event, isActive, navLink });\n onClick?.(event);\n }}\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span className=\"relative\" data-testid={label}>\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"bg-destructive text-destructive-foreground absolute -end-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full px-0.5 text-[10px]\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <span className=\"flex-grow truncate\">{label}</span>\n {tag && <Badge {...tag} />}\n {isExpandable && !isConfigureNavLink && (\n <span\n className=\"ms-auto shrink-0 transition-transform duration-200\"\n role=\"button\"\n tabIndex={-1}\n style={{\n transform: isMenuExpanded\n ? \"rotate(90deg)\"\n : \"rotate(0deg)\",\n }}\n onClick={handleCaretClick}\n >\n <ChevronRight className=\"rtl:rotate-180\" />\n </span>\n )}\n </CheckPointNavLinks>\n </SidebarMenuButton>\n {isNotEmpty(addActions) && (\n <AddAction actions={addActions} />\n )}\n </SidebarMenuItem>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <SidebarMenuSub>\n {items\n .filter(filterByPermissions)\n .map((subItem, subIndex) => (\n <SubLinkItem\n key={subIndex}\n {...{ ...subItem, isCountsLoading }}\n href={subItem.href}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n />\n ))}\n </SidebarMenuSub>\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n {isNotEmpty(moreNavLinks) && (\n <MoreDropdown\n {...{ handleTogglePin, isNavLinkPinned, moreNavLinks }}\n />\n )}\n </SidebarMenu>\n </SidebarGroupContent>\n </SidebarGroup>\n );\n};\n\nexport default NavLinks;\n","import { useCallback, useEffect, useMemo, useRef } from \"react\";\n\nimport {\n Sidebar as SidebarComponent,\n SidebarContent,\n SidebarHeader,\n SidebarProvider,\n SidebarRail,\n SidebarTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport useKeyboardShortcutsPaneState from \"components/KeyboardShortcuts/hooks/useKeyboardShortcutsPaneState\";\n\nimport ConfigureView from \"./Components/ConfigureView\";\nimport Header from \"./Components/Header\";\nimport NavLinks from \"./Components/NavLinks\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n SIDEBAR_WIDTH_KEY,\n MIN_SIDEBAR_WIDTH,\n MAX_SIDEBAR_WIDTH,\n DEFAULT_SIDEBAR_WIDTH,\n} from \"./constants\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n moreNavLinks = [],\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n isExpandable = true,\n}) => {\n const [isKeyboardShortcutsPaneOpen] = useKeyboardShortcutsPaneState();\n\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const [sidebarWidthRaw, setSidebarWidth] = useLocalStorage(\n SIDEBAR_WIDTH_KEY,\n DEFAULT_SIDEBAR_WIDTH\n );\n\n const sidebarWidth =\n typeof sidebarWidthRaw === \"string\"\n ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH\n : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;\n\n const isDraggingRef = useRef(false);\n const hasDraggedRef = useRef(false);\n const startXRef = useRef(null);\n const startWidthRef = useRef(null);\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const isRTL = document.documentElement.dir === \"rtl\";\n const sidebarSide = isRTL ? \"right\" : \"left\";\n\n useEffect(() => {\n if (isKeyboardShortcutsPaneOpen) {\n setIsSidebarCollapsed(true);\n } else if (window.innerWidth > 768) {\n setIsSidebarCollapsed(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed may not be stable across renders\n }, [isKeyboardShortcutsPaneOpen]);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only: sets initial selected route from current URL\n }, []);\n\n // Drag-to-resize via SidebarRail: intercept mousedown to start drag,\n // update --sidebar-width directly on DOM for instant feedback,\n // persist to localStorage on mouseup.\n const handleRailMouseDown = useCallback(\n e => {\n if (!isExpandable) return;\n\n isDraggingRef.current = true;\n hasDraggedRef.current = false;\n startXRef.current = e.clientX;\n startWidthRef.current = sidebarWidth;\n\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) wrapper.dataset.resizing = \"true\";\n\n document.body.style.cursor = \"col-resize\";\n document.body.style.userSelect = \"none\";\n e.preventDefault();\n },\n [sidebarWidth, isExpandable]\n );\n\n // Prevent SidebarRail's built-in toggle when user dragged to resize\n const handleRailClick = useCallback(e => {\n if (!hasDraggedRef.current) return;\n e.preventDefault();\n e.stopPropagation();\n hasDraggedRef.current = false;\n }, []);\n\n useEffect(() => {\n if (!isExpandable) return undefined;\n\n const onMouseMove = e => {\n if (!isDraggingRef.current) return;\n\n hasDraggedRef.current = true;\n const dx = e.clientX - startXRef.current;\n // In RTL, dragging right shrinks, dragging left expands\n const rtl = document.documentElement.dir === \"rtl\";\n let newWidth = startWidthRef.current + (rtl ? -dx : dx);\n newWidth = Math.max(\n MIN_SIDEBAR_WIDTH,\n Math.min(newWidth, MAX_SIDEBAR_WIDTH)\n );\n\n const widthRem = `${newWidth / 16}rem`;\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) wrapper.style.setProperty(\"--sidebar-width\", widthRem);\n\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n widthRem\n );\n };\n\n const onMouseUp = e => {\n if (!isDraggingRef.current) return;\n\n const dx = e.clientX - startXRef.current;\n const rtlUp = document.documentElement.dir === \"rtl\";\n let finalWidth = startWidthRef.current + (rtlUp ? -dx : dx);\n finalWidth = Math.round(\n Math.max(MIN_SIDEBAR_WIDTH, Math.min(finalWidth, MAX_SIDEBAR_WIDTH))\n );\n setSidebarWidth(finalWidth);\n\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) delete wrapper.dataset.resizing;\n\n isDraggingRef.current = false;\n document.body.style.cursor = \"\";\n document.body.style.userSelect = \"\";\n };\n\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseUp);\n\n return () => {\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n }, [isExpandable, setSidebarWidth]);\n\n useEffect(() => {\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n `${sidebarWidth / 16}rem`\n );\n }, [sidebarWidth]);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(configureNavLink.to);\n }\n };\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <SidebarProvider\n className=\"!w-auto\"\n open={!isSidebarCollapsed}\n style={{ \"--sidebar-width\": `${sidebarWidth / 16}rem` }}\n onOpenChange={open => setIsSidebarCollapsed(!open)}\n >\n <SidebarComponent collapsible=\"offcanvas\" side={sidebarSide}>\n <SidebarHeader className=\"relative p-0\">\n <Header\n {...{ customLogo }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n <SidebarTrigger className=\"absolute end-2 top-3\" />\n {showWorkspaceName && (\n <div className=\"border-sidebar-border border-b px-4 py-2\">\n <h5 className=\"text-sidebar-foreground mb-1 text-sm font-semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </h5>\n <span className=\"text-sidebar-foreground/70 truncate text-xs\">\n {globalProps.organization.name}\n </span>\n </div>\n )}\n </SidebarHeader>\n <SidebarContent>\n {isSelectedNavLinkVisible ? (\n <ConfigureView {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <NavLinks\n {...{\n isCountsLoading,\n moreNavLinks,\n navLinks,\n setSelectedNavLinkRoute,\n }}\n />\n )}\n </SidebarContent>\n {isExpandable && (\n <SidebarRail\n onClickCapture={handleRailClick}\n onMouseDown={handleRailMouseDown}\n />\n )}\n </SidebarComponent>\n {isSidebarCollapsed && (\n <SidebarTrigger className=\"fixed start-2 top-3 z-50\" />\n )}\n </SidebarProvider>\n );\n};\n\nSidebar.propTypes = {\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n PropTypes.object,\n ]),\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n tag: PropTypes.object,\n addActions: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n })\n ),\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n tag: PropTypes.object,\n })\n ),\n })\n ),\n moreNavLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n PropTypes.object,\n ]),\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n tag: PropTypes.object,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n tag: PropTypes.object,\n })\n ),\n })\n ),\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n isCountsLoading: PropTypes.bool,\n showWorkspaceName: PropTypes.bool,\n isExpandable: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["createLucideIcon","Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","productName","globalProps","appName","substr","normalizedName","trim","toLowerCase","specialCase","SPECIAL_APP_NAMES","logoName","concat","capitalize","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","isOnboarded","user","_jsx","className","children","Link","to","DEFAULT_HOME_PATH","classnames","onClick","sidebarTitle","memo","AddAction","actions","_jsxs","DropdownMenu","DropdownMenuTrigger","asChild","e","preventDefault","stopPropagation","Plus","DropdownMenuContent","align","side","map","action","DropdownMenuItem","onSelect","_action$onClick","call","label","key","PinIcon","size","otherProps","_objectSpread","fill","height","viewBox","width","xmlns","d","UnpinIcon","MoreDropdown","moreNavLinks","isNavLinkPinned","handleTogglePin","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","isRTL","document","documentElement","dir","SidebarMenuItem","open","onOpenChange","Ellipsis","filter","filterByPermissions","navLink","index","icon","navLinkKey","tag","IconSVG","isPinned","CheckPointNavLinks","Badge","TooltipProvider","Tooltip","TooltipTrigger","Button","variant","event","TooltipContent","renderCount","count","NavLinks","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","expandedNavLinkKeys","setExpandedNavLinkKeys","_useLocalStorage","useLocalStorage","PINNED_MORE_NAV_LINKS_KEY","_useLocalStorage2","pinnedNavLinks","setPinnedNavLinks","handleNavLinkClick","_ref2","isActive","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","isExpanded","includes","resetPath","isNot","_toConsumableArray","pinnedItems","activeMoreNavLink","find","pathname","search","startsWith","additionalItems","push","combinedNavLinks","SidebarGroup","SidebarGroupContent","SidebarMenu","_navLink$isCountsLoad","_navLink$count","Component","_navLink$addActions","addActions","_objectWithoutProperties","_excluded","url","URL","window","href","is","Function","isMenuExpanded","handleCaretClick","keys","append","Fragment","SidebarMenuButton","activeClassName","hyphenate","role","tabIndex","style","transform","ChevronRight","_Fragment","SidebarMenuSub","subItem","subIndex","_subItem$to","SubLinkItem","isSectionHeader","item","path","Sidebar","_ref$moreNavLinks","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","_ref$isExpandable","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isKeyboardShortcutsPaneOpen","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","_useLocalStorage5","SIDEBAR_WIDTH_KEY","DEFAULT_SIDEBAR_WIDTH","_useLocalStorage6","sidebarWidthRaw","setSidebarWidth","sidebarWidth","parseInt","isDraggingRef","useRef","hasDraggedRef","startXRef","startWidthRef","history","useHistory","sidebarSide","useEffect","innerWidth","currentLink","findLast","handleRailMouseDown","useCallback","current","clientX","wrapper","querySelector","dataset","resizing","body","cursor","userSelect","handleRailClick","undefined","onMouseMove","dx","rtl","newWidth","Math","max","MIN_SIDEBAR_WIDTH","min","MAX_SIDEBAR_WIDTH","widthRem","setProperty","onMouseUp","rtlUp","finalWidth","round","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","activeLink","useMemo","link","isSelectedNavLinkVisible","SidebarProvider","SidebarComponent","collapsible","SidebarHeader","SidebarTrigger","organization","name","SidebarContent","ConfigureView","SidebarRail","onClickCapture","onMouseDown"],"mappings":"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","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"Sidebar.js","sources":["../../../src/v2/components/Sidebar/Components/Header.jsx","../../../src/v2/components/Sidebar/Components/AddAction.jsx","../../../src/v2/components/Sidebar/Components/PinIcon.jsx","../../../src/v2/components/Sidebar/Components/UnpinIcon.jsx","../../../src/v2/components/Sidebar/Components/MoreDropdown.jsx","../../../src/v2/components/Sidebar/Components/NavLinks.jsx","../../../src/v2/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { capitalize } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nimport { DEFAULT_HOME_PATH, SPECIAL_APP_NAMES } from \"../constants\";\n\nconst Header = ({ customLogo, clearSettingsNav }) => {\n const productName = globalProps.appName.substr(5);\n const normalizedName = (productName || \"\").trim().toLowerCase();\n const specialCase = SPECIAL_APP_NAMES[normalizedName];\n const logoName = specialCase\n ? `Neeto${specialCase}`\n : `Neeto${capitalize(normalizedName)}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n const isOnboarded = globalProps.user.isOnboarded !== false;\n\n return (\n <div className=\"px-4 py-3\" data-testid=\"sidebar-info\">\n <Link\n to={DEFAULT_HOME_PATH}\n className={classnames(\"block w-full\", {\n \"cursor-pointer\": isOnboarded,\n \"pointer-events-none\": !isOnboarded,\n })}\n onClick={clearSettingsNav}\n >\n {globalProps.sidebarTitle ? (\n <span className=\"text-sidebar-foreground text-xl leading-9 font-bold\">\n {globalProps.sidebarTitle}\n </span>\n ) : (\n <LogoComponent className=\"h-9 w-auto max-w-full\" />\n )}\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport {\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { Plus } from \"lucide-react\";\n\nconst AddAction = ({ actions }) => (\n <DropdownMenu>\n <DropdownMenuTrigger asChild>\n <button\n className=\"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-sidebar-ring absolute end-1 top-1.5 flex aspect-square w-5 items-center justify-center rounded-md p-0 outline-hidden focus-visible:ring-2 md:opacity-0 md:group-focus-within/menu-item:opacity-100 md:group-hover/menu-item:opacity-100\"\n data-testid=\"add-dropdown-trigger\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n >\n <Plus />\n </button>\n </DropdownMenuTrigger>\n <DropdownMenuContent align=\"end\" side=\"bottom\">\n {actions.map(action => (\n <DropdownMenuItem\n key={action.key}\n onSelect={() => {\n action.onClick?.();\n }}\n >\n {action.label}\n </DropdownMenuItem>\n ))}\n </DropdownMenuContent>\n </DropdownMenu>\n);\n\nexport default AddAction;\n","const PinIcon = ({ size, otherProps }) => (\n <svg\n fill=\"currentColor\"\n height={size}\n viewBox=\"0 -960 960 960\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...otherProps}\n >\n <path d=\"m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40zm-286 80h252l-46-46v-314H400v314zm126 0\" />\n </svg>\n);\n\nexport default PinIcon;\n","const UnpinIcon = ({ size, otherProps }) => (\n <svg\n fill=\"currentColor\"\n height={size}\n viewBox=\"0 -960 960 960\"\n width={size}\n xmlns=\"http://www.w3.org/2000/svg\"\n {...otherProps}\n >\n <path d=\"m640-480 80 80v80H520v240l-40 40-40-40v-240H240v-80l80-80v-280h-40v-80h400v80h-40z\" />\n </svg>\n);\n\nexport default UnpinIcon;\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport { useState } from \"react\";\n\nimport {\n Badge,\n Button,\n DropdownMenu,\n DropdownMenuContent,\n DropdownMenuItem,\n DropdownMenuTrigger,\n SidebarMenuItem,\n Tooltip,\n TooltipContent,\n TooltipProvider,\n TooltipTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { Ellipsis } from \"lucide-react\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport PinIcon from \"./PinIcon\";\nimport UnpinIcon from \"./UnpinIcon\";\n\nimport { filterByPermissions } from \"../utils\";\n\nconst MoreDropdown = ({ moreNavLinks, isNavLinkPinned, handleTogglePin }) => {\n const { t } = useTranslation();\n const [isOpen, setIsOpen] = useState(false);\n const isRTL = document.documentElement.dir === \"rtl\";\n\n return (\n <SidebarMenuItem>\n <DropdownMenu open={isOpen} onOpenChange={setIsOpen}>\n <DropdownMenuTrigger asChild>\n <button\n className=\"text-sidebar-foreground hover:bg-sidebar-accent hover:text-sidebar-accent-foreground flex w-full items-center gap-2 rounded-md p-2 text-sm outline-hidden\"\n data-testid=\"more-nav-links-dropdown-button\"\n >\n <Ellipsis />\n <span className=\"truncate\">{t(\"neetoMolecules.sidebar.more\")}</span>\n </button>\n </DropdownMenuTrigger>\n <DropdownMenuContent\n align=\"start\"\n className=\"z-[99999] p-0\"\n data-testid=\"more-nav-links-dropdown-menu\"\n side={isRTL ? \"left\" : \"right\"}\n >\n {moreNavLinks.filter(filterByPermissions).map((navLink, index) => {\n const { label, icon, key: navLinkKey, to, onClick, tag } = navLink;\n const IconSVG = icon;\n const isPinned = isNavLinkPinned(navLink);\n\n return (\n <DropdownMenuItem\n data-testid={label}\n key={navLinkKey || index}\n onSelect={e => e.preventDefault()}\n >\n <CheckPointNavLinks\n {...{ onClick, to }}\n className=\"flex w-full cursor-pointer items-center justify-between gap-2 px-2 py-1\"\n >\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {icon && <IconSVG className=\"flex-shrink-0\" size={20} />}\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {label}\n {tag && <Badge {...tag} />}\n </span>\n </span>\n <TooltipProvider>\n <Tooltip>\n <TooltipTrigger asChild>\n <Button\n className=\"flex-shrink-0\"\n data-testid=\"pin-button\"\n size=\"icon-sm\"\n variant=\"ghost\"\n onClick={event => handleTogglePin(navLink, event)}\n >\n {isPinned ? (\n <UnpinIcon otherProps={{}} size={16} />\n ) : (\n <PinIcon otherProps={{}} size={16} />\n )}\n </Button>\n </TooltipTrigger>\n <TooltipContent side=\"right\">\n {isPinned\n ? t(\"neetoMolecules.sidebar.unpin\")\n : t(\"neetoMolecules.sidebar.pin\")}\n </TooltipContent>\n </Tooltip>\n </TooltipProvider>\n </CheckPointNavLinks>\n </DropdownMenuItem>\n );\n })}\n </DropdownMenuContent>\n </DropdownMenu>\n </SidebarMenuItem>\n );\n};\n\nexport default MoreDropdown;\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport { Fragment, useState } from \"react\";\n\nimport {\n Badge,\n SidebarGroup,\n SidebarGroupContent,\n SidebarMenu,\n SidebarMenuItem,\n SidebarMenuButton,\n SidebarMenuSub,\n} from \"@bigbinary/neeto-atoms\";\nimport { ChevronRight } from \"lucide-react\";\nimport { isNot, hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { append, is } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport AddAction from \"./AddAction\";\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport MoreDropdown from \"./MoreDropdown\";\nimport SubLinkItem from \"./SubLinkItem\";\n\nimport { PINNED_MORE_NAV_LINKS_KEY } from \"../constants\";\nimport { filterByPermissions } from \"../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst NavLinks = ({\n navLinks,\n moreNavLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [expandedNavLinkKeys, setExpandedNavLinkKeys] = useState([]);\n const [pinnedNavLinks, setPinnedNavLinks] = useLocalStorage(\n PINNED_MORE_NAV_LINKS_KEY,\n []\n );\n\n const handleNavLinkClick = ({ event, isActive, navLink }) => {\n const isExpandable =\n isPresent(navLink.items) || isPresent(navLink.component);\n if (!isExpandable) {\n setExpandedNavLinkKeys([]);\n\n return;\n }\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n const navLinkKey = navLink.key || navLink.to;\n if (isActive()) {\n const isExpanded = expandedNavLinkKeys.includes(navLinkKey);\n setExpandedNavLinkKeys(isExpanded ? [] : [navLinkKey]);\n navLink.resetPath !== true && event.preventDefault();\n\n return;\n }\n\n setExpandedNavLinkKeys([navLinkKey]);\n };\n\n const handleTogglePin = (navLink, event) => {\n event.preventDefault();\n event.stopPropagation();\n const navLinkKey = navLink.key || navLink.to;\n const isPinned = pinnedNavLinks.includes(navLinkKey);\n\n if (isPinned) {\n setPinnedNavLinks(pinnedNavLinks.filter(isNot(navLinkKey)));\n } else {\n setPinnedNavLinks([...pinnedNavLinks, navLinkKey]);\n }\n };\n\n const isNavLinkPinned = navLink => {\n if (!navLink) return false;\n const navLinkKey = navLink.key || navLink.to;\n\n return pinnedNavLinks.includes(navLinkKey);\n };\n\n const pinnedItems = moreNavLinks ? moreNavLinks.filter(isNavLinkPinned) : [];\n\n const activeMoreNavLink = moreNavLinks\n ? moreNavLinks.find(\n navLink =>\n navLink &&\n (location.pathname + location.search).startsWith(navLink.to)\n )\n : null;\n\n const additionalItems = [...pinnedItems];\n\n if (activeMoreNavLink && !isNavLinkPinned(activeMoreNavLink)) {\n additionalItems.push(activeMoreNavLink);\n }\n\n const combinedNavLinks = [...navLinks, ...additionalItems];\n\n return (\n <SidebarGroup>\n <SidebarGroupContent>\n <SidebarMenu className=\"gap-1\">\n {combinedNavLinks\n .filter(filterByPermissions)\n .map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n component: Component,\n onClick,\n addActions = [],\n tag,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isExpandable = items || Component;\n const navLinkKey = navLink.key || navLink.to;\n const isMenuExpanded =\n expandedNavLinkKeys.includes(navLinkKey) &&\n !isCountsLoadingDeprecated;\n\n const handleCaretClick = event => {\n event.preventDefault();\n event.stopPropagation();\n setExpandedNavLinkKeys(keys =>\n keys.includes(navLinkKey)\n ? keys.filter(isNot(navLinkKey))\n : append(navLinkKey, keys)\n );\n };\n\n return (\n <Fragment key={navLink.key || index}>\n <SidebarMenuItem>\n <SidebarMenuButton asChild isActive={isActive()}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"font-medium\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event => {\n handleNavLinkClick({ event, isActive, navLink });\n onClick?.(event);\n }}\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span className=\"relative\" data-testid={label}>\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"bg-destructive text-destructive-foreground absolute -end-1.5 -top-1.5 flex h-4 min-w-4 items-center justify-center rounded-full px-0.5 text-[10px]\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <span className=\"flex-grow truncate\">{label}</span>\n {tag && <Badge {...tag} />}\n {isExpandable && !isConfigureNavLink && (\n <span\n className=\"ms-auto shrink-0 transition-transform duration-200\"\n role=\"button\"\n tabIndex={-1}\n style={{\n transform: isMenuExpanded\n ? \"rotate(90deg)\"\n : \"rotate(0deg)\",\n }}\n onClick={handleCaretClick}\n >\n <ChevronRight className=\"rtl:rotate-180\" />\n </span>\n )}\n </CheckPointNavLinks>\n </SidebarMenuButton>\n {isNotEmpty(addActions) && (\n <AddAction actions={addActions} />\n )}\n </SidebarMenuItem>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <SidebarMenuSub>\n {items\n .filter(filterByPermissions)\n .map((subItem, subIndex) => (\n <SubLinkItem\n key={subIndex}\n {...{ ...subItem, isCountsLoading }}\n href={subItem.href}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n />\n ))}\n </SidebarMenuSub>\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n {isNotEmpty(moreNavLinks) && (\n <MoreDropdown\n {...{ handleTogglePin, isNavLinkPinned, moreNavLinks }}\n />\n )}\n </SidebarMenu>\n </SidebarGroupContent>\n </SidebarGroup>\n );\n};\n\nexport default NavLinks;\n","import { useCallback, useEffect, useMemo, useRef } from \"react\";\n\nimport {\n Sidebar as SidebarComponent,\n SidebarContent,\n SidebarHeader,\n SidebarProvider,\n SidebarRail,\n SidebarTrigger,\n} from \"@bigbinary/neeto-atoms\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport useKeyboardShortcutsPaneState from \"components/KeyboardShortcuts/hooks/useKeyboardShortcutsPaneState\";\n\nimport ConfigureView from \"./Components/ConfigureView\";\nimport Header from \"./Components/Header\";\nimport NavLinks from \"./Components/NavLinks\";\nimport {\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n SIDEBAR_WIDTH_KEY,\n MIN_SIDEBAR_WIDTH,\n MAX_SIDEBAR_WIDTH,\n DEFAULT_SIDEBAR_WIDTH,\n} from \"./constants\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n moreNavLinks = [],\n customLogo,\n isCountsLoading = false,\n showWorkspaceName = false,\n isExpandable = true,\n}) => {\n const [isKeyboardShortcutsPaneOpen] = useKeyboardShortcutsPaneState();\n\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const [sidebarWidthRaw, setSidebarWidth] = useLocalStorage(\n SIDEBAR_WIDTH_KEY,\n DEFAULT_SIDEBAR_WIDTH\n );\n\n const sidebarWidth =\n typeof sidebarWidthRaw === \"string\"\n ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH\n : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;\n\n const isDraggingRef = useRef(false);\n const hasDraggedRef = useRef(false);\n const startXRef = useRef(null);\n const startWidthRef = useRef(null);\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const isRTL = document.documentElement.dir === \"rtl\";\n const sidebarSide = isRTL ? \"right\" : \"left\";\n\n useEffect(() => {\n if (isKeyboardShortcutsPaneOpen) {\n setIsSidebarCollapsed(true);\n } else if (window.innerWidth > 768) {\n setIsSidebarCollapsed(false);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed may not be stable across renders\n }, [isKeyboardShortcutsPaneOpen]);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only: sets initial selected route from current URL\n }, []);\n\n // Drag-to-resize via SidebarRail: intercept mousedown to start drag,\n // update --sidebar-width directly on DOM for instant feedback,\n // persist to localStorage on mouseup.\n const handleRailMouseDown = useCallback(\n e => {\n if (!isExpandable) return;\n\n isDraggingRef.current = true;\n hasDraggedRef.current = false;\n startXRef.current = e.clientX;\n startWidthRef.current = sidebarWidth;\n\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) wrapper.dataset.resizing = \"true\";\n\n document.body.style.cursor = \"col-resize\";\n document.body.style.userSelect = \"none\";\n e.preventDefault();\n },\n [sidebarWidth, isExpandable]\n );\n\n // Prevent SidebarRail's built-in toggle when user dragged to resize\n const handleRailClick = useCallback(e => {\n if (!hasDraggedRef.current) return;\n e.preventDefault();\n e.stopPropagation();\n hasDraggedRef.current = false;\n }, []);\n\n useEffect(() => {\n if (!isExpandable) return undefined;\n\n const onMouseMove = e => {\n if (!isDraggingRef.current) return;\n\n hasDraggedRef.current = true;\n const dx = e.clientX - startXRef.current;\n // In RTL, dragging right shrinks, dragging left expands\n const rtl = document.documentElement.dir === \"rtl\";\n let newWidth = startWidthRef.current + (rtl ? -dx : dx);\n newWidth = Math.max(\n MIN_SIDEBAR_WIDTH,\n Math.min(newWidth, MAX_SIDEBAR_WIDTH)\n );\n\n const widthRem = `${newWidth / 16}rem`;\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) wrapper.style.setProperty(\"--sidebar-width\", widthRem);\n\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n widthRem\n );\n };\n\n const onMouseUp = e => {\n if (!isDraggingRef.current) return;\n\n const dx = e.clientX - startXRef.current;\n const rtlUp = document.documentElement.dir === \"rtl\";\n let finalWidth = startWidthRef.current + (rtlUp ? -dx : dx);\n finalWidth = Math.round(\n Math.max(MIN_SIDEBAR_WIDTH, Math.min(finalWidth, MAX_SIDEBAR_WIDTH))\n );\n setSidebarWidth(finalWidth);\n\n const wrapper = document.querySelector(\"[data-slot='sidebar-wrapper']\");\n if (wrapper) delete wrapper.dataset.resizing;\n\n isDraggingRef.current = false;\n document.body.style.cursor = \"\";\n document.body.style.userSelect = \"\";\n };\n\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseUp);\n\n return () => {\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n }, [isExpandable, setSidebarWidth]);\n\n useEffect(() => {\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n `${sidebarWidth / 16}rem`\n );\n }, [sidebarWidth]);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const configureNavLink = getActiveConfigurePageLink({ navLinks, location });\n if (configureNavLink?.to) {\n history.push(configureNavLink.to);\n }\n };\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <SidebarProvider\n className=\"!w-auto\"\n open={!isSidebarCollapsed}\n style={{ \"--sidebar-width\": `${sidebarWidth / 16}rem` }}\n onOpenChange={open => setIsSidebarCollapsed(!open)}\n >\n <SidebarComponent collapsible=\"offcanvas\" side={sidebarSide}>\n <SidebarHeader className=\"relative p-0\">\n <Header\n {...{ customLogo }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n <SidebarTrigger className=\"absolute end-2 top-3\" />\n {showWorkspaceName && (\n <div className=\"border-sidebar-border border-b px-4 py-2\">\n <h5 className=\"text-sidebar-foreground mb-1 text-sm font-semibold\">\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </h5>\n <span className=\"text-sidebar-foreground/70 truncate text-xs\">\n {globalProps.organization.name}\n </span>\n </div>\n )}\n </SidebarHeader>\n <SidebarContent>\n {isSelectedNavLinkVisible ? (\n <ConfigureView {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <NavLinks\n {...{\n isCountsLoading,\n moreNavLinks,\n navLinks,\n setSelectedNavLinkRoute,\n }}\n />\n )}\n </SidebarContent>\n {isExpandable && (\n <SidebarRail\n onClickCapture={handleRailClick}\n onMouseDown={handleRailMouseDown}\n />\n )}\n </SidebarComponent>\n {isSidebarCollapsed && (\n <SidebarTrigger className=\"fixed start-2 top-3 z-50\" />\n )}\n </SidebarProvider>\n );\n};\n\nSidebar.propTypes = {\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n PropTypes.object,\n ]),\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n tag: PropTypes.object,\n addActions: PropTypes.arrayOf(\n PropTypes.shape({\n key: PropTypes.string,\n label: PropTypes.string,\n onClick: PropTypes.func,\n })\n ),\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n tag: PropTypes.object,\n })\n ),\n })\n ),\n moreNavLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([\n PropTypes.element,\n PropTypes.func,\n PropTypes.object,\n ]),\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n tag: PropTypes.object,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n href: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n tag: PropTypes.object,\n })\n ),\n })\n ),\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n isCountsLoading: PropTypes.bool,\n showWorkspaceName: PropTypes.bool,\n isExpandable: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","productName","globalProps","appName","substr","normalizedName","trim","toLowerCase","specialCase","SPECIAL_APP_NAMES","logoName","concat","capitalize","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","isOnboarded","user","_jsx","className","children","Link","to","DEFAULT_HOME_PATH","classnames","onClick","sidebarTitle","memo","AddAction","actions","_jsxs","DropdownMenu","DropdownMenuTrigger","asChild","e","preventDefault","stopPropagation","Plus","DropdownMenuContent","align","side","map","action","DropdownMenuItem","onSelect","_action$onClick","call","label","key","PinIcon","size","otherProps","_objectSpread","fill","height","viewBox","width","xmlns","d","UnpinIcon","MoreDropdown","moreNavLinks","isNavLinkPinned","handleTogglePin","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","isRTL","document","documentElement","dir","SidebarMenuItem","open","onOpenChange","Ellipsis","filter","filterByPermissions","navLink","index","icon","navLinkKey","tag","IconSVG","isPinned","CheckPointNavLinks","Badge","TooltipProvider","Tooltip","TooltipTrigger","Button","variant","event","TooltipContent","renderCount","count","NavLinks","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","expandedNavLinkKeys","setExpandedNavLinkKeys","_useLocalStorage","useLocalStorage","PINNED_MORE_NAV_LINKS_KEY","_useLocalStorage2","pinnedNavLinks","setPinnedNavLinks","handleNavLinkClick","_ref2","isActive","isExpandable","isPresent","items","component","isConfigureNavLink","isNotEmpty","isExpanded","includes","resetPath","isNot","_toConsumableArray","pinnedItems","activeMoreNavLink","find","pathname","search","startsWith","additionalItems","push","combinedNavLinks","SidebarGroup","SidebarGroupContent","SidebarMenu","_navLink$isCountsLoad","_navLink$count","Component","_navLink$addActions","addActions","_objectWithoutProperties","_excluded","url","URL","window","href","is","Function","isMenuExpanded","handleCaretClick","keys","append","Fragment","SidebarMenuButton","activeClassName","hyphenate","role","tabIndex","style","transform","ChevronRight","_Fragment","SidebarMenuSub","subItem","subIndex","_subItem$to","SubLinkItem","isSectionHeader","item","path","Sidebar","_ref$moreNavLinks","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","_ref$isExpandable","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isKeyboardShortcutsPaneOpen","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","_useLocalStorage5","SIDEBAR_WIDTH_KEY","DEFAULT_SIDEBAR_WIDTH","_useLocalStorage6","sidebarWidthRaw","setSidebarWidth","sidebarWidth","parseInt","isDraggingRef","useRef","hasDraggedRef","startXRef","startWidthRef","history","useHistory","sidebarSide","useEffect","innerWidth","currentLink","findLast","handleRailMouseDown","useCallback","current","clientX","wrapper","querySelector","dataset","resizing","body","cursor","userSelect","handleRailClick","undefined","onMouseMove","dx","rtl","newWidth","Math","max","MIN_SIDEBAR_WIDTH","min","MAX_SIDEBAR_WIDTH","widthRem","setProperty","onMouseUp","rtlUp","finalWidth","round","addEventListener","removeEventListener","handleGoBack","configureNavLink","getActiveConfigurePageLink","activeLink","useMemo","link","isSelectedNavLinkVisible","SidebarProvider","SidebarComponent","collapsible","SidebarHeader","SidebarTrigger","organization","name","SidebarContent","ConfigureView","SidebarRail","onClickCapture","onMouseDown"],"mappings":"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"}
@@ -0,0 +1,246 @@
1
+ 'use strict';
2
+
3
+ var React = require('react');
4
+ var classnames = require('classnames');
5
+ var neetoCist = require('@bigbinary/neeto-cist');
6
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
7
+ var ramda = require('ramda');
8
+ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProperties');
9
+ var neetoAtoms = require('@bigbinary/neeto-atoms');
10
+ var reactI18next = require('react-i18next');
11
+ var Columns$1 = require('../Columns-D3eocaeY.js');
12
+ require('@babel/runtime/helpers/toConsumableArray');
13
+ require('@tanstack/react-query');
14
+ require('@bigbinary/neeto-commons-frontend/react-utils/useMutationWithInvalidation');
15
+ require('axios');
16
+ var jsxRuntime = require('react/jsx-runtime');
17
+ var createLucideIcon = require('../createLucideIcon-DBDhE7kE.js');
18
+ var reactUtils = require('@bigbinary/neeto-commons-frontend/react-utils');
19
+ var NeetoFilters = require('@bigbinary/neeto-filters-frontend/Filters');
20
+ require('@babel/runtime/helpers/slicedToArray');
21
+ require('@dnd-kit/core');
22
+ require('@dnd-kit/sortable');
23
+ require('i18next');
24
+ require('../utilities.esm-jwIHISzF.js');
25
+ require('../search-BBuFYdmG.js');
26
+
27
+ /**
28
+ * @license lucide-react v1.7.0 - ISC
29
+ *
30
+ * This source code is licensed under the ISC license.
31
+ * See the LICENSE file in the root directory of this source tree.
32
+ */
33
+
34
+
35
+ const __iconNode$2 = [
36
+ ["rect", { width: "18", height: "18", x: "3", y: "3", rx: "2", key: "afitv7" }],
37
+ ["path", { d: "M9 3v18", key: "fh3hqa" }],
38
+ ["path", { d: "M15 3v18", key: "14nvp0" }]
39
+ ];
40
+ const Columns3 = createLucideIcon.createLucideIcon("columns-3", __iconNode$2);
41
+
42
+ /**
43
+ * @license lucide-react v1.7.0 - ISC
44
+ *
45
+ * This source code is licensed under the ISC license.
46
+ * See the LICENSE file in the root directory of this source tree.
47
+ */
48
+
49
+
50
+ const __iconNode$1 = [
51
+ ["path", { d: "M12 15V3", key: "m9g1x1" }],
52
+ ["path", { d: "M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4", key: "ih7n3h" }],
53
+ ["path", { d: "m7 10 5 5 5-5", key: "brsn70" }]
54
+ ];
55
+ const Download = createLucideIcon.createLucideIcon("download", __iconNode$1);
56
+
57
+ /**
58
+ * @license lucide-react v1.7.0 - ISC
59
+ *
60
+ * This source code is licensed under the ISC license.
61
+ * See the LICENSE file in the root directory of this source tree.
62
+ */
63
+
64
+
65
+ const __iconNode = [
66
+ [
67
+ "path",
68
+ {
69
+ d: "M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z",
70
+ key: "sc7q7i"
71
+ }
72
+ ]
73
+ ];
74
+ const Funnel = createLucideIcon.createLucideIcon("funnel", __iconNode);
75
+
76
+ var _excluded$2 = ["buttonProps", "columnData", "onMutationSuccess", "allowConfigurationResetOnUpdate", "tableKey"];
77
+ function ownKeys$3(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
78
+ function _objectSpread$3(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$3(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$3(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
79
+ var Columns = function Columns(_ref) {
80
+ var _ref$buttonProps = _ref.buttonProps,
81
+ buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
82
+ columnData = _ref.columnData,
83
+ onMutationSuccess = _ref.onMutationSuccess,
84
+ allowConfigurationResetOnUpdate = _ref.allowConfigurationResetOnUpdate,
85
+ tableKey = _ref.tableKey,
86
+ props = _objectWithoutProperties(_ref, _excluded$2);
87
+ var _useTranslation = reactI18next.useTranslation(),
88
+ t = _useTranslation.t;
89
+ var tooltipContent = t("neetoMolecules.columns.columns");
90
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
91
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipProvider, {
92
+ children: /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Tooltip, {
93
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipTrigger, {
94
+ asChild: true,
95
+ children: /*#__PURE__*/jsxRuntime.jsx("div", {
96
+ className: "inline-flex",
97
+ children: /*#__PURE__*/jsxRuntime.jsx(Columns$1.Columns, _objectSpread$3({
98
+ isSearchable: true,
99
+ buttonProps: _objectSpread$3({
100
+ icon: Columns3,
101
+ "data-testid": "columns-dropdown-button"
102
+ }, buttonProps)
103
+ }, _objectSpread$3({
104
+ allowConfigurationResetOnUpdate: allowConfigurationResetOnUpdate,
105
+ columnData: columnData,
106
+ onMutationSuccess: onMutationSuccess,
107
+ tableKey: tableKey
108
+ }, props)))
109
+ })
110
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipContent, {
111
+ side: "bottom",
112
+ children: tooltipContent
113
+ })]
114
+ })
115
+ })
116
+ });
117
+ };
118
+ Columns.displayName = "Columns";
119
+
120
+ var _excluded$1 = ["content"];
121
+ function ownKeys$2(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
122
+ function _objectSpread$2(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$2(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$2(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
123
+ var DownloadButton = function DownloadButton(_ref) {
124
+ var count = _ref.count,
125
+ onClick = _ref.onClick,
126
+ _ref$dataTestid = _ref["data-testid"],
127
+ dataTestid = _ref$dataTestid === void 0 ? "download-button" : _ref$dataTestid,
128
+ _ref$tooltipProps = _ref.tooltipProps,
129
+ tooltipProps = _ref$tooltipProps === void 0 ? {} : _ref$tooltipProps;
130
+ var _useTranslation = reactI18next.useTranslation(),
131
+ t = _useTranslation.t;
132
+ var tooltipContent = tooltipProps.content,
133
+ restTooltipProps = _objectWithoutProperties(tooltipProps, _excluded$1);
134
+ var resolvedTooltipContent = tooltipContent !== null && tooltipContent !== void 0 ? tooltipContent : t("neetoMolecules.common.download");
135
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
136
+ className: "relative",
137
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipProvider, {
138
+ children: /*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Tooltip, _objectSpread$2(_objectSpread$2({}, restTooltipProps), {}, {
139
+ children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipTrigger, {
140
+ asChild: true,
141
+ children: /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Button, {
142
+ onClick: onClick,
143
+ size: "icon",
144
+ variant: "ghost",
145
+ "data-testid": neetoCist.isPresent(dataTestid) ? dataTestid : "download-button",
146
+ children: /*#__PURE__*/jsxRuntime.jsx(Download, {
147
+ size: 16
148
+ })
149
+ })
150
+ }), /*#__PURE__*/jsxRuntime.jsx(neetoAtoms.TooltipContent, {
151
+ side: "bottom",
152
+ children: resolvedTooltipContent
153
+ })]
154
+ }))
155
+ }), count && /*#__PURE__*/jsxRuntime.jsx("span", {
156
+ className: "bg-primary text-primary-foreground absolute -end-0.5 -top-0.5 z-[1] inline-flex min-h-4 min-w-4 items-center justify-center rounded-full text-[0.625rem]",
157
+ children: count
158
+ })]
159
+ });
160
+ };
161
+
162
+ var _excluded = ["t", "buttonProps"];
163
+ function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
164
+ function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
165
+ var FilterButton = reactUtils.withT(function (_ref) {
166
+ var t = _ref.t,
167
+ buttonProps = _ref.buttonProps,
168
+ props = _objectWithoutProperties(_ref, _excluded);
169
+ return /*#__PURE__*/jsxRuntime.jsx("div", {
170
+ children: /*#__PURE__*/jsxRuntime.jsx(NeetoFilters, _objectSpread$1({
171
+ buttonProps: _objectSpread$1({
172
+ "data-testid": "filter-button",
173
+ icon: Funnel,
174
+ style: "text",
175
+ tooltipProps: {
176
+ content: t("neetoMolecules.common.filter"),
177
+ position: "bottom",
178
+ touch: ["hold", 500]
179
+ },
180
+ label: null
181
+ }, buttonProps)
182
+ }, props))
183
+ });
184
+ });
185
+
186
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
187
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
188
+ var RightBlock = function RightBlock(_ref) {
189
+ var downloadButtonProps = _ref.downloadButtonProps,
190
+ columnsButtonProps = _ref.columnsButtonProps,
191
+ filterProps = _ref.filterProps,
192
+ dataProps = _ref.dataProps;
193
+ var showIcons = neetoCist.isNotPresent(dataProps === null || dataProps === void 0 ? void 0 : dataProps.totalCount) ? true : (dataProps === null || dataProps === void 0 ? void 0 : dataProps.totalCount) > 0;
194
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
195
+ "data-testid": "subheader-rightblock-buttons-container",
196
+ className: classnames("flex flex-row items-center justify-end gap-2", "[&>:not([hidden])~:not([hidden])]:border-border [&>:not([hidden])~:not([hidden])]:border-s [&>:not([hidden])~:not([hidden])]:ps-2", {
197
+ hidden: ramda.not(showIcons)
198
+ }),
199
+ children: [downloadButtonProps && /*#__PURE__*/jsxRuntime.jsx(DownloadButton, _objectSpread({}, downloadButtonProps)), columnsButtonProps && /*#__PURE__*/jsxRuntime.jsx(Columns, _objectSpread({}, columnsButtonProps)), filterProps && /*#__PURE__*/jsxRuntime.jsx(FilterButton, _objectSpread({}, filterProps))]
200
+ });
201
+ };
202
+
203
+ var SubHeader = function SubHeader(_ref) {
204
+ var _ref$className = _ref.className,
205
+ className = _ref$className === void 0 ? "" : _ref$className,
206
+ leftActionBlock = _ref.leftActionBlock,
207
+ rightActionBlock = _ref.rightActionBlock,
208
+ _ref$dataTestid = _ref["data-testid"],
209
+ dataTestid = _ref$dataTestid === void 0 ? "subheader" : _ref$dataTestid;
210
+ var subheaderRef = React.useRef(null);
211
+ React.useLayoutEffect(function () {
212
+ var updateHeaderHeight = function updateHeaderHeight() {
213
+ if (!subheaderRef.current) return;
214
+ var height = subheaderRef.current.offsetHeight;
215
+ document.body.style.setProperty("--neeto-molecules-effective-subheader-height", "".concat(height, "px"));
216
+ };
217
+ updateHeaderHeight();
218
+ window.addEventListener("resize", updateHeaderHeight);
219
+ return function () {
220
+ window.removeEventListener("resize", updateHeaderHeight);
221
+ document.body.style.removeProperty("--neeto-molecules-effective-subheader-height");
222
+ };
223
+ }, []);
224
+ return /*#__PURE__*/jsxRuntime.jsxs("div", {
225
+ "data-testid": neetoCist.isPresent(dataTestid) ? dataTestid : "subheader",
226
+ ref: subheaderRef,
227
+ className: classnames("mb-5 flex w-full shrink-0 flex-row flex-wrap items-center justify-between gap-4 md:flex-nowrap", className),
228
+ children: [/*#__PURE__*/jsxRuntime.jsx("div", {
229
+ className: "flex grow",
230
+ "data-testid": "subheader-left-wrapper",
231
+ children: leftActionBlock && /*#__PURE__*/jsxRuntime.jsx("div", {
232
+ className: "flex flex-row items-center justify-start",
233
+ "data-testid": "subheader-left",
234
+ children: leftActionBlock
235
+ })
236
+ }), rightActionBlock && /*#__PURE__*/jsxRuntime.jsx("div", {
237
+ className: "ms-auto flex flex-row items-center justify-end gap-3 md:ms-0",
238
+ "data-testid": "subheader-right",
239
+ children: rightActionBlock
240
+ })]
241
+ });
242
+ };
243
+ SubHeader.RightBlock = RightBlock;
244
+
245
+ module.exports = SubHeader;
246
+ //# sourceMappingURL=SubHeader.js.map