@bigbinary/neeto-molecules 4.1.46 → 4.1.48

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.
@@ -0,0 +1,255 @@
1
+ import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
+ import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
3
+ import { Fragment } from 'react';
4
+ import { SidebarMenuSubItem, SidebarMenuSubButton, Badge, SidebarGroup, SidebarGroupLabel, SidebarGroupContent, SidebarMenu, SidebarMenuItem, SidebarMenuButton, SidebarMenuSub } from '@bigbinary/neeto-atoms';
5
+ import { isNotEmpty, isPresent, hyphenate } from '@bigbinary/neeto-cist';
6
+ import { handleMetaClick } from '@bigbinary/neeto-commons-frontend/react-utils';
7
+ import { hyphenize } from '@bigbinary/neeto-commons-frontend/utils/general';
8
+ import { curry, is, includes, __, all, equals, omit } from 'ramda';
9
+ import { NavLink, useLocation, useHistory } from 'react-router-dom';
10
+ import { useNavigationCheckpoints } from '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
11
+ import { jsx, jsxs } from 'react/jsx-runtime';
12
+ import classnames from 'classnames';
13
+ import Segments from '@bigbinary/neeto-filters-frontend/Segments';
14
+ import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
15
+ import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
16
+
17
+ /**
18
+ * @license lucide-react v1.7.0 - ISC
19
+ *
20
+ * This source code is licensed under the ISC license.
21
+ * See the LICENSE file in the root directory of this source tree.
22
+ */
23
+
24
+
25
+ const __iconNode = [
26
+ ["path", { d: "M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8", key: "5wwlr5" }],
27
+ [
28
+ "path",
29
+ {
30
+ d: "M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z",
31
+ key: "r6nss1"
32
+ }
33
+ ]
34
+ ];
35
+ const House = createLucideIcon("house", __iconNode);
36
+
37
+ var _excluded$1 = ["checkpointKey", "to", "href", "children"];
38
+ 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; }
39
+ 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; }
40
+ var CheckPointNavLinks = function CheckPointNavLinks(_ref) {
41
+ var checkpointKey = _ref.checkpointKey,
42
+ to = _ref.to,
43
+ href = _ref.href,
44
+ children = _ref.children,
45
+ others = _objectWithoutProperties(_ref, _excluded$1);
46
+ var _useNavigationCheckpo = useNavigationCheckpoints(checkpointKey),
47
+ checkpoint = _useNavigationCheckpo[checkpointKey];
48
+ var LinkElement = href ? "a" : NavLink;
49
+ var linkProps = href ? _objectSpread$2({
50
+ href: href,
51
+ key: href
52
+ }, others) : _objectSpread$2({
53
+ to: checkpoint || to,
54
+ key: to
55
+ }, others);
56
+ return /*#__PURE__*/jsx(LinkElement, _objectSpread$2(_objectSpread$2({}, linkProps), {}, {
57
+ children: children
58
+ }));
59
+ };
60
+
61
+ var SUB_LINK_TYPES = {
62
+ SYSTEM_VIEW: "system_view",
63
+ SEGMENTS: "segments"
64
+ };
65
+ var SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = "selectedNavLinkRoute";
66
+ var DEFAULT_HOME_PATH = "/admin";
67
+ var SIDEBAR_WIDTH_KEY = "neeto-molecules-sidebar-width";
68
+ var MIN_SIDEBAR_WIDTH = 12.5 * 16;
69
+ var MAX_SIDEBAR_WIDTH = 20 * 16;
70
+ var DEFAULT_SIDEBAR_WIDTH = 15 * 16;
71
+ var PINNED_MORE_NAV_LINKS_KEY = "pinnedMoreNavLinks";
72
+ var SPECIAL_APP_NAMES = {
73
+ bugwatch: "BugWatch"
74
+ };
75
+
76
+ var isSubRouteActive = function isSubRouteActive(subRoute, location) {
77
+ var currentBrowserUrl = new URL(location.pathname + location.search + location.hash, window.location.origin);
78
+ var targetUrl = new URL(subRoute, window.location.origin);
79
+ var targetSearchParams = targetUrl.searchParams;
80
+ var targetSearchKeys = Array.from(targetSearchParams.keys());
81
+ return all(function (key) {
82
+ return currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key);
83
+ }, targetSearchKeys) && equals(currentBrowserUrl.pathname, targetUrl.pathname);
84
+ };
85
+ var getSidebarStateLocalStorageKey = function getSidebarStateLocalStorageKey() {
86
+ var _globalProps$user, _globalProps$user2;
87
+ var user = ((_globalProps$user = globalProps.user) === null || _globalProps$user === void 0 ? void 0 : _globalProps$user.email) || ((_globalProps$user2 = globalProps.user) === null || _globalProps$user2 === void 0 ? void 0 : _globalProps$user2.phoneNumber);
88
+ return "sidebarState-".concat(user);
89
+ };
90
+ var filterByPermissions = curry(function (_ref) {
91
+ var permissions = _ref.permissions;
92
+ if (permissions && isNotEmpty(permissions)) {
93
+ return is(Array, permissions) ? permissions.some(includes(__, globalProps.permissions)) : globalProps.permissions.includes(permissions);
94
+ }
95
+ return true;
96
+ });
97
+ var getActiveConfigurePageLink = function getActiveConfigurePageLink(_ref2) {
98
+ var navLinks = _ref2.navLinks,
99
+ location = _ref2.location;
100
+ return navLinks.find(function (link) {
101
+ var _link$to;
102
+ var _ref3 = ((_link$to = link.to) === null || _link$to === void 0 ? void 0 : _link$to.split("?")) || [],
103
+ _ref4 = _slicedToArray(_ref3, 1),
104
+ linkPathname = _ref4[0];
105
+ return isPresent(link.isConfigureNavLink) && link.isConfigureNavLink && location.pathname.startsWith(linkPathname);
106
+ });
107
+ };
108
+
109
+ 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; }
110
+ 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; }
111
+ var SubLinkItem = function SubLinkItem(_ref) {
112
+ var to = _ref.to,
113
+ href = _ref.href,
114
+ onClick = _ref.onClick,
115
+ label = _ref.label,
116
+ className = _ref.className,
117
+ _ref$type = _ref.type,
118
+ type = _ref$type === void 0 ? SUB_LINK_TYPES.SYSTEM_VIEW : _ref$type,
119
+ count = _ref.count,
120
+ isSectionHeader = _ref.isSectionHeader,
121
+ isCountsLoading = _ref.isCountsLoading,
122
+ dataTestid = _ref["data-testid"],
123
+ _ref$entity = _ref.entity,
124
+ entity = _ref$entity === void 0 ? "" : _ref$entity,
125
+ _ref$columns = _ref.columns,
126
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
127
+ baseUrl = _ref.baseUrl,
128
+ isActive = _ref.isActive,
129
+ tag = _ref.tag;
130
+ var location = useLocation();
131
+ if (type === SUB_LINK_TYPES.SEGMENTS) {
132
+ return /*#__PURE__*/jsx(Segments, {
133
+ baseUrl: baseUrl,
134
+ columns: columns,
135
+ entity: entity,
136
+ isIndependent: false
137
+ });
138
+ }
139
+ var dataTestidPrefix = dataTestid || hyphenate(label);
140
+ var renderCount = function renderCount(count) {
141
+ return count > 999 ? "999+" : count;
142
+ };
143
+ var isSubLinkActive = function isSubLinkActive() {
144
+ return !isSectionHeader && (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));
145
+ };
146
+ return /*#__PURE__*/jsx(SidebarMenuSubItem, {
147
+ children: /*#__PURE__*/jsx(SidebarMenuSubButton, {
148
+ asChild: true,
149
+ isActive: isSubLinkActive(),
150
+ size: "md",
151
+ className: classnames("h-auto overflow-visible py-1.5 whitespace-normal", className),
152
+ children: /*#__PURE__*/jsxs(CheckPointNavLinks, {
153
+ href: href,
154
+ onClick: onClick,
155
+ to: to,
156
+ activeClassName: "active",
157
+ "data-testid": "".concat(dataTestidPrefix, "-sub-link"),
158
+ isActive: isSubLinkActive,
159
+ children: [/*#__PURE__*/jsxs("span", {
160
+ className: "flex flex-grow items-center gap-2",
161
+ "data-testid": "".concat(dataTestidPrefix, "-sub-link-label"),
162
+ children: [label, tag && /*#__PURE__*/jsx(Badge, _objectSpread$1({}, tag))]
163
+ }), /*#__PURE__*/jsx("span", {
164
+ className: "text-sidebar-foreground/70 flex-shrink-0 text-xs",
165
+ "data-testid": "".concat(dataTestidPrefix, "-sub-link-count"),
166
+ children: isCountsLoading ? /*#__PURE__*/jsx("div", {
167
+ className: "bg-sidebar-accent h-4 w-4 animate-pulse rounded"
168
+ }) : renderCount(count)
169
+ })]
170
+ })
171
+ })
172
+ });
173
+ };
174
+
175
+ var _excluded = ["label", "items"];
176
+ 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; }
177
+ 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; }
178
+ var ConfigureView = function ConfigureView(_ref) {
179
+ var _ref$navLink = _ref.navLink,
180
+ navLink = _ref$navLink === void 0 ? {
181
+ label: "",
182
+ items: [],
183
+ isConfigureNavLink: false
184
+ } : _ref$navLink,
185
+ handleGoBack = _ref.handleGoBack;
186
+ _ref.isConfigureSidebar;
187
+ var history = useHistory();
188
+ var label = navLink.label,
189
+ items = navLink.items,
190
+ otherProps = _objectWithoutProperties(navLink, _excluded);
191
+ var handleHomeButtonClick = function handleHomeButtonClick(e) {
192
+ e.stopPropagation();
193
+ handleMetaClick(history, DEFAULT_HOME_PATH, e);
194
+ };
195
+ var renderItems = function renderItems(itemList) {
196
+ return /*#__PURE__*/jsx(SidebarMenu, {
197
+ className: "gap-1",
198
+ children: itemList.filter(filterByPermissions).map(function (subItem, subIndex) {
199
+ var _subItem$to, _subItem$to2;
200
+ return /*#__PURE__*/jsx(Fragment, {
201
+ children: isPresent(subItem.items) ? /*#__PURE__*/jsxs(SidebarMenuItem, {
202
+ children: [/*#__PURE__*/jsx(SidebarMenuButton, {
203
+ asChild: true,
204
+ className: "font-medium",
205
+ children: /*#__PURE__*/jsx(CheckPointNavLinks, {
206
+ href: subItem.href,
207
+ to: (_subItem$to = subItem.to) !== null && _subItem$to !== void 0 ? _subItem$to : subItem.path,
208
+ onClick: subItem.onClick,
209
+ children: subItem.label
210
+ })
211
+ }), /*#__PURE__*/jsx(SidebarMenuSub, {
212
+ children: subItem.items.filter(filterByPermissions).map(function (nestedItem, nestedIndex) {
213
+ var _nestedItem$to;
214
+ return /*#__PURE__*/jsx(SubLinkItem, _objectSpread(_objectSpread({}, _objectSpread({}, nestedItem)), {}, {
215
+ href: nestedItem.href,
216
+ isActive: nestedItem.isActive,
217
+ to: (_nestedItem$to = nestedItem.to) !== null && _nestedItem$to !== void 0 ? _nestedItem$to : nestedItem.path,
218
+ onClick: nestedItem.onClick
219
+ }), nestedIndex);
220
+ })
221
+ })]
222
+ }) : /*#__PURE__*/jsx(SubLinkItem, _objectSpread(_objectSpread({}, _objectSpread({}, subItem)), {}, {
223
+ href: subItem.href,
224
+ isActive: subItem.isActive,
225
+ to: (_subItem$to2 = subItem.to) !== null && _subItem$to2 !== void 0 ? _subItem$to2 : subItem.path,
226
+ onClick: subItem.onClick
227
+ }))
228
+ }, subIndex);
229
+ })
230
+ });
231
+ };
232
+ return /*#__PURE__*/jsxs(SidebarGroup, {
233
+ "data-testid": "configure-nav-container",
234
+ children: [/*#__PURE__*/jsxs(SidebarGroupLabel, _objectSpread(_objectSpread({
235
+ className: "border-sidebar-border text-sidebar-foreground mb-2 h-10 cursor-pointer gap-1.5 rounded-none border-b px-3 text-sm font-semibold",
236
+ onClick: handleGoBack
237
+ }, _objectSpread({}, omit(["icon", "isConfigureNavLink"], otherProps))), {}, {
238
+ children: [/*#__PURE__*/jsx(House, {
239
+ className: "size-4 shrink-0 cursor-pointer",
240
+ "data-testid": "".concat(hyphenize(label), "-go-back-button"),
241
+ onClick: handleHomeButtonClick
242
+ }), /*#__PURE__*/jsx("span", {
243
+ className: "text-sidebar-foreground/50",
244
+ children: "/"
245
+ }), /*#__PURE__*/jsx("span", {
246
+ children: label
247
+ })]
248
+ })), /*#__PURE__*/jsx(SidebarGroupContent, {
249
+ children: items && renderItems(items)
250
+ })]
251
+ });
252
+ };
253
+
254
+ export { ConfigureView as C, DEFAULT_HOME_PATH as D, MIN_SIDEBAR_WIDTH as M, PINNED_MORE_NAV_LINKS_KEY as P, SPECIAL_APP_NAMES as S, CheckPointNavLinks as a, SubLinkItem as b, SELECTED_NAV_LINK_ROUTE_STORAGE_KEY as c, SIDEBAR_WIDTH_KEY as d, DEFAULT_SIDEBAR_WIDTH as e, filterByPermissions as f, getSidebarStateLocalStorageKey as g, getActiveConfigurePageLink as h, MAX_SIDEBAR_WIDTH as i };
255
+ //# sourceMappingURL=ConfigureView-C84AmCMq.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConfigureView-C84AmCMq.js","sources":["../node_modules/lucide-react/dist/esm/icons/house.js","../src/v2/components/Sidebar/Components/CheckPointNavLink.jsx","../src/v2/components/Sidebar/constants.js","../src/v2/components/Sidebar/utils.js","../src/v2/components/Sidebar/Components/SubLinkItem.jsx","../src/v2/components/Sidebar/Components/ConfigureView.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 [\"path\", { d: \"M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8\", key: \"5wwlr5\" }],\n [\n \"path\",\n {\n d: \"M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z\",\n key: \"r6nss1\"\n }\n ]\n];\nconst House = createLucideIcon(\"house\", __iconNode);\n\nexport { __iconNode, House as default };\n//# sourceMappingURL=house.js.map\n","import { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({\n checkpointKey,\n to,\n href,\n children,\n ...others\n}) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n const LinkElement = href ? \"a\" : NavLink;\n const linkProps = href\n ? { href, key: href, ...others }\n : { to: checkpoint || to, key: to, ...others };\n\n return <LinkElement {...linkProps}>{children}</LinkElement>;\n};\n\nexport default CheckPointNavLinks;\n","export const SUB_LINK_TYPES = {\n SYSTEM_VIEW: \"system_view\",\n SEGMENTS: \"segments\",\n};\n\nexport const SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = \"selectedNavLinkRoute\";\n\nexport const DEFAULT_HOME_PATH = \"/admin\";\n\nexport const SIDEBAR_WIDTH_KEY = \"neeto-molecules-sidebar-width\";\nexport const MIN_SIDEBAR_WIDTH = 12.5 * 16;\nexport const MAX_SIDEBAR_WIDTH = 20 * 16;\nexport const DEFAULT_SIDEBAR_WIDTH = 15 * 16;\n\nexport const PINNED_MORE_NAV_LINKS_KEY = \"pinnedMoreNavLinks\";\n\nexport const SPECIAL_APP_NAMES = { bugwatch: \"BugWatch\" };\n","import { isPresent, isNotEmpty } from \"neetocist\";\nimport { __, all, curry, equals, includes, is } from \"ramda\";\n\nexport const isSubRouteActive = (subRoute, location) => {\n const currentBrowserUrl = new URL(\n location.pathname + location.search + location.hash,\n window.location.origin\n );\n const targetUrl = new URL(subRoute, window.location.origin);\n\n const targetSearchParams = targetUrl.searchParams;\n const targetSearchKeys = Array.from(targetSearchParams.keys());\n\n return (\n all(\n key =>\n currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key),\n targetSearchKeys\n ) && equals(currentBrowserUrl.pathname, targetUrl.pathname)\n );\n};\n\nexport const getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nexport const filterByPermissions = curry(({ permissions }) => {\n if (permissions && isNotEmpty(permissions)) {\n return is(Array, permissions)\n ? permissions.some(includes(__, globalProps.permissions))\n : globalProps.permissions.includes(permissions);\n }\n\n return true;\n});\n\nexport const getActiveConfigurePageLink = ({ navLinks, location }) =>\n navLinks.find(link => {\n const [linkPathname] = link.to?.split(\"?\") || [];\n\n return (\n isPresent(link.isConfigureNavLink) &&\n link.isConfigureNavLink &&\n location.pathname.startsWith(linkPathname)\n );\n });\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport {\n Badge,\n SidebarMenuSubItem,\n SidebarMenuSubButton,\n} from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { is } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../constants\";\nimport { isSubRouteActive } from \"../utils\";\n\nconst SubLinkItem = ({\n to,\n href,\n onClick,\n label,\n className,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-testid\": dataTestid,\n entity = \"\",\n columns = [],\n baseUrl,\n isActive,\n tag,\n}) => {\n const location = useLocation();\n\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ baseUrl, columns, entity }} isIndependent={false} />;\n }\n\n const dataTestidPrefix = dataTestid || hyphenate(label);\n\n const renderCount = count => (count > 999 ? \"999+\" : count);\n\n const isSubLinkActive = () =>\n !isSectionHeader &&\n (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));\n\n return (\n <SidebarMenuSubItem>\n <SidebarMenuSubButton\n asChild\n isActive={isSubLinkActive()}\n size=\"md\"\n className={classnames(\n \"h-auto overflow-visible py-1.5 whitespace-normal\",\n className\n )}\n >\n <CheckPointNavLinks\n {...{ href, onClick, to }}\n activeClassName=\"active\"\n data-testid={`${dataTestidPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <span\n className=\"flex flex-grow items-center gap-2\"\n data-testid={`${dataTestidPrefix}-sub-link-label`}\n >\n {label}\n {tag && <Badge {...tag} />}\n </span>\n <span\n className=\"text-sidebar-foreground/70 flex-shrink-0 text-xs\"\n data-testid={`${dataTestidPrefix}-sub-link-count`}\n >\n {isCountsLoading ? (\n <div className=\"bg-sidebar-accent h-4 w-4 animate-pulse rounded\" />\n ) : (\n renderCount(count)\n )}\n </span>\n </CheckPointNavLinks>\n </SidebarMenuSubButton>\n </SidebarMenuSubItem>\n );\n};\n\nexport default SubLinkItem;\n","/* eslint-disable @bigbinary/neeto/use-neetoui-classes */\nimport { Fragment } from \"react\";\n\nimport {\n SidebarGroup,\n SidebarGroupContent,\n SidebarGroupLabel,\n SidebarMenu,\n SidebarMenuButton,\n SidebarMenuItem,\n SidebarMenuSub,\n} from \"@bigbinary/neeto-atoms\";\nimport { Home } from \"lucide-react\";\nimport { isPresent } from \"neetocist\";\nimport { handleMetaClick } from \"neetocommons/react-utils\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { omit } from \"ramda\";\nimport { useHistory } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport SubLinkItem from \"./SubLinkItem\";\n\nimport { DEFAULT_HOME_PATH } from \"../constants\";\nimport { filterByPermissions } from \"../utils\";\n\nconst ConfigureView = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar: _isConfigureSidebar,\n}) => {\n const history = useHistory();\n const { label, items, ...otherProps } = navLink;\n\n const handleHomeButtonClick = e => {\n e.stopPropagation();\n handleMetaClick(history, DEFAULT_HOME_PATH, e);\n };\n\n const renderItems = itemList => (\n <SidebarMenu className=\"gap-1\">\n {itemList.filter(filterByPermissions).map((subItem, subIndex) => (\n <Fragment key={subIndex}>\n {isPresent(subItem.items) ? (\n <SidebarMenuItem>\n <SidebarMenuButton asChild className=\"font-medium\">\n <CheckPointNavLinks\n href={subItem.href}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n >\n {subItem.label}\n </CheckPointNavLinks>\n </SidebarMenuButton>\n <SidebarMenuSub>\n {subItem.items\n .filter(filterByPermissions)\n .map((nestedItem, nestedIndex) => (\n <SubLinkItem\n key={nestedIndex}\n {...{ ...nestedItem }}\n href={nestedItem.href}\n isActive={nestedItem.isActive}\n to={nestedItem.to ?? nestedItem.path}\n onClick={nestedItem.onClick}\n />\n ))}\n </SidebarMenuSub>\n </SidebarMenuItem>\n ) : (\n <SubLinkItem\n {...{ ...subItem }}\n href={subItem.href}\n isActive={subItem.isActive}\n to={subItem.to ?? subItem.path}\n onClick={subItem.onClick}\n />\n )}\n </Fragment>\n ))}\n </SidebarMenu>\n );\n\n return (\n <SidebarGroup data-testid=\"configure-nav-container\">\n <SidebarGroupLabel\n className=\"border-sidebar-border text-sidebar-foreground mb-2 h-10 cursor-pointer gap-1.5 rounded-none border-b px-3 text-sm font-semibold\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\", \"isConfigureNavLink\"], otherProps) }}\n >\n <Home\n className=\"size-4 shrink-0 cursor-pointer\"\n data-testid={`${hyphenize(label)}-go-back-button`}\n onClick={handleHomeButtonClick}\n />\n <span className=\"text-sidebar-foreground/50\">/</span>\n <span>{label}</span>\n </SidebarGroupLabel>\n <SidebarGroupContent>{items && renderItems(items)}</SidebarGroupContent>\n </SidebarGroup>\n );\n};\n\nexport default ConfigureView;\n"],"names":["CheckPointNavLinks","_ref","checkpointKey","to","href","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","LinkElement","NavLink","linkProps","_objectSpread","key","_jsx","SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","DEFAULT_HOME_PATH","SIDEBAR_WIDTH_KEY","MIN_SIDEBAR_WIDTH","MAX_SIDEBAR_WIDTH","DEFAULT_SIDEBAR_WIDTH","PINNED_MORE_NAV_LINKS_KEY","SPECIAL_APP_NAMES","bugwatch","isSubRouteActive","subRoute","location","currentBrowserUrl","URL","pathname","search","hash","window","origin","targetUrl","targetSearchParams","searchParams","targetSearchKeys","Array","from","keys","all","get","equals","getSidebarStateLocalStorageKey","_globalProps$user","_globalProps$user2","user","globalProps","email","phoneNumber","concat","filterByPermissions","curry","permissions","isNotEmpty","is","some","includes","__","getActiveConfigurePageLink","_ref2","navLinks","find","link","_link$to","_ref3","split","_ref4","_slicedToArray","linkPathname","isPresent","isConfigureNavLink","startsWith","SubLinkItem","onClick","label","className","_ref$type","type","count","isSectionHeader","isCountsLoading","dataTestid","_ref$entity","entity","_ref$columns","columns","baseUrl","isActive","tag","useLocation","Segments","isIndependent","dataTestidPrefix","hyphenate","renderCount","isSubLinkActive","Function","SidebarMenuSubItem","SidebarMenuSubButton","asChild","size","classnames","_jsxs","activeClassName","Badge","ConfigureView","_ref$navLink","navLink","items","handleGoBack","isConfigureSidebar","history","useHistory","otherProps","handleHomeButtonClick","e","stopPropagation","handleMetaClick","renderItems","itemList","SidebarMenu","filter","map","subItem","subIndex","_subItem$to","_subItem$to2","Fragment","SidebarMenuItem","SidebarMenuButton","path","SidebarMenuSub","nestedItem","nestedIndex","_nestedItem$to","SidebarGroup","SidebarGroupLabel","omit","Home","hyphenize","SidebarGroupContent"],"mappings":";;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG;AACnB,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,4CAA4C,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC;AAC9E,EAAE;AACF,IAAI,MAAM;AACV,IAAI;AACJ,MAAM,CAAC,EAAE,uGAAuG;AAChH,MAAM,GAAG,EAAE;AACX;AACA;AACA,CAAC;AACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,EAAE,UAAU,CAAC;;;;;AChBnD,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAMlB;AAAA,EAAA,IALJC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IACbC,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACFC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;AACLC,IAAAA,MAAM,GAAAC,wBAAA,CAAAN,IAAA,EAAAO,WAAA,CAAA;AAET,EAAA,IAAAC,qBAAA,GACEC,wBAAwB,CAACR,aAAa,CAAC;IADhBS,UAAU,GAAAF,qBAAA,CAA1BP,aAAa,CAAA;AAGtB,EAAA,IAAMU,WAAW,GAAGR,IAAI,GAAG,GAAG,GAAGS,OAAO;AACxC,EAAA,IAAMC,SAAS,GAAGV,IAAI,GAAAW,eAAA,CAAA;AAChBX,IAAAA,IAAI,EAAJA,IAAI;AAAEY,IAAAA,GAAG,EAAEZ;GAAI,EAAKE,MAAM,IAAAS,eAAA,CAAA;IAC1BZ,EAAE,EAAEQ,UAAU,IAAIR,EAAE;AAAEa,IAAAA,GAAG,EAAEb;AAAE,GAAA,EAAKG,MAAM,CAAE;EAEhD,oBAAOW,GAAA,CAACL,WAAW,EAAAG,eAAA,CAAAA,eAAA,KAAKD,SAAS,CAAA,EAAA,EAAA,EAAA;AAAAT,IAAAA,QAAA,EAAGA;AAAQ,GAAA,CAAc,CAAC;AAC7D;;ACnBO,IAAMa,cAAc,GAAG;AAC5BC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,QAAQ,EAAE;AACZ,CAAC;AAEM,IAAMC,mCAAmC,GAAG;AAE5C,IAAMC,iBAAiB,GAAG;AAE1B,IAAMC,iBAAiB,GAAG;AAC1B,IAAMC,iBAAiB,GAAG,IAAI,GAAG;AACjC,IAAMC,iBAAiB,GAAG,EAAE,GAAG;AAC/B,IAAMC,qBAAqB,GAAG,EAAE,GAAG;AAEnC,IAAMC,yBAAyB,GAAG;AAElC,IAAMC,iBAAiB,GAAG;AAAEC,EAAAA,QAAQ,EAAE;AAAW;;ACbjD,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAIC,QAAQ,EAAEC,QAAQ,EAAK;EACtD,IAAMC,iBAAiB,GAAG,IAAIC,GAAG,CAC/BF,QAAQ,CAACG,QAAQ,GAAGH,QAAQ,CAACI,MAAM,GAAGJ,QAAQ,CAACK,IAAI,EACnDC,MAAM,CAACN,QAAQ,CAACO,MAClB,CAAC;AACD,EAAA,IAAMC,SAAS,GAAG,IAAIN,GAAG,CAACH,QAAQ,EAAEO,MAAM,CAACN,QAAQ,CAACO,MAAM,CAAC;AAE3D,EAAA,IAAME,kBAAkB,GAAGD,SAAS,CAACE,YAAY;EACjD,IAAMC,gBAAgB,GAAGC,KAAK,CAACC,IAAI,CAACJ,kBAAkB,CAACK,IAAI,EAAE,CAAC;EAE9D,OACEC,GAAG,CACD,UAAA/B,GAAG,EAAA;AAAA,IAAA,OACDiB,iBAAiB,CAACS,YAAY,CAACM,GAAG,CAAChC,GAAG,CAAC,KAAKyB,kBAAkB,CAACO,GAAG,CAAChC,GAAG,CAAC;AAAA,EAAA,CAAA,EACzE2B,gBACF,CAAC,IAAIM,MAAM,CAAChB,iBAAiB,CAACE,QAAQ,EAAEK,SAAS,CAACL,QAAQ,CAAC;AAE/D,CAAC;IAEYe,8BAA8B,GAAG,SAAjCA,8BAA8BA,GAAS;EAAA,IAAAC,iBAAA,EAAAC,kBAAA;EAClD,IAAMC,IAAI,GAAG,CAAA,CAAAF,iBAAA,GAAAG,WAAW,CAACD,IAAI,MAAA,IAAA,IAAAF,iBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,iBAAA,CAAkBI,KAAK,MAAA,CAAAH,kBAAA,GAAIE,WAAW,CAACD,IAAI,MAAA,IAAA,IAAAD,kBAAA,KAAA,MAAA,GAAA,MAAA,GAAhBA,kBAAA,CAAkBI,WAAW,CAAA;EAErE,OAAA,eAAA,CAAAC,MAAA,CAAuBJ,IAAI,CAAA;AAC7B;IAEaK,mBAAmB,GAAGC,KAAK,CAAC,UAAA1D,IAAA,EAAqB;AAAA,EAAA,IAAlB2D,WAAW,GAAA3D,IAAA,CAAX2D,WAAW;AACrD,EAAA,IAAIA,WAAW,IAAIC,UAAU,CAACD,WAAW,CAAC,EAAE;AAC1C,IAAA,OAAOE,EAAE,CAAClB,KAAK,EAAEgB,WAAW,CAAC,GACzBA,WAAW,CAACG,IAAI,CAACC,QAAQ,CAACC,EAAE,EAAEX,WAAW,CAACM,WAAW,CAAC,CAAC,GACvDN,WAAW,CAACM,WAAW,CAACI,QAAQ,CAACJ,WAAW,CAAC;AACnD,EAAA;AAEA,EAAA,OAAO,IAAI;AACb,CAAC;IAEYM,0BAA0B,GAAG,SAA7BA,0BAA0BA,CAAAC,KAAA,EAAA;AAAA,EAAA,IAAMC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAEpC,QAAQ,GAAAmC,KAAA,CAARnC,QAAQ;AAAA,EAAA,OAC7DoC,QAAQ,CAACC,IAAI,CAAC,UAAAC,IAAI,EAAI;AAAA,IAAA,IAAAC,QAAA;AACpB,IAAA,IAAAC,KAAA,GAAuB,CAAA,CAAAD,QAAA,GAAAD,IAAI,CAACnE,EAAE,MAAA,IAAA,IAAAoE,QAAA,KAAA,MAAA,GAAA,MAAA,GAAPA,QAAA,CAASE,KAAK,CAAC,GAAG,CAAC,KAAI,EAAE;MAAAC,KAAA,GAAAC,cAAA,CAAAH,KAAA,EAAA,CAAA,CAAA;AAAzCI,MAAAA,YAAY,GAAAF,KAAA,CAAA,CAAA,CAAA;AAEnB,IAAA,OACEG,SAAS,CAACP,IAAI,CAACQ,kBAAkB,CAAC,IAClCR,IAAI,CAACQ,kBAAkB,IACvB9C,QAAQ,CAACG,QAAQ,CAAC4C,UAAU,CAACH,YAAY,CAAC;AAE9C,EAAA,CAAC,CAAC;AAAA;;;;AC9BJ,IAAMI,WAAW,GAAG,SAAdA,WAAWA,CAAA/E,IAAA,EAgBX;AAAA,EAAA,IAfJE,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACFC,IAAI,GAAAH,IAAA,CAAJG,IAAI;IACJ6E,OAAO,GAAAhF,IAAA,CAAPgF,OAAO;IACPC,KAAK,GAAAjF,IAAA,CAALiF,KAAK;IACLC,SAAS,GAAAlF,IAAA,CAATkF,SAAS;IAAAC,SAAA,GAAAnF,IAAA,CACToF,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,MAAA,GAAGlE,cAAc,CAACC,WAAW,GAAAiE,SAAA;IACjCE,KAAK,GAAArF,IAAA,CAALqF,KAAK;IACLC,eAAe,GAAAtF,IAAA,CAAfsF,eAAe;IACfC,eAAe,GAAAvF,IAAA,CAAfuF,eAAe;IACAC,UAAU,GAAAxF,IAAA,CAAzB,aAAa,CAAA;IAAAyF,WAAA,GAAAzF,IAAA,CACb0F,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,WAAA;IAAAE,YAAA,GAAA3F,IAAA,CACX4F,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,YAAA;IACZE,OAAO,GAAA7F,IAAA,CAAP6F,OAAO;IACPC,QAAQ,GAAA9F,IAAA,CAAR8F,QAAQ;IACRC,GAAG,GAAA/F,IAAA,CAAH+F,GAAG;AAEH,EAAA,IAAMhE,QAAQ,GAAGiE,WAAW,EAAE;AAE9B,EAAA,IAAIZ,IAAI,KAAKnE,cAAc,CAACE,QAAQ,EAAE;IACpC,oBAAOH,GAAA,CAACiF,QAAQ,EAAA;AAAOJ,MAAAA,OAAO,EAAPA,OAAO;AAAED,MAAAA,OAAO,EAAPA,OAAO;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAIQ,MAAAA,aAAa,EAAE;AAAM,KAAE,CAAC;AAC7E,EAAA;AAEA,EAAA,IAAMC,gBAAgB,GAAGX,UAAU,IAAIY,SAAS,CAACnB,KAAK,CAAC;AAEvD,EAAA,IAAMoB,WAAW,GAAG,SAAdA,WAAWA,CAAGhB,KAAK,EAAA;AAAA,IAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK;EAAA,CAAC;AAE3D,EAAA,IAAMiB,eAAe,GAAG,SAAlBA,eAAeA,GAAA;IAAA,OACnB,CAAChB,eAAe,KACfzB,EAAE,CAAC0C,QAAQ,EAAET,QAAQ,CAAC,GAAGA,QAAQ,EAAE,GAAGjE,gBAAgB,CAAC3B,EAAE,EAAE6B,QAAQ,CAAC,CAAC;AAAA,EAAA,CAAA;EAExE,oBACEf,GAAA,CAACwF,kBAAkB,EAAA;IAAApG,QAAA,eACjBY,GAAA,CAACyF,oBAAoB,EAAA;MACnBC,OAAO,EAAA,IAAA;MACPZ,QAAQ,EAAEQ,eAAe,EAAG;AAC5BK,MAAAA,IAAI,EAAC,IAAI;AACTzB,MAAAA,SAAS,EAAE0B,UAAU,CACnB,kDAAkD,EAClD1B,SACF,CAAE;MAAA9E,QAAA,eAEFyG,IAAA,CAAC9G,kBAAkB,EAAA;AACXI,QAAAA,IAAI,EAAJA,IAAI;AAAE6E,QAAAA,OAAO,EAAPA,OAAO;AAAE9E,QAAAA,EAAE,EAAFA,EAAE;AACvB4G,QAAAA,eAAe,EAAC,QAAQ;QACxB,aAAA,EAAA,EAAA,CAAAtD,MAAA,CAAgB2C,gBAAgB,EAAA,WAAA,CAAY;AAC5CL,QAAAA,QAAQ,EAAEQ,eAAgB;AAAAlG,QAAAA,QAAA,gBAE1ByG,IAAA,CAAA,MAAA,EAAA;AACE3B,UAAAA,SAAS,EAAC,mCAAmC;UAC7C,aAAA,EAAA,EAAA,CAAA1B,MAAA,CAAgB2C,gBAAgB,EAAA,iBAAA,CAAkB;AAAA/F,UAAAA,QAAA,EAAA,CAEjD6E,KAAK,EACLc,GAAG,iBAAI/E,GAAA,CAAC+F,KAAK,EAAAjG,eAAA,CAAA,EAAA,EAAKiF,GAAG,CAAG,CAAC;SACtB,CAAC,eACP/E,GAAA,CAAA,MAAA,EAAA;AACEkE,UAAAA,SAAS,EAAC,kDAAkD;UAC5D,aAAA,EAAA,EAAA,CAAA1B,MAAA,CAAgB2C,gBAAgB,EAAA,iBAAA,CAAkB;UAAA/F,QAAA,EAEjDmF,eAAe,gBACdvE,GAAA,CAAA,KAAA,EAAA;AAAKkE,YAAAA,SAAS,EAAC;AAAiD,WAAE,CAAC,GAEnEmB,WAAW,CAAChB,KAAK;AAClB,SACG,CAAC;OACW;KACA;AAAC,GACL,CAAC;AAEzB;;;;;AC7DA,IAAM2B,aAAa,GAAG,SAAhBA,aAAaA,CAAAhH,IAAA,EAIb;AAAA,EAAA,IAAAiH,YAAA,GAAAjH,IAAA,CAHJkH,OAAO;IAAPA,OAAO,GAAAD,YAAA,KAAA,MAAA,GAAG;AAAEhC,MAAAA,KAAK,EAAE,EAAE;AAAEkC,MAAAA,KAAK,EAAE,EAAE;AAAEtC,MAAAA,kBAAkB,EAAE;AAAM,KAAC,GAAAoC,YAAA;IAC7DG,YAAY,GAAApH,IAAA,CAAZoH,YAAY;IAC2BpH,IAAA,CAAvCqH;AAEA,EAAA,IAAMC,OAAO,GAAGC,UAAU,EAAE;AAC5B,EAAA,IAAQtC,KAAK,GAA2BiC,OAAO,CAAvCjC,KAAK;IAAEkC,KAAK,GAAoBD,OAAO,CAAhCC,KAAK;AAAKK,IAAAA,UAAU,GAAAlH,wBAAA,CAAK4G,OAAO,EAAA3G,SAAA,CAAA;AAE/C,EAAA,IAAMkH,qBAAqB,GAAG,SAAxBA,qBAAqBA,CAAGC,CAAC,EAAI;IACjCA,CAAC,CAACC,eAAe,EAAE;AACnBC,IAAAA,eAAe,CAACN,OAAO,EAAEjG,iBAAiB,EAAEqG,CAAC,CAAC;EAChD,CAAC;AAED,EAAA,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAGC,QAAQ,EAAA;IAAA,oBAC1B9G,GAAA,CAAC+G,WAAW,EAAA;AAAC7C,MAAAA,SAAS,EAAC,OAAO;AAAA9E,MAAAA,QAAA,EAC3B0H,QAAQ,CAACE,MAAM,CAACvE,mBAAmB,CAAC,CAACwE,GAAG,CAAC,UAACC,OAAO,EAAEC,QAAQ,EAAA;QAAA,IAAAC,WAAA,EAAAC,YAAA;QAAA,oBAC1DrH,GAAA,CAACsH,QAAQ,EAAA;UAAAlI,QAAA,EACNwE,SAAS,CAACsD,OAAO,CAACf,KAAK,CAAC,gBACvBN,IAAA,CAAC0B,eAAe,EAAA;YAAAnI,QAAA,EAAA,cACdY,GAAA,CAACwH,iBAAiB,EAAA;cAAC9B,OAAO,EAAA,IAAA;AAACxB,cAAAA,SAAS,EAAC,aAAa;cAAA9E,QAAA,eAChDY,GAAA,CAACjB,kBAAkB,EAAA;gBACjBI,IAAI,EAAE+H,OAAO,CAAC/H,IAAK;AACnBD,gBAAAA,EAAE,EAAA,CAAAkI,WAAA,GAAEF,OAAO,CAAChI,EAAE,MAAA,IAAA,IAAAkI,WAAA,KAAA,MAAA,GAAAA,WAAA,GAAIF,OAAO,CAACO,IAAK;gBAC/BzD,OAAO,EAAEkD,OAAO,CAAClD,OAAQ;gBAAA5E,QAAA,EAExB8H,OAAO,CAACjD;eACS;AAAC,aACJ,CAAC,eACpBjE,GAAA,CAAC0H,cAAc,EAAA;AAAAtI,cAAAA,QAAA,EACZ8H,OAAO,CAACf,KAAK,CACXa,MAAM,CAACvE,mBAAmB,CAAC,CAC3BwE,GAAG,CAAC,UAACU,UAAU,EAAEC,WAAW,EAAA;AAAA,gBAAA,IAAAC,cAAA;gBAAA,oBAC3B7H,GAAA,CAAC+D,WAAW,EAAAjE,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAA,EAAA,EAED6H,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;kBACnBxI,IAAI,EAAEwI,UAAU,CAACxI,IAAK;kBACtB2F,QAAQ,EAAE6C,UAAU,CAAC7C,QAAS;AAC9B5F,kBAAAA,EAAE,EAAA,CAAA2I,cAAA,GAAEF,UAAU,CAACzI,EAAE,MAAA,IAAA,IAAA2I,cAAA,KAAA,MAAA,GAAAA,cAAA,GAAIF,UAAU,CAACF,IAAK;kBACrCzD,OAAO,EAAE2D,UAAU,CAAC3D;AAAQ,iBAAA,CAAA,EALvB4D,WAMN,CAAC;cAAA,CACH;AAAC,aACU,CAAC;AAAA,WACF,CAAC,gBAElB5H,GAAA,CAAC+D,WAAW,EAAAjE,aAAA,CAAAA,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAA,EAAA,EACDoH,OAAO,CAAA,CAAA,EAAA,EAAA,EAAA;YAChB/H,IAAI,EAAE+H,OAAO,CAAC/H,IAAK;YACnB2F,QAAQ,EAAEoC,OAAO,CAACpC,QAAS;AAC3B5F,YAAAA,EAAE,EAAA,CAAAmI,YAAA,GAAEH,OAAO,CAAChI,EAAE,MAAA,IAAA,IAAAmI,YAAA,KAAA,MAAA,GAAAA,YAAA,GAAIH,OAAO,CAACO,IAAK;YAC/BzD,OAAO,EAAEkD,OAAO,CAAClD;WAAQ,CAC1B;AACF,SAAA,EAnCYmD,QAoCL,CAAC;MAAA,CACZ;AAAC,KACS,CAAC;EAAA,CACf;EAED,oBACEtB,IAAA,CAACiC,YAAY,EAAA;AAAC,IAAA,aAAA,EAAY,yBAAyB;AAAA1I,IAAAA,QAAA,gBACjDyG,IAAA,CAACkC,iBAAiB,EAAAjI,aAAA,CAAAA,aAAA,CAAA;AAChBoE,MAAAA,SAAS,EAAC,iIAAiI;AAC3IF,MAAAA,OAAO,EAAEoC;KAAa,EAAAtG,aAAA,CAAA,EAAA,EACbkI,IAAI,CAAC,CAAC,MAAM,EAAE,oBAAoB,CAAC,EAAExB,UAAU,CAAC,CAAA,CAAA,EAAA,EAAA,EAAA;MAAApH,QAAA,EAAA,cAEzDY,GAAA,CAACiI,KAAI,EAAA;AACH/D,QAAAA,SAAS,EAAC,gCAAgC;AAC1C,QAAA,aAAA,EAAA,EAAA,CAAA1B,MAAA,CAAgB0F,SAAS,CAACjE,KAAK,CAAC,EAAA,iBAAA,CAAkB;AAClDD,QAAAA,OAAO,EAAEyC;OACV,CAAC,eACFzG,GAAA,CAAA,MAAA,EAAA;AAAMkE,QAAAA,SAAS,EAAC,4BAA4B;AAAA9E,QAAAA,QAAA,EAAC;OAAO,CAAC,eACrDY,GAAA,CAAA,MAAA,EAAA;AAAAZ,QAAAA,QAAA,EAAO6E;AAAK,OAAO,CAAC;AAAA,KAAA,CACH,CAAC,eACpBjE,GAAA,CAACmI,mBAAmB,EAAA;AAAA/I,MAAAA,QAAA,EAAE+G,KAAK,IAAIU,WAAW,CAACV,KAAK;AAAC,KAAsB,CAAC;AAAA,GAC5D,CAAC;AAEnB;;;;","x_google_ignoreList":[0]}
package/dist/Sidebar.js CHANGED
@@ -3,7 +3,6 @@ import { memo, useState, Fragment, useRef, useEffect, useMemo } from 'react';
3
3
  import classnames from 'classnames';
