@bigbinary/neeto-molecules 4.1.67 → 4.1.69
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AuditLogs.js +1 -0
- package/dist/AuditLogs.js.map +1 -1
- package/dist/{ConfigureView-CLhj1NR4.js → ConfigureView-DOotR_-0.js} +10 -31
- package/dist/ConfigureView-DOotR_-0.js.map +1 -0
- package/dist/cjs/AuditLogs.js +1 -0
- package/dist/cjs/AuditLogs.js.map +1 -1
- package/dist/cjs/{ConfigureView-DuStircF.js → ConfigureView-DtQRvPmE.js} +8 -29
- package/dist/cjs/ConfigureView-DtQRvPmE.js.map +1 -0
- package/dist/cjs/v2/AuditLogs.js +24 -26
- package/dist/cjs/v2/AuditLogs.js.map +1 -1
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -2
- package/dist/cjs/v2/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/v2/Container.js +8 -1
- package/dist/cjs/v2/Container.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +294 -181
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/HelpPopover.js +15 -9
- package/dist/cjs/v2/HelpPopover.js.map +1 -1
- package/dist/cjs/v2/Search.js +9 -19
- package/dist/cjs/v2/Search.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +84 -51
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/v2/AuditLogs.js +24 -26
- package/dist/v2/AuditLogs.js.map +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -2
- package/dist/v2/ConfigurePageSidebar.js.map +1 -1
- package/dist/v2/Container.js +8 -1
- package/dist/v2/Container.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +296 -183
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/HelpPopover.js +16 -10
- package/dist/v2/HelpPopover.js.map +1 -1
- package/dist/v2/Search.js +11 -21
- package/dist/v2/Search.js.map +1 -1
- package/dist/v2/Sidebar.js +85 -52
- package/dist/v2/Sidebar.js.map +1 -1
- package/package.json +3 -3
- package/src/translations/ar.json +37 -36
- package/src/translations/bg.json +37 -36
- package/src/translations/ca.json +37 -36
- package/src/translations/cs.json +37 -36
- package/src/translations/da.json +37 -36
- package/src/translations/de.json +37 -36
- package/src/translations/en.json +36 -35
- package/src/translations/es-MX.json +37 -36
- package/src/translations/es.json +37 -36
- package/src/translations/et.json +37 -36
- package/src/translations/fi.json +37 -36
- package/src/translations/fil.json +37 -36
- package/src/translations/fr.json +37 -36
- package/src/translations/he.json +37 -36
- package/src/translations/hi.json +37 -36
- package/src/translations/hr.json +37 -36
- package/src/translations/hu.json +37 -36
- package/src/translations/id.json +37 -36
- package/src/translations/it.json +37 -36
- package/src/translations/ja.json +37 -36
- package/src/translations/ko.json +37 -36
- package/src/translations/nl.json +37 -36
- package/src/translations/pl.json +37 -36
- package/src/translations/pt-BR.json +37 -36
- package/src/translations/pt.json +37 -36
- package/src/translations/ro.json +37 -36
- package/src/translations/ru.json +37 -36
- package/src/translations/sk.json +37 -36
- package/src/translations/sl.json +37 -36
- package/src/translations/sv.json +37 -36
- package/src/translations/th.json +37 -36
- package/src/translations/tr.json +37 -36
- package/src/translations/uk.json +37 -36
- package/src/translations/vi.json +37 -36
- package/src/translations/zh-CN.json +37 -36
- package/src/translations/zh-TW.json +37 -36
- package/dist/ConfigureView-CLhj1NR4.js.map +0 -1
- package/dist/cjs/ConfigureView-DuStircF.js.map +0 -1
package/dist/v2/HelpPopover.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
-
import { Popover, Typography } from '@bigbinary/neeto-atoms';
|
|
3
|
+
import { Popover, Typography, Button } from '@bigbinary/neeto-atoms';
|
|
4
4
|
import classnames from 'classnames';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
@@ -10,7 +10,7 @@ import 'react';
|
|
|
10
10
|
|
|
11
11
|
var SIZE = {
|
|
12
12
|
"default": 16,
|
|
13
|
-
large:
|
|
13
|
+
large: 18
|
|
14
14
|
};
|
|
15
15
|
|
|
16
16
|
var _excluded = ["label"];
|
|
@@ -38,7 +38,9 @@ var HelpPopover = function HelpPopover(_ref) {
|
|
|
38
38
|
alignOffset: alignOffset,
|
|
39
39
|
position: position,
|
|
40
40
|
sideOffset: sideOffset,
|
|
41
|
+
className: "!max-w-[calc(100vw-2rem)]",
|
|
41
42
|
closeDelay: 150,
|
|
43
|
+
collisionPadding: 12,
|
|
42
44
|
openDelay: 0,
|
|
43
45
|
trigger: /*#__PURE__*/jsx("button", {
|
|
44
46
|
"data-testid": "help-popover-button",
|
|
@@ -71,14 +73,18 @@ var HelpPopover = function HelpPopover(_ref) {
|
|
|
71
73
|
}) : description, helpLinkProps && function () {
|
|
72
74
|
var linkLabel = helpLinkProps.label,
|
|
73
75
|
restLinkProps = _objectWithoutProperties(helpLinkProps, _excluded);
|
|
74
|
-
return /*#__PURE__*/jsx(
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
76
|
+
return /*#__PURE__*/jsx(Button, {
|
|
77
|
+
asChild: true,
|
|
78
|
+
className: "mt-3 self-start",
|
|
79
|
+
variant: "link",
|
|
80
|
+
children: /*#__PURE__*/jsx("a", _objectSpread(_objectSpread({
|
|
81
|
+
"data-testid": "help-popover-link-button",
|
|
82
|
+
rel: "noreferrer",
|
|
83
|
+
target: "_blank"
|
|
84
|
+
}, restLinkProps), {}, {
|
|
85
|
+
children: linkLabel !== null && linkLabel !== void 0 ? linkLabel : t("neetoMolecules.common.viewHelpArticle")
|
|
86
|
+
}))
|
|
87
|
+
});
|
|
82
88
|
}()]
|
|
83
89
|
})
|
|
84
90
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HelpPopover.js","sources":["../../src/v2/components/HelpPopover/constants.js","../../src/v2/components/HelpPopover/index.jsx"],"sourcesContent":["export const SIZE = { default: 16, large:
|
|
1
|
+
{"version":3,"file":"HelpPopover.js","sources":["../../src/v2/components/HelpPopover/constants.js","../../src/v2/components/HelpPopover/index.jsx"],"sourcesContent":["export const SIZE = { default: 16, large: 18 };\n","import { Button, Popover, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { CircleHelp } from \"lucide-react\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZE } from \"./constants\";\n\nconst HelpPopover = ({\n title,\n size = \"large\",\n description,\n helpLinkProps,\n className,\n iconColor = \"currentColor\",\n icon: IconComponent = CircleHelp,\n side,\n sideOffset,\n align,\n alignOffset,\n}) => {\n const { t } = useTranslation();\n\n const position = align && align !== \"center\" ? `${side}-${align}` : side;\n\n return (\n <Popover\n {...{ alignOffset, position, sideOffset }}\n className=\"!max-w-[calc(100vw-2rem)]\"\n closeDelay={150}\n collisionPadding={12}\n openDelay={0}\n trigger={\n <button\n data-testid=\"help-popover-button\"\n type=\"button\"\n className={classNames(\n \"inline-flex cursor-pointer items-center justify-center rounded-full border-none bg-transparent p-0\",\n className\n )}\n >\n <IconComponent color={iconColor} size={SIZE[size]} />\n </button>\n }\n >\n <div className=\"flex flex-col\" onClick={event => event.stopPropagation()}>\n {title && (\n <Typography asChild variant=\"body2\" weight=\"semibold\">\n <h3 className=\"mb-2\" data-testid=\"help-popover-title\">\n {title}\n </h3>\n </Typography>\n )}\n {typeof description === \"string\" ? (\n <Typography\n color=\"muted\"\n data-testid=\"help-popover-description\"\n variant=\"body2\"\n >\n {description}\n </Typography>\n ) : (\n description\n )}\n {helpLinkProps &&\n (() => {\n const { label: linkLabel, ...restLinkProps } = helpLinkProps;\n\n return (\n <Button asChild className=\"mt-3 self-start\" variant=\"link\">\n <a\n data-testid=\"help-popover-link-button\"\n rel=\"noreferrer\"\n target=\"_blank\"\n {...restLinkProps}\n >\n {linkLabel ?? t(\"neetoMolecules.common.viewHelpArticle\")}\n </a>\n </Button>\n );\n })()}\n </div>\n </Popover>\n );\n};\n\nHelpPopover.propTypes = {\n title: PropTypes.string,\n size: PropTypes.oneOf([\"default\", \"large\"]),\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.node]),\n helpLinkProps: PropTypes.object,\n className: PropTypes.string,\n iconColor: PropTypes.string,\n icon: PropTypes.node,\n side: PropTypes.oneOf([\"top\", \"right\", \"bottom\", \"left\"]),\n sideOffset: PropTypes.number,\n align: PropTypes.oneOf([\"start\", \"center\", \"end\"]),\n alignOffset: PropTypes.number,\n};\n\nexport default HelpPopover;\n"],"names":["SIZE","large","HelpPopover","_ref","title","_ref$size","size","description","helpLinkProps","className","_ref$iconColor","iconColor","_ref$icon","icon","IconComponent","CircleHelp","side","sideOffset","align","alignOffset","_useTranslation","useTranslation","t","position","concat","_jsx","Popover","closeDelay","collisionPadding","openDelay","trigger","type","classNames","children","color","_jsxs","onClick","event","stopPropagation","Typography","asChild","variant","weight","linkLabel","label","restLinkProps","_objectWithoutProperties","_excluded","Button","_objectSpread","rel","target"],"mappings":"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"}
|
package/dist/v2/Search.js
CHANGED
|
@@ -2,7 +2,7 @@ import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
|
2
2
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
3
3
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
4
4
|
import { useId, useState, useRef, useEffect } from 'react';
|
|
5
|
-
import {
|
|
5
|
+
import { Input } from '@bigbinary/neeto-atoms';
|
|
6
6
|
import useFuncDebounce from '@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce';
|
|
7
7
|
import useQueryParams from '@bigbinary/neeto-commons-frontend/react-utils/useQueryParams';
|
|
8
8
|
import useUpdateEffect from '@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect';
|
|
@@ -11,7 +11,7 @@ import { mergeLeft, omit } from 'ramda';
|
|
|
11
11
|
import { useTranslation } from 'react-i18next';
|
|
12
12
|
import { useHistory } from 'react-router-dom';
|
|
13
13
|
import { getQueryParams } from '@bigbinary/neeto-commons-frontend/utils';
|
|
14
|
-
import {
|
|
14
|
+
import { jsx } from 'react/jsx-runtime';
|
|
15
15
|
import { S as Search$1 } from '../search-DCgpNjip.js';
|
|
16
16
|
import '../createLucideIcon-mNMhCCpf.js';
|
|
17
17
|
|
|
@@ -101,26 +101,16 @@ var Search = function Search(_ref) {
|
|
|
101
101
|
useEffect(function () {
|
|
102
102
|
return handleDebouncedSearchTermChange.cancel;
|
|
103
103
|
}, []);
|
|
104
|
-
return /*#__PURE__*/
|
|
104
|
+
return /*#__PURE__*/jsx(Input, _objectSpread({
|
|
105
105
|
className: className,
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
}), /*#__PURE__*/jsx(Input, _objectSpread({
|
|
115
|
-
className: "pl-9 [&::-webkit-search-cancel-button:hover]:cursor-pointer [&::-webkit-search-decoration:hover]:cursor-pointer",
|
|
116
|
-
id: inputId,
|
|
117
|
-
placeholder: t("neetoMolecules.common.actions.search"),
|
|
118
|
-
type: "search",
|
|
119
|
-
value: internalValue,
|
|
120
|
-
onChange: handleOnChange
|
|
121
|
-
}, inputProps))]
|
|
122
|
-
})]
|
|
123
|
-
});
|
|
106
|
+
label: label,
|
|
107
|
+
id: inputId,
|
|
108
|
+
placeholder: t("neetoMolecules.common.actions.search"),
|
|
109
|
+
prefix: /*#__PURE__*/jsx(Search$1, {}),
|
|
110
|
+
type: "search",
|
|
111
|
+
value: internalValue,
|
|
112
|
+
onChange: handleOnChange
|
|
113
|
+
}, inputProps));
|
|
124
114
|
};
|
|
125
115
|
|
|
126
116
|
export { Search as default };
|
package/dist/v2/Search.js.map
CHANGED
|
@@ -1 +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
|
|
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 } 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 <Input\n {...{ className, label }}\n id={inputId}\n placeholder={t(\"neetoMolecules.common.actions.search\")}\n prefix={<SearchIcon />}\n type=\"search\"\n value={internalValue}\n onChange={handleOnChange}\n {...inputProps}\n />\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","_jsx","Input","_objectSpread","id","placeholder","prefix","SearchIcon","type"],"mappings":"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"}
|
package/dist/v2/Sidebar.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
2
|
import { memo, useState, Fragment, useRef, useEffect, useCallback, useMemo } from 'react';
|
|
3
|
-
import { SidebarMenuItem, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuButton, SidebarMenuSub, SidebarProvider, Sidebar as Sidebar$1, SidebarHeader, SidebarTrigger, SidebarContent, SidebarRail } from '@bigbinary/neeto-atoms/primitives';
|
|
3
|
+
import { SidebarMenuItem, SidebarGroup, SidebarGroupContent, SidebarMenu, SidebarMenuButton, SidebarMenuSub, SidebarProvider, useSidebar, Sidebar as Sidebar$1, SidebarHeader, SidebarTrigger, SidebarContent, SidebarRail } from '@bigbinary/neeto-atoms/primitives';
|
|
4
4
|
import { capitalize, isPresent, hyphenate, isNotEmpty, isNot } from '@bigbinary/neeto-cist';
|
|
5
5
|
import useLocalStorage from '@bigbinary/neeto-commons-frontend/react-utils/useLocalStorage';
|
|
6
6
|
import { append, is, findLast } from 'ramda';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
8
|
import { Link, useLocation, useHistory } from 'react-router-dom';
|
|
9
9
|
import { u as useKeyboardShortcutsPaneState } from '../useKeyboardShortcutsPaneState-dNIbb_PI.js';
|
|
10
|
-
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem,
|
|
10
|
+
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem, g as getSidebarStateLocalStorageKey, c as SIDEBAR_WIDTH_KEY, d as DEFAULT_SIDEBAR_WIDTH, e as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, C as ConfigureView, h as getActiveConfigurePageLink, M as MIN_SIDEBAR_WIDTH, i as MAX_SIDEBAR_WIDTH } from '../ConfigureView-DOotR_-0.js';
|
|
11
11
|
import classnames from 'classnames';
|
|
12
12
|
import { globalProps as globalProps$1 } from '@bigbinary/neeto-commons-frontend/initializers';
|
|
13
13
|
import Neeto from '@bigbinary/neeto-icons/typeface-logos/Neeto';
|
|
@@ -20,10 +20,10 @@ import { DropdownMenu, Badge, Tooltip, Button } from '@bigbinary/neeto-atoms';
|
|
|
20
20
|
import { P as Plus } from '../plus-clM1IC_E.js';
|
|
21
21
|
import { E as Ellipsis } from '../ellipsis-DpI9xqUK.js';
|
|
22
22
|
import { C as ChevronRight } from '../chevron-right-DcaO-Hlu.js';
|
|
23
|
+
import { n } from '../inject-css-C2dztUxs.js';
|
|
23
24
|
import 'zustand/shallow';
|
|
24
25
|
import '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
|
|
25
26
|
import 'zustand';
|
|
26
|
-
import '@bigbinary/neeto-commons-frontend/react-utils';
|
|
27
27
|
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
28
28
|
import '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
|
|
29
29
|
import '@bigbinary/neeto-filters-frontend/v2';
|
|
@@ -45,7 +45,7 @@ var Header = function Header(_ref) {
|
|
|
45
45
|
"data-testid": "sidebar-info",
|
|
46
46
|
children: /*#__PURE__*/jsx(Link, {
|
|
47
47
|
to: DEFAULT_HOME_PATH,
|
|
48
|
-
className: classnames("block w-full", {
|
|
48
|
+
className: classnames("mt-2 block w-full py-2", {
|
|
49
49
|
"cursor-pointer": isOnboarded,
|
|
50
50
|
"pointer-events-none": !isOnboarded
|
|
51
51
|
}),
|
|
@@ -382,6 +382,9 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
382
382
|
});
|
|
383
383
|
};
|
|
384
384
|
|
|
385
|
+
var css = "[data-slot=sidebar][data-mobile=true]:has(.nm-sidebar-shadcn-header){max-width:min(var(--sidebar-width),85vw)!important;width:var(--sidebar-width)!important}";
|
|
386
|
+
n(css,{});
|
|
387
|
+
|
|
385
388
|
var Sidebar = function Sidebar(_ref) {
|
|
386
389
|
var navLinks = _ref.navLinks,
|
|
387
390
|
_ref$moreNavLinks = _ref.moreNavLinks,
|
|
@@ -393,26 +396,65 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
393
396
|
showWorkspaceName = _ref$showWorkspaceNam === void 0 ? false : _ref$showWorkspaceNam,
|
|
394
397
|
_ref$isExpandable = _ref.isExpandable,
|
|
395
398
|
isExpandable = _ref$isExpandable === void 0 ? true : _ref$isExpandable;
|
|
399
|
+
var _useLocalStorage = useLocalStorage(getSidebarStateLocalStorageKey(), false),
|
|
400
|
+
_useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
|
|
401
|
+
isSidebarCollapsed = _useLocalStorage2[0],
|
|
402
|
+
setIsSidebarCollapsed = _useLocalStorage2[1];
|
|
403
|
+
var _useLocalStorage3 = useLocalStorage(SIDEBAR_WIDTH_KEY, DEFAULT_SIDEBAR_WIDTH),
|
|
404
|
+
_useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
|
|
405
|
+
sidebarWidthRaw = _useLocalStorage4[0],
|
|
406
|
+
setSidebarWidth = _useLocalStorage4[1];
|
|
407
|
+
var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;
|
|
408
|
+
return /*#__PURE__*/jsx(SidebarProvider, {
|
|
409
|
+
className: "!w-auto",
|
|
410
|
+
open: !isSidebarCollapsed,
|
|
411
|
+
style: {
|
|
412
|
+
"--sidebar-width": "".concat(sidebarWidth / 16, "rem")
|
|
413
|
+
},
|
|
414
|
+
onOpenChange: function onOpenChange(open) {
|
|
415
|
+
return setIsSidebarCollapsed(!open);
|
|
416
|
+
},
|
|
417
|
+
children: /*#__PURE__*/jsx(SidebarBody, {
|
|
418
|
+
customLogo: customLogo,
|
|
419
|
+
isCountsLoading: isCountsLoading,
|
|
420
|
+
isExpandable: isExpandable,
|
|
421
|
+
isSidebarCollapsed: isSidebarCollapsed,
|
|
422
|
+
moreNavLinks: moreNavLinks,
|
|
423
|
+
navLinks: navLinks,
|
|
424
|
+
setIsSidebarCollapsed: setIsSidebarCollapsed,
|
|
425
|
+
setSidebarWidth: setSidebarWidth,
|
|
426
|
+
showWorkspaceName: showWorkspaceName,
|
|
427
|
+
sidebarWidth: sidebarWidth
|
|
428
|
+
})
|
|
429
|
+
});
|
|
430
|
+
};
|
|
431
|
+
var SidebarBody = function SidebarBody(_ref2) {
|
|
432
|
+
var navLinks = _ref2.navLinks,
|
|
433
|
+
moreNavLinks = _ref2.moreNavLinks,
|
|
434
|
+
customLogo = _ref2.customLogo,
|
|
435
|
+
isCountsLoading = _ref2.isCountsLoading,
|
|
436
|
+
showWorkspaceName = _ref2.showWorkspaceName,
|
|
437
|
+
isExpandable = _ref2.isExpandable,
|
|
438
|
+
isSidebarCollapsed = _ref2.isSidebarCollapsed,
|
|
439
|
+
setIsSidebarCollapsed = _ref2.setIsSidebarCollapsed,
|
|
440
|
+
sidebarWidth = _ref2.sidebarWidth,
|
|
441
|
+
setSidebarWidth = _ref2.setSidebarWidth;
|
|
442
|
+
var _useSidebar = useSidebar(),
|
|
443
|
+
isMobile = _useSidebar.isMobile,
|
|
444
|
+
setOpenMobile = _useSidebar.setOpenMobile,
|
|
445
|
+
openMobile = _useSidebar.openMobile;
|
|
396
446
|
var _useKeyboardShortcuts = useKeyboardShortcutsPaneState(),
|
|
397
447
|
_useKeyboardShortcuts2 = _slicedToArray(_useKeyboardShortcuts, 1),
|
|
398
448
|
isKeyboardShortcutsPaneOpen = _useKeyboardShortcuts2[0];
|
|
399
|
-
var
|
|
400
|
-
_useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
|
|
401
|
-
selectedNavLinkRoute = _useLocalStorage2[0],
|
|
402
|
-
setSelectedNavLinkRoute = _useLocalStorage2[1];
|
|
403
|
-
var _useLocalStorage3 = useLocalStorage(getSidebarStateLocalStorageKey(), false),
|
|
404
|
-
_useLocalStorage4 = _slicedToArray(_useLocalStorage3, 2),
|
|
405
|
-
isSidebarCollapsed = _useLocalStorage4[0],
|
|
406
|
-
setIsSidebarCollapsed = _useLocalStorage4[1];
|
|
407
|
-
var _useLocalStorage5 = useLocalStorage(SIDEBAR_WIDTH_KEY, DEFAULT_SIDEBAR_WIDTH),
|
|
449
|
+
var _useLocalStorage5 = useLocalStorage(SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, null),
|
|
408
450
|
_useLocalStorage6 = _slicedToArray(_useLocalStorage5, 2),
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
var sidebarWidth = typeof sidebarWidthRaw === "string" ? parseInt(sidebarWidthRaw, 10) || DEFAULT_SIDEBAR_WIDTH : sidebarWidthRaw || DEFAULT_SIDEBAR_WIDTH;
|
|
451
|
+
selectedNavLinkRoute = _useLocalStorage6[0],
|
|
452
|
+
setSelectedNavLinkRoute = _useLocalStorage6[1];
|
|
412
453
|
var isDraggingRef = useRef(false);
|
|
413
454
|
var hasDraggedRef = useRef(false);
|
|
414
455
|
var startXRef = useRef(null);
|
|
415
456
|
var startWidthRef = useRef(null);
|
|
457
|
+
var isInitialMountRef = useRef(true);
|
|
416
458
|
var location = useLocation();
|
|
417
459
|
var history = useHistory();
|
|
418
460
|
var _useTranslation = useTranslation(),
|
|
@@ -420,18 +462,22 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
420
462
|
var isRTL = document.documentElement.dir === "rtl";
|
|
421
463
|
var sidebarSide = isRTL ? "right" : "left";
|
|
422
464
|
useEffect(function () {
|
|
423
|
-
if (
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
setIsSidebarCollapsed(false);
|
|
465
|
+
if (isInitialMountRef.current) {
|
|
466
|
+
isInitialMountRef.current = false;
|
|
467
|
+
return;
|
|
427
468
|
}
|
|
428
|
-
|
|
429
|
-
|
|
469
|
+
if (isMobile) {
|
|
470
|
+
if (isKeyboardShortcutsPaneOpen) setOpenMobile(false);
|
|
471
|
+
return;
|
|
472
|
+
}
|
|
473
|
+
if (isKeyboardShortcutsPaneOpen) setIsSidebarCollapsed(true);else setIsSidebarCollapsed(false);
|
|
474
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps -- setIsSidebarCollapsed / setOpenMobile may not be stable across renders
|
|
475
|
+
}, [isKeyboardShortcutsPaneOpen, isMobile]);
|
|
430
476
|
useEffect(function () {
|
|
431
477
|
if (!isPresent(navLinks)) return;
|
|
432
|
-
var currentLink = findLast(function (
|
|
433
|
-
var to =
|
|
434
|
-
isActive =
|
|
478
|
+
var currentLink = findLast(function (_ref3) {
|
|
479
|
+
var to = _ref3.to,
|
|
480
|
+
isActive = _ref3.isActive;
|
|
435
481
|
var url = new URL(to, window.location.href);
|
|
436
482
|
return is(Function, isActive) ? isActive() : location.pathname.includes(url.pathname);
|
|
437
483
|
})(navLinks);
|
|
@@ -440,12 +486,8 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
440
486
|
}
|
|
441
487
|
// eslint-disable-next-line react-hooks/exhaustive-deps -- mount-only: sets initial selected route from current URL
|
|
442
488
|
}, []);
|
|
443
|
-
|
|
444
|
-
// Drag-to-resize via SidebarRail: intercept mousedown to start drag,
|
|
445
|
-
// update --sidebar-width directly on DOM for instant feedback,
|
|
446
|
-
// persist to localStorage on mouseup.
|
|
447
489
|
var handleRailMouseDown = useCallback(function (e) {
|
|
448
|
-
if (!isExpandable) return;
|
|
490
|
+
if (!isExpandable || isMobile) return;
|
|
449
491
|
isDraggingRef.current = true;
|
|
450
492
|
hasDraggedRef.current = false;
|
|
451
493
|
startXRef.current = e.clientX;
|
|
@@ -455,9 +497,7 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
455
497
|
document.body.style.cursor = "col-resize";
|
|
456
498
|
document.body.style.userSelect = "none";
|
|
457
499
|
e.preventDefault();
|
|
458
|
-
}, [sidebarWidth, isExpandable]);
|
|
459
|
-
|
|
460
|
-
// Prevent SidebarRail's built-in toggle when user dragged to resize
|
|
500
|
+
}, [sidebarWidth, isExpandable, isMobile]);
|
|
461
501
|
var handleRailClick = useCallback(function (e) {
|
|
462
502
|
if (!hasDraggedRef.current) return;
|
|
463
503
|
e.preventDefault();
|
|
@@ -465,12 +505,11 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
465
505
|
hasDraggedRef.current = false;
|
|
466
506
|
}, []);
|
|
467
507
|
useEffect(function () {
|
|
468
|
-
if (!isExpandable) return undefined;
|
|
508
|
+
if (!isExpandable || isMobile) return undefined;
|
|
469
509
|
var onMouseMove = function onMouseMove(e) {
|
|
470
510
|
if (!isDraggingRef.current) return;
|
|
471
511
|
hasDraggedRef.current = true;
|
|
472
512
|
var dx = e.clientX - startXRef.current;
|
|
473
|
-
// In RTL, dragging right shrinks, dragging left expands
|
|
474
513
|
var rtl = document.documentElement.dir === "rtl";
|
|
475
514
|
var newWidth = startWidthRef.current + (rtl ? -dx : dx);
|
|
476
515
|
newWidth = Math.max(MIN_SIDEBAR_WIDTH, Math.min(newWidth, MAX_SIDEBAR_WIDTH));
|
|
@@ -498,10 +537,10 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
498
537
|
document.removeEventListener("mousemove", onMouseMove);
|
|
499
538
|
document.removeEventListener("mouseup", onMouseUp);
|
|
500
539
|
};
|
|
501
|
-
}, [isExpandable, setSidebarWidth]);
|
|
540
|
+
}, [isExpandable, isMobile, setSidebarWidth]);
|
|
502
541
|
useEffect(function () {
|
|
503
|
-
document.documentElement.style.setProperty("--nv-sidebar-width", "".concat(sidebarWidth / 16, "rem"));
|
|
504
|
-
}, [sidebarWidth]);
|
|
542
|
+
document.documentElement.style.setProperty("--nv-sidebar-width", isMobile ? "0rem" : "".concat(sidebarWidth / 16, "rem"));
|
|
543
|
+
}, [sidebarWidth, isMobile]);
|
|
505
544
|
var handleGoBack = function handleGoBack(event) {
|
|
506
545
|
event.preventDefault();
|
|
507
546
|
setSelectedNavLinkRoute(null);
|
|
@@ -521,27 +560,20 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
521
560
|
});
|
|
522
561
|
}, [location.pathname, navLinks]);
|
|
523
562
|
var isSelectedNavLinkVisible = selectedNavLinkRoute && (activeLink === null || activeLink === void 0 ? void 0 : activeLink.to) === selectedNavLinkRoute && isNotEmpty(navLinks);
|
|
524
|
-
return /*#__PURE__*/jsxs(
|
|
525
|
-
className: "!w-auto",
|
|
526
|
-
open: !isSidebarCollapsed,
|
|
527
|
-
style: {
|
|
528
|
-
"--sidebar-width": "".concat(sidebarWidth / 16, "rem")
|
|
529
|
-
},
|
|
530
|
-
onOpenChange: function onOpenChange(open) {
|
|
531
|
-
return setIsSidebarCollapsed(!open);
|
|
532
|
-
},
|
|
563
|
+
return /*#__PURE__*/jsxs(Fragment$1, {
|
|
533
564
|
children: [/*#__PURE__*/jsxs(Sidebar$1, {
|
|
534
565
|
collapsible: "offcanvas",
|
|
535
566
|
side: sidebarSide,
|
|
536
567
|
children: [/*#__PURE__*/jsxs(SidebarHeader, {
|
|
537
|
-
className: "relative p-0",
|
|
568
|
+
className: "nm-sidebar-shadcn-header relative p-0",
|
|
538
569
|
children: [/*#__PURE__*/jsx(Header$1, {
|
|
539
570
|
customLogo: customLogo,
|
|
540
571
|
clearSettingsNav: function clearSettingsNav() {
|
|
541
572
|
return setSelectedNavLinkRoute(null);
|
|
542
573
|
}
|
|
543
574
|
}), /*#__PURE__*/jsx(SidebarTrigger, {
|
|
544
|
-
className: "absolute end-2 top-3"
|
|
575
|
+
className: "absolute end-2 top-3",
|
|
576
|
+
title: t("neetoMolecules.sidebar.hideMenu")
|
|
545
577
|
}), showWorkspaceName && /*#__PURE__*/jsxs("div", {
|
|
546
578
|
className: "border-sidebar-border border-b px-4 py-2",
|
|
547
579
|
children: [/*#__PURE__*/jsx("h5", {
|
|
@@ -562,12 +594,13 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
562
594
|
navLinks: navLinks,
|
|
563
595
|
setSelectedNavLinkRoute: setSelectedNavLinkRoute
|
|
564
596
|
})
|
|
565
|
-
}), isExpandable && /*#__PURE__*/jsx(SidebarRail, {
|
|
597
|
+
}), !isMobile && isExpandable && !isSidebarCollapsed && /*#__PURE__*/jsx(SidebarRail, {
|
|
566
598
|
onClickCapture: handleRailClick,
|
|
567
599
|
onMouseDown: handleRailMouseDown
|
|
568
600
|
})]
|
|
569
|
-
}), isSidebarCollapsed && /*#__PURE__*/jsx(SidebarTrigger, {
|
|
570
|
-
className: "fixed start-2 top-
|
|
601
|
+
}), (isMobile && !openMobile || !isMobile && isSidebarCollapsed) && /*#__PURE__*/jsx(SidebarTrigger, {
|
|
602
|
+
className: "bg-background hover:bg-accent fixed start-2 top-2 z-50 size-9 rounded-full border shadow-sm",
|
|
603
|
+
title: t("neetoMolecules.sidebar.showMenu")
|
|
571
604
|
})]
|
|
572
605
|
});
|
|
573
606
|
};
|