@bigbinary/neeto-molecules 3.2.16 → 3.2.18

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.
@@ -7,20 +7,29 @@ import { hyphenize } from '@bigbinary/neeto-commons-frontend/utils/general';
7
7
  import Left from '@bigbinary/neeto-icons/Left';
8
8
  import Typography from '@bigbinary/neetoui/Typography';
9
9
  import { curry, is, includes, __, all, equals, omit } from 'ramda';
10
- import { isNotEmpty, hyphenate, isPresent } from '@bigbinary/neeto-cist';
10
+ import { isNotPresent, isNotEmpty, hyphenate, isPresent } from '@bigbinary/neeto-cist';
11
11
  import { Segments } from '@bigbinary/neeto-filters-frontend';
12
12
  import { useNavigationCheckpoints } from '@bigbinary/neeto-commons-frontend/react-utils/useRegisterNavigationCheckpoint';
13
13
  import { NavLink } from 'react-router-dom';
14
14
  import { n } from './inject-css-c86de496.js';
15
15
 
16
- var _excluded$1 = ["checkpointKey", "to", "children"];
16
+ var _excluded$2 = ["checkpointKey", "to", "children"];
17
17
  var CheckPointNavLinks = function CheckPointNavLinks(_ref) {
18
18
  var checkpointKey = _ref.checkpointKey,
19
19
  to = _ref.to,
20
20
  children = _ref.children,
21
- others = _objectWithoutProperties(_ref, _excluded$1);
21
+ others = _objectWithoutProperties(_ref, _excluded$2);
22
22
  var _useNavigationCheckpo = useNavigationCheckpoints(checkpointKey),
23
23
  checkpoint = _useNavigationCheckpo[checkpointKey];
24
+ var className = others.className,
25
+ isActive = others.isActive;
26
+ if (isNotPresent(to)) {
27
+ return /*#__PURE__*/React__default.createElement("div", _extends({}, others, {
28
+ className: classnames([className], {
29
+ active: isActive()
30
+ })
31
+ }), children);
32
+ }
24
33
  return /*#__PURE__*/React__default.createElement(NavLink, _extends({
25
34
  to: checkpoint || to
26
35
  }, others, {
@@ -56,6 +65,9 @@ var filterByPermissions = curry(function (_ref) {
56
65
  return true;
57
66
  });
58
67
 
68
+ var _excluded$1 = ["to", "label", "type", "count", "isSectionHeader", "isCountsLoading", "data-cy", "entity", "columns", "isActive"];
69
+ 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; }
70
+ 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), !0).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; }
59
71
  var SubLink = function SubLink(_ref) {
60
72
  var to = _ref.to,
61
73
  label = _ref.label,
@@ -69,7 +81,8 @@ var SubLink = function SubLink(_ref) {
69
81
  entity = _ref$entity === void 0 ? "" : _ref$entity,
70
82
  _ref$columns = _ref.columns,
71
83
  columns = _ref$columns === void 0 ? [] : _ref$columns,
72
- isActive = _ref.isActive;
84
+ isActive = _ref.isActive,
85
+ otherProps = _objectWithoutProperties(_ref, _excluded$1);
73
86
  if (type === SUB_LINK_TYPES.SEGMENTS) {
74
87
  return /*#__PURE__*/React__default.createElement(Segments, {
75
88
  columns: columns,
@@ -84,13 +97,14 @@ var SubLink = function SubLink(_ref) {
84
97
  var isSubLinkActive = function isSubLinkActive() {
85
98
  return !isSectionHeader && (is(Function, isActive) ? isActive() : isSubRouteActive(to, location));
86
99
  };
87
- return /*#__PURE__*/React__default.createElement(CheckPointNavLinks, {
88
- to: to,
100
+ return /*#__PURE__*/React__default.createElement(CheckPointNavLinks, _extends({}, _objectSpread$2({
101
+ to: to
102
+ }, otherProps), {
89
103
  activeClassName: "active",
90
104
  className: "neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none",
91
105
  "data-cy": "".concat(dataCyPrefix, "-sub-link"),
92
106
  isActive: isSubLinkActive
93
- }, /*#__PURE__*/React__default.createElement(Typography, {
107
+ }), /*#__PURE__*/React__default.createElement(Typography, {
94
108
  className: "neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow",
95
109
  component: "span",
96
110
  "data-cy": "".concat(dataCyPrefix, "-sub-link-label"),
@@ -191,4 +205,4 @@ var Chevron = function Chevron(_ref) {
191
205
  };
192
206
 
193
207
  export { Chevron as C, Items as I, SelectedLink as S, CheckPointNavLinks as a, SELECTED_NAV_LINK_ROUTE_STORAGE_KEY as b, filterByPermissions as f, getSidebarStateLocalStorageKey as g };
194
- //# sourceMappingURL=Chevron-97e8647b.js.map
208
+ //# sourceMappingURL=Chevron-0f52b925.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chevron-0f52b925.js","sources":["../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../src/components/Sidebar/constants.js","../src/components/Sidebar/utils.js","../src/components/Sidebar/Components/Links/SubLink.jsx","../src/components/Sidebar/Components/Links/Items.jsx","../src/components/Sidebar/Components/Links/SelectedLink.jsx","../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({ checkpointKey, to, children, ...others }) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n const { className, isActive } = others;\n\n if (isNotPresent(to)) {\n return (\n <div\n {...others}\n className={classNames([className], { active: isActive() })}\n >\n {children}\n </div>\n );\n }\n\n return (\n <NavLink to={checkpoint || to} {...others} key={to}>\n {children}\n </NavLink>\n );\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","import { 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","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n isActive,\n ...otherProps\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || 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 <CheckPointNavLinks\n {...{ to, ...otherProps }}\n activeClassName=\"active\"\n className=\"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n className=\"neeto-molecules-sidebar__sublink-wrapper\"\n data-cy=\"sidebar-sub-link-wrapper\"\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <React.Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading }}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <>\n <Items {...{ isSettingsItems }} items={subItem.items} />\n {items.length - 1 !== subIndex && (\n <hr className=\"neeto-molecules-sidebar__separator\" />\n )}\n </>\n )}\n </React.Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Left } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-back-button`}\n >\n <Left size={16} />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body1\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","import React from \"react\";\n\nconst Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["CheckPointNavLinks","_ref","checkpointKey","to","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","className","isActive","isNotPresent","React","createElement","_extends","classNames","active","NavLink","key","SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","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","__","SubLink","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","otherProps","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","_objectSpread","activeClassName","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","isPresent","item","path","length","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","onClick","omit","hyphenize","Left","size","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}
@@ -5,7 +5,7 @@ import Button from '@bigbinary/neetoui/Button';
5
5
  import { not } from 'ramda';
6
6
  import { useTranslation } from 'react-i18next';
7
7
  import { useHistory } from 'react-router-dom';
8
- import { S as SelectedLink, C as Chevron } from './Chevron-97e8647b.js';
8
+ import { S as SelectedLink, C as Chevron } from './Chevron-0f52b925.js';
9
9
  import '@babel/runtime/helpers/extends';
10
10
  import '@babel/runtime/helpers/defineProperty';
11
11
  import '@babel/runtime/helpers/objectWithoutProperties';
@@ -1,7 +1,7 @@
1
1
  import _extends from '@babel/runtime/helpers/extends';
2
2
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
3
3
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
4
- import React__default, { useRef, useState, useCallback } from 'react';
4
+ import React__default, { useCallback, memo, useRef, useState, useMemo } from 'react';
5
5
  import classnames from 'classnames';
6
6
  import { isPresent, noop } from '@bigbinary/neeto-cist';
7
7
  import FormikEditor from '@bigbinary/neeto-editor/FormikEditor';
@@ -34,15 +34,15 @@ var useEditor = function useEditor(_ref) {
34
34
  var _useFormikContext = useFormikContext(),
35
35
  setFieldValue = _useFormikContext.setFieldValue,
36
36
  errors = _useFormikContext.errors;
37
- var handleContentChange = function handleContentChange(content) {
37
+ var handleContentChange = useCallback(function (content) {
38
38
  setFieldValue(editorContentFieldName, content);
39
39
  onContentChange === null || onContentChange === void 0 ? void 0 : onContentChange(content);
40
- };
41
- var handleAttachmentChange = function handleAttachmentChange(attachments) {
40
+ }, [editorContentFieldName, onContentChange, setFieldValue]);
41
+ var handleAttachmentChange = useCallback(function (attachments) {
42
42
  setAttachments(attachments);
43
43
  setFieldValue("attachments", attachments);
44
44
  onAttachmentChange === null || onAttachmentChange === void 0 ? void 0 : onAttachmentChange(attachments);
45
- };
45
+ }, [onAttachmentChange, setAttachments, setFieldValue]);
46
46
  var handleTitleChange = function handleTitleChange(event) {
47
47
  var title = event.target.value;
48
48
  setFieldValue(titleFieldName, title);
@@ -142,6 +142,9 @@ var Editor = function Editor(_ref) {
142
142
  editorRef.current = node;
143
143
  getEditorRef(node);
144
144
  }, []);
145
+ var addons = useMemo(function () {
146
+ return EDITOR_ADDONS.concat(editorProps.addons || []);
147
+ }, [editorProps.addons]);
145
148
  return /*#__PURE__*/React__default.createElement("div", {
146
149
  className: "neeto-molecules-document__wrapper",
147
150
  "data-testid": "document-editor-container",
@@ -155,10 +158,11 @@ var Editor = function Editor(_ref) {
155
158
  name: editorContentFieldName,
156
159
  ref: setEditorRef,
157
160
  menuClassName: classnames("neeto-molecules-document-editor__menubar", menuClassName)
158
- }, _objectSpread({
161
+ }, _objectSpread(_objectSpread({
159
162
  attachments: attachments
160
- }, editorProps), {
161
- addons: EDITOR_ADDONS.concat(editorProps.addons || []),
163
+ }, editorProps), {}, {
164
+ addons: addons
165
+ }), {
162
166
  onChange: handleContentChange,
163
167
  onChangeAttachments: handleAttachmentChange
164
168
  }), /*#__PURE__*/React__default.createElement("div", {
@@ -181,6 +185,8 @@ var Editor = function Editor(_ref) {
181
185
  style: "body3"
182
186
  }, errors[editorContentFieldName]))));
183
187
  };
188
+ Editor.displayName = "DocumentEditor";
189
+ var index = /*#__PURE__*/memo(Editor);
184
190
 
185
- export { Editor as default };
191
+ export { index as default };
186
192
  //# sourceMappingURL=DocumentEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentEditor.js","sources":["../src/components/DocumentEditor/constants.js","../src/components/DocumentEditor/hooks/useEditor.js","../src/components/DocumentEditor/utils.js","../src/components/DocumentEditor/index.jsx"],"sourcesContent":["export const EDITOR_ADDONS = [\n \"highlight\",\n \"emoji\",\n \"video-upload\",\n \"code-block\",\n \"block-quote\",\n \"image-upload\",\n \"image-upload-unsplash\",\n \"divider\",\n \"video-embed\",\n \"undo\",\n \"redo\",\n \"table\",\n];\n\nexport const DEFAULT_EDITOR_PROPS = {\n isCharacterCountActive: true,\n isMenuIndependent: true,\n addons: [],\n};\n","import { useFormikContext } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\n\nconst useEditor = ({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n}) => {\n const { setFieldValue, errors } = useFormikContext();\n\n const handleContentChange = content => {\n setFieldValue(editorContentFieldName, content);\n onContentChange?.(content);\n };\n\n const handleAttachmentChange = attachments => {\n setAttachments(attachments);\n setFieldValue(\"attachments\", attachments);\n onAttachmentChange?.(attachments);\n };\n\n const handleTitleChange = event => {\n const title = event.target.value;\n setFieldValue(titleFieldName, title);\n onTitleChange?.(title);\n };\n\n const handleEditorBackspaceKeypress = () => {\n const editor = editorRef.current?.editor;\n const selection = editor?.state?.selection;\n if (\n editor?.isFocused &&\n isPresent(titleRef.current) &&\n selection?.anchor === 1\n ) {\n const title = titleRef.current.value;\n titleRef.current.focus();\n titleRef.current.setSelectionRange(title?.length, title?.length);\n }\n };\n\n const titleHotkeyRef = useHotkeys(\n \"return\",\n () => {\n editorRef.current?.editor?.commands?.insertContentAt(0, \"<p />\");\n editorRef.current?.editor?.commands?.focus(\"start\");\n },\n { mode: \"scoped\" }\n );\n\n const editorHotkeyRef = useHotkeys(\n \"backspace\",\n handleEditorBackspaceKeypress,\n { mode: \"scoped\" }\n );\n\n return {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n };\n};\n\nexport default useEditor;\n","export const getUniqueAttachments = attachments => {\n const uniqueAttachments = attachments?.reduce(\n (uniqueAttachments, attachment) => ({\n ...uniqueAttachments,\n [attachment.signedId]: attachment,\n }),\n {}\n );\n\n return Object.values(uniqueAttachments || {});\n};\n","import React, { useCallback, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Typography } from \"neetoui\";\nimport { Textarea } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_EDITOR_PROPS, EDITOR_ADDONS } from \"./constants\";\nimport \"./editor.scss\";\nimport useEditor from \"./hooks/useEditor\";\nimport { getUniqueAttachments } from \"./utils\";\n\nconst Editor = ({\n attachments: initialAttachments,\n onContentChange,\n onAttachmentChange,\n onTitleChange,\n getTitleRef = noop,\n getEditorRef = noop,\n menuClassName,\n editorContentFieldName = \"htmlContent\",\n titleFieldName = \"title\",\n editorProps = DEFAULT_EDITOR_PROPS,\n titleProps = {},\n}) => {\n const { t } = useTranslation();\n\n const titleRef = useRef();\n const editorRef = useRef();\n\n const [attachments, setAttachments] = useState(() =>\n getUniqueAttachments(initialAttachments)\n );\n\n const {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n } = useEditor({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n });\n\n const setTitleRef = node => {\n titleHotkeyRef.current = node;\n getTitleRef(node);\n titleRef.current = node;\n };\n\n const setEditorRef = useCallback(node => {\n editorRef.current = node;\n getEditorRef(node);\n }, []);\n\n return (\n <div\n className=\"neeto-molecules-document__wrapper\"\n data-testid=\"document-editor-container\"\n ref={editorHotkeyRef}\n >\n <FormikEditor\n attachmentsClassName=\"editor-content-attachments\"\n className=\"h-full w-full\"\n contentClassName=\"editor-content__wrapper neeto-molecules-document__container\"\n data-cy=\"neeto-molecules-document-content-text-area\"\n error={undefined}\n name={editorContentFieldName}\n ref={setEditorRef}\n menuClassName={classNames(\n \"neeto-molecules-document-editor__menubar\",\n menuClassName\n )}\n {...{ attachments, ...editorProps }}\n addons={EDITOR_ADDONS.concat(editorProps.addons || [])}\n onChange={handleContentChange}\n onChangeAttachments={handleAttachmentChange}\n >\n <div className=\"neeto-molecules-document__container px-4\">\n <Textarea\n nakedTextarea\n className=\"neeto-molecules-document__title\"\n data-cy=\"neeto-molecules-document-title-text-field\"\n name={titleFieldName}\n ref={setTitleRef}\n rows={1}\n placeholder={\n titleProps.placeholder || t(\"neetoMolecules.documentEditor.title\")\n }\n onChange={handleTitleChange}\n onKeyDown={e =>\n e.key === \"Enter\" && !e.shiftKey && e.preventDefault()\n }\n {...titleProps}\n />\n {errors[editorContentFieldName] && (\n <Typography\n className=\"neeto-ui-input__error neeto-molecules-editor-content__error\"\n data-cy=\"articles-content-input-error\"\n style=\"body3\"\n >\n {errors[editorContentFieldName]}\n </Typography>\n )}\n </div>\n </FormikEditor>\n </div>\n );\n};\n\nEditor.propTypes = {\n /**\n * List of initial attachments.\n */\n attachments: PropTypes.arrayOf(\n PropTypes.shape({\n contentType: PropTypes.string,\n filename: PropTypes.string,\n signedId: PropTypes.string,\n url: PropTypes.string,\n })\n ),\n /**\n * Callback that will be triggered when the editor content changes.\n * This function is not throttled.\n */\n onContentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the attachments changes.\n */\n onAttachmentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the article title changes.\n */\n onTitleChange: PropTypes.func,\n /**\n * This function will be called with the title node reference.\n */\n getTitleRef: PropTypes.func,\n /**\n * This function will be called with editor reference.\n */\n getEditorRef: PropTypes.func,\n /**\n * Formik field name of the editor. The default value is `htmlContent`.\n */\n editorContentFieldName: PropTypes.string,\n /**\n * Formik field name of the title. The default value is `title`.\n */\n titleFieldName: PropTypes.string,\n /**\n * These props will be passed down to the editor component.\n */\n editorProps: PropTypes.object,\n /**\n * These props will be passed down to the title text area component.\n */\n titleProps: PropTypes.object,\n /**\n * A prop to pass class names to the editor menubar.\n */\n menuClassName: PropTypes.string,\n};\n\nexport default Editor;\n"],"names":["EDITOR_ADDONS","DEFAULT_EDITOR_PROPS","isCharacterCountActive","isMenuIndependent","addons","useEditor","_ref","onContentChange","editorContentFieldName","setAttachments","onAttachmentChange","onTitleChange","titleFieldName","editorRef","titleRef","_useFormikContext","useFormikContext","setFieldValue","errors","handleContentChange","content","handleAttachmentChange","attachments","handleTitleChange","event","title","target","value","handleEditorBackspaceKeypress","_editorRef$current","_editor$state","editor","current","selection","state","isFocused","isPresent","anchor","focus","setSelectionRange","length","titleHotkeyRef","useHotkeys","_editorRef$current2","_editorRef$current2$e","_editorRef$current2$e2","_editorRef$current3","_editorRef$current3$e","_editorRef$current3$e2","commands","insertContentAt","mode","editorHotkeyRef","getUniqueAttachments","uniqueAttachments","reduce","attachment","_objectSpread","_defineProperty","signedId","Object","values","Editor","initialAttachments","_ref$getTitleRef","getTitleRef","noop","_ref$getEditorRef","getEditorRef","menuClassName","_ref$editorContentFie","_ref$titleFieldName","_ref$editorProps","editorProps","_ref$titleProps","titleProps","_useTranslation","useTranslation","t","useRef","_useState","useState","_useState2","_slicedToArray","_useEditor","setTitleRef","node","setEditorRef","useCallback","React","createElement","className","ref","FormikEditor","_extends","attachmentsClassName","contentClassName","error","undefined","name","classNames","concat","onChange","onChangeAttachments","Textarea","nakedTextarea","rows","placeholder","onKeyDown","e","key","shiftKey","preventDefault","Typography","style"],"mappings":"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"}
1
+ {"version":3,"file":"DocumentEditor.js","sources":["../src/components/DocumentEditor/constants.js","../src/components/DocumentEditor/hooks/useEditor.js","../src/components/DocumentEditor/utils.js","../src/components/DocumentEditor/index.jsx"],"sourcesContent":["export const EDITOR_ADDONS = [\n \"highlight\",\n \"emoji\",\n \"video-upload\",\n \"code-block\",\n \"block-quote\",\n \"image-upload\",\n \"image-upload-unsplash\",\n \"divider\",\n \"video-embed\",\n \"undo\",\n \"redo\",\n \"table\",\n];\n\nexport const DEFAULT_EDITOR_PROPS = {\n isCharacterCountActive: true,\n isMenuIndependent: true,\n addons: [],\n};\n","import { useCallback } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\n\nconst useEditor = ({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n}) => {\n const { setFieldValue, errors } = useFormikContext();\n\n const handleContentChange = useCallback(\n content => {\n setFieldValue(editorContentFieldName, content);\n onContentChange?.(content);\n },\n [editorContentFieldName, onContentChange, setFieldValue]\n );\n\n const handleAttachmentChange = useCallback(\n attachments => {\n setAttachments(attachments);\n setFieldValue(\"attachments\", attachments);\n onAttachmentChange?.(attachments);\n },\n [onAttachmentChange, setAttachments, setFieldValue]\n );\n\n const handleTitleChange = event => {\n const title = event.target.value;\n setFieldValue(titleFieldName, title);\n onTitleChange?.(title);\n };\n\n const handleEditorBackspaceKeypress = () => {\n const editor = editorRef.current?.editor;\n const selection = editor?.state?.selection;\n if (\n editor?.isFocused &&\n isPresent(titleRef.current) &&\n selection?.anchor === 1\n ) {\n const title = titleRef.current.value;\n titleRef.current.focus();\n titleRef.current.setSelectionRange(title?.length, title?.length);\n }\n };\n\n const titleHotkeyRef = useHotkeys(\n \"return\",\n () => {\n editorRef.current?.editor?.commands?.insertContentAt(0, \"<p />\");\n editorRef.current?.editor?.commands?.focus(\"start\");\n },\n { mode: \"scoped\" }\n );\n\n const editorHotkeyRef = useHotkeys(\n \"backspace\",\n handleEditorBackspaceKeypress,\n { mode: \"scoped\" }\n );\n\n return {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n };\n};\n\nexport default useEditor;\n","export const getUniqueAttachments = attachments => {\n const uniqueAttachments = attachments?.reduce(\n (uniqueAttachments, attachment) => ({\n ...uniqueAttachments,\n [attachment.signedId]: attachment,\n }),\n {}\n );\n\n return Object.values(uniqueAttachments || {});\n};\n","import React, { memo, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Typography } from \"neetoui\";\nimport { Textarea } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_EDITOR_PROPS, EDITOR_ADDONS } from \"./constants\";\nimport \"./editor.scss\";\nimport useEditor from \"./hooks/useEditor\";\nimport { getUniqueAttachments } from \"./utils\";\n\nconst Editor = ({\n attachments: initialAttachments,\n onContentChange,\n onAttachmentChange,\n onTitleChange,\n getTitleRef = noop,\n getEditorRef = noop,\n menuClassName,\n editorContentFieldName = \"htmlContent\",\n titleFieldName = \"title\",\n editorProps = DEFAULT_EDITOR_PROPS,\n titleProps = {},\n}) => {\n const { t } = useTranslation();\n\n const titleRef = useRef();\n const editorRef = useRef();\n\n const [attachments, setAttachments] = useState(() =>\n getUniqueAttachments(initialAttachments)\n );\n\n const {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n } = useEditor({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n });\n\n const setTitleRef = node => {\n titleHotkeyRef.current = node;\n getTitleRef(node);\n titleRef.current = node;\n };\n\n const setEditorRef = useCallback(node => {\n editorRef.current = node;\n getEditorRef(node);\n }, []);\n\n const addons = useMemo(\n () => EDITOR_ADDONS.concat(editorProps.addons || []),\n [editorProps.addons]\n );\n\n return (\n <div\n className=\"neeto-molecules-document__wrapper\"\n data-testid=\"document-editor-container\"\n ref={editorHotkeyRef}\n >\n <FormikEditor\n attachmentsClassName=\"editor-content-attachments\"\n className=\"h-full w-full\"\n contentClassName=\"editor-content__wrapper neeto-molecules-document__container\"\n data-cy=\"neeto-molecules-document-content-text-area\"\n error={undefined}\n name={editorContentFieldName}\n ref={setEditorRef}\n menuClassName={classNames(\n \"neeto-molecules-document-editor__menubar\",\n menuClassName\n )}\n {...{ attachments, ...editorProps, addons }}\n onChange={handleContentChange}\n onChangeAttachments={handleAttachmentChange}\n >\n <div className=\"neeto-molecules-document__container px-4\">\n <Textarea\n nakedTextarea\n className=\"neeto-molecules-document__title\"\n data-cy=\"neeto-molecules-document-title-text-field\"\n name={titleFieldName}\n ref={setTitleRef}\n rows={1}\n placeholder={\n titleProps.placeholder || t(\"neetoMolecules.documentEditor.title\")\n }\n onChange={handleTitleChange}\n onKeyDown={e =>\n e.key === \"Enter\" && !e.shiftKey && e.preventDefault()\n }\n {...titleProps}\n />\n {errors[editorContentFieldName] && (\n <Typography\n className=\"neeto-ui-input__error neeto-molecules-editor-content__error\"\n data-cy=\"articles-content-input-error\"\n style=\"body3\"\n >\n {errors[editorContentFieldName]}\n </Typography>\n )}\n </div>\n </FormikEditor>\n </div>\n );\n};\n\nEditor.propTypes = {\n /**\n * List of initial attachments.\n */\n attachments: PropTypes.arrayOf(\n PropTypes.shape({\n contentType: PropTypes.string,\n filename: PropTypes.string,\n signedId: PropTypes.string,\n url: PropTypes.string,\n })\n ),\n /**\n * Callback that will be triggered when the editor content changes.\n * This function is not throttled.\n */\n onContentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the attachments changes.\n */\n onAttachmentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the article title changes.\n */\n onTitleChange: PropTypes.func,\n /**\n * This function will be called with the title node reference.\n */\n getTitleRef: PropTypes.func,\n /**\n * This function will be called with editor reference.\n */\n getEditorRef: PropTypes.func,\n /**\n * Formik field name of the editor. The default value is `htmlContent`.\n */\n editorContentFieldName: PropTypes.string,\n /**\n * Formik field name of the title. The default value is `title`.\n */\n titleFieldName: PropTypes.string,\n /**\n * These props will be passed down to the editor component.\n */\n editorProps: PropTypes.object,\n /**\n * These props will be passed down to the title text area component.\n */\n titleProps: PropTypes.object,\n /**\n * A prop to pass class names to the editor menubar.\n */\n menuClassName: PropTypes.string,\n};\n\nEditor.displayName = \"DocumentEditor\";\n\nexport default memo(Editor);\n"],"names":["EDITOR_ADDONS","DEFAULT_EDITOR_PROPS","isCharacterCountActive","isMenuIndependent","addons","useEditor","_ref","onContentChange","editorContentFieldName","setAttachments","onAttachmentChange","onTitleChange","titleFieldName","editorRef","titleRef","_useFormikContext","useFormikContext","setFieldValue","errors","handleContentChange","useCallback","content","handleAttachmentChange","attachments","handleTitleChange","event","title","target","value","handleEditorBackspaceKeypress","_editorRef$current","_editor$state","editor","current","selection","state","isFocused","isPresent","anchor","focus","setSelectionRange","length","titleHotkeyRef","useHotkeys","_editorRef$current2","_editorRef$current2$e","_editorRef$current2$e2","_editorRef$current3","_editorRef$current3$e","_editorRef$current3$e2","commands","insertContentAt","mode","editorHotkeyRef","getUniqueAttachments","uniqueAttachments","reduce","attachment","_objectSpread","_defineProperty","signedId","Object","values","Editor","initialAttachments","_ref$getTitleRef","getTitleRef","noop","_ref$getEditorRef","getEditorRef","menuClassName","_ref$editorContentFie","_ref$titleFieldName","_ref$editorProps","editorProps","_ref$titleProps","titleProps","_useTranslation","useTranslation","t","useRef","_useState","useState","_useState2","_slicedToArray","_useEditor","setTitleRef","node","setEditorRef","useMemo","concat","React","createElement","className","ref","FormikEditor","_extends","attachmentsClassName","contentClassName","error","undefined","name","classNames","onChange","onChangeAttachments","Textarea","nakedTextarea","rows","placeholder","onKeyDown","e","key","shiftKey","preventDefault","Typography","style","displayName","memo"],"mappings":"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"}
package/dist/Sidebar.js CHANGED
@@ -8,7 +8,7 @@ import Button from '@bigbinary/neetoui/Button';
8
8
  import { not, is, findLast } from 'ramda';
9
9
  import { useTranslation } from 'react-i18next';
10
10
  import { Link, useLocation, useHistory } from 'react-router-dom';
11
- import { f as filterByPermissions, a as CheckPointNavLinks, I as Items, b as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, g as getSidebarStateLocalStorageKey, S as SelectedLink, C as Chevron } from './Chevron-97e8647b.js';
11
+ import { f as filterByPermissions, a as CheckPointNavLinks, I as Items, b as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, g as getSidebarStateLocalStorageKey, S as SelectedLink, C as Chevron } from './Chevron-0f52b925.js';
12
12
  import useFetchNeetoApps from '@bigbinary/neeto-commons-frontend/react-utils/useFetchNeetoApps';
13
13
  import Neeto from '@bigbinary/neeto-icons/typeface-logos/Neeto';
14
14
  import * as AppIcons from '@bigbinary/neeto-icons/typeface-logos';
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\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 isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <React.Fragment 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, items, navLink })\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-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !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 >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </React.Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import React, { useEffect, useMemo, useState } 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 } 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 { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport { getSidebarStateLocalStorageKey } from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\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 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 (!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 const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = navLinks.find(\n link => isPresent(link.isConfigureNavLink) && link.isConfigureNavLink\n );\n if (settingsNavLink.to) {\n history.push(buildUrl(settingsNavLink.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 <div\n data-testid=\"sidebar-container\"\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-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\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 }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\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 count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\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\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position"],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\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 isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <React.Fragment 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, items, navLink })\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-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !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 >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </React.Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import React, { useEffect, useMemo, useState } 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 } 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 { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport { getSidebarStateLocalStorageKey } from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\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 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 (!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 const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = navLinks.find(\n link => isPresent(link.isConfigureNavLink) && link.isConfigureNavLink\n );\n if (settingsNavLink.to) {\n history.push(buildUrl(settingsNavLink.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 <div\n data-testid=\"sidebar-container\"\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-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\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 }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\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 count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n onClick: PropTypes.func,\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\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position"],"mappings":"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"}
@@ -25,14 +25,23 @@ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
25
25
  var Left__default = /*#__PURE__*/_interopDefaultLegacy(Left);
26
26
  var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
27
27
 
28
- var _excluded$1 = ["checkpointKey", "to", "children"];
28
+ var _excluded$2 = ["checkpointKey", "to", "children"];
29
29
  var CheckPointNavLinks = function CheckPointNavLinks(_ref) {
30
30
  var checkpointKey = _ref.checkpointKey,
31
31
  to = _ref.to,
32
32
  children = _ref.children,
33
- others = _objectWithoutProperties__default["default"](_ref, _excluded$1);
33
+ others = _objectWithoutProperties__default["default"](_ref, _excluded$2);
34
34
  var _useNavigationCheckpo = useRegisterNavigationCheckpoint.useNavigationCheckpoints(checkpointKey),
35
35
  checkpoint = _useNavigationCheckpo[checkpointKey];
36
+ var className = others.className,
37
+ isActive = others.isActive;
38
+ if (neetoCist.isNotPresent(to)) {
39
+ return /*#__PURE__*/React__default["default"].createElement("div", _extends__default["default"]({}, others, {
40
+ className: classnames__default["default"]([className], {
41
+ active: isActive()
42
+ })
43
+ }), children);
44
+ }
36
45
  return /*#__PURE__*/React__default["default"].createElement(reactRouterDom.NavLink, _extends__default["default"]({
37
46
  to: checkpoint || to
38
47
  }, others, {
@@ -68,6 +77,9 @@ var filterByPermissions = ramda.curry(function (_ref) {
68
77
  return true;
69
78
  });
70
79
 
80
+ var _excluded$1 = ["to", "label", "type", "count", "isSectionHeader", "isCountsLoading", "data-cy", "entity", "columns", "isActive"];
81
+ 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; }
82
+ 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), !0).forEach(function (r) { _defineProperty__default["default"](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; }
71
83
  var SubLink = function SubLink(_ref) {
72
84
  var to = _ref.to,
73
85
  label = _ref.label,
@@ -81,7 +93,8 @@ var SubLink = function SubLink(_ref) {
81
93
  entity = _ref$entity === void 0 ? "" : _ref$entity,
82
94
  _ref$columns = _ref.columns,
83
95
  columns = _ref$columns === void 0 ? [] : _ref$columns,
84
- isActive = _ref.isActive;
96
+ isActive = _ref.isActive,
97
+ otherProps = _objectWithoutProperties__default["default"](_ref, _excluded$1);
85
98
  if (type === SUB_LINK_TYPES.SEGMENTS) {
86
99
  return /*#__PURE__*/React__default["default"].createElement(neetoFiltersFrontend.Segments, {
87
100
  columns: columns,
@@ -96,13 +109,14 @@ var SubLink = function SubLink(_ref) {
96
109
  var isSubLinkActive = function isSubLinkActive() {
97
110
  return !isSectionHeader && (ramda.is(Function, isActive) ? isActive() : isSubRouteActive(to, location));
98
111
  };
99
- return /*#__PURE__*/React__default["default"].createElement(CheckPointNavLinks, {
100
- to: to,
112
+ return /*#__PURE__*/React__default["default"].createElement(CheckPointNavLinks, _extends__default["default"]({}, _objectSpread$2({
113
+ to: to
114
+ }, otherProps), {
101
115
  activeClassName: "active",
102
116
  className: "neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none",
103
117
  "data-cy": "".concat(dataCyPrefix, "-sub-link"),
104
118
  isActive: isSubLinkActive
105
- }, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
119
+ }), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
106
120
  className: "neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow",
107
121
  component: "span",
108
122
  "data-cy": "".concat(dataCyPrefix, "-sub-link-label"),
@@ -209,4 +223,4 @@ exports.SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = SELECTED_NAV_LINK_ROUTE_STORAGE_KE
209
223
  exports.SelectedLink = SelectedLink;
210
224
  exports.filterByPermissions = filterByPermissions;
211
225
  exports.getSidebarStateLocalStorageKey = getSidebarStateLocalStorageKey;
212
- //# sourceMappingURL=Chevron-7dc6dc06.js.map
226
+ //# sourceMappingURL=Chevron-64f56973.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Chevron-64f56973.js","sources":["../../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../../src/components/Sidebar/constants.js","../../src/components/Sidebar/utils.js","../../src/components/Sidebar/Components/Links/SubLink.jsx","../../src/components/Sidebar/Components/Links/Items.jsx","../../src/components/Sidebar/Components/Links/SelectedLink.jsx","../../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({ checkpointKey, to, children, ...others }) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n const { className, isActive } = others;\n\n if (isNotPresent(to)) {\n return (\n <div\n {...others}\n className={classNames([className], { active: isActive() })}\n >\n {children}\n </div>\n );\n }\n\n return (\n <NavLink to={checkpoint || to} {...others} key={to}>\n {children}\n </NavLink>\n );\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","import { 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","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n isActive,\n ...otherProps\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || 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 <CheckPointNavLinks\n {...{ to, ...otherProps }}\n activeClassName=\"active\"\n className=\"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n className=\"neeto-molecules-sidebar__sublink-wrapper\"\n data-cy=\"sidebar-sub-link-wrapper\"\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <React.Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading }}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <>\n <Items {...{ isSettingsItems }} items={subItem.items} />\n {items.length - 1 !== subIndex && (\n <hr className=\"neeto-molecules-sidebar__separator\" />\n )}\n </>\n )}\n </React.Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Left } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-back-button`}\n >\n <Left size={16} />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body1\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","import React from \"react\";\n\nconst Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["CheckPointNavLinks","_ref","checkpointKey","to","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","className","isActive","isNotPresent","React","createElement","_extends","classNames","active","NavLink","key","SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","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","__","SubLink","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","otherProps","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","_objectSpread","activeClassName","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","isPresent","item","path","length","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","onClick","omit","hyphenize","Left","size","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAOA,IAAMA,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,IAAA,EAAmD;AAAA,EAAA,IAA7CC,aAAa,GAAAD,IAAA,CAAbC,aAAa;IAAEC,EAAE,GAAAF,IAAA,CAAFE,EAAE;IAAEC,QAAQ,GAAAH,IAAA,CAARG,QAAQ;AAAKC,IAAAA,MAAM,GAAAC,4CAAA,CAAAL,IAAA,EAAAM,WAAA,CAAA,CAAA;AAClE,EAAA,IAAAC,qBAAA,GACEC,wDAAwB,CAACP,aAAa,CAAC;IADhBQ,UAAU,GAAAF,qBAAA,CAA1BN,aAAa,CAAA,CAAA;AAGtB,EAAA,IAAQS,SAAS,GAAeN,MAAM,CAA9BM,SAAS;IAAEC,QAAQ,GAAKP,MAAM,CAAnBO,QAAQ,CAAA;AAE3B,EAAA,IAAIC,sBAAY,CAACV,EAAE,CAAC,EAAE;AACpB,IAAA,oBACEW,yBAAA,CAAAC,aAAA,CAAAC,KAAAA,EAAAA,4BAAA,KACMX,MAAM,EAAA;AACVM,MAAAA,SAAS,EAAEM,8BAAU,CAAC,CAACN,SAAS,CAAC,EAAE;QAAEO,MAAM,EAAEN,QAAQ,EAAC;OAAG,CAAA;AAAE,KAAA,CAAA,EAE1DR,QACE,CAAC,CAAA;AAEV,GAAA;AAEA,EAAA,oBACEU,yBAAA,CAAAC,aAAA,CAACI,sBAAO,EAAAH,4BAAA,CAAA;IAACb,EAAE,EAAEO,UAAU,IAAIP,EAAAA;AAAG,GAAA,EAAKE,MAAM,EAAA;AAAEe,IAAAA,GAAG,EAAEjB,EAAAA;AAAG,GAAA,CAAA,EAChDC,QACM,CAAC,CAAA;AAEd;;AC7BO,IAAMiB,cAAc,GAAG;AAC5BC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,QAAQ,EAAE,UAAA;AACZ,CAAC,CAAA;AAEM,IAAMC,mCAAmC,GAAG;;ACF5C,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,CAAA;AACD,EAAA,IAAMC,SAAS,GAAG,IAAIN,GAAG,CAACH,QAAQ,EAAEO,MAAM,CAACN,QAAQ,CAACO,MAAM,CAAC,CAAA;AAE3D,EAAA,IAAME,kBAAkB,GAAGD,SAAS,CAACE,YAAY,CAAA;EACjD,IAAMC,gBAAgB,GAAGC,KAAK,CAACC,IAAI,CAACJ,kBAAkB,CAACK,IAAI,EAAE,CAAC,CAAA;EAE9D,OACEC,SAAG,CACD,UAAAtB,GAAG,EAAA;AAAA,IAAA,OACDQ,iBAAiB,CAACS,YAAY,CAACM,GAAG,CAACvB,GAAG,CAAC,KAAKgB,kBAAkB,CAACO,GAAG,CAACvB,GAAG,CAAC,CAAA;AAAA,GAAA,EACzEkB,gBACF,CAAC,IAAIM,YAAM,CAAChB,iBAAiB,CAACE,QAAQ,EAAEK,SAAS,CAACL,QAAQ,CAAC,CAAA;AAE/D,CAAC,CAAA;IAEYe,8BAA8B,GAAG,SAAjCA,8BAA8BA,GAAS;EAAA,IAAAC,iBAAA,EAAAC,kBAAA,CAAA;EAClD,IAAMC,IAAI,GAAG,CAAA,CAAAF,iBAAA,GAAAG,WAAW,CAACD,IAAI,MAAAF,IAAAA,IAAAA,iBAAA,KAAhBA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,iBAAA,CAAkBI,KAAK,MAAA,CAAAH,kBAAA,GAAIE,WAAW,CAACD,IAAI,MAAA,IAAA,IAAAD,kBAAA,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAhBA,kBAAA,CAAkBI,WAAW,CAAA,CAAA;EAErE,OAAAC,eAAAA,CAAAA,MAAA,CAAuBJ,IAAI,CAAA,CAAA;AAC7B,EAAC;IAEYK,mBAAmB,GAAGC,WAAK,CAAC,UAAArD,IAAA,EAAqB;AAAA,EAAA,IAAlBsD,WAAW,GAAAtD,IAAA,CAAXsD,WAAW,CAAA;AACrD,EAAA,IAAIA,WAAW,IAAIC,oBAAU,CAACD,WAAW,CAAC,EAAE;AAC1C,IAAA,OAAOE,QAAE,CAAClB,KAAK,EAAEgB,WAAW,CAAC,GACzBA,WAAW,CAACG,IAAI,CAACC,cAAQ,CAACC,QAAE,EAAEX,WAAW,CAACM,WAAW,CAAC,CAAC,GACvDN,WAAW,CAACM,WAAW,CAACI,QAAQ,CAACJ,WAAW,CAAC,CAAA;AACnD,GAAA;AAEA,EAAA,OAAO,IAAI,CAAA;AACb,CAAC;;;;;ACxBD,IAAMM,OAAO,GAAG,SAAVA,OAAOA,CAAA5D,IAAA,EAYP;AAAA,EAAA,IAXJE,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACF2D,KAAK,GAAA7D,IAAA,CAAL6D,KAAK;IAAAC,SAAA,GAAA9D,IAAA,CACL+D,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAG1C,cAAc,CAACC,WAAW,GAAAyC,SAAA;IACjCE,KAAK,GAAAhE,IAAA,CAALgE,KAAK;IACLC,eAAe,GAAAjE,IAAA,CAAfiE,eAAe;IACfC,eAAe,GAAAlE,IAAA,CAAfkE,eAAe;IACJC,MAAM,GAAAnE,IAAA,CAAjB,SAAS,CAAA;IAAAoE,WAAA,GAAApE,IAAA,CACTqE,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,WAAA;IAAAE,YAAA,GAAAtE,IAAA,CACXuE,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,YAAA;IACZ3D,QAAQ,GAAAX,IAAA,CAARW,QAAQ;AACL6D,IAAAA,UAAU,GAAAnE,4CAAA,CAAAL,IAAA,EAAAM,WAAA,CAAA,CAAA;AAEb,EAAA,IAAIyD,IAAI,KAAK3C,cAAc,CAACE,QAAQ,EAAE;AACpC,IAAA,oBAAOT,yBAAA,CAAAC,aAAA,CAAC2D,6BAAQ,EAAA;AAAOF,MAAAA,OAAO,EAAPA,OAAO;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAIK,MAAAA,aAAa,EAAE,KAAA;AAAM,KAAE,CAAC,CAAA;AACpE,GAAA;AAEA,EAAA,IAAMC,YAAY,GAAGR,MAAM,IAAIS,mBAAS,CAACf,KAAK,CAAC,CAAA;AAE/C,EAAA,IAAMgB,WAAW,GAAG,SAAdA,WAAWA,CAAGb,KAAK,EAAA;AAAA,IAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK,CAAA;GAAC,CAAA;AAE3D,EAAA,IAAMc,eAAe,GAAG,SAAlBA,eAAeA,GAAA;IAAA,OACnB,CAACb,eAAe,KACfT,QAAE,CAACuB,QAAQ,EAAEpE,QAAQ,CAAC,GAAGA,QAAQ,EAAE,GAAGa,gBAAgB,CAACtB,EAAE,EAAEwB,QAAQ,CAAC,CAAC,CAAA;AAAA,GAAA,CAAA;EAExE,oBACEb,yBAAA,CAAAC,aAAA,CAACf,kBAAkB,EAAAgB,4BAAA,KAAAiE,eAAA,CAAA;AACX9E,IAAAA,EAAE,EAAFA,EAAAA;AAAE,GAAA,EAAKsE,UAAU,CAAA,EAAA;AACvBS,IAAAA,eAAe,EAAC,QAAQ;AACxBvE,IAAAA,SAAS,EAAC,2FAA2F;IACrG,SAAAyC,EAAAA,EAAAA,CAAAA,MAAA,CAAYwB,YAAY,EAAY,WAAA,CAAA;AACpChE,IAAAA,QAAQ,EAAEmE,eAAAA;AAAgB,GAAA,CAAA,eAE1BjE,yBAAA,CAAAC,aAAA,CAACoE,8BAAU,EAAA;AACTxE,IAAAA,SAAS,EAAC,4DAA4D;AACtEyE,IAAAA,SAAS,EAAC,MAAM;IAChB,SAAAhC,EAAAA,EAAAA,CAAAA,MAAA,CAAYwB,YAAY,EAAkB,iBAAA,CAAA;AAC1CS,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAEZvB,KACS,CAAC,eACbhD,yBAAA,CAAAC,aAAA,CAACoE,8BAAU,EAAA;AACTxE,IAAAA,SAAS,EAAC,gEAAgE;AAC1EyE,IAAAA,SAAS,EAAC,MAAM;IAChB,SAAAhC,EAAAA,EAAAA,CAAAA,MAAA,CAAYwB,YAAY,EAAkB,iBAAA,CAAA;AAC1CS,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAEZlB,eAAe,gBACdrD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKJ,IAAAA,SAAS,EAAC,6DAAA;AAA6D,GAAE,CAAC,GAE/EmE,WAAW,CAACb,KAAK,CAET,CACM,CAAC,CAAA;AAEzB,CAAC;;;;AC3DD,IAAMqB,KAAK,GAAG,SAARA,KAAKA,CAAArF,IAAA,EAAA;AAAA,EAAA,IAAMsF,KAAK,GAAAtF,IAAA,CAALsF,KAAK;IAAAC,oBAAA,GAAAvF,IAAA,CAAEwF,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAErB,eAAe,GAAAlE,IAAA,CAAfkE,eAAe,CAAA;EAAA,oBAC9DrD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,SAAS,EAAC,0CAA0C;IACpD,SAAQ,EAAA,0BAAA;AAA0B,GAAA,EAEjC4E,KAAK,CAACG,MAAM,CAACrC,mBAAmB,CAAC,CAACsC,GAAG,CAAC,UAACC,OAAO,EAAEC,QAAQ,EAAA;AAAA,IAAA,IAAAC,WAAA,CAAA;AAAA,IAAA,oBACvDhF,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAACiF,QAAQ,EAAA;AAAC3E,MAAAA,GAAG,EAAEyE,QAAAA;AAAS,KAAA,eAC5B/E,yBAAA,CAAAC,aAAA,CAAC8C,OAAO,EAAA7C,4BAAA,CAAA,EAAA,EAAAiE,eAAA,CAAAA,eAAA,CAAA,EAAA,EACGW,OAAO,CAAA,EAAA,EAAA,EAAA;AAAEzB,MAAAA,eAAe,EAAfA,eAAAA;AAAe,KAAA,CAAA,EAAA;MACjCvD,QAAQ,EAAEgF,OAAO,CAAChF,QAAS;AAC3BsD,MAAAA,eAAe,EAAE8B,mBAAS,CAACJ,OAAO,CAACK,IAAI,CAAE;AACzC9F,MAAAA,EAAE,EAAA2F,CAAAA,WAAA,GAAEF,OAAO,CAACzF,EAAE,MAAA2F,IAAAA,IAAAA,WAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAA,GAAIF,OAAO,CAACM,IAAAA;KAC3B,CAAA,CAAC,EACDT,eAAe,IAAIO,mBAAS,CAACJ,OAAO,CAACL,KAAK,CAAC,iBAC1CzE,yBAAA,CAAAC,aAAA,CAAAD,yBAAA,CAAAiF,QAAA,qBACEjF,yBAAA,CAAAC,aAAA,CAACuE,KAAK,EAAA;AAAOG,MAAAA,eAAe,EAAfA,eAAe;MAAIF,KAAK,EAAEK,OAAO,CAACL,KAAAA;AAAM,KAAE,CAAC,EACvDA,KAAK,CAACY,MAAM,GAAG,CAAC,KAAKN,QAAQ,iBAC5B/E,yBAAA,CAAAC,aAAA,CAAA,IAAA,EAAA;AAAIJ,MAAAA,SAAS,EAAC,oCAAA;KAAsC,CAEtD,CAEU,CAAC,CAAA;AAAA,GAClB,CACE,CAAC,CAAA;AAAA;;;;;ACrBR,IAAMyF,YAAY,GAAG,SAAfA,YAAYA,CAAAnG,IAAA,EAIZ;AAAA,EAAA,IAAAoG,YAAA,GAAApG,IAAA,CAHJqG,OAAO;IAAPA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA;AAAEvC,MAAAA,KAAK,EAAE,EAAE;AAAEyB,MAAAA,KAAK,EAAE,EAAE;AAAEgB,MAAAA,kBAAkB,EAAE,KAAA;AAAM,KAAC,GAAAF,YAAA;IAC7DG,YAAY,GAAAvG,IAAA,CAAZuG,YAAY;IACZC,kBAAkB,GAAAxG,IAAA,CAAlBwG,kBAAkB,CAAA;AAElB,EAAA,IAAQ3C,KAAK,GAA+CwC,OAAO,CAA3DxC,KAAK;IAAEyB,KAAK,GAAwCe,OAAO,CAApDf,KAAK;IAAEgB,kBAAkB,GAAoBD,OAAO,CAA7CC,kBAAkB;AAAK9B,IAAAA,UAAU,GAAAnE,4CAAA,CAAKgG,OAAO,EAAA/F,SAAA,CAAA,CAAA;EAEnE,oBACEO,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEJ,IAAAA,SAAS,EAAC,kHAAkH;IAC5H,SAAQ,EAAA,yBAAA;AAAyB,GAAA,eAEjCG,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAAC,4BAAA,CAAA;AACEL,IAAAA,SAAS,EAAC,2GAA2G;AACrH+F,IAAAA,OAAO,EAAEF,YAAAA;AAAa,GAAA,EAAAvB,aAAA,CAAA,EAAA,EACb0B,UAAI,CAAC,CAAC,MAAM,CAAC,EAAElC,UAAU,CAAC,CAElC8B,CAAAA,EAAAA,kBAAkB,iBACjBzF,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEJ,IAAAA,SAAS,EAAC,oCAAoC;AAC9C,IAAA,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAYwD,iBAAS,CAAC9C,KAAK,CAAC,EAAkB,iBAAA,CAAA;IAC9C,aAAAV,EAAAA,EAAAA,CAAAA,MAAA,CAAgBU,KAAK,EAAA,iBAAA,CAAA;AAAkB,GAAA,eAEvChD,yBAAA,CAAAC,aAAA,CAAC8F,wBAAI,EAAA;AAACC,IAAAA,IAAI,EAAE,EAAA;AAAG,GAAE,CACb,CACP,eACDhG,yBAAA,CAAAC,aAAA,CAACoE,8BAAU,EAAA;AACTC,IAAAA,SAAS,EAAC,MAAM;AAChBC,IAAAA,KAAK,EAAC,OAAO;AACb1E,IAAAA,SAAS,EAAEM,8BAAU,CAAC,qCAAqC,EAAA8F,mCAAA,CAAA;AACzD,MAAA,gDAAgD,EAC9CR,kBAAAA;KACD,EAAA,MAAM,EAAGE,kBAAkB,CAC7B,CAAA;GAEA3C,EAAAA,KACS,CACT,CAAC,EACLyB,KAAK,iBAAIzE,yBAAA,CAAAC,aAAA,CAACuE,KAAK,EAAA;AAAOC,IAAAA,KAAK,EAALA,KAAK;IAAIE,eAAe,EAAA,IAAA;AAAA,GAAE,CAC9C,CAAC,CAAA;AAEV;;;;;ACjDA,IAAMuB,OAAO,GAAG,SAAVA,OAAOA,CAAA/G,IAAA,EAAA;AAAA,EAAA,IAAMoF,KAAK,GAAApF,IAAA,CAALoF,KAAK,CAAA;EAAA,oBACtBvE,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAWsE,IAAAA,KAAK,EAALA,KAAK;AAAI4B,IAAAA,MAAM,EAAC,IAAI;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,KAAK,EAAC,IAAA;GACxDrG,eAAAA,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEqG,IAAAA,CAAC,EAAC,y5BAAy5B;AAC35BC,IAAAA,IAAI,EAAC,cAAA;AAAc,GACpB,CACE,CAAC,CAAA;AAAA;;;;;;;;;;"}
@@ -7,7 +7,7 @@ var Button = require('@bigbinary/neetoui/Button');
7
7
  var ramda = require('ramda');
8
8
  var reactI18next = require('react-i18next');
9
9
  var reactRouterDom = require('react-router-dom');
10
- var Chevron = require('./Chevron-7dc6dc06.js');
10
+ var Chevron = require('./Chevron-64f56973.js');
11
11
  require('@babel/runtime/helpers/extends');
12
12
  require('@babel/runtime/helpers/defineProperty');
13
13
  require('@babel/runtime/helpers/objectWithoutProperties');
@@ -48,15 +48,15 @@ var useEditor = function useEditor(_ref) {
48
48
  var _useFormikContext = formik.useFormikContext(),
49
49
  setFieldValue = _useFormikContext.setFieldValue,
50
50
  errors = _useFormikContext.errors;
51
- var handleContentChange = function handleContentChange(content) {
51
+ var handleContentChange = React.useCallback(function (content) {
52
52
  setFieldValue(editorContentFieldName, content);
53
53
  onContentChange === null || onContentChange === void 0 ? void 0 : onContentChange(content);
54
- };
55
- var handleAttachmentChange = function handleAttachmentChange(attachments) {
54
+ }, [editorContentFieldName, onContentChange, setFieldValue]);
55
+ var handleAttachmentChange = React.useCallback(function (attachments) {
56
56
  setAttachments(attachments);
57
57
  setFieldValue("attachments", attachments);
58
58
  onAttachmentChange === null || onAttachmentChange === void 0 ? void 0 : onAttachmentChange(attachments);
59
- };
59
+ }, [onAttachmentChange, setAttachments, setFieldValue]);
60
60
  var handleTitleChange = function handleTitleChange(event) {
61
61
  var title = event.target.value;
62
62
  setFieldValue(titleFieldName, title);
@@ -156,6 +156,9 @@ var Editor = function Editor(_ref) {
156
156
  editorRef.current = node;
157
157
  getEditorRef(node);
158
158
  }, []);
159
+ var addons = React.useMemo(function () {
160
+ return EDITOR_ADDONS.concat(editorProps.addons || []);
161
+ }, [editorProps.addons]);
159
162
  return /*#__PURE__*/React__default["default"].createElement("div", {
160
163
  className: "neeto-molecules-document__wrapper",
161
164
  "data-testid": "document-editor-container",
@@ -169,10 +172,11 @@ var Editor = function Editor(_ref) {
169
172
  name: editorContentFieldName,
170
173
  ref: setEditorRef,
171
174
  menuClassName: classnames__default["default"]("neeto-molecules-document-editor__menubar", menuClassName)
172
- }, _objectSpread({
175
+ }, _objectSpread(_objectSpread({
173
176
  attachments: attachments
174
- }, editorProps), {
175
- addons: EDITOR_ADDONS.concat(editorProps.addons || []),
177
+ }, editorProps), {}, {
178
+ addons: addons
179
+ }), {
176
180
  onChange: handleContentChange,
177
181
  onChangeAttachments: handleAttachmentChange
178
182
  }), /*#__PURE__*/React__default["default"].createElement("div", {
@@ -195,6 +199,8 @@ var Editor = function Editor(_ref) {
195
199
  style: "body3"
196
200
  }, errors[editorContentFieldName]))));
197
201
  };
202
+ Editor.displayName = "DocumentEditor";
203
+ var index = /*#__PURE__*/React.memo(Editor);
198
204
 
199
- module.exports = Editor;
205
+ module.exports = index;
200
206
  //# sourceMappingURL=DocumentEditor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DocumentEditor.js","sources":["../../src/components/DocumentEditor/constants.js","../../src/components/DocumentEditor/hooks/useEditor.js","../../src/components/DocumentEditor/utils.js","../../src/components/DocumentEditor/index.jsx"],"sourcesContent":["export const EDITOR_ADDONS = [\n \"highlight\",\n \"emoji\",\n \"video-upload\",\n \"code-block\",\n \"block-quote\",\n \"image-upload\",\n \"image-upload-unsplash\",\n \"divider\",\n \"video-embed\",\n \"undo\",\n \"redo\",\n \"table\",\n];\n\nexport const DEFAULT_EDITOR_PROPS = {\n isCharacterCountActive: true,\n isMenuIndependent: true,\n addons: [],\n};\n","import { useFormikContext } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\n\nconst useEditor = ({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n}) => {\n const { setFieldValue, errors } = useFormikContext();\n\n const handleContentChange = content => {\n setFieldValue(editorContentFieldName, content);\n onContentChange?.(content);\n };\n\n const handleAttachmentChange = attachments => {\n setAttachments(attachments);\n setFieldValue(\"attachments\", attachments);\n onAttachmentChange?.(attachments);\n };\n\n const handleTitleChange = event => {\n const title = event.target.value;\n setFieldValue(titleFieldName, title);\n onTitleChange?.(title);\n };\n\n const handleEditorBackspaceKeypress = () => {\n const editor = editorRef.current?.editor;\n const selection = editor?.state?.selection;\n if (\n editor?.isFocused &&\n isPresent(titleRef.current) &&\n selection?.anchor === 1\n ) {\n const title = titleRef.current.value;\n titleRef.current.focus();\n titleRef.current.setSelectionRange(title?.length, title?.length);\n }\n };\n\n const titleHotkeyRef = useHotkeys(\n \"return\",\n () => {\n editorRef.current?.editor?.commands?.insertContentAt(0, \"<p />\");\n editorRef.current?.editor?.commands?.focus(\"start\");\n },\n { mode: \"scoped\" }\n );\n\n const editorHotkeyRef = useHotkeys(\n \"backspace\",\n handleEditorBackspaceKeypress,\n { mode: \"scoped\" }\n );\n\n return {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n };\n};\n\nexport default useEditor;\n","export const getUniqueAttachments = attachments => {\n const uniqueAttachments = attachments?.reduce(\n (uniqueAttachments, attachment) => ({\n ...uniqueAttachments,\n [attachment.signedId]: attachment,\n }),\n {}\n );\n\n return Object.values(uniqueAttachments || {});\n};\n","import React, { useCallback, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Typography } from \"neetoui\";\nimport { Textarea } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_EDITOR_PROPS, EDITOR_ADDONS } from \"./constants\";\nimport \"./editor.scss\";\nimport useEditor from \"./hooks/useEditor\";\nimport { getUniqueAttachments } from \"./utils\";\n\nconst Editor = ({\n attachments: initialAttachments,\n onContentChange,\n onAttachmentChange,\n onTitleChange,\n getTitleRef = noop,\n getEditorRef = noop,\n menuClassName,\n editorContentFieldName = \"htmlContent\",\n titleFieldName = \"title\",\n editorProps = DEFAULT_EDITOR_PROPS,\n titleProps = {},\n}) => {\n const { t } = useTranslation();\n\n const titleRef = useRef();\n const editorRef = useRef();\n\n const [attachments, setAttachments] = useState(() =>\n getUniqueAttachments(initialAttachments)\n );\n\n const {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n } = useEditor({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n });\n\n const setTitleRef = node => {\n titleHotkeyRef.current = node;\n getTitleRef(node);\n titleRef.current = node;\n };\n\n const setEditorRef = useCallback(node => {\n editorRef.current = node;\n getEditorRef(node);\n }, []);\n\n return (\n <div\n className=\"neeto-molecules-document__wrapper\"\n data-testid=\"document-editor-container\"\n ref={editorHotkeyRef}\n >\n <FormikEditor\n attachmentsClassName=\"editor-content-attachments\"\n className=\"h-full w-full\"\n contentClassName=\"editor-content__wrapper neeto-molecules-document__container\"\n data-cy=\"neeto-molecules-document-content-text-area\"\n error={undefined}\n name={editorContentFieldName}\n ref={setEditorRef}\n menuClassName={classNames(\n \"neeto-molecules-document-editor__menubar\",\n menuClassName\n )}\n {...{ attachments, ...editorProps }}\n addons={EDITOR_ADDONS.concat(editorProps.addons || [])}\n onChange={handleContentChange}\n onChangeAttachments={handleAttachmentChange}\n >\n <div className=\"neeto-molecules-document__container px-4\">\n <Textarea\n nakedTextarea\n className=\"neeto-molecules-document__title\"\n data-cy=\"neeto-molecules-document-title-text-field\"\n name={titleFieldName}\n ref={setTitleRef}\n rows={1}\n placeholder={\n titleProps.placeholder || t(\"neetoMolecules.documentEditor.title\")\n }\n onChange={handleTitleChange}\n onKeyDown={e =>\n e.key === \"Enter\" && !e.shiftKey && e.preventDefault()\n }\n {...titleProps}\n />\n {errors[editorContentFieldName] && (\n <Typography\n className=\"neeto-ui-input__error neeto-molecules-editor-content__error\"\n data-cy=\"articles-content-input-error\"\n style=\"body3\"\n >\n {errors[editorContentFieldName]}\n </Typography>\n )}\n </div>\n </FormikEditor>\n </div>\n );\n};\n\nEditor.propTypes = {\n /**\n * List of initial attachments.\n */\n attachments: PropTypes.arrayOf(\n PropTypes.shape({\n contentType: PropTypes.string,\n filename: PropTypes.string,\n signedId: PropTypes.string,\n url: PropTypes.string,\n })\n ),\n /**\n * Callback that will be triggered when the editor content changes.\n * This function is not throttled.\n */\n onContentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the attachments changes.\n */\n onAttachmentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the article title changes.\n */\n onTitleChange: PropTypes.func,\n /**\n * This function will be called with the title node reference.\n */\n getTitleRef: PropTypes.func,\n /**\n * This function will be called with editor reference.\n */\n getEditorRef: PropTypes.func,\n /**\n * Formik field name of the editor. The default value is `htmlContent`.\n */\n editorContentFieldName: PropTypes.string,\n /**\n * Formik field name of the title. The default value is `title`.\n */\n titleFieldName: PropTypes.string,\n /**\n * These props will be passed down to the editor component.\n */\n editorProps: PropTypes.object,\n /**\n * These props will be passed down to the title text area component.\n */\n titleProps: PropTypes.object,\n /**\n * A prop to pass class names to the editor menubar.\n */\n menuClassName: PropTypes.string,\n};\n\nexport default Editor;\n"],"names":["EDITOR_ADDONS","DEFAULT_EDITOR_PROPS","isCharacterCountActive","isMenuIndependent","addons","useEditor","_ref","onContentChange","editorContentFieldName","setAttachments","onAttachmentChange","onTitleChange","titleFieldName","editorRef","titleRef","_useFormikContext","useFormikContext","setFieldValue","errors","handleContentChange","content","handleAttachmentChange","attachments","handleTitleChange","event","title","target","value","handleEditorBackspaceKeypress","_editorRef$current","_editor$state","editor","current","selection","state","isFocused","isPresent","anchor","focus","setSelectionRange","length","titleHotkeyRef","useHotkeys","_editorRef$current2","_editorRef$current2$e","_editorRef$current2$e2","_editorRef$current3","_editorRef$current3$e","_editorRef$current3$e2","commands","insertContentAt","mode","editorHotkeyRef","getUniqueAttachments","uniqueAttachments","reduce","attachment","_objectSpread","_defineProperty","signedId","Object","values","Editor","initialAttachments","_ref$getTitleRef","getTitleRef","noop","_ref$getEditorRef","getEditorRef","menuClassName","_ref$editorContentFie","_ref$titleFieldName","_ref$editorProps","editorProps","_ref$titleProps","titleProps","_useTranslation","useTranslation","t","useRef","_useState","useState","_useState2","_slicedToArray","_useEditor","setTitleRef","node","setEditorRef","useCallback","React","createElement","className","ref","FormikEditor","_extends","attachmentsClassName","contentClassName","error","undefined","name","classNames","concat","onChange","onChangeAttachments","Textarea","nakedTextarea","rows","placeholder","onKeyDown","e","key","shiftKey","preventDefault","Typography","style"],"mappings":"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"}
1
+ {"version":3,"file":"DocumentEditor.js","sources":["../../src/components/DocumentEditor/constants.js","../../src/components/DocumentEditor/hooks/useEditor.js","../../src/components/DocumentEditor/utils.js","../../src/components/DocumentEditor/index.jsx"],"sourcesContent":["export const EDITOR_ADDONS = [\n \"highlight\",\n \"emoji\",\n \"video-upload\",\n \"code-block\",\n \"block-quote\",\n \"image-upload\",\n \"image-upload-unsplash\",\n \"divider\",\n \"video-embed\",\n \"undo\",\n \"redo\",\n \"table\",\n];\n\nexport const DEFAULT_EDITOR_PROPS = {\n isCharacterCountActive: true,\n isMenuIndependent: true,\n addons: [],\n};\n","import { useCallback } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\n\nconst useEditor = ({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n}) => {\n const { setFieldValue, errors } = useFormikContext();\n\n const handleContentChange = useCallback(\n content => {\n setFieldValue(editorContentFieldName, content);\n onContentChange?.(content);\n },\n [editorContentFieldName, onContentChange, setFieldValue]\n );\n\n const handleAttachmentChange = useCallback(\n attachments => {\n setAttachments(attachments);\n setFieldValue(\"attachments\", attachments);\n onAttachmentChange?.(attachments);\n },\n [onAttachmentChange, setAttachments, setFieldValue]\n );\n\n const handleTitleChange = event => {\n const title = event.target.value;\n setFieldValue(titleFieldName, title);\n onTitleChange?.(title);\n };\n\n const handleEditorBackspaceKeypress = () => {\n const editor = editorRef.current?.editor;\n const selection = editor?.state?.selection;\n if (\n editor?.isFocused &&\n isPresent(titleRef.current) &&\n selection?.anchor === 1\n ) {\n const title = titleRef.current.value;\n titleRef.current.focus();\n titleRef.current.setSelectionRange(title?.length, title?.length);\n }\n };\n\n const titleHotkeyRef = useHotkeys(\n \"return\",\n () => {\n editorRef.current?.editor?.commands?.insertContentAt(0, \"<p />\");\n editorRef.current?.editor?.commands?.focus(\"start\");\n },\n { mode: \"scoped\" }\n );\n\n const editorHotkeyRef = useHotkeys(\n \"backspace\",\n handleEditorBackspaceKeypress,\n { mode: \"scoped\" }\n );\n\n return {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n };\n};\n\nexport default useEditor;\n","export const getUniqueAttachments = attachments => {\n const uniqueAttachments = attachments?.reduce(\n (uniqueAttachments, attachment) => ({\n ...uniqueAttachments,\n [attachment.signedId]: attachment,\n }),\n {}\n );\n\n return Object.values(uniqueAttachments || {});\n};\n","import React, { memo, useCallback, useMemo, useRef, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { noop } from \"neetocist\";\nimport { FormikEditor } from \"neetoeditor\";\nimport { Typography } from \"neetoui\";\nimport { Textarea } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DEFAULT_EDITOR_PROPS, EDITOR_ADDONS } from \"./constants\";\nimport \"./editor.scss\";\nimport useEditor from \"./hooks/useEditor\";\nimport { getUniqueAttachments } from \"./utils\";\n\nconst Editor = ({\n attachments: initialAttachments,\n onContentChange,\n onAttachmentChange,\n onTitleChange,\n getTitleRef = noop,\n getEditorRef = noop,\n menuClassName,\n editorContentFieldName = \"htmlContent\",\n titleFieldName = \"title\",\n editorProps = DEFAULT_EDITOR_PROPS,\n titleProps = {},\n}) => {\n const { t } = useTranslation();\n\n const titleRef = useRef();\n const editorRef = useRef();\n\n const [attachments, setAttachments] = useState(() =>\n getUniqueAttachments(initialAttachments)\n );\n\n const {\n handleContentChange,\n handleAttachmentChange,\n handleTitleChange,\n editorHotkeyRef,\n titleHotkeyRef,\n errors,\n } = useEditor({\n onContentChange,\n editorContentFieldName,\n setAttachments,\n onAttachmentChange,\n onTitleChange,\n titleFieldName,\n editorRef,\n titleRef,\n });\n\n const setTitleRef = node => {\n titleHotkeyRef.current = node;\n getTitleRef(node);\n titleRef.current = node;\n };\n\n const setEditorRef = useCallback(node => {\n editorRef.current = node;\n getEditorRef(node);\n }, []);\n\n const addons = useMemo(\n () => EDITOR_ADDONS.concat(editorProps.addons || []),\n [editorProps.addons]\n );\n\n return (\n <div\n className=\"neeto-molecules-document__wrapper\"\n data-testid=\"document-editor-container\"\n ref={editorHotkeyRef}\n >\n <FormikEditor\n attachmentsClassName=\"editor-content-attachments\"\n className=\"h-full w-full\"\n contentClassName=\"editor-content__wrapper neeto-molecules-document__container\"\n data-cy=\"neeto-molecules-document-content-text-area\"\n error={undefined}\n name={editorContentFieldName}\n ref={setEditorRef}\n menuClassName={classNames(\n \"neeto-molecules-document-editor__menubar\",\n menuClassName\n )}\n {...{ attachments, ...editorProps, addons }}\n onChange={handleContentChange}\n onChangeAttachments={handleAttachmentChange}\n >\n <div className=\"neeto-molecules-document__container px-4\">\n <Textarea\n nakedTextarea\n className=\"neeto-molecules-document__title\"\n data-cy=\"neeto-molecules-document-title-text-field\"\n name={titleFieldName}\n ref={setTitleRef}\n rows={1}\n placeholder={\n titleProps.placeholder || t(\"neetoMolecules.documentEditor.title\")\n }\n onChange={handleTitleChange}\n onKeyDown={e =>\n e.key === \"Enter\" && !e.shiftKey && e.preventDefault()\n }\n {...titleProps}\n />\n {errors[editorContentFieldName] && (\n <Typography\n className=\"neeto-ui-input__error neeto-molecules-editor-content__error\"\n data-cy=\"articles-content-input-error\"\n style=\"body3\"\n >\n {errors[editorContentFieldName]}\n </Typography>\n )}\n </div>\n </FormikEditor>\n </div>\n );\n};\n\nEditor.propTypes = {\n /**\n * List of initial attachments.\n */\n attachments: PropTypes.arrayOf(\n PropTypes.shape({\n contentType: PropTypes.string,\n filename: PropTypes.string,\n signedId: PropTypes.string,\n url: PropTypes.string,\n })\n ),\n /**\n * Callback that will be triggered when the editor content changes.\n * This function is not throttled.\n */\n onContentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the attachments changes.\n */\n onAttachmentChange: PropTypes.func,\n /**\n * Callback that will be triggered when the article title changes.\n */\n onTitleChange: PropTypes.func,\n /**\n * This function will be called with the title node reference.\n */\n getTitleRef: PropTypes.func,\n /**\n * This function will be called with editor reference.\n */\n getEditorRef: PropTypes.func,\n /**\n * Formik field name of the editor. The default value is `htmlContent`.\n */\n editorContentFieldName: PropTypes.string,\n /**\n * Formik field name of the title. The default value is `title`.\n */\n titleFieldName: PropTypes.string,\n /**\n * These props will be passed down to the editor component.\n */\n editorProps: PropTypes.object,\n /**\n * These props will be passed down to the title text area component.\n */\n titleProps: PropTypes.object,\n /**\n * A prop to pass class names to the editor menubar.\n */\n menuClassName: PropTypes.string,\n};\n\nEditor.displayName = \"DocumentEditor\";\n\nexport default memo(Editor);\n"],"names":["EDITOR_ADDONS","DEFAULT_EDITOR_PROPS","isCharacterCountActive","isMenuIndependent","addons","useEditor","_ref","onContentChange","editorContentFieldName","setAttachments","onAttachmentChange","onTitleChange","titleFieldName","editorRef","titleRef","_useFormikContext","useFormikContext","setFieldValue","errors","handleContentChange","useCallback","content","handleAttachmentChange","attachments","handleTitleChange","event","title","target","value","handleEditorBackspaceKeypress","_editorRef$current","_editor$state","editor","current","selection","state","isFocused","isPresent","anchor","focus","setSelectionRange","length","titleHotkeyRef","useHotkeys","_editorRef$current2","_editorRef$current2$e","_editorRef$current2$e2","_editorRef$current3","_editorRef$current3$e","_editorRef$current3$e2","commands","insertContentAt","mode","editorHotkeyRef","getUniqueAttachments","uniqueAttachments","reduce","attachment","_objectSpread","_defineProperty","signedId","Object","values","Editor","initialAttachments","_ref$getTitleRef","getTitleRef","noop","_ref$getEditorRef","getEditorRef","menuClassName","_ref$editorContentFie","_ref$titleFieldName","_ref$editorProps","editorProps","_ref$titleProps","titleProps","_useTranslation","useTranslation","t","useRef","_useState","useState","_useState2","_slicedToArray","_useEditor","setTitleRef","node","setEditorRef","useMemo","concat","React","createElement","className","ref","FormikEditor","_extends","attachmentsClassName","contentClassName","error","undefined","name","classNames","onChange","onChangeAttachments","Textarea","nakedTextarea","rows","placeholder","onKeyDown","e","key","shiftKey","preventDefault","Typography","style","displayName","memo"],"mappings":"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"}
@@ -10,7 +10,7 @@ var Button = require('@bigbinary/neetoui/Button');
10
10
  var ramda = require('ramda');
11
11
  var reactI18next = require('react-i18next');
12
12
  var reactRouterDom = require('react-router-dom');
13
- var Chevron = require('./Chevron-7dc6dc06.js');
13
+ var Chevron = require('./Chevron-64f56973.js');
14
14
  var useFetchNeetoApps = require('@bigbinary/neeto-commons-frontend/react-utils/useFetchNeetoApps');
15
15
  var Neeto = require('@bigbinary/neeto-icons/typeface-logos/Neeto');
16
16
  var AppIcons = require('@bigbinary/neeto-icons/typeface-logos');
@@ -1 +1 @@
1
- {"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\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 isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <React.Fragment 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, items, navLink })\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-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !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 >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </React.Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import React, { useEffect, useMemo, useState } 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 } 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 { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport { getSidebarStateLocalStorageKey } from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\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 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 (!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 const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = navLinks.find(\n link => isPresent(link.isConfigureNavLink) && link.isConfigureNavLink\n );\n if (settingsNavLink.to) {\n history.push(buildUrl(settingsNavLink.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 <div\n data-testid=\"sidebar-container\"\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-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\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 }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\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 count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\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\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position"],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\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 isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <React.Fragment 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, items, navLink })\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-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !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 >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </React.Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import React, { useEffect, useMemo, useState } 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 } 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 { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport { getSidebarStateLocalStorageKey } from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\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 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 (!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 const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = navLinks.find(\n link => isPresent(link.isConfigureNavLink) && link.isConfigureNavLink\n );\n if (settingsNavLink.to) {\n history.push(buildUrl(settingsNavLink.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 <div\n data-testid=\"sidebar-container\"\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-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\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 }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\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 count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n onClick: PropTypes.func,\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\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAmD;AAAA,EAAA,IAAAC,qBAAA,CAAA;AAAA,EAAA,IAA7CC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAEC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ,CAAA;EACtD,IAAMC,WAAW,GAAGC,WAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAAA;AACjD,EAAA,IAAMC,QAAQ,GAAA,OAAA,CAAAC,MAAA,CAAWC,oBAAU,CAACN,WAAW,CAACO,WAAW,EAAE,CAAC,CAAE,CAAA;AAChE,EAAA,IAAMC,mBAAmB,GAAA,CAAAZ,qBAAA,GAAGa,mBAAoB,CAACL,QAAQ,CAAC,MAAAR,IAAAA,IAAAA,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAIc,yBAAK,CAAA;EACnE,IAAMC,aAAa,GAAGd,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,UAAU,GAAIW,mBAAmB,CAAA;AAEvD,EAAA,IAAAI,kBAAA,GAAiBC,qCAAiB,EAAE;IAA5BC,IAAI,GAAAF,kBAAA,CAAJE,IAAI,CAAA;EAEZ,IAAIC,WAAW,GAAGhB,QAAQ,CAAA;AAC1B,EAAA,IAAIe,IAAI,KAAJA,IAAAA,IAAAA,IAAI,eAAJA,IAAI,CAAEE,SAAS,EAAE;IACnB,IAAMC,OAAO,GAAGC,gBAAM,CAAC;AAAEC,MAAAA,IAAI,EAAEnB,WAAAA;AAAY,KAAC,EAAEc,IAAI,CAACE,SAAS,CAAC,CAAA;AAC7D,IAAA,IAAIC,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEG,GAAG,EAAE;AAChBL,MAAAA,WAAW,GAAG,IAAIM,GAAG,CAACJ,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEG,GAAG,CAAC,CAACE,QAAQ,CAAA;AAC9C,KAAA;AACF,GAAA;EAEA,oBACEC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,wEAAwE;IAClF,SAAQ,EAAA,cAAA;AAAc,GAAA,eAEtBF,yBAAA,CAAAC,aAAA,CAACE,mBAAI,EAAA;AACHD,IAAAA,SAAS,EAAC,+CAA+C;AACzDE,IAAAA,EAAE,EAAEZ,WAAY;AAChBa,IAAAA,OAAO,EAAE9B,gBAAAA;GAETyB,eAAAA,yBAAA,CAAAC,aAAA,CAACb,aAAa,EAAE,IAAA,CACZ,CACH,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,eAAA,aAAeY,yBAAK,CAACM,IAAI,CAACnC,MAAM,CAAC;;;;;AC1BjC,IAAMoC,WAAW,GAAG,SAAdA,WAAWA,CAAGC,KAAK,EAAA;AAAA,EAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK,CAAA;AAAA,CAAC,CAAA;AAE3D,IAAMC,KAAK,GAAG,SAARA,KAAKA,CAAArC,IAAA,EAIL;AAAA,EAAA,IAHJsC,QAAQ,GAAAtC,IAAA,CAARsC,QAAQ;IACSC,yBAAyB,GAAAvC,IAAA,CAA1CwC,eAAe;IACfC,uBAAuB,GAAAzC,IAAA,CAAvByC,uBAAuB,CAAA;AAEvB,EAAA,IAAMC,QAAQ,GAAGC,0BAAW,EAAE,CAAA;AAC9B,EAAA,IAAAC,SAAA,GAAwDC,cAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/DI,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,uBAAuB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpD,EAAA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAA4C;AAAA,IAAA,IAAtCC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;MAAEC,KAAK,GAAAH,KAAA,CAALG,KAAK;MAAEC,OAAO,GAAAJ,KAAA,CAAPI,OAAO,CAAA;AAC3D,IAAA,IAAIC,sBAAY,CAACF,KAAK,CAAC,EAAE,OAAA;IAEzB,IAAIC,OAAO,CAACE,kBAAkB,IAAIC,oBAAU,CAACH,OAAO,CAACD,KAAK,CAAC,EAAE;AAC3Db,MAAAA,uBAAuB,CAACc,OAAO,CAACvB,EAAE,CAAC,CAAA;AACrC,KAAA;IAEA,IAAIqB,QAAQ,EAAE,EAAE;MACdJ,uBAAuB,CAACU,SAAG,CAAC,CAAA;MAC5BP,KAAK,CAACQ,cAAc,EAAE,CAAA;AAEtB,MAAA,OAAA;AACF,KAAA;IAEAX,uBAAuB,CAAC,IAAI,CAAC,CAAA;GAC9B,CAAA;EAED,oBACErB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uEAAA;AAAuE,GAAA,EACnFQ,QAAQ,CAACuB,MAAM,CAACC,2BAAmB,CAAC,CAACC,GAAG,CAAC,UAACR,OAAO,EAAES,KAAK,EAAK;AAC5D,IAAA,IACEC,KAAK,GAQHV,OAAO,CARTU,KAAK;MACLjC,EAAE,GAOAuB,OAAO,CAPTvB,EAAE;MACFkC,IAAI,GAMFX,OAAO,CANTW,IAAI;MACJZ,KAAK,GAKHC,OAAO,CALTD,KAAK;MACLG,kBAAkB,GAIhBF,OAAO,CAJTE,kBAAkB;MAAAU,qBAAA,GAIhBZ,OAAO,CAHTf,eAAe;AAAfA,MAAAA,eAAe,GAAA2B,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;MAAAC,cAAA,GAGrBb,OAAO,CAFTnB,KAAK;AAALA,MAAAA,KAAK,GAAAgC,cAAA,KAAG,KAAA,CAAA,GAAA,IAAI,GAAAA,cAAA;AACTC,MAAAA,UAAU,GAAAC,4CAAA,CACXf,OAAO,EAAAgB,SAAA,CAAA,CAAA;IACX,IAAMC,OAAO,GAAGN,IAAI,CAAA;AACpB,IAAA,IAAMzC,GAAG,GAAG,IAAIC,GAAG,CAACM,EAAE,EAAEyC,MAAM,CAAC/B,QAAQ,CAACgC,IAAI,CAAC,CAAA;AAC7C,IAAA,IAAMrB,QAAQ,GAAG,SAAXA,QAAQA,GAAA;MAAA,OACZsB,QAAE,CAACC,QAAQ,EAAEP,UAAU,CAAChB,QAAQ,CAAC,GAC7BgB,UAAU,CAAChB,QAAQ,EAAE,GACrBX,QAAQ,CAACf,QAAQ,CAACkD,UAAU,CAACpD,GAAG,CAACE,QAAQ,CAAC,CAAA;AAAA,KAAA,CAAA;IAEhD,IAAMmD,cAAc,GAClBzB,QAAQ,EAAE,IAAIL,oBAAoB,IAAI,CAACT,yBAAyB,CAAA;AAElE,IAAA,oBACEX,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAACmD,QAAQ,EAAA;AAACC,MAAAA,GAAG,EAAEhB,KAAAA;AAAM,KAAA,eACzBpC,yBAAA,CAAAC,aAAA,CAACoD,0BAAkB,EAAAC,4BAAA,CAAA;AACjBC,MAAAA,eAAe,EAAC,QAAQ;AACxBrD,MAAAA,SAAS,EAAC,8GAA8G;AACxH,MAAA,aAAA,EAAA,UAAA,CAAApB,MAAA,CAAwB0E,mBAAS,CAACnB,KAAK,CAAC,CAAG;MAC3ChC,OAAO,EAAE,SAAAA,OAAAA,CAAAmB,KAAK,EAAA;AAAA,QAAA,OACZF,kBAAkB,CAAC;AAAEE,UAAAA,KAAK,EAALA,KAAK;AAAEC,UAAAA,QAAQ,EAARA,QAAQ;AAAEC,UAAAA,KAAK,EAALA,KAAK;AAAEC,UAAAA,OAAO,EAAPA,OAAAA;AAAQ,SAAC,CAAC,CAAA;AAAA,OAAA;AACxD,KAAA,EAAA8B,aAAA,CAAA;AACKhC,MAAAA,QAAQ,EAARA,QAAQ;AAAErB,MAAAA,EAAE,EAAFA,EAAAA;AAAE,KAAA,EAAKqC,UAAU,CAEhCH,CAAAA,EAAAA,IAAI,iBACHtC,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,oCAAoC;MAC9C,aAAamC,EAAAA,KAAAA;AAAM,KAAA,eAEnBrC,yBAAA,CAAAC,aAAA,CAAC2C,OAAO,EAAA,IAAE,CAAC,EACVc,mBAAS,CAAClD,KAAK,CAAC,IAAI,CAACI,eAAe,iBACnCZ,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AAAMC,MAAAA,SAAS,EAAC,4CAAA;KACbK,EAAAA,WAAW,CAACC,KAAK,CACd,CAEJ,CACP,eACDR,yBAAA,CAAAC,aAAA,CAAC0D,8BAAU,EAAA;AACTzD,MAAAA,SAAS,EAAC,gFAAgF;AAC1F0D,MAAAA,SAAS,EAAC,MAAM;AAChBC,MAAAA,KAAK,EAAC,OAAA;KAELxB,EAAAA,KACS,CAAC,EACZX,KAAK,IAAI,CAACG,kBAAkB,iBAC3B7B,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEC,MAAAA,SAAS,EAAE4D,8BAAU,CACnB,8EAA8E,EAC9E;AACE,QAAA,4CAA4C,EAC1CZ,cAAAA;OAEN,CAAA;AAAE,KAAA,eAEFlD,yBAAA,CAAAC,aAAA,CAAC8D,wBAAI,EAAA;AAACC,MAAAA,IAAI,EAAE,EAAA;AAAG,KAAE,CACb,CAEU,CAAC,EACpBtC,KAAK,IAAI,CAACG,kBAAkB,IAAIqB,cAAc,iBAC7ClD,yBAAA,CAAAC,aAAA,CAACgE,aAAK,EAAAR,aAAA,CAAA;AAAO7C,MAAAA,eAAe,EAAfA,eAAe;AAAEc,MAAAA,KAAK,EAALA,KAAAA;KAAUe,EAAAA,UAAU,CAAK,CAE3C,CAAC,CAAA;AAErB,GAAC,CACE,CAAC,CAAA;AAEV,CAAC;;ACjGD,IAAMyB,OAAO,GAAG,SAAVA,OAAOA,CAAA9F,IAAA,EAKP;AAAA,EAAA,IAJJsC,QAAQ,GAAAtC,IAAA,CAARsC,QAAQ;IACRpC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAA6F,oBAAA,GAAA/F,IAAA,CACVwC,eAAe;AAAfA,IAAAA,eAAe,GAAAuD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAC,aAAA,GAAAhG,IAAA,CACvBI,QAAQ;AAARA,IAAAA,QAAQ,GAAA4F,aAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,aAAA,CAAA;AAEd,EAAA,IAAApD,SAAA,GAAkDC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,kCAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1DqD,IAAAA,iBAAiB,GAAAnD,UAAA,CAAA,CAAA,CAAA;AAAEoD,IAAAA,oBAAoB,GAAApD,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAqD,gBAAA,GAAwDC,mCAAe,CACrEC,2CAAmC,EACnC,IACF,CAAC;IAAAC,iBAAA,GAAAvD,kCAAA,CAAAoD,gBAAA,EAAA,CAAA,CAAA;AAHMI,IAAAA,oBAAoB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAE7D,IAAAA,uBAAuB,GAAA6D,iBAAA,CAAA,CAAA,CAAA,CAAA;EAKpD,IAAAE,iBAAA,GAAoDJ,mCAAe,CACjEK,sCAA8B,EAAE,EAChC,KACF,CAAC;IAAAC,iBAAA,GAAA3D,kCAAA,CAAAyD,iBAAA,EAAA,CAAA,CAAA;AAHMG,IAAAA,kBAAkB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,iBAAA,CAAA,CAAA,CAAA,CAAA;AAKhD,EAAA,IAAMhE,QAAQ,GAAGC,0BAAW,EAAE,CAAA;AAC9B,EAAA,IAAMkE,OAAO,GAAGC,yBAAU,EAAE,CAAA;AAC5B,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,IAAA,OAASzC,MAAM,CAAC0C,UAAU,GAAG,GAAG,CAAA;AAAA,GAAA,CAAA;EACpD,IAAMC,eAAe,GAAGF,cAAc,EAAE,GACpCP,kBAAkB,GAClBhD,SAAG,CAACsC,iBAAiB,CAAC,CAAA;AAE1BoB,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAAC/B,mBAAS,CAAChD,QAAQ,CAAC,EAAE,OAAA;AAC1B,IAAA,IAAMgF,WAAW,GAAGC,cAAQ,CAAC,UAAApE,KAAA,EAAsB;AAAA,MAAA,IAAnBnB,EAAE,GAAAmB,KAAA,CAAFnB,EAAE;QAAEqB,QAAQ,GAAAF,KAAA,CAARE,QAAQ,CAAA;AAC1C,MAAA,IAAM5B,GAAG,GAAG,IAAIC,GAAG,CAACM,EAAE,EAAEyC,MAAM,CAAC/B,QAAQ,CAACgC,IAAI,CAAC,CAAA;MAE7C,OAAOC,QAAE,CAACC,QAAQ,EAAEvB,QAAQ,CAAC,GACzBA,QAAQ,EAAE,GACVX,QAAQ,CAACf,QAAQ,CAAC6F,QAAQ,CAAC/F,GAAG,CAACE,QAAQ,CAAC,CAAA;KAC7C,CAAC,CAACW,QAAQ,CAAC,CAAA;AAEZ,IAAA,IAAIgD,mBAAS,CAACgC,WAAW,CAAC,EAAE;MAC1B7E,uBAAuB,CACrB6E,WAAW,CAAC7D,kBAAkB,GAAG6D,WAAW,CAACtF,EAAE,GAAG,IACpD,CAAC,CAAA;AACH,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAENqF,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMI,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzB,IAAIP,cAAc,EAAE,EAAE,OAAA;MACtBhB,oBAAoB,CAAC,KAAK,CAAC,CAAA;MAC3BU,qBAAqB,CAAC,IAAI,CAAC,CAAA;KAC5B,CAAA;AACDnC,IAAAA,MAAM,CAACiD,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC,CAAA;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAMhD,MAAM,CAACkD,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAAA,KAAA,CAAA;GAChE,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGxE,KAAK,EAAI;IAC5BA,KAAK,CAACQ,cAAc,EAAE,CAAA;IACtBnB,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC7B,IAAA,IAAMoF,eAAe,GAAGvF,QAAQ,CAACwF,IAAI,CACnC,UAAAC,IAAI,EAAA;MAAA,OAAIzC,mBAAS,CAACyC,IAAI,CAACtE,kBAAkB,CAAC,IAAIsE,IAAI,CAACtE,kBAAkB,CAAA;AAAA,KACvE,CAAC,CAAA;IACD,IAAIoE,eAAe,CAAC7F,EAAE,EAAE;MACtB6E,OAAO,CAACmB,IAAI,CAACC,cAAQ,CAACJ,eAAe,CAAC7F,EAAE,CAAC,CAAC,CAAA;AAC5C,KAAA;GACD,CAAA;EAED,IAAMkG,UAAU,GAAGC,aAAO,CACxB,YAAA;AAAA,IAAA,OACE7F,QAAQ,CAACwF,IAAI,CAAC,UAAAC,IAAI,EAAI;AACpB,MAAA,IAAIpD,QAAE,CAACC,QAAQ,EAAEmD,IAAI,CAAC1E,QAAQ,CAAC,EAAE,OAAO0E,IAAI,CAAC1E,QAAQ,EAAE,CAAA;AACvD,MAAA,IAAM5B,GAAG,GAAG,IAAIC,GAAG,CAACqG,IAAI,CAAC/F,EAAE,EAAEyC,MAAM,CAAC/B,QAAQ,CAACgC,IAAI,CAAC,CAAA;MAElD,OAAOhC,QAAQ,CAACf,QAAQ,CAACkD,UAAU,CAACpD,GAAG,CAACE,QAAQ,CAAC,CAAA;AACnD,KAAC,CAAC,CAAA;AAAA,GAAA,EACJ,CAACe,QAAQ,CAACf,QAAQ,EAAEW,QAAQ,CAC9B,CAAC,CAAA;AAED,EAAA,IAAM8F,wBAAwB,GAC5B7B,oBAAoB,IACpB,CAAA2B,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAElG,EAAE,MAAKuE,oBAAoB,IACvC7C,oBAAU,CAACpB,QAAQ,CAAC,CAAA;EAEtB,oBACEV,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,mBAAmB;AAC/BC,IAAAA,SAAS,EAAE4D,8BAAU,CAAC,kCAAkC,EAAE;MACxD,6CAA6C,EAAEwB,cAAc,EAAE,GAC3DP,kBAAkB,GAClBhD,SAAG,CAACsC,iBAAiB,CAAA;KAC1B,CAAA;GAEDrE,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,mCAAmC;IAC7CG,OAAO,EAAE,SAAAA,OAAAA,GAAM;MACbiE,oBAAoB,CAAC,KAAK,CAAC,CAAA;MAC3BzD,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC/B,KAAA;AAAE,GACH,CAAC,eACFb,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAA,EAAQ,iBAAiB;AACzB,IAAA,aAAA,EAAY,SAAS;AACrBC,IAAAA,SAAS,EAAE4D,8BAAU,CACnB,oIAAoI,EACpI;MACE,qCAAqC,EACnCJ,mBAAS,CAACiB,oBAAoB,CAAA;KAEpC,CAAA;AAAE,GAAA,eAEF3E,yBAAA,CAAAC,aAAA,CAAC9B,QAAM,EAAA;AACCG,IAAAA,UAAU,EAAVA,UAAU;AAAEE,IAAAA,QAAQ,EAARA,QAAQ;IAC1BD,gBAAgB,EAAE,SAAAA,gBAAA,GAAA;MAAA,OAAMsC,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAAA,KAAA;GACtD,CAAC,EACD2F,wBAAwB,gBACvBxG,yBAAA,CAAAC,aAAA,CAACwG,oBAAY,EAAA;AAAOT,IAAAA,YAAY,EAAZA,YAAY;AAAIrE,IAAAA,OAAO,EAAE2E,UAAAA;AAAW,GAAE,CAAC,gBAE3DtG,yBAAA,CAAAC,aAAA,CAACQ,KAAK,EAAA;AAAOG,IAAAA,eAAe,EAAfA,eAAe;AAAEF,IAAAA,QAAQ,EAARA,QAAQ;AAAEG,IAAAA,uBAAuB,EAAvBA,uBAAAA;AAAuB,GAAK,CAEnE,CAAC,eACNb,yBAAA,CAAAC,aAAA,CAACyG,0BAAM,EAAA;AACLxG,IAAAA,SAAS,EAAC,kCAAkC;AAC5C,IAAA,SAAA,EAAQ,iCAAiC;AACzC,IAAA,aAAA,EAAY,sBAAsB;IAClCoC,IAAI,EAAE,SAAAA,IAAA,GAAA;AAAA,MAAA,oBAAMtC,yBAAA,CAAAC,aAAA,CAAC0G,eAAO,MAAE,CAAC,CAAA;KAAC;AACxB9C,IAAAA,KAAK,EAAEyB,cAAc,EAAE,GAAG,MAAM,GAAG,WAAY;AAC/CsB,IAAAA,YAAY,EAAE;MACZC,OAAO,EAAErB,eAAe,GACpBH,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iCAAiC,CAAC;AACxCyB,MAAAA,QAAQ,EAAE,QAAA;KACV;IACFzG,OAAO,EAAE,SAAAA,OAAAA,GAAM;MACb2E,qBAAqB,CAAC,CAACD,kBAAkB,CAAC,CAAA;MAC1CT,oBAAoB,CAACvC,SAAG,CAAC,CAAA;AAC3B,KAAA;AAAE,GACH,CACE,CAAC,CAAA;AAEV;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.2.16",
3
+ "version": "3.2.18",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chevron-97e8647b.js","sources":["../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../src/components/Sidebar/constants.js","../src/components/Sidebar/utils.js","../src/components/Sidebar/Components/Links/SubLink.jsx","../src/components/Sidebar/Components/Links/Items.jsx","../src/components/Sidebar/Components/Links/SelectedLink.jsx","../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({ checkpointKey, to, children, ...others }) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n return (\n <NavLink to={checkpoint || to} {...others} key={to}>\n {children}\n </NavLink>\n );\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","import { 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","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n isActive,\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || 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 <CheckPointNavLinks\n {...{ to }}\n activeClassName=\"active\"\n className=\"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n className=\"neeto-molecules-sidebar__sublink-wrapper\"\n data-cy=\"sidebar-sub-link-wrapper\"\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <React.Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading }}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <>\n <Items {...{ isSettingsItems }} items={subItem.items} />\n {items.length - 1 !== subIndex && (\n <hr className=\"neeto-molecules-sidebar__separator\" />\n )}\n </>\n )}\n </React.Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Left } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-back-button`}\n >\n <Left size={16} />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body1\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","import React from \"react\";\n\nconst Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["CheckPointNavLinks","_ref","checkpointKey","to","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","React","createElement","NavLink","_extends","key","SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","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","__","SubLink","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","isActive","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","activeClassName","className","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","_objectSpread","isPresent","item","path","length","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","otherProps","onClick","omit","hyphenize","Left","size","classNames","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chevron-7dc6dc06.js","sources":["../../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../../src/components/Sidebar/constants.js","../../src/components/Sidebar/utils.js","../../src/components/Sidebar/Components/Links/SubLink.jsx","../../src/components/Sidebar/Components/Links/Items.jsx","../../src/components/Sidebar/Components/Links/SelectedLink.jsx","../../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({ checkpointKey, to, children, ...others }) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n return (\n <NavLink to={checkpoint || to} {...others} key={to}>\n {children}\n </NavLink>\n );\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","import { 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","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\nimport { is } from \"ramda\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\n\nimport { SUB_LINK_TYPES } from \"../../constants\";\nimport { isSubRouteActive } from \"../../utils\";\n\nconst SubLink = ({\n to,\n label,\n type = SUB_LINK_TYPES.SYSTEM_VIEW,\n count,\n isSectionHeader,\n isCountsLoading,\n \"data-cy\": dataCy,\n entity = \"\",\n columns = [],\n isActive,\n}) => {\n if (type === SUB_LINK_TYPES.SEGMENTS) {\n return <Segments {...{ columns, entity }} isIndependent={false} />;\n }\n\n const dataCyPrefix = dataCy || 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 <CheckPointNavLinks\n {...{ to }}\n activeClassName=\"active\"\n className=\"neeto-molecules-sidebar__sublink neeto-ui-flex neeto-ui-items-center neeto-ui-select-none\"\n data-cy={`${dataCyPrefix}-sub-link`}\n isActive={isSubLinkActive}\n >\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-label neeto-ui-flex-grow\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-label`}\n style=\"body2\"\n >\n {label}\n </Typography>\n <Typography\n className=\"neeto-molecules-sidebar__link-sub-count neeto-ui-flex-shrink-0\"\n component=\"span\"\n data-cy={`${dataCyPrefix}-sub-link-count`}\n style=\"body2\"\n >\n {isCountsLoading ? (\n <div className=\"neeto-ui-rounded neeto-ui-bg-gray-200 h-4 w-4 animate-pulse\" />\n ) : (\n renderCount(count)\n )}\n </Typography>\n </CheckPointNavLinks>\n );\n};\n\nexport default SubLink;\n","import React from \"react\";\n\nimport { isPresent } from \"neetocist\";\n\nimport SubLink from \"./SubLink\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst Items = ({ items, isSettingsItems = false, isCountsLoading }) => (\n <div\n className=\"neeto-molecules-sidebar__sublink-wrapper\"\n data-cy=\"sidebar-sub-link-wrapper\"\n >\n {items.filter(filterByPermissions).map((subItem, subIndex) => (\n <React.Fragment key={subIndex}>\n <SubLink\n {...{ ...subItem, isCountsLoading }}\n isActive={subItem.isActive}\n isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <>\n <Items {...{ isSettingsItems }} items={subItem.items} />\n {items.length - 1 !== subIndex && (\n <hr className=\"neeto-molecules-sidebar__separator\" />\n )}\n </>\n )}\n </React.Fragment>\n ))}\n </div>\n);\n\nexport default Items;\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { hyphenize } from \"neetocommons/utils/general\";\nimport { Left } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport Items from \"./Items\";\n\nconst SelectedLink = ({\n navLink = { label: \"\", items: [], isConfigureNavLink: false },\n handleGoBack,\n isConfigureSidebar,\n}) => {\n const { label, items, isConfigureNavLink, ...otherProps } = navLink;\n\n return (\n <div\n className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__links--focus-mode neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"configure-nav-container\"\n >\n <div\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-molecules-sidebar__link neeto-ui-border-b\"\n onClick={handleGoBack}\n {...{ ...omit([\"icon\"], otherProps) }}\n >\n {isConfigureNavLink && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-cy={`${hyphenize(label)}-go-back-button`}\n data-testid={`${label}-go-back-button`}\n >\n <Left size={16} />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body1\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-4\"]: isConfigureSidebar,\n })}\n >\n {label}\n </Typography>\n </div>\n {items && <Items {...{ items }} isSettingsItems />}\n </div>\n );\n};\n\nexport default SelectedLink;\n","import React from \"react\";\n\nconst Chevron = ({ style }) => (\n <svg {...{ style }} height=\"16\" viewBox=\"0 0 16 16\" width=\"16\">\n <path\n d=\"M7.07031 13.8887C7.2207 14.0391 7.40527 14.1211 7.62402 14.1211C8.06836 14.1211 8.41699 13.7725 8.41699 13.3281C8.41699 13.1094 8.32812 12.9043 8.17773 12.7539L3.37207 8.05762L8.17773 3.375C8.32812 3.21777 8.41699 3.0127 8.41699 2.80078C8.41699 2.35645 8.06836 2.00781 7.62402 2.00781C7.40527 2.00781 7.2207 2.08984 7.07031 2.24023L1.73828 7.44922C1.56055 7.62012 1.46484 7.8252 1.46484 8.06445C1.46484 8.29688 1.55371 8.49512 1.73828 8.67969L7.07031 13.8887ZM13.1748 13.8887C13.3252 14.0391 13.5098 14.1211 13.7354 14.1211C14.1797 14.1211 14.5283 13.7725 14.5283 13.3281C14.5283 13.1094 14.4395 12.9043 14.2891 12.7539L9.4834 8.05762L14.2891 3.375C14.4395 3.21777 14.5283 3.0127 14.5283 2.80078C14.5283 2.35645 14.1797 2.00781 13.7354 2.00781C13.5098 2.00781 13.3252 2.08984 13.1748 2.24023L7.84961 7.44922C7.66504 7.62012 7.57617 7.8252 7.56934 8.06445C7.56934 8.29688 7.66504 8.49512 7.84961 8.67969L13.1748 13.8887Z\"\n fill=\"currentColor\"\n />\n </svg>\n);\n\nexport default Chevron;\n"],"names":["CheckPointNavLinks","_ref","checkpointKey","to","children","others","_objectWithoutProperties","_excluded","_useNavigationCheckpo","useNavigationCheckpoints","checkpoint","React","createElement","NavLink","_extends","key","SUB_LINK_TYPES","SYSTEM_VIEW","SEGMENTS","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","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","__","SubLink","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","isActive","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","isSubLinkActive","Function","activeClassName","className","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","_objectSpread","isPresent","item","path","length","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","otherProps","onClick","omit","hyphenize","Left","size","classNames","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}