4
4
  import { capitalize, isPresent, isNotEmpty, hyphenate, isNot } from '@bigbinary/neeto-cist';
5
5
  import useLocalStorage from '@bigbinary/neeto-commons-frontend/react-utils/useLocalStorage';
6
- import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
7
6
  import Button from '@bigbinary/neetoui/Button';
8
7
  import Typography from '@bigbinary/neetoui/Typography';
9
8
  import { is, append, not, findLast } from 'ramda';
@@ -528,7 +527,7 @@ var Sidebar = function Sidebar(_ref) {
528
527
  location: location
529
528
  });
530
529
  if (configureNavLink !== null && configureNavLink !== void 0 && configureNavLink.to) {
531
- history.push(buildUrl(configureNavLink.to));
530
+ history.push(configureNavLink.to);
532
531
  }
533
532
  };
534
533
  var activeLink = useMemo(function () {
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/AddDropdown.jsx","../src/components/Sidebar/Components/Links/PinIcon.jsx","../src/components/Sidebar/Components/Links/UnpinIcon.jsx","../src/components/Sidebar/Components/Links/MoreDropdown.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/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\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-testid=\"sidebar-info\"\n >\n <Link\n to={DEFAULT_HOME_PATH}\n className={classnames(\n \"neeto-molecules-sidebar__logo neeto-ui-w-full\",\n { \"cursor-pointer\": isOnboarded },\n { \"pointer-events-none\": !isOnboarded }\n )}\n onClick={clearSettingsNav}\n >\n {globalProps.sidebarTitle ? (\n <span className=\"neeto-molecules-sidebar__title\">\n {globalProps.sidebarTitle}\n </span>\n ) : (\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n )}\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Plus } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst AddDropdown = ({ addActions }) => (\n <Dropdown\n closeOnSelect\n position=\"bottom-end\"\n customTarget={() => (\n <span\n className=\"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\"\n data-testid=\"add-dropdown-trigger\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n >\n <Plus size={16} />\n </span>\n )}\n >\n <Dropdown.Menu>\n {addActions.map(action => (\n <Dropdown.MenuItem.Button\n key={action.key}\n onClick={e => {\n e.preventDefault();\n action.onClick?.(e);\n }}\n >\n {action.label}\n </Dropdown.MenuItem.Button>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n);\n\nexport default AddDropdown;\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","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Typography, Dropdown, Button, Tag } from \"neetoui\";\nimport { is } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink.jsx\";\nimport PinIcon from \"./PinIcon.jsx\";\nimport UnpinIcon from \"./UnpinIcon.jsx\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst MoreDropdown = ({ moreNavLinks, isNavLinkPinned, handleTogglePin }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n <Dropdown\n {...{ isOpen }}\n closeOnSelect\n appendTo={() => document.body}\n position=\"right\"\n strategy=\"fixed\"\n zIndex={99999}\n customTarget={() => (\n <div\n data-testid=\"more-nav-links-dropdown-button\"\n className={classnames(\n \"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link neeto-ui-w-full neeto-ui-cursor-pointer\",\n { \"neeto-molecules-sidebar__link--hover-active\": isOpen }\n )}\n onClick={() => setIsOpen(!isOpen)}\n >\n <span className=\"neeto-molecules-sidebar__link-icon\">\n <MenuHorizontal />\n </span>\n <Typography\n className=\"neeto-molecules-sidebar__link-label\"\n component=\"span\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.sidebar.more\")}\n </Typography>\n </div>\n )}\n onClickOutside={() => setIsOpen(false)}\n onClose={() => setIsOpen(false)}\n >\n <Dropdown.Menu\n className=\"p-0\"\n data-testid=\"more-nav-links-dropdown-menu\"\n position=\"right\"\n strategy=\"fixed\"\n >\n {moreNavLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n icon,\n key: navLinkKey,\n to,\n onClick,\n tag,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const isPinned = isNavLinkPinned(navLink);\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 return (\n <Dropdown.MenuItem data-testid={label} key={navLinkKey || index}>\n <CheckPointNavLinks\n {...{ onClick, to }}\n className={classnames(\n \"flex cursor-pointer items-center justify-between gap-2 px-2 py-1\",\n { \"neeto-ui-bg-accent-100 font-semibold\": isActive() }\n )}\n >\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {icon && <IconSVG className=\"flex-shrink-0\" size={20} />}\n <Typography\n className=\"flex min-w-0 flex-grow items-center gap-2\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n {tag && <Tag {...tag} />}\n </Typography>\n </span>\n <Button\n className=\"flex-shrink-0\"\n data-testid=\"pin-button\"\n size=\"small\"\n style=\"text\"\n icon={\n isPinned\n ? () => <UnpinIcon otherProps={{}} size={16} />\n : () => <PinIcon otherProps={{}} size={16} />\n }\n tooltipProps={{\n content: isPinned\n ? t(\"neetoMolecules.sidebar.unpin\")\n : t(\"neetoMolecules.sidebar.pin\"),\n position: \"right\",\n }}\n onClick={event => handleTogglePin(navLink, event)}\n />\n </CheckPointNavLinks>\n </Dropdown.MenuItem>\n );\n })}\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default MoreDropdown;\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isNot, hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Right } from \"neetoicons\";\nimport { Typography, Tag } from \"neetoui\";\nimport { append, is } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport AddDropdown from \"./AddDropdown\";\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\nimport MoreDropdown from \"./MoreDropdown\";\n\nimport { PINNED_MORE_NAV_LINKS_KEY } from \"../../constants\";\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\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 <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {combinedNavLinks.filter(filterByPermissions).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 <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\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\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-2\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n {tag && <Tag {...tag} />}\n </Typography>\n {isNotEmpty(addActions) && <AddDropdown {...{ addActions }} />}\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n onClick={handleCaretClick}\n >\n <Right size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n {isNotEmpty(moreNavLinks) && (\n <MoreDropdown {...{ handleTogglePin, isNavLinkPinned, moreNavLinks }} />\n )}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\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 \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n enableDraggingStyles,\n disableDraggingStyles,\n} from \"./utils\";\n\nimport useKeyboardShortcutsPaneState from \"../KeyboardShortcuts/hooks/useKeyboardShortcutsPaneState\";\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 [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\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 [sidebarWidth, setSidebarWidth] = useLocalStorage(\n SIDEBAR_WIDTH_KEY,\n `${DEFAULT_SIDEBAR_WIDTH}px`\n );\n\n const sidebarRef = useRef(null);\n const isMouseDownRef = 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 isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (isKeyboardShortcutsPaneOpen) {\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n } else if (!isKeyboardShortcutsPaneOpen && isLargerScreen()) {\n setIsSidebarPaneOpen(true);\n setIsSidebarCollapsed(false);\n }\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 }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n useEffect(() => {\n if (!isExpandable) return undefined;\n\n const handle = document.querySelector(\n \".neeto-molecules-sidebar__resize-handle\"\n );\n\n if (!handle) return undefined;\n\n const onMouseDown = e => {\n isMouseDownRef.current = true;\n startXRef.current = e.clientX;\n startWidthRef.current =\n sidebarRef.current?.getBoundingClientRect().width ||\n DEFAULT_SIDEBAR_WIDTH;\n\n enableDraggingStyles();\n };\n\n const onMouseMove = e => {\n if (!isMouseDownRef.current) return;\n\n const dx = e.clientX - startXRef.current;\n let newWidth = startWidthRef.current + dx;\n\n newWidth = Math.max(\n MIN_SIDEBAR_WIDTH,\n Math.min(newWidth, MAX_SIDEBAR_WIDTH)\n );\n\n setSidebarWidth(`${newWidth}px`);\n };\n\n const onMouseUp = () => {\n if (!isMouseDownRef.current) return;\n\n isMouseDownRef.current = false;\n disableDraggingStyles();\n };\n\n handle.addEventListener(\"mousedown\", onMouseDown);\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseUp);\n\n return () => {\n handle.removeEventListener(\"mousedown\", onMouseDown);\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n }, [isExpandable]);\n\n useEffect(() => {\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n `${parseInt(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(buildUrl(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 <>\n <div\n data-testid=\"sidebar-container\"\n ref={sidebarRef}\n style={{ width: isSidebarCollapsed ? \"0\" : sidebarWidth }}\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-testid=\"sidebar-wrapper\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography\n className=\"neeto-ui-mb-1\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links\n {...{\n isCountsLoading,\n moreNavLinks,\n navLinks,\n setSelectedNavLinkRoute,\n }}\n />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-testid=\"neeto-molecules-sidebar-toggler\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n {isExpandable && (\n <div className=\"neeto-molecules-sidebar__resize-handle\" />\n )}\n </>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\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 /**\n * To specify the navlinks to be shown in the dropdown which opens up on clicking More option in sidebar.\n */\n moreNavLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\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 /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n /**\n * Boolean to determine whether the sidebar should be expandable.\n */\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","AddDropdown","addActions","Dropdown","closeOnSelect","position","customTarget","e","preventDefault","stopPropagation","Plus","size","Menu","map","action","MenuItem","Button","_action$onClick","call","label","key","PinIcon","otherProps","_objectSpread","fill","height","viewBox","width","xmlns","d","UnpinIcon","MoreDropdown","moreNavLinks","isNavLinkPinned","handleTogglePin","_useTranslation","useTranslation","t","location","useLocation","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","appendTo","document","body","strategy","zIndex","_jsxs","MenuHorizontal","Typography","component","style","onClickOutside","onClose","filter","filterByPermissions","navLink","index","icon","navLinkKey","tag","_objectWithoutProperties","_excluded","IconSVG","isPinned","url","URL","window","href","isActive","is","Function","pathname","startsWith","CheckPointNavLinks","Tag","tooltipProps","content","event","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","expandedNavLinkKeys","setExpandedNavLinkKeys","_useLocalStorage","useLocalStorage","PINNED_MORE_NAV_LINKS_KEY","_useLocalStorage2","pinnedNavLinks","setPinnedNavLinks","handleNavLinkClick","_ref2","isExpandable","isPresent","items","isConfigureNavLink","isNotEmpty","isExpanded","includes","resetPath","isNot","_toConsumableArray","pinnedItems","activeMoreNavLink","find","search","additionalItems","push","combinedNavLinks","_navLink$isCountsLoad","_navLink$count","Component","_navLink$addActions","isMenuExpanded","handleCaretClick","keys","append","Fragment","activeClassName","hyphenate","Right","_Fragment","Items","Sidebar","_ref$moreNavLinks","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","_ref$isExpandable","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isKeyboardShortcutsPaneOpen","isSidebarPaneOpen","setIsSidebarPaneOpen","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","_useLocalStorage5","SIDEBAR_WIDTH_KEY","DEFAULT_SIDEBAR_WIDTH","_useLocalStorage6","sidebarWidth","setSidebarWidth","sidebarRef","useRef","isMouseDownRef","startXRef","startWidthRef","history","useHistory","isLargerScreen","innerWidth","isSidebarClosed","not","useEffect","currentLink","findLast","handleResize","addEventListener","removeEventListener","undefined","handle","querySelector","onMouseDown","_sidebarRef$current","current","clientX","getBoundingClientRect","enableDraggingStyles","onMouseMove","dx","newWidth","Math","max","MIN_SIDEBAR_WIDTH","min","MAX_SIDEBAR_WIDTH","onMouseUp","disableDraggingStyles","documentElement","setProperty","parseInt","handleGoBack","configureNavLink","getActiveConfigurePageLink","buildUrl","activeLink","useMemo","link","isSelectedNavLinkVisible","ref","weight","organization","name","SelectedLink","Chevron","touch"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAWA,IAAMA,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAyC;AAAA,EAAA,IAAAC,qBAAA;AAAA,EAAA,IAAnCC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAEC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;EAC5C,IAAMC,WAAW,GAAGC,aAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC;AACjD,EAAA,IAAMC,cAAc,GAAG,CAACJ,WAAW,IAAI,EAAE,EAAEK,IAAI,EAAE,CAACC,WAAW,EAAE;AAC/D,EAAA,IAAMC,WAAW,GAAGC,iBAAiB,CAACJ,cAAc,CAAC;AACrD,EAAA,IAAMK,QAAQ,GAAGF,WAAW,GAAA,OAAA,CAAAG,MAAA,CAChBH,WAAW,CAAA,GAAA,OAAA,CAAAG,MAAA,CACXC,UAAU,CAACP,cAAc,CAAC,CAAE;AACxC,EAAA,IAAMQ,mBAAmB,GAAA,CAAAf,qBAAA,GAAGgB,QAAoB,CAACJ,QAAQ,CAAC,MAAA,IAAA,IAAAZ,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAIiB,KAAK;EACnE,IAAMC,aAAa,GAAGjB,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAA,MAAA,GAAVA,UAAU,GAAIc,mBAAmB;EACvD,IAAMI,WAAW,GAAGf,aAAW,CAACgB,IAAI,CAACD,WAAW,KAAK,KAAK;AAE1D,EAAA,oBACEE,GAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,wEAAwE;AAClF,IAAA,aAAA,EAAY,cAAc;IAAAC,QAAA,eAE1BF,GAAA,CAACG,IAAI,EAAA;AACHC,MAAAA,EAAE,EAAEC,iBAAkB;AACtBJ,MAAAA,SAAS,EAAEK,UAAU,CACnB,+CAA+C,EAC/C;AAAE,QAAA,gBAAgB,EAAER;AAAY,OAAC,EACjC;AAAE,QAAA,qBAAqB,EAAE,CAACA;AAAY,OACxC,CAAE;AACFS,MAAAA,OAAO,EAAE1B,gBAAiB;AAAAqB,MAAAA,QAAA,EAEzBnB,aAAW,CAACyB,YAAY,gBACvBR,GAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC,gCAAgC;QAAAC,QAAA,EAC7CnB,aAAW,CAACyB;AAAY,OACrB,CAAC,gBAEPR,GAAA,CAACH,aAAa,EAAA;QACZI,SAAS,EAAEK,UAAU,CAAC;AACpB,UAAA,+BAA+B,EAAE,CAAC1B;SACnC;OACF;KAEC;AAAC,GACJ,CAAC;AAEV,CAAC;AAED,eAAA,aAAe6B,IAAI,CAAChC,MAAM,CAAC;;ACjD3B,IAAMiC,WAAW,GAAG,SAAdA,WAAWA,CAAAhC,IAAA,EAAA;AAAA,EAAA,IAAMiC,UAAU,GAAAjC,IAAA,CAAViC,UAAU;EAAA,oBAC/BX,GAAA,CAACY,QAAQ,EAAA;IACPC,aAAa,EAAA,IAAA;AACbC,IAAAA,QAAQ,EAAC,YAAY;IACrBC,YAAY,EAAE,SAAdA,YAAYA,GAAA;AAAA,MAAA,oBACVf,GAAA,CAAA,MAAA,EAAA;AACEC,QAAAA,SAAS,EAAC,8EAA8E;AACxF,QAAA,aAAA,EAAY,sBAAsB;AAClCM,QAAAA,OAAO,EAAE,SAATA,OAAOA,CAAES,CAAC,EAAI;UACZA,CAAC,CAACC,cAAc,EAAE;UAClBD,CAAC,CAACE,eAAe,EAAE;QACrB,CAAE;QAAAhB,QAAA,eAEFF,GAAA,CAACmB,IAAI,EAAA;AAACC,UAAAA,IAAI,EAAE;SAAK;AAAC,OACd,CAAC;IAAA,CACP;AAAAlB,IAAAA,QAAA,eAEFF,GAAA,CAACY,QAAQ,CAACS,IAAI,EAAA;AAAAnB,MAAAA,QAAA,EACXS,UAAU,CAACW,GAAG,CAAC,UAAAC,MAAM,EAAA;AAAA,QAAA,oBACpBvB,GAAA,CAACY,QAAQ,CAACY,QAAQ,CAACC,MAAM,EAAA;AAEvBlB,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAES,CAAC,EAAI;AAAA,YAAA,IAAAU,eAAA;YACZV,CAAC,CAACC,cAAc,EAAE;AAClB,YAAA,CAAAS,eAAA,GAAAH,MAAM,CAAChB,OAAO,MAAA,IAAA,IAAAmB,eAAA,KAAA,MAAA,IAAdA,eAAA,CAAAC,IAAA,CAAAJ,MAAM,EAAWP,CAAC,CAAC;UACrB,CAAE;UAAAd,QAAA,EAEDqB,MAAM,CAACK;SAAK,EANRL,MAAM,CAACM,GAOY,CAAC;MAAA,CAC5B;KACY;AAAC,GACR,CAAC;AAAA,CACZ;;;;AClCD,IAAMC,OAAO,GAAG,SAAVA,OAAOA,CAAApD,IAAA,EAAA;AAAA,EAAA,IAAM0C,IAAI,GAAA1C,IAAA,CAAJ0C,IAAI;IAAEW,UAAU,GAAArD,IAAA,CAAVqD,UAAU;AAAA,EAAA,oBACjC/B,GAAA,CAAA,KAAA,EAAAgC,eAAA,CAAAA,eAAA,CAAA;AACEC,IAAAA,IAAI,EAAC,cAAc;AACnBC,IAAAA,MAAM,EAAEd,IAAK;AACbe,IAAAA,OAAO,EAAC,gBAAgB;AACxBC,IAAAA,KAAK,EAAEhB,IAAK;AACZiB,IAAAA,KAAK,EAAC;AAA4B,GAAA,EAC9BN,UAAU,CAAA,EAAA,EAAA,EAAA;AAAA7B,IAAAA,QAAA,eAEdF,GAAA,CAAA,MAAA,EAAA;AAAMsC,MAAAA,CAAC,EAAC;KAA6H;AAAC,GAAA,CACnI,CAAC;AAAA,CACP;;;;ACXD,IAAMC,SAAS,GAAG,SAAZA,SAASA,CAAA7D,IAAA,EAAA;AAAA,EAAA,IAAM0C,IAAI,GAAA1C,IAAA,CAAJ0C,IAAI;IAAEW,UAAU,GAAArD,IAAA,CAAVqD,UAAU;AAAA,EAAA,oBACnC/B,GAAA,CAAA,KAAA,EAAAgC,eAAA,CAAAA,eAAA,CAAA;AACEC,IAAAA,IAAI,EAAC,cAAc;AACnBC,IAAAA,MAAM,EAAEd,IAAK;AACbe,IAAAA,OAAO,EAAC,gBAAgB;AACxBC,IAAAA,KAAK,EAAEhB,IAAK;AACZiB,IAAAA,KAAK,EAAC;AAA4B,GAAA,EAC9BN,UAAU,CAAA,EAAA,EAAA,EAAA;AAAA7B,IAAAA,QAAA,eAEdF,GAAA,CAAA,MAAA,EAAA;AAAMsC,MAAAA,CAAC,EAAC;KAAsF;AAAC,GAAA,CAC5F,CAAC;AAAA,CACP;;;;;ACID,IAAME,YAAY,GAAG,SAAfA,YAAYA,CAAA9D,IAAA,EAA2D;AAAA,EAAA,IAArD+D,YAAY,GAAA/D,IAAA,CAAZ+D,YAAY;IAAEC,eAAe,GAAAhE,IAAA,CAAfgE,eAAe;IAAEC,eAAe,GAAAjE,IAAA,CAAfiE,eAAe;AACpE,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AACT,EAAA,IAAMC,QAAQ,GAAGC,WAAW,EAAE;AAC9B,EAAA,IAAAC,SAAA,GAA4BC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAApCI,IAAAA,MAAM,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,SAAS,GAAAH,UAAA,CAAA,CAAA,CAAA;EAExB,oBACEnD,GAAA,CAACY,QAAQ,EAAA;AACDyC,IAAAA,MAAM,EAANA,MAAM;IACZxC,aAAa,EAAA,IAAA;IACb0C,QAAQ,EAAE,SAAVA,QAAQA,GAAA;MAAA,OAAQC,QAAQ,CAACC,IAAI;IAAA,CAAC;AAC9B3C,IAAAA,QAAQ,EAAC,OAAO;AAChB4C,IAAAA,QAAQ,EAAC,OAAO;AAChBC,IAAAA,MAAM,EAAE,KAAM;IACd5C,YAAY,EAAE,SAAdA,YAAYA,GAAA;AAAA,MAAA,oBACV6C,IAAA,CAAA,KAAA,EAAA;AACE,QAAA,aAAA,EAAY,gCAAgC;AAC5C3D,QAAAA,SAAS,EAAEK,UAAU,CACnB,sJAAsJ,EACtJ;AAAE,UAAA,6CAA6C,EAAE+C;AAAO,SAC1D,CAAE;QACF9C,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,UAAA,OAAQ+C,SAAS,CAAC,CAACD,MAAM,CAAC;QAAA,CAAC;AAAAnD,QAAAA,QAAA,gBAElCF,GAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,oCAAoC;AAAAC,UAAAA,QAAA,eAClDF,GAAA,CAAC6D,cAAc,EAAA,EAAE;AAAC,SACd,CAAC,eACP7D,GAAA,CAAC8D,UAAU,EAAA;AACT7D,UAAAA,SAAS,EAAC,qCAAqC;AAC/C8D,UAAAA,SAAS,EAAC,MAAM;AAChBC,UAAAA,KAAK,EAAC,OAAO;UAAA9D,QAAA,EAEZ4C,CAAC,CAAC,6BAA6B;AAAC,SACvB,CAAC;AAAA,OACV,CAAC;IAAA,CACN;IACFmB,cAAc,EAAE,SAAhBA,cAAcA,GAAA;MAAA,OAAQX,SAAS,CAAC,KAAK,CAAC;IAAA,CAAC;IACvCY,OAAO,EAAE,SAATA,OAAOA,GAAA;MAAA,OAAQZ,SAAS,CAAC,KAAK,CAAC;IAAA,CAAC;AAAApD,IAAAA,QAAA,eAEhCF,GAAA,CAACY,QAAQ,CAACS,IAAI,EAAA;AACZpB,MAAAA,SAAS,EAAC,KAAK;AACf,MAAA,aAAA,EAAY,8BAA8B;AAC1Ca,MAAAA,QAAQ,EAAC,OAAO;AAChB4C,MAAAA,QAAQ,EAAC,OAAO;AAAAxD,MAAAA,QAAA,EAEfuC,YAAY,CAAC0B,MAAM,CAACC,mBAAmB,CAAC,CAAC9C,GAAG,CAAC,UAAC+C,OAAO,EAAEC,KAAK,EAAK;AAChE,QAAA,IACE1C,KAAK,GAOHyC,OAAO,CAPTzC,KAAK;UACL2C,IAAI,GAMFF,OAAO,CANTE,IAAI;UACCC,UAAU,GAKbH,OAAO,CALTxC,GAAG;UACHzB,EAAE,GAIAiE,OAAO,CAJTjE,EAAE;UACFG,OAAO,GAGL8D,OAAO,CAHT9D,OAAO;UACPkE,GAAG,GAEDJ,OAAO,CAFTI,GAAG;AACA1C,UAAAA,UAAU,GAAA2C,wBAAA,CACXL,OAAO,EAAAM,WAAA,CAAA;QACX,IAAMC,OAAO,GAAGL,IAAI;AACpB,QAAA,IAAMM,QAAQ,GAAGnC,eAAe,CAAC2B,OAAO,CAAC;AACzC,QAAA,IAAMS,GAAG,GAAG,IAAIC,GAAG,CAAC3E,EAAE,EAAE4E,MAAM,CAACjC,QAAQ,CAACkC,IAAI,CAAC;AAC7C,QAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,GAAA;UAAA,OACZC,EAAE,CAACC,QAAQ,EAAErD,UAAU,CAACmD,QAAQ,CAAC,GAC7BnD,UAAU,CAACmD,QAAQ,EAAE,GACrBnC,QAAQ,CAACsC,QAAQ,CAACC,UAAU,CAACR,GAAG,CAACO,QAAQ,CAAC;AAAA,QAAA,CAAA;AAEhD,QAAA,oBACErF,GAAA,CAACY,QAAQ,CAACY,QAAQ,EAAA;AAAC,UAAA,aAAA,EAAaI,KAAM;UAAA1B,QAAA,eACpC0D,IAAA,CAAC2B,kBAAkB,EAAA;AACXhF,YAAAA,OAAO,EAAPA,OAAO;AAAEH,YAAAA,EAAE,EAAFA,EAAE;AACjBH,YAAAA,SAAS,EAAEK,UAAU,CACnB,kEAAkE,EAClE;cAAE,sCAAsC,EAAE4E,QAAQ;AAAG,aACvD,CAAE;AAAAhF,YAAAA,QAAA,gBAEF0D,IAAA,CAAA,MAAA,EAAA;AAAM3D,cAAAA,SAAS,EAAC,2CAA2C;AAAAC,cAAAA,QAAA,EAAA,CACxDqE,IAAI,iBAAIvE,GAAA,CAAC4E,OAAO,EAAA;AAAC3E,gBAAAA,SAAS,EAAC,eAAe;AAACmB,gBAAAA,IAAI,EAAE;AAAG,eAAE,CAAC,eACxDwC,IAAA,CAACE,UAAU,EAAA;AACT7D,gBAAAA,SAAS,EAAC,2CAA2C;AACrD8D,gBAAAA,SAAS,EAAC,MAAM;AAChBC,gBAAAA,KAAK,EAAC,OAAO;AAAA9D,gBAAAA,QAAA,EAAA,CAEZ0B,KAAK,EACL6C,GAAG,iBAAIzE,GAAA,CAACwF,GAAG,EAAAxD,eAAA,CAAA,EAAA,EAAKyC,GAAG,CAAG,CAAC;AAAA,eACd,CAAC;AAAA,aACT,CAAC,eACPzE,GAAA,CAACyB,MAAM,EAAA;AACLxB,cAAAA,SAAS,EAAC,eAAe;AACzB,cAAA,aAAA,EAAY,YAAY;AACxBmB,cAAAA,IAAI,EAAC,OAAO;AACZ4C,cAAAA,KAAK,EAAC,MAAM;cACZO,IAAI,EACFM,QAAQ,GACJ,YAAA;gBAAA,oBAAM7E,GAAA,CAACuC,SAAS,EAAA;kBAACR,UAAU,EAAE,EAAG;AAACX,kBAAAA,IAAI,EAAE;AAAG,iBAAE,CAAC;cAAA,CAAA,GAC7C,YAAA;gBAAA,oBAAMpB,GAAA,CAAC8B,OAAO,EAAA;kBAACC,UAAU,EAAE,EAAG;AAACX,kBAAAA,IAAI,EAAE;AAAG,iBAAE,CAAC;cAAA,CAChD;AACDqE,cAAAA,YAAY,EAAE;gBACZC,OAAO,EAAEb,QAAQ,GACb/B,CAAC,CAAC,8BAA8B,CAAC,GACjCA,CAAC,CAAC,4BAA4B,CAAC;AACnChC,gBAAAA,QAAQ,EAAE;eACV;AACFP,cAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEoF,KAAK,EAAA;AAAA,gBAAA,OAAIhD,eAAe,CAAC0B,OAAO,EAAEsB,KAAK,CAAC;AAAA,cAAA;AAAC,aACnD,CAAC;WACgB;SAAC,EArCqBnB,UAAU,IAAIF,KAsCvC,CAAC;MAExB,CAAC;KACY;AAAC,GACR,CAAC;AAEf,CAAC;;;;;ACvGD,IAAMsB,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK;AAAA,CAAC;AAE3D,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAApH,IAAA,EAKL;AAAA,EAAA,IAJJqH,QAAQ,GAAArH,IAAA,CAARqH,QAAQ;IACRtD,YAAY,GAAA/D,IAAA,CAAZ+D,YAAY;IACKuD,yBAAyB,GAAAtH,IAAA,CAA1CuH,eAAe;IACfC,uBAAuB,GAAAxH,IAAA,CAAvBwH,uBAAuB;AAEvB,EAAA,IAAMnD,QAAQ,GAAGC,WAAW,EAAE;AAC9B,EAAA,IAAAC,SAAA,GAAsDC,QAAQ,CAAC,EAAE,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA3DkD,IAAAA,mBAAmB,GAAAhD,UAAA,CAAA,CAAA,CAAA;AAAEiD,IAAAA,sBAAsB,GAAAjD,UAAA,CAAA,CAAA,CAAA;AAClD,EAAA,IAAAkD,gBAAA,GAA4CC,eAAe,CACzDC,yBAAyB,EACzB,EACF,CAAC;IAAAC,iBAAA,GAAApD,cAAA,CAAAiD,gBAAA,EAAA,CAAA,CAAA;AAHMI,IAAAA,cAAc,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,iBAAiB,GAAAF,iBAAA,CAAA,CAAA,CAAA;AAKxC,EAAA,IAAMG,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAAqC;AAAA,IAAA,IAA/BjB,KAAK,GAAAiB,KAAA,CAALjB,KAAK;MAAET,QAAQ,GAAA0B,KAAA,CAAR1B,QAAQ;MAAEb,OAAO,GAAAuC,KAAA,CAAPvC,OAAO;AACpD,IAAA,IAAMwC,YAAY,GAChBC,SAAS,CAACzC,OAAO,CAAC0C,KAAK,CAAC,IAAID,SAAS,CAACzC,OAAO,CAACN,SAAS,CAAC;IAC1D,IAAI,CAAC8C,YAAY,EAAE;MACjBT,sBAAsB,CAAC,EAAE,CAAC;AAE1B,MAAA;AACF,IAAA;IAEA,IAAI/B,OAAO,CAAC2C,kBAAkB,IAAIC,UAAU,CAAC5C,OAAO,CAAC0C,KAAK,CAAC,EAAE;AAC3Db,MAAAA,uBAAuB,CAAC7B,OAAO,CAACjE,EAAE,CAAC;AACrC,IAAA;IAEA,IAAMoE,UAAU,GAAGH,OAAO,CAACxC,GAAG,IAAIwC,OAAO,CAACjE,EAAE;IAC5C,IAAI8E,QAAQ,EAAE,EAAE;AACd,MAAA,IAAMgC,UAAU,GAAGf,mBAAmB,CAACgB,QAAQ,CAAC3C,UAAU,CAAC;MAC3D4B,sBAAsB,CAACc,UAAU,GAAG,EAAE,GAAG,CAAC1C,UAAU,CAAC,CAAC;MACtDH,OAAO,CAAC+C,SAAS,KAAK,IAAI,IAAIzB,KAAK,CAAC1E,cAAc,EAAE;AAEpD,MAAA;AACF,IAAA;AAEAmF,IAAAA,sBAAsB,CAAC,CAAC5B,UAAU,CAAC,CAAC;EACtC,CAAC;EAED,IAAM7B,eAAe,GAAG,SAAlBA,eAAeA,CAAI0B,OAAO,EAAEsB,KAAK,EAAK;IAC1CA,KAAK,CAAC1E,cAAc,EAAE;IACtB0E,KAAK,CAACzE,eAAe,EAAE;IACvB,IAAMsD,UAAU,GAAGH,OAAO,CAACxC,GAAG,IAAIwC,OAAO,CAACjE,EAAE;AAC5C,IAAA,IAAMyE,QAAQ,GAAG4B,cAAc,CAACU,QAAQ,CAAC3C,UAAU,CAAC;AAEpD,IAAA,IAAIK,QAAQ,EAAE;MACZ6B,iBAAiB,CAACD,cAAc,CAACtC,MAAM,CAACkD,KAAK,CAAC7C,UAAU,CAAC,CAAC,CAAC;AAC7D,IAAA,CAAC,MAAM;MACLkC,iBAAiB,CAAA,EAAA,CAAAlH,MAAA,CAAA8H,kBAAA,CAAKb,cAAc,CAAA,EAAA,CAAEjC,UAAU,CAAA,CAAC,CAAC;AACpD,IAAA;EACF,CAAC;AAED,EAAA,IAAM9B,eAAe,GAAG,SAAlBA,eAAeA,CAAG2B,OAAO,EAAI;AACjC,IAAA,IAAI,CAACA,OAAO,EAAE,OAAO,KAAK;IAC1B,IAAMG,UAAU,GAAGH,OAAO,CAACxC,GAAG,IAAIwC,OAAO,CAACjE,EAAE;AAE5C,IAAA,OAAOqG,cAAc,CAACU,QAAQ,CAAC3C,UAAU,CAAC;EAC5C,CAAC;EAED,IAAM+C,WAAW,GAAG9E,YAAY,GAAGA,YAAY,CAAC0B,MAAM,CAACzB,eAAe,CAAC,GAAG,EAAE;EAE5E,IAAM8E,iBAAiB,GAAG/E,YAAY,GAClCA,YAAY,CAACgF,IAAI,CACf,UAAApD,OAAO,EAAA;AAAA,IAAA,OACLA,OAAO,IACP,CAACtB,QAAQ,CAACsC,QAAQ,GAAGtC,QAAQ,CAAC2E,MAAM,EAAEpC,UAAU,CAACjB,OAAO,CAACjE,EAAE,CAAC;EAAA,CAChE,CAAC,GACD,IAAI;AAER,EAAA,IAAMuH,eAAe,GAAAL,kBAAA,CAAOC,WAAW,CAAC;AAExC,EAAA,IAAIC,iBAAiB,IAAI,CAAC9E,eAAe,CAAC8E,iBAAiB,CAAC,EAAE;AAC5DG,IAAAA,eAAe,CAACC,IAAI,CAACJ,iBAAiB,CAAC;AACzC,EAAA;EAEA,IAAMK,gBAAgB,GAAA,EAAA,CAAArI,MAAA,CAAA8H,kBAAA,CAAOvB,QAAQ,CAAA,EAAAuB,kBAAA,CAAKK,eAAe,CAAA,CAAC;AAE1D,EAAA,oBACE/D,IAAA,CAAA,KAAA,EAAA;AAAK3D,IAAAA,SAAS,EAAC,uEAAuE;AAAAC,IAAAA,QAAA,EAAA,CACnF2H,gBAAgB,CAAC1D,MAAM,CAACC,mBAAmB,CAAC,CAAC9C,GAAG,CAAC,UAAC+C,OAAO,EAAEC,KAAK,EAAK;AACpE,MAAA,IACE1C,KAAK,GAYHyC,OAAO,CAZTzC,KAAK;QACLxB,EAAE,GAWAiE,OAAO,CAXTjE,EAAE;QACFmE,IAAI,GAUFF,OAAO,CAVTE,IAAI;QACJwC,KAAK,GASH1C,OAAO,CATT0C,KAAK;QACLC,kBAAkB,GAQhB3C,OAAO,CART2C,kBAAkB;QAAAc,qBAAA,GAQhBzD,OAAO,CAPT4B,eAAe;AAAfA,QAAAA,eAAe,GAAA6B,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;QAAAC,cAAA,GAOrB1D,OAAO,CANTwB,KAAK;AAALA,QAAAA,KAAK,GAAAkC,cAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,cAAA;QACDC,SAAS,GAKlB3D,OAAO,CALTN,SAAS;QACTxD,QAAO,GAIL8D,OAAO,CAJT9D,OAAO;QAAA0H,mBAAA,GAIL5D,OAAO,CAHT1D,UAAU;AAAVA,QAAAA,UAAU,GAAAsH,mBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,mBAAA;QACfxD,GAAG,GAEDJ,OAAO,CAFTI,GAAG;AACA1C,QAAAA,UAAU,GAAA2C,wBAAA,CACXL,OAAO,EAAAM,SAAA,CAAA;MACX,IAAMC,OAAO,GAAGL,IAAI;AACpB,MAAA,IAAMO,GAAG,GAAG,IAAIC,GAAG,CAAC3E,EAAE,EAAE4E,MAAM,CAACjC,QAAQ,CAACkC,IAAI,CAAC;AAC7C,MAAA,IAAMC,QAAQ,GAAG,SAAXA,QAAQA,GAAA;QAAA,OACZC,EAAE,CAACC,QAAQ,EAAErD,UAAU,CAACmD,QAAQ,CAAC,GAC7BnD,UAAU,CAACmD,QAAQ,EAAE,GACrBnC,QAAQ,CAACsC,QAAQ,CAACC,UAAU,CAACR,GAAG,CAACO,QAAQ,CAAC;AAAA,MAAA,CAAA;AAEhD,MAAA,IAAMwB,YAAY,GAAGE,KAAK,IAAIiB,SAAS;MACvC,IAAMxD,UAAU,GAAGH,OAAO,CAACxC,GAAG,IAAIwC,OAAO,CAACjE,EAAE;MAC5C,IAAM8H,cAAc,GAClB/B,mBAAmB,CAACgB,QAAQ,CAAC3C,UAAU,CAAC,IACxC,CAACwB,yBAAyB;AAE5B,MAAA,IAAMmC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAGxC,KAAK,EAAI;QAChCA,KAAK,CAAC1E,cAAc,EAAE;QACtB0E,KAAK,CAACzE,eAAe,EAAE;QACvBkF,sBAAsB,CAAC,UAAAgC,IAAI,EAAA;UAAA,OACzBA,IAAI,CAACjB,QAAQ,CAAC3C,UAAU,CAAC,GACrB4D,IAAI,CAACjE,MAAM,CAACkD,KAAK,CAAC7C,UAAU,CAAC,CAAC,GAC9B6D,MAAM,CAAC7D,UAAU,EAAE4D,IAAI,CAAC;AAAA,QAAA,CAC9B,CAAC;MACH,CAAC;MAED,oBACExE,IAAA,CAAC0E,QAAQ,EAAA;AAAApI,QAAAA,QAAA,gBACP0D,IAAA,CAAC2B,kBAAkB,EAAAvD,aAAA,CAAAA,aAAA,CAAA;AACjBuG,UAAAA,eAAe,EAAC,QAAQ;AACxBtI,UAAAA,SAAS,EAAC,8GAA8G;AACxH,UAAA,aAAA,EAAA,UAAA,CAAAT,MAAA,CAAwBgJ,SAAS,CAAC5G,KAAK,CAAC,CAAG;AAC3CrB,UAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEoF,KAAK,EAAI;AAChBgB,YAAAA,kBAAkB,CAAC;AAAEhB,cAAAA,KAAK,EAALA,KAAK;AAAET,cAAAA,QAAQ,EAARA,QAAQ;AAAEb,cAAAA,OAAO,EAAPA;AAAQ,aAAC,CAAC;AAChD9D,YAAAA,QAAO,aAAPA,QAAO,KAAA,MAAA,IAAPA,QAAO,CAAGoF,KAAK,CAAC;AAClB,UAAA;AAAE,SAAA,EAAA3D,aAAA,CAAA;AACIkD,UAAAA,QAAQ,EAARA,QAAQ;AAAE9E,UAAAA,EAAE,EAAFA;AAAE,SAAA,EAAK2B,UAAU,CAAA,CAAA,EAAA,EAAA,EAAA;UAAA7B,QAAA,EAAA,CAEhCqE,IAAI,iBACHX,IAAA,CAAA,MAAA,EAAA;AACE3D,YAAAA,SAAS,EAAC,oCAAoC;AAC9C,YAAA,aAAA,EAAa2B,KAAM;AAAA1B,YAAAA,QAAA,EAAA,cAEnBF,GAAA,CAAC4E,OAAO,IAAE,CAAC,EACVkC,SAAS,CAACjB,KAAK,CAAC,IAAI,CAACI,eAAe,iBACnCjG,GAAA,CAAA,MAAA,EAAA;AAAMC,cAAAA,SAAS,EAAC,4CAA4C;cAAAC,QAAA,EACzD0F,WAAW,CAACC,KAAK;AAAC,aACf,CACP;AAAA,WACG,CACP,eACDjC,IAAA,CAACE,UAAU,EAAA;AACT7D,YAAAA,SAAS,EAAC,gFAAgF;AAC1F8D,YAAAA,SAAS,EAAC,MAAM;AAChBC,YAAAA,KAAK,EAAC,OAAO;AAAA9D,YAAAA,QAAA,EAAA,CAEZ0B,KAAK,EACL6C,GAAG,iBAAIzE,GAAA,CAACwF,GAAG,EAAAxD,aAAA,CAAA,EAAA,EAAKyC,GAAG,CAAG,CAAC;WACd,CAAC,EACZwC,UAAU,CAACtG,UAAU,CAAC,iBAAIX,GAAA,CAACU,WAAW,EAAA;AAAOC,YAAAA,UAAU,EAAVA;AAAU,WAAK,CAAC,EAC7DkG,YAAY,IAAI,CAACG,kBAAkB,iBAClChH,GAAA,CAAA,MAAA,EAAA;AACEC,YAAAA,SAAS,EAAEK,UAAU,CACnB,8EAA8E,EAC9E;AACE,cAAA,4CAA4C,EAC1C4H;AACJ,aACF,CAAE;AACF3H,YAAAA,OAAO,EAAE4H,gBAAiB;YAAAjI,QAAA,eAE1BF,GAAA,CAACyI,KAAK,EAAA;AAACrH,cAAAA,IAAI,EAAE;aAAK;AAAC,WACf,CACP;SAAA,CACiB,CAAC,EACpByF,YAAY,IAAI,CAACG,kBAAkB,IAAIkB,cAAc,iBACpDtE,IAAA,CAAA8E,UAAA,EAAA;UAAAxI,QAAA,EAAA,CACG6G,KAAK,iBACJ/G,GAAA,CAAC2I,MAAK,EAAA3G,aAAA,CAAA,EAAA,EAAAA,aAAA,CAAA;AAAOiE,YAAAA,eAAe,EAAfA,eAAe;AAAEc,YAAAA,KAAK,EAALA;WAAK,EAAKhF,UAAU,EAAK,CACxD,EACAiG,SAAS,iBAAIhI,GAAA,CAACgI,SAAS,EAAA;AAAO3D,YAAAA,OAAO,EAAPA;AAAO,WAAK,CAAC;AAAA,SAC5C,CACH;AAAA,OAAA,EAvDYA,OAAO,CAACxC,GAAG,IAAIyC,KAwDpB,CAAC;IAEf,CAAC,CAAC,EACD2C,UAAU,CAACxE,YAAY,CAAC,iBACvBzC,GAAA,CAACwC,YAAY,EAAA;AAAOG,MAAAA,eAAe,EAAfA,eAAe;AAAED,MAAAA,eAAe,EAAfA,eAAe;AAAED,MAAAA,YAAY,EAAZA;AAAY,KAAK,CACxE;AAAA,GACE,CAAC;AAEV,CAAC;;ACxKD,IAAMmG,OAAO,GAAG,SAAVA,OAAOA,CAAAlK,IAAA,EAOP;AAAA,EAAA,IANJqH,QAAQ,GAAArH,IAAA,CAARqH,QAAQ;IAAA8C,iBAAA,GAAAnK,IAAA,CACR+D,YAAY;AAAZA,IAAAA,YAAY,GAAAoG,iBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,iBAAA;IACjBjK,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAAkK,oBAAA,GAAApK,IAAA,CACVuH,eAAe;AAAfA,IAAAA,eAAe,GAAA6C,oBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,oBAAA;IAAAC,qBAAA,GAAArK,IAAA,CACvBsK,iBAAiB;AAAjBA,IAAAA,iBAAiB,GAAAD,qBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,qBAAA;IAAAE,iBAAA,GAAAvK,IAAA,CACzBmI,YAAY;AAAZA,IAAAA,YAAY,GAAAoC,iBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,iBAAA;AAEnB,EAAA,IAAAC,qBAAA,GAAsCC,6BAA6B,EAAE;IAAAC,sBAAA,GAAAhG,cAAA,CAAA8F,qBAAA,EAAA,CAAA,CAAA;AAA9DG,IAAAA,2BAA2B,GAAAD,sBAAA,CAAA,CAAA,CAAA;AAElC,EAAA,IAAAnG,SAAA,GAAkDC,QAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1DqG,IAAAA,iBAAiB,GAAAnG,UAAA,CAAA,CAAA,CAAA;AAAEoG,IAAAA,oBAAoB,GAAApG,UAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAkD,gBAAA,GAAwDC,eAAe,CACrEkD,mCAAmC,EACnC,IACF,CAAC;IAAAhD,iBAAA,GAAApD,cAAA,CAAAiD,gBAAA,EAAA,CAAA,CAAA;AAHMoD,IAAAA,oBAAoB,GAAAjD,iBAAA,CAAA,CAAA,CAAA;AAAEN,IAAAA,uBAAuB,GAAAM,iBAAA,CAAA,CAAA,CAAA;EAKpD,IAAAkD,iBAAA,GAAoDpD,eAAe,CACjEqD,8BAA8B,EAAE,EAChC,KACF,CAAC;IAAAC,iBAAA,GAAAxG,cAAA,CAAAsG,iBAAA,EAAA,CAAA,CAAA;AAHMG,IAAAA,kBAAkB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,iBAAA,CAAA,CAAA,CAAA;EAKhD,IAAAG,iBAAA,GAAwCzD,eAAe,CACrD0D,iBAAiB,KAAAxK,MAAA,CACdyK,qBAAqB,EAAA,IAAA,CAC1B,CAAC;IAAAC,iBAAA,GAAA9G,cAAA,CAAA2G,iBAAA,EAAA,CAAA,CAAA;AAHMI,IAAAA,YAAY,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,eAAe,GAAAF,iBAAA,CAAA,CAAA,CAAA;AAKpC,EAAA,IAAMG,UAAU,GAAGC,MAAM,CAAC,IAAI,CAAC;AAC/B,EAAA,IAAMC,cAAc,GAAGD,MAAM,CAAC,KAAK,CAAC;AACpC,EAAA,IAAME,SAAS,GAAGF,MAAM,CAAC,IAAI,CAAC;AAC9B,EAAA,IAAMG,aAAa,GAAGH,MAAM,CAAC,IAAI,CAAC;AAElC,EAAA,IAAMvH,QAAQ,GAAGC,WAAW,EAAE;AAC9B,EAAA,IAAM0H,OAAO,GAAGC,UAAU,EAAE;AAC5B,EAAA,IAAA/H,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAM8H,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,IAAA,OAAS5F,MAAM,CAAC6F,UAAU,GAAG,GAAG;AAAA,EAAA,CAAA;EACpD,IAAMC,eAAe,GAAGF,cAAc,EAAE,GACpCf,kBAAkB,GAClBkB,GAAG,CAACzB,iBAAiB,CAAC;AAE1B0B,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI3B,2BAA2B,EAAE;MAC/BE,oBAAoB,CAAC,KAAK,CAAC;MAC3BO,qBAAqB,CAAC,IAAI,CAAC;IAC7B,CAAC,MAAM,IAAI,CAACT,2BAA2B,IAAIuB,cAAc,EAAE,EAAE;MAC3DrB,oBAAoB,CAAC,IAAI,CAAC;MAC1BO,qBAAqB,CAAC,KAAK,CAAC;AAC9B,IAAA;AACF,EAAA,CAAC,EAAE,CAACT,2BAA2B,CAAC,CAAC;AAEjC2B,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAClE,SAAS,CAACf,QAAQ,CAAC,EAAE;AAC1B,IAAA,IAAMkF,WAAW,GAAGC,QAAQ,CAAC,UAAAtE,KAAA,EAAsB;AAAA,MAAA,IAAnBxG,EAAE,GAAAwG,KAAA,CAAFxG,EAAE;QAAE8E,QAAQ,GAAA0B,KAAA,CAAR1B,QAAQ;AAC1C,MAAA,IAAMJ,GAAG,GAAG,IAAIC,GAAG,CAAC3E,EAAE,EAAE4E,MAAM,CAACjC,QAAQ,CAACkC,IAAI,CAAC;MAE7C,OAAOE,EAAE,CAACC,QAAQ,EAAEF,QAAQ,CAAC,GACzBA,QAAQ,EAAE,GACVnC,QAAQ,CAACsC,QAAQ,CAAC8B,QAAQ,CAACrC,GAAG,CAACO,QAAQ,CAAC;IAC9C,CAAC,CAAC,CAACU,QAAQ,CAAC;AAEZ,IAAA,IAAIe,SAAS,CAACmE,WAAW,CAAC,EAAE;MAC1B/E,uBAAuB,CACrB+E,WAAW,CAACjE,kBAAkB,GAAGiE,WAAW,CAAC7K,EAAE,GAAG,IACpD,CAAC;AACH,IAAA;EACF,CAAC,EAAE,EAAE,CAAC;AAEN4K,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzB,IAAIP,cAAc,EAAE,EAAE;MACtBrB,oBAAoB,CAAC,KAAK,CAAC;MAC3BO,qBAAqB,CAAC,IAAI,CAAC;IAC7B,CAAC;AACD9E,IAAAA,MAAM,CAACoG,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAMnG,MAAM,CAACqG,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC;AAAA,IAAA,CAAA;EACjE,CAAC,EAAE,EAAE,CAAC;AAENH,EAAAA,SAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAACnE,YAAY,EAAE,OAAOyE,SAAS;AAEnC,IAAA,IAAMC,MAAM,GAAG/H,QAAQ,CAACgI,aAAa,CACnC,yCACF,CAAC;AAED,IAAA,IAAI,CAACD,MAAM,EAAE,OAAOD,SAAS;AAE7B,IAAA,IAAMG,WAAW,GAAG,SAAdA,WAAWA,CAAGzK,CAAC,EAAI;AAAA,MAAA,IAAA0K,mBAAA;MACvBnB,cAAc,CAACoB,OAAO,GAAG,IAAI;AAC7BnB,MAAAA,SAAS,CAACmB,OAAO,GAAG3K,CAAC,CAAC4K,OAAO;MAC7BnB,aAAa,CAACkB,OAAO,GACnB,CAAA,CAAAD,mBAAA,GAAArB,UAAU,CAACsB,OAAO,MAAA,IAAA,IAAAD,mBAAA,KAAA,MAAA,GAAA,MAAA,GAAlBA,mBAAA,CAAoBG,qBAAqB,EAAE,CAACzJ,KAAK,KACjD6H,qBAAqB;AAEvB6B,MAAAA,oBAAoB,EAAE;IACxB,CAAC;AAED,IAAA,IAAMC,WAAW,GAAG,SAAdA,WAAWA,CAAG/K,CAAC,EAAI;AACvB,MAAA,IAAI,CAACuJ,cAAc,CAACoB,OAAO,EAAE;MAE7B,IAAMK,EAAE,GAAGhL,CAAC,CAAC4K,OAAO,GAAGpB,SAAS,CAACmB,OAAO;AACxC,MAAA,IAAIM,QAAQ,GAAGxB,aAAa,CAACkB,OAAO,GAAGK,EAAE;AAEzCC,MAAAA,QAAQ,GAAGC,IAAI,CAACC,GAAG,CACjBC,iBAAiB,EACjBF,IAAI,CAACG,GAAG,CAACJ,QAAQ,EAAEK,iBAAiB,CACtC,CAAC;AAEDlC,MAAAA,eAAe,CAAA,EAAA,CAAA5K,MAAA,CAAIyM,QAAQ,OAAI,CAAC;IAClC,CAAC;AAED,IAAA,IAAMM,SAAS,GAAG,SAAZA,SAASA,GAAS;AACtB,MAAA,IAAI,CAAChC,cAAc,CAACoB,OAAO,EAAE;MAE7BpB,cAAc,CAACoB,OAAO,GAAG,KAAK;AAC9Ba,MAAAA,qBAAqB,EAAE;IACzB,CAAC;AAEDjB,IAAAA,MAAM,CAACH,gBAAgB,CAAC,WAAW,EAAEK,WAAW,CAAC;AACjDjI,IAAAA,QAAQ,CAAC4H,gBAAgB,CAAC,WAAW,EAAEW,WAAW,CAAC;AACnDvI,IAAAA,QAAQ,CAAC4H,gBAAgB,CAAC,SAAS,EAAEmB,SAAS,CAAC;AAE/C,IAAA,OAAO,YAAM;AACXhB,MAAAA,MAAM,CAACF,mBAAmB,CAAC,WAAW,EAAEI,WAAW,CAAC;AACpDjI,MAAAA,QAAQ,CAAC6H,mBAAmB,CAAC,WAAW,EAAEU,WAAW,CAAC;AACtDvI,MAAAA,QAAQ,CAAC6H,mBAAmB,CAAC,SAAS,EAAEkB,SAAS,CAAC;IACpD,CAAC;AACH,EAAA,CAAC,EAAE,CAAC1F,YAAY,CAAC,CAAC;AAElBmE,EAAAA,SAAS,CAAC,YAAM;AACdxH,IAAAA,QAAQ,CAACiJ,eAAe,CAACzI,KAAK,CAAC0I,WAAW,CACxC,iCAAiC,EAAA,EAAA,CAAAlN,MAAA,CAC9BmN,QAAQ,CAACxC,YAAY,CAAC,GAAG,EAAE,QAChC,CAAC;AACH,EAAA,CAAC,EAAE,CAACA,YAAY,CAAC,CAAC;AAElB,EAAA,IAAMyC,YAAY,GAAG,SAAfA,YAAYA,CAAGjH,KAAK,EAAI;IAC5BA,KAAK,CAAC1E,cAAc,EAAE;IACtBiF,uBAAuB,CAAC,IAAI,CAAC;IAC7B,IAAM2G,gBAAgB,GAAGC,0BAA0B,CAAC;AAAE/G,MAAAA,QAAQ,EAARA,QAAQ;AAAEhD,MAAAA,QAAQ,EAARA;AAAS,KAAC,CAAC;AAC3E,IAAA,IAAI8J,gBAAgB,KAAA,IAAA,IAAhBA,gBAAgB,eAAhBA,gBAAgB,CAAEzM,EAAE,EAAE;MACxBsK,OAAO,CAAC9C,IAAI,CAACmF,QAAQ,CAACF,gBAAgB,CAACzM,EAAE,CAAC,CAAC;AAC7C,IAAA;EACF,CAAC;EAED,IAAM4M,UAAU,GAAGC,OAAO,CACxB,YAAA;AAAA,IAAA,OACElH,QAAQ,CAAC0B,IAAI,CAAC,UAAAyF,IAAI,EAAI;AACpB,MAAA,IAAI/H,EAAE,CAACC,QAAQ,EAAE8H,IAAI,CAAChI,QAAQ,CAAC,EAAE,OAAOgI,IAAI,CAAChI,QAAQ,EAAE;AACvD,MAAA,IAAMJ,GAAG,GAAG,IAAIC,GAAG,CAACmI,IAAI,CAAC9M,EAAE,EAAE4E,MAAM,CAACjC,QAAQ,CAACkC,IAAI,CAAC;MAElD,OAAOlC,QAAQ,CAACsC,QAAQ,CAACC,UAAU,CAACR,GAAG,CAACO,QAAQ,CAAC;AACnD,IAAA,CAAC,CAAC;AAAA,EAAA,CAAA,EACJ,CAACtC,QAAQ,CAACsC,QAAQ,EAAEU,QAAQ,CAC9B,CAAC;AAED,EAAA,IAAMoH,wBAAwB,GAC5B1D,oBAAoB,IACpB,CAAAuD,UAAU,aAAVA,UAAU,KAAA,MAAA,GAAA,MAAA,GAAVA,UAAU,CAAE5M,EAAE,MAAKqJ,oBAAoB,IACvCxC,UAAU,CAAClB,QAAQ,CAAC;EAEtB,oBACEnC,IAAA,CAAA8E,UAAA,EAAA;AAAAxI,IAAAA,QAAA,gBACE0D,IAAA,CAAA,KAAA,EAAA;AACE,MAAA,aAAA,EAAY,mBAAmB;AAC/BwJ,MAAAA,GAAG,EAAE/C,UAAW;AAChBrG,MAAAA,KAAK,EAAE;AAAE5B,QAAAA,KAAK,EAAEyH,kBAAkB,GAAG,GAAG,GAAGM;OAAe;AAC1DlK,MAAAA,SAAS,EAAEK,UAAU,CAAC,kCAAkC,EAAE;QACxD,6CAA6C,EAAEsK,cAAc,EAAE,GAC3Df,kBAAkB,GAClBkB,GAAG,CAACzB,iBAAiB;AAC3B,OAAC,CAAE;AAAApJ,MAAAA,QAAA,gBAEHF,GAAA,CAAA,KAAA,EAAA;AACEC,QAAAA,SAAS,EAAC,mCAAmC;AAC7CM,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UACbgJ,oBAAoB,CAAC,KAAK,CAAC;UAC3BrD,uBAAuB,CAAC,IAAI,CAAC;AAC/B,QAAA;OACD,CAAC,eACFtC,IAAA,CAAA,KAAA,EAAA;AACE,QAAA,aAAA,EAAY,iBAAiB;AAC7B3D,QAAAA,SAAS,EAAEK,UAAU,CACnB,oIAAoI,EACpI;UACE,qCAAqC,EACnCwG,SAAS,CAAC2C,oBAAoB;AAClC,SACF,CAAE;QAAAvJ,QAAA,EAAA,cAEFF,GAAA,CAACvB,QAAM,EAAA;AACCG,UAAAA,UAAU,EAAVA,UAAU;UAChBC,gBAAgB,EAAE,SAAlBA,gBAAgBA,GAAA;YAAA,OAAQqH,uBAAuB,CAAC,IAAI,CAAC;AAAA,UAAA;AAAC,SACvD,CAAC,EACD8C,iBAAiB,iBAChBpF,IAAA,CAAA,KAAA,EAAA;AAAK3D,UAAAA,SAAS,EAAC,8DAA8D;UAAAC,QAAA,EAAA,cAC3EF,GAAA,CAAC8D,UAAU,EAAA;AACT7D,YAAAA,SAAS,EAAC,eAAe;AACzB+D,YAAAA,KAAK,EAAC,IAAI;AACVqJ,YAAAA,MAAM,EAAC,UAAU;YAAAnN,QAAA,EAEhB4C,CAAC,CAAC,oCAAoC;AAAC,WAC9B,CAAC,eACb9C,GAAA,CAAC8D,UAAU,EAAA;AAAC7D,YAAAA,SAAS,EAAC,mBAAmB;AAAC+D,YAAAA,KAAK,EAAC,OAAO;AAAA9D,YAAAA,QAAA,EACpDnB,WAAW,CAACuO,YAAY,CAACC;AAAI,WACpB,CAAC;AAAA,SACV,CACN,EACAJ,wBAAwB,gBACvBnN,GAAA,CAACwN,YAAY,EAAA;AAAOZ,UAAAA,YAAY,EAAZA,YAAY;AAAIvI,UAAAA,OAAO,EAAE2I;AAAW,SAAE,CAAC,gBAE3DhN,GAAA,CAAC8F,KAAK,EAAA;AAEFG,UAAAA,eAAe,EAAfA,eAAe;AACfxD,UAAAA,YAAY,EAAZA,YAAY;AACZsD,UAAAA,QAAQ,EAARA,QAAQ;AACRG,UAAAA,uBAAuB,EAAvBA;AAAuB,SAE1B,CACF;AAAA,OACE,CAAC,eACNlG,GAAA,CAACyB,MAAM,EAAA;AACLxB,QAAAA,SAAS,EAAC,kCAAkC;AAC5C,QAAA,aAAA,EAAY,iCAAiC;QAC7CsE,IAAI,EAAE,SAANA,IAAIA,GAAA;AAAA,UAAA,oBAAQvE,GAAA,CAACyN,OAAO,EAAA,EAAE,CAAC;QAAA,CAAC;AACxBzJ,QAAAA,KAAK,EAAE4G,cAAc,EAAE,GAAG,MAAM,GAAG,WAAY;AAC/CnF,QAAAA,YAAY,EAAE;UACZC,OAAO,EAAEoF,eAAe,GACpBhI,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iCAAiC,CAAC;AACxChC,UAAAA,QAAQ,EAAE,QAAQ;AAClB4M,UAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG;SACnB;AACFnN,QAAAA,OAAO,EAAE,SAATA,OAAOA,GAAQ;UACbuJ,qBAAqB,CAAC,CAACD,kBAAkB,CAAC;UAC1CN,oBAAoB,CAACwB,GAAG,CAAC;AAC3B,QAAA;AAAE,OACH,CAAC;AAAA,KACC,CAAC,EACLlE,YAAY,iBACX7G,GAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC;AAAwC,KAAE,CAC1D;AAAA,GACD,CAAC;AAEP;;;;"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/AddDropdown.jsx","../src/components/Sidebar/Components/Links/PinIcon.jsx","../src/components/Sidebar/Components/Links/UnpinIcon.jsx","../src/components/Sidebar/Components/Links/MoreDropdown.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/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\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-testid=\"sidebar-info\"\n >\n <Link\n to={DEFAULT_HOME_PATH}\n className={classnames(\n \"neeto-molecules-sidebar__logo neeto-ui-w-full\",\n { \"cursor-pointer\": isOnboarded },\n { \"pointer-events-none\": !isOnboarded }\n )}\n onClick={clearSettingsNav}\n >\n {globalProps.sidebarTitle ? (\n <span className=\"neeto-molecules-sidebar__title\">\n {globalProps.sidebarTitle}\n </span>\n ) : (\n <LogoComponent\n className={classnames({\n \"neeto-molecules-sidebar__logo\": !customLogo,\n })}\n />\n )}\n </Link>\n </div>\n );\n};\n\nexport default memo(Header);\n","import { Plus } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst AddDropdown = ({ addActions }) => (\n <Dropdown\n closeOnSelect\n position=\"bottom-end\"\n customTarget={() => (\n <span\n className=\"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\"\n data-testid=\"add-dropdown-trigger\"\n onClick={e => {\n e.preventDefault();\n e.stopPropagation();\n }}\n >\n <Plus size={16} />\n </span>\n )}\n >\n <Dropdown.Menu>\n {addActions.map(action => (\n <Dropdown.MenuItem.Button\n key={action.key}\n onClick={e => {\n e.preventDefault();\n action.onClick?.(e);\n }}\n >\n {action.label}\n </Dropdown.MenuItem.Button>\n ))}\n </Dropdown.Menu>\n </Dropdown>\n);\n\nexport default AddDropdown;\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","import { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Typography, Dropdown, Button, Tag } from \"neetoui\";\nimport { is } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink.jsx\";\nimport PinIcon from \"./PinIcon.jsx\";\nimport UnpinIcon from \"./UnpinIcon.jsx\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst MoreDropdown = ({ moreNavLinks, isNavLinkPinned, handleTogglePin }) => {\n const { t } = useTranslation();\n const location = useLocation();\n const [isOpen, setIsOpen] = useState(false);\n\n return (\n <Dropdown\n {...{ isOpen }}\n closeOnSelect\n appendTo={() => document.body}\n position=\"right\"\n strategy=\"fixed\"\n zIndex={99999}\n customTarget={() => (\n <div\n data-testid=\"more-nav-links-dropdown-button\"\n className={classnames(\n \"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link neeto-ui-w-full neeto-ui-cursor-pointer\",\n { \"neeto-molecules-sidebar__link--hover-active\": isOpen }\n )}\n onClick={() => setIsOpen(!isOpen)}\n >\n <span className=\"neeto-molecules-sidebar__link-icon\">\n <MenuHorizontal />\n </span>\n <Typography\n className=\"neeto-molecules-sidebar__link-label\"\n component=\"span\"\n style=\"body2\"\n >\n {t(\"neetoMolecules.sidebar.more\")}\n </Typography>\n </div>\n )}\n onClickOutside={() => setIsOpen(false)}\n onClose={() => setIsOpen(false)}\n >\n <Dropdown.Menu\n className=\"p-0\"\n data-testid=\"more-nav-links-dropdown-menu\"\n position=\"right\"\n strategy=\"fixed\"\n >\n {moreNavLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n icon,\n key: navLinkKey,\n to,\n onClick,\n tag,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const isPinned = isNavLinkPinned(navLink);\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 return (\n <Dropdown.MenuItem data-testid={label} key={navLinkKey || index}>\n <CheckPointNavLinks\n {...{ onClick, to }}\n className={classnames(\n \"flex cursor-pointer items-center justify-between gap-2 px-2 py-1\",\n { \"neeto-ui-bg-accent-100 font-semibold\": isActive() }\n )}\n >\n <span className=\"flex min-w-0 flex-grow items-center gap-2\">\n {icon && <IconSVG className=\"flex-shrink-0\" size={20} />}\n <Typography\n className=\"flex min-w-0 flex-grow items-center gap-2\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n {tag && <Tag {...tag} />}\n </Typography>\n </span>\n <Button\n className=\"flex-shrink-0\"\n data-testid=\"pin-button\"\n size=\"small\"\n style=\"text\"\n icon={\n isPinned\n ? () => <UnpinIcon otherProps={{}} size={16} />\n : () => <PinIcon otherProps={{}} size={16} />\n }\n tooltipProps={{\n content: isPinned\n ? t(\"neetoMolecules.sidebar.unpin\")\n : t(\"neetoMolecules.sidebar.pin\"),\n position: \"right\",\n }}\n onClick={event => handleTogglePin(navLink, event)}\n />\n </CheckPointNavLinks>\n </Dropdown.MenuItem>\n );\n })}\n </Dropdown.Menu>\n </Dropdown>\n );\n};\n\nexport default MoreDropdown;\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isNot, hyphenate, isNotEmpty, isPresent } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Right } from \"neetoicons\";\nimport { Typography, Tag } from \"neetoui\";\nimport { append, is } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport AddDropdown from \"./AddDropdown\";\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\nimport MoreDropdown from \"./MoreDropdown\";\n\nimport { PINNED_MORE_NAV_LINKS_KEY } from \"../../constants\";\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\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 <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {combinedNavLinks.filter(filterByPermissions).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 <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\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\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-2\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n {tag && <Tag {...tag} />}\n </Typography>\n {isNotEmpty(addActions) && <AddDropdown {...{ addActions }} />}\n {isExpandable && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n onClick={handleCaretClick}\n >\n <Right size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {isExpandable && !isConfigureNavLink && isMenuExpanded && (\n <>\n {items && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n {Component && <Component {...{ navLink }} />}\n </>\n )}\n </Fragment>\n );\n })}\n {isNotEmpty(moreNavLinks) && (\n <MoreDropdown {...{ handleTogglePin, isNavLinkPinned, moreNavLinks }} />\n )}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Button, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\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 \"./sidebar.scss\";\nimport {\n getActiveConfigurePageLink,\n getSidebarStateLocalStorageKey,\n enableDraggingStyles,\n disableDraggingStyles,\n} from \"./utils\";\n\nimport useKeyboardShortcutsPaneState from \"../KeyboardShortcuts/hooks/useKeyboardShortcutsPaneState\";\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 [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\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 [sidebarWidth, setSidebarWidth] = useLocalStorage(\n SIDEBAR_WIDTH_KEY,\n `${DEFAULT_SIDEBAR_WIDTH}px`\n );\n\n const sidebarRef = useRef(null);\n const isMouseDownRef = 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 isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (isKeyboardShortcutsPaneOpen) {\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n } else if (!isKeyboardShortcutsPaneOpen && isLargerScreen()) {\n setIsSidebarPaneOpen(true);\n setIsSidebarCollapsed(false);\n }\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 }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n useEffect(() => {\n if (!isExpandable) return undefined;\n\n const handle = document.querySelector(\n \".neeto-molecules-sidebar__resize-handle\"\n );\n\n if (!handle) return undefined;\n\n const onMouseDown = e => {\n isMouseDownRef.current = true;\n startXRef.current = e.clientX;\n startWidthRef.current =\n sidebarRef.current?.getBoundingClientRect().width ||\n DEFAULT_SIDEBAR_WIDTH;\n\n enableDraggingStyles();\n };\n\n const onMouseMove = e => {\n if (!isMouseDownRef.current) return;\n\n const dx = e.clientX - startXRef.current;\n let newWidth = startWidthRef.current + dx;\n\n newWidth = Math.max(\n MIN_SIDEBAR_WIDTH,\n Math.min(newWidth, MAX_SIDEBAR_WIDTH)\n );\n\n setSidebarWidth(`${newWidth}px`);\n };\n\n const onMouseUp = () => {\n if (!isMouseDownRef.current) return;\n\n isMouseDownRef.current = false;\n disableDraggingStyles();\n };\n\n handle.addEventListener(\"mousedown\", onMouseDown);\n document.addEventListener(\"mousemove\", onMouseMove);\n document.addEventListener(\"mouseup\", onMouseUp);\n\n return () => {\n handle.removeEventListener(\"mousedown\", onMouseDown);\n document.removeEventListener(\"mousemove\", onMouseMove);\n document.removeEventListener(\"mouseup\", onMouseUp);\n };\n }, [isExpandable]);\n\n useEffect(() => {\n document.documentElement.style.setProperty(\n \"--neeto-molecules-sidebar-width\",\n `${parseInt(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 <>\n <div\n data-testid=\"sidebar-container\"\n ref={sidebarRef}\n style={{ width: isSidebarCollapsed ? \"0\" : sidebarWidth }}\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-testid=\"sidebar-wrapper\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {showWorkspaceName && (\n <div className=\"neeto-ui-bg-gray-100 neeto-molecules-sidebar__workspace-info\">\n <Typography\n className=\"neeto-ui-mb-1\"\n style=\"h5\"\n weight=\"semibold\"\n >\n {t(\"neetoMolecules.sidebar.myWorkspace\")}\n </Typography>\n <Typography className=\"neeto-ui-truncate\" style=\"body2\">\n {globalProps.organization.name}\n </Typography>\n </div>\n )}\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links\n {...{\n isCountsLoading,\n moreNavLinks,\n navLinks,\n setSelectedNavLinkRoute,\n }}\n />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-testid=\"neeto-molecules-sidebar-toggler\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n {isExpandable && (\n <div className=\"neeto-molecules-sidebar__resize-handle\" />\n )}\n </>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\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 /**\n * To specify the navlinks to be shown in the dropdown which opens up on clicking More option in sidebar.\n */\n moreNavLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\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 /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n /**\n * Boolean to determine whether the workspace name should be shown.\n */\n showWorkspaceName: PropTypes.bool,\n /**\n * Boolean to determine whether the sidebar should be expandable.\n */\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","AddDropdown","addActions","Dropdown","closeOnSelect","position","customTarget","e","preventDefault","stopPropagation","Plus","size","Menu","map","action","MenuItem","Button","_action$onClick","call","label","key","PinIcon","otherProps","_objectSpread","fill","height","viewBox","width","xmlns","d","UnpinIcon","MoreDropdown","moreNavLinks","isNavLinkPinned","handleTogglePin","_useTranslation","useTranslation","t","location","useLocation","_useState","useState","_useState2","_slicedToArray","isOpen","setIsOpen","appendTo","document","body","strategy","zIndex","_jsxs","MenuHorizontal","Typography","component","style","onClickOutside","onClose","filter","filterByPermissions","navLink","index","icon","navLinkKey","tag","_objectWithoutProperties","_excluded","IconSVG","isPinned","url","URL","window","href","isActive","is","Function","pathname","startsWith","CheckPointNavLinks","Tag","tooltipProps","content","event","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","expandedNavLinkKeys","setExpandedNavLinkKeys","_useLocalStorage","useLocalStorage","PINNED_MORE_NAV_LINKS_KEY","_useLocalStorage2","pinnedNavLinks","setPinnedNavLinks","handleNavLinkClick","_ref2","isExpandable","isPresent","items","isConfigureNavLink","isNotEmpty","isExpanded","includes","resetPath","isNot","_toConsumableArray","pinnedItems","activeMoreNavLink","find","search","additionalItems","push","combinedNavLinks","_navLink$isCountsLoad","_navLink$count","Component","_navLink$addActions","isMenuExpanded","handleCaretClick","keys","append","Fragment","activeClassName","hyphenate","Right","_Fragment","Items","Sidebar","_ref$moreNavLinks","_ref$isCountsLoading","_ref$showWorkspaceNam","showWorkspaceName","_ref$isExpandable","_useKeyboardShortcuts","useKeyboardShortcutsPaneState","_useKeyboardShortcuts2","isKeyboardShortcutsPaneOpen","isSidebarPaneOpen","setIsSidebarPaneOpen","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","_useLocalStorage5","SIDEBAR_WIDTH_KEY","DEFAULT_SIDEBAR_WIDTH","_useLocalStorage6","sidebarWidth","setSidebarWidth","sidebarRef","useRef","isMouseDownRef","startXRef","startWidthRef","history","useHistory","isLargerScreen","innerWidth","isSidebarClosed","not","useEffect","currentLink","findLast","handleResize","addEventListener","removeEventListener","undefined","handle","querySelector","onMouseDown","_sidebarRef$current","current","clientX","getBoundingClientRect","enableDraggingStyles","onMouseMove","dx","newWidth","Math","max","MIN_SIDEBAR_WIDTH","min","MAX_SIDEBAR_WIDTH","onMouseUp","disableDraggingStyles","documentElement","setProperty","parseInt","handleGoBack","configureNavLink","getActiveConfigurePageLink","activeLink","useMemo","link","isSelectedNavLinkVisible","ref","weight","organization","name","SelectedLink","Chevron","touch"],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { c as createLucideIcon } from './createLucideIcon-mNMhCCpf.js';
2
+
3
+ /**
4
+ * @license lucide-react v1.7.0 - ISC
5
+ *
6
+ * This source code is licensed under the ISC license.
7
+ * See the LICENSE file in the root directory of this source tree.
8
+ */
9
+
10
+
11
+ const __iconNode = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]];
12
+ const ChevronRight = createLucideIcon("chevron-right", __iconNode);
13
+
14
+ export { ChevronRight as C };
15
+ //# sourceMappingURL=chevron-right-DcaO-Hlu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chevron-right-DcaO-Hlu.js","sources":["../node_modules/lucide-react/dist/esm/icons/chevron-right.js"],"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 = [[\"path\", { d: \"m9 18 6-6-6-6\", key: \"mthhwq\" }]];\nconst ChevronRight = createLucideIcon(\"chevron-right\", __iconNode);\n\nexport { __iconNode, ChevronRight as default };\n//# sourceMappingURL=chevron-right.js.map\n"],"names":[],"mappings":";;AAAA;AACA;AACA;AACA;AACA;AACA;;;AAIA,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,eAAe,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC;AAC/D,MAAC,YAAY,GAAG,gBAAgB,CAAC,eAAe,EAAE,UAAU;;;;","x_google_ignoreList":[0]}