@bigbinary/neeto-molecules 1.15.56 → 1.15.58-beta

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.
@@ -1 +1 @@
1
- {"version":3,"file":"Security.js","sources":["../../src/components/Security/AllowedKeywords/Add.jsx","../../src/components/Security/utils.js","../../src/components/Security/constants.js","../../src/components/Security/AllowedKeywords/index.jsx","../../src/components/Security/PasswordBlock.jsx","../../src/components/Security/RadioBlock.jsx","../../src/components/Security/api.js","../../src/components/Security/useSecurityApi.js","../../src/components/Security/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { Delete } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { remove } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Add = () => {\n const { t } = useTranslation();\n const {\n setFieldValue,\n values: { allowedKeywords },\n } = useFormikContext();\n\n const removeKeyword = index =>\n setFieldValue(\"allowedKeywords\", remove(index, 1, allowedKeywords));\n\n if (!allowedKeywords) return null;\n\n return allowedKeywords.map((_, index) => (\n <div\n className={classNames(\"flex w-full items-start justify-between gap-x-2\")}\n key={index}\n >\n <Input\n autoFocus\n data-cy={`keyword-input-field-${index}`}\n name={`allowedKeywords[${index}]`}\n placeholder={t(\"neetoMolecules.security.placeholders.enterKeyword\")}\n />\n <Button\n data-cy={`keyword-remove-button-${index}`}\n icon={Delete}\n style=\"text\"\n onClick={() => removeKeyword(index)}\n />\n </div>\n ));\n};\n\nexport default Add;\n","import { isEmpty } from \"ramda\";\nimport * as yup from \"yup\";\n\nexport const buildSecuritySettings = settings => ({\n ...settings.setting,\n addEmail: false,\n});\n\nexport const findKeywordDuplicates = (list, message, createError) => {\n const duplicates = {};\n\n list?.forEach((value, index) => {\n if (duplicates[value]) {\n duplicates[value].push(index);\n } else {\n duplicates[value] = [index];\n }\n });\n\n const errors = Object.values(duplicates).map(\n index =>\n index.length > 1 &&\n new yup.ValidationError(\n message,\n list[index.at(-1)],\n `setting.allowedKeywords[${index.at(-1)}]`\n )\n );\n\n if (isEmpty(errors)) {\n return true;\n }\n\n return createError({ message: () => errors });\n};\n","import { t } from \"i18next\";\nimport { identity } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport { findKeywordDuplicates } from \"./utils\";\n\nconst NOT_SECURED = \"no_auth\";\nconst SESSION_AUTH = \"session_auth\";\n\nyup.addMethod(yup.array, \"unique\", function (message, mapper = identity) {\n return this.test(\n \"unique\",\n message,\n function (list, { parent: { authKind } }) {\n return authKind === OTP_ENABLED &&\n list?.length === new Set(list?.map(mapper)).size\n ? true\n : findKeywordDuplicates(list, message, this.createError);\n }\n );\n});\n\nexport const QUERY_KEYS = {\n SETTINGS_LIST: \"settings-list\",\n GETTING_STARTED: \"getting-started\",\n INTEGRATION_SETTINGS: \"integration_settings\",\n THEMES_SETTINGS: \"themes_setting\",\n};\nexport const SETTINGS_STALE_TIME = 900_000; // 15 mins\nexport const PASSWORD_ENABLED = \"basic_auth\";\nexport const OTP_ENABLED = \"otp_auth\";\n\nexport const APP_NAME = { neetoKB: \"KB\", neetoCourse: \"Course\" };\n\nexport const AUTH_KINDS = [\n {\n label: t(\"neetoMolecules.security.labels.notSecured\"),\n value: NOT_SECURED,\n },\n {\n label: t(\"neetoMolecules.security.labels.passwordEnabled\"),\n value: PASSWORD_ENABLED,\n },\n {\n label: t(\"neetoMolecules.security.labels.otpEnabled\"),\n value: OTP_ENABLED,\n },\n {\n label: t(\"neetoMolecules.security.labels.private\"),\n value: SESSION_AUTH,\n },\n];\n\nexport const SECURITY_SETTINGS_VALIDATION_SCHEMA = yup.object({\n password: yup.string().when(\"authKind\", {\n is: PASSWORD_ENABLED,\n then: yup\n .string()\n .required(\n t(\"neetoMolecules.security.validation.required\", {\n what: t(\"neetoMolecules.security.labels.password\"),\n })\n )\n .min(\n 4,\n t(\"neetoMolecules.security.validation.min\", {\n entity: t(\"neetoMolecules.security.labels.password\"),\n min: 4,\n })\n ),\n }),\n allowedKeywords: yup.array().when(\"authKind\", {\n is: OTP_ENABLED,\n then: yup\n .array()\n .of(\n yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.security.validation.required\", {\n what: t(\"neetoMolecules.security.labels.keyword\"),\n })\n )\n )\n .unique(\n t(\"neetoMolecules.security.placeholders.exists\", {\n what: t(\"neetoMolecules.security.labels.keyword\"),\n })\n ),\n }),\n});\n","import React from \"react\";\n\nimport { ErrorMessage, useFormikContext } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Button, Label } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Add from \"./Add\";\n\nimport { OTP_ENABLED, APP_NAME } from \"../constants\";\n\nconst AllowedKeywords = () => {\n const { t } = useTranslation();\n const {\n setFieldValue,\n values: { allowedKeywords, authKind },\n } = useFormikContext();\n\n if (authKind !== OTP_ENABLED) return null;\n\n const appName = APP_NAME[globalProps.appName];\n\n return (\n <div className=\"flex-col space-y-2 py-2\">\n {appName && (\n <Label>\n {t(`neetoMolecules.security.labels.keywordForm.${appName}`)}\n </Label>\n )}\n <div className=\"neeto-ui-bg-pastel-blue neeto-ui-rounded-sm w-full space-y-4 p-6\">\n <Add />\n <Button\n data-cy=\"add-allowed-keyword-button\"\n data-testid=\"add-allowed-keyword-button\"\n label={t(\"neetoMolecules.security.labels.addKeyWord\")}\n style=\"link\"\n onClick={() =>\n setFieldValue(\"allowedKeywords\", [...allowedKeywords, \"\"])\n }\n />\n </div>\n {isEmpty(allowedKeywords) && (\n <ErrorMessage\n className=\"neeto-ui-text-error-600\"\n component=\"div\"\n name=\"allowedKeywords\"\n />\n )}\n </div>\n );\n};\n\nexport default AllowedKeywords;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PASSWORD_ENABLED } from \"./constants\";\n\nconst Password = () => {\n const { t } = useTranslation();\n const {\n values: { authKind },\n getFieldProps,\n } = useFormikContext();\n\n if (authKind !== PASSWORD_ENABLED) return null;\n\n const { onChange: onPasswordChange } = getFieldProps(\"password\");\n\n return (\n <div className=\"space-y-4 pb-2\">\n <Input\n autoFocus\n unlimitedChars\n className=\"w-7/12\"\n data-testid=\"password-block\"\n label={t(\"neetoMolecules.security.labels.password\")}\n name=\"password\"\n placeholder={t(\"neetoMolecules.security.placeholders.enterPassword\")}\n onChange={e => {\n e.target.value = e.target.value.trim();\n onPasswordChange(e);\n }}\n />\n </div>\n );\n};\n\nexport default Password;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Radio } from \"neetoui/formik\";\n\nimport { OTP_ENABLED } from \"./constants\";\n\nconst RadioBlock = ({ radioItems }) => {\n const {\n values: { allowedKeywords = [] },\n setFieldValue,\n } = useFormikContext();\n\n const handleRadioChange = ({\n event: {\n target: { value },\n },\n allowedKeywords,\n }) => {\n const allowedKeywordsValue =\n value === OTP_ENABLED ? [...allowedKeywords, \"\"] : [];\n setFieldValue(\"allowedKeywords\", allowedKeywordsValue);\n setFieldValue(\"authKind\", value);\n };\n\n return (\n <Radio\n stacked\n name=\"authKind\"\n onChange={event => handleRadioChange({ event, allowedKeywords })}\n >\n {radioItems.map(({ label, value }) => (\n <Radio.Item key={value} {...{ label, value }} />\n ))}\n </Radio>\n );\n};\n\nexport default RadioBlock;\n","import axios from \"axios\";\n\nconst fetch = url => axios.get(url);\n\nconst update = (url, payload) => axios.put(url, payload);\n\nconst settingsApi = { fetch, update };\n\nexport default settingsApi;\n","import useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\nimport { useQuery } from \"react-query\";\n\nimport settingsApi from \"./api\";\nimport { QUERY_KEYS, SETTINGS_STALE_TIME } from \"./constants\";\n\nconst { SETTINGS_LIST, GETTING_STARTED, THEMES_SETTINGS } = QUERY_KEYS;\n\nconst useFetchSettings = url =>\n useQuery(SETTINGS_LIST, () => settingsApi.fetch(url), {\n staleTime: SETTINGS_STALE_TIME,\n });\n\nconst useUpdateSetting = url =>\n useMutationWithInvalidation(payload => settingsApi.update(url, payload), {\n keysToInvalidate: [SETTINGS_LIST, GETTING_STARTED, THEMES_SETTINGS],\n });\n\nexport { useFetchSettings, useUpdateSetting };\n","import React, { useState, useEffect } from \"react\";\n\nimport { toLabelAndValue } from \"neetocist\";\nimport { Form, ActionBlock } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport Scrollable from \"components/Scrollable\";\n\nimport AllowedKeywords from \"./AllowedKeywords\";\nimport { SECURITY_SETTINGS_VALIDATION_SCHEMA } from \"./constants\";\nimport Password from \"./PasswordBlock\";\nimport RadioBlock from \"./RadioBlock\";\nimport { useFetchSettings, useUpdateSetting } from \"./useSecurityApi\";\nimport { buildSecuritySettings } from \"./utils\";\n\nconst Security = ({ url, breadcrumbs, title, radioItems }) => {\n const { data: settings = {}, isLoading } = useFetchSettings(url);\n const { mutate: updateSettings } = useUpdateSetting(url);\n\n const [isMobileScreen, setIsMobileScreen] = useState(false);\n\n const isLargerScreen = () => window.innerWidth > 1024;\n\n const handleSubmit = (values, { setSubmitting }) => {\n updateSettings(values, { onSettled: () => setSubmitting(false) });\n };\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) setIsMobileScreen(false);\n else setIsMobileScreen(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n if (isLoading) return <PageLoader />;\n\n return (\n <Container isHeaderFixed>\n <Header\n {...{ breadcrumbs, title }}\n data-cy=\"general-settings-heading\"\n size={isMobileScreen ? \"small\" : \"large\"}\n />\n <Scrollable className=\"w-full pb-6\">\n <Form\n className=\"mx-auto w-full max-w-3xl space-y-6 md:px-0 lg:px-6\"\n formikProps={{\n initialValues: buildSecuritySettings(settings),\n validationSchema: SECURITY_SETTINGS_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n enableReinitialize: true,\n }}\n >\n {({ dirty, isSubmitting }) => (\n <>\n <RadioBlock {...{ radioItems }} />\n <Password />\n <AllowedKeywords />\n <ActionBlock\n cancelButtonProps={{ disabled: false, className: \"ml-3\" }}\n className=\"mt-6 w-full justify-start\"\n submitButtonProps={{\n loading: isSubmitting,\n disabled: !dirty || isSubmitting,\n }}\n />\n </>\n )}\n </Form>\n </Scrollable>\n </Container>\n );\n};\n\nSecurity.propTypes = {\n /**\n * To set a title in the Header section.\n */\n title: PropTypes.node,\n /**\n * API path to manage security record.\n */\n url: PropTypes.string,\n /**\n * To show breadcrumbs in the Header section. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n radioItems: PropTypes.arrayOf(\n PropTypes.shape(toLabelAndValue(PropTypes.string))\n ),\n};\n\nexport default Security;\n"],"names":["Add","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","setFieldValue","allowedKeywords","values","removeKeyword","index","remove","map","_","React","createElement","className","classNames","key","Input","autoFocus","concat","name","placeholder","Button","icon","Delete","style","onClick","buildSecuritySettings","settings","_objectSpread","setting","addEmail","findKeywordDuplicates","list","message","createError","duplicates","forEach","value","push","errors","Object","length","yup","ValidationError","at","isEmpty","NOT_SECURED","SESSION_AUTH","addMethod","array","mapper","arguments","undefined","identity","test","_ref","authKind","parent","OTP_ENABLED","Set","size","QUERY_KEYS","SETTINGS_LIST","GETTING_STARTED","INTEGRATION_SETTINGS","THEMES_SETTINGS","SETTINGS_STALE_TIME","PASSWORD_ENABLED","APP_NAME","neetoKB","neetoCourse","label","SECURITY_SETTINGS_VALIDATION_SCHEMA","object","password","string","when","is","then","required","what","min","entity","of","trim","unique","AllowedKeywords","_useFormikContext$val","appName","globalProps","Label","_toConsumableArray","ErrorMessage","component","Password","getFieldProps","_getFieldProps","onPasswordChange","onChange","unlimitedChars","e","target","RadioBlock","radioItems","handleRadioChange","_ref2","event","allowedKeywordsValue","Radio","stacked","_ref3","Item","fetch","url","axios","get","update","payload","put","settingsApi","useFetchSettings","useQuery","staleTime","useUpdateSetting","useMutationWithInvalidation","keysToInvalidate","Security","breadcrumbs","title","_useFetchSettings","_useFetchSettings$dat","data","isLoading","_useUpdateSetting","updateSettings","mutate","_useState","useState","_useState2","_slicedToArray","isMobileScreen","setIsMobileScreen","isLargerScreen","window","innerWidth","handleSubmit","setSubmitting","onSettled","useEffect","handleResize","addEventListener","removeEventListener","PageLoader","Container","isHeaderFixed","Header","Scrollable","Form","formikProps","initialValues","validationSchema","onSubmit","enableReinitialize","dirty","isSubmitting","Fragment","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading"],"mappings":"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"}
1
+ {"version":3,"file":"Security.js","sources":["../../src/components/Security/AllowedKeywords/Add.jsx","../../src/components/Security/utils.js","../../src/components/Security/constants.js","../../src/components/Security/AllowedKeywords/index.jsx","../../src/components/Security/PasswordBlock.jsx","../../src/components/Security/RadioBlock.jsx","../../src/components/Security/api.js","../../src/components/Security/useSecurityApi.js","../../src/components/Security/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { Delete } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport { remove } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nconst Add = () => {\n const { t } = useTranslation();\n const {\n setFieldValue,\n values: { allowedKeywords },\n } = useFormikContext();\n\n const removeKeyword = index =>\n setFieldValue(\"allowedKeywords\", remove(index, 1, allowedKeywords));\n\n if (!allowedKeywords) return null;\n\n return allowedKeywords.map((_, index) => (\n <div\n className={classNames(\"flex w-full items-start justify-between gap-x-2\")}\n key={index}\n >\n <Input\n autoFocus\n data-cy={`keyword-input-field-${index}`}\n name={`allowedKeywords[${index}]`}\n placeholder={t(\"neetoMolecules.security.placeholders.enterKeyword\")}\n />\n <Button\n data-cy={`keyword-remove-button-${index}`}\n icon={Delete}\n style=\"text\"\n onClick={() => removeKeyword(index)}\n />\n </div>\n ));\n};\n\nexport default Add;\n","import { isEmpty } from \"ramda\";\nimport * as yup from \"yup\";\n\nexport const buildSecuritySettings = settings => ({\n ...settings.setting,\n addEmail: false,\n});\n\nexport const findKeywordDuplicates = (list, message, createError) => {\n const duplicates = {};\n\n list?.forEach((value, index) => {\n if (duplicates[value]) {\n duplicates[value].push(index);\n } else {\n duplicates[value] = [index];\n }\n });\n\n const errors = Object.values(duplicates).map(\n index =>\n index.length > 1 &&\n new yup.ValidationError(\n message,\n list[index.at(-1)],\n `setting.allowedKeywords[${index.at(-1)}]`\n )\n );\n\n if (isEmpty(errors)) {\n return true;\n }\n\n return createError({ message: () => errors });\n};\n","import { t } from \"i18next\";\nimport { identity } from \"ramda\";\nimport * as yup from \"yup\";\n\nimport { findKeywordDuplicates } from \"./utils\";\n\nconst NOT_SECURED = \"no_auth\";\nconst SESSION_AUTH = \"session_auth\";\n\nyup.addMethod(yup.array, \"unique\", function (message, mapper = identity) {\n return this.test(\n \"unique\",\n message,\n function (list, { parent: { authKind } }) {\n return authKind === OTP_ENABLED &&\n list?.length === new Set(list?.map(mapper)).size\n ? true\n : findKeywordDuplicates(list, message, this.createError);\n }\n );\n});\n\nexport const QUERY_KEYS = {\n SETTINGS_LIST: \"settings-list\",\n GETTING_STARTED: \"getting-started\",\n INTEGRATION_SETTINGS: \"integration_settings\",\n THEMES_SETTINGS: \"themes_setting\",\n};\nexport const SETTINGS_STALE_TIME = 900_000; // 15 mins\nexport const PASSWORD_ENABLED = \"basic_auth\";\nexport const OTP_ENABLED = \"otp_auth\";\n\nexport const APP_NAME = { neetoKB: \"KB\", neetoCourse: \"Course\" };\n\nexport const AUTH_KINDS = [\n {\n label: t(\"neetoMolecules.security.labels.notSecured\"),\n value: NOT_SECURED,\n },\n {\n label: t(\"neetoMolecules.security.labels.passwordEnabled\"),\n value: PASSWORD_ENABLED,\n },\n {\n label: t(\"neetoMolecules.security.labels.otpEnabled\"),\n value: OTP_ENABLED,\n },\n {\n label: t(\"neetoMolecules.security.labels.private\"),\n value: SESSION_AUTH,\n },\n];\n\nexport const SECURITY_SETTINGS_VALIDATION_SCHEMA = yup.object({\n password: yup.string().when(\"authKind\", {\n is: PASSWORD_ENABLED,\n then: yup\n .string()\n .required(\n t(\"neetoMolecules.security.validation.required\", {\n what: t(\"neetoMolecules.security.labels.password\"),\n })\n )\n .min(\n 4,\n t(\"neetoMolecules.security.validation.min\", {\n entity: t(\"neetoMolecules.security.labels.password\"),\n min: 4,\n })\n ),\n }),\n allowedKeywords: yup.array().when(\"authKind\", {\n is: OTP_ENABLED,\n then: yup\n .array()\n .of(\n yup\n .string()\n .trim()\n .required(\n t(\"neetoMolecules.security.validation.required\", {\n what: t(\"neetoMolecules.security.labels.keyword\"),\n })\n )\n )\n .unique(\n t(\"neetoMolecules.security.placeholders.exists\", {\n what: t(\"neetoMolecules.security.labels.keyword\"),\n })\n ),\n }),\n});\n","import React from \"react\";\n\nimport { ErrorMessage, useFormikContext } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Button, Label } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Add from \"./Add\";\n\nimport { OTP_ENABLED, APP_NAME } from \"../constants\";\n\nconst AllowedKeywords = () => {\n const { t } = useTranslation();\n const {\n setFieldValue,\n values: { allowedKeywords, authKind },\n } = useFormikContext();\n\n if (authKind !== OTP_ENABLED) return null;\n\n const appName = APP_NAME[globalProps.appName];\n\n return (\n <div className=\"flex-col space-y-2 py-2\">\n {appName && (\n <Label>\n {t(`neetoMolecules.security.labels.keywordForm.${appName}`)}\n </Label>\n )}\n <div className=\"neeto-ui-bg-pastel-blue neeto-ui-rounded-sm w-full space-y-4 p-6\">\n <Add />\n <Button\n data-cy=\"add-allowed-keyword-button\"\n data-testid=\"add-allowed-keyword-button\"\n label={t(\"neetoMolecules.security.labels.addKeyWord\")}\n style=\"link\"\n onClick={() =>\n setFieldValue(\"allowedKeywords\", [...allowedKeywords, \"\"])\n }\n />\n </div>\n {isEmpty(allowedKeywords) && (\n <ErrorMessage\n className=\"neeto-ui-text-error-600\"\n component=\"div\"\n name=\"allowedKeywords\"\n />\n )}\n </div>\n );\n};\n\nexport default AllowedKeywords;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Input } from \"neetoui/formik\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PASSWORD_ENABLED } from \"./constants\";\n\nconst Password = () => {\n const { t } = useTranslation();\n const {\n values: { authKind },\n getFieldProps,\n } = useFormikContext();\n\n if (authKind !== PASSWORD_ENABLED) return null;\n\n const { onChange: onPasswordChange } = getFieldProps(\"password\");\n\n return (\n <div className=\"space-y-4 pb-2\">\n <Input\n autoFocus\n unlimitedChars\n className=\"w-7/12\"\n data-testid=\"password-block\"\n label={t(\"neetoMolecules.security.labels.password\")}\n name=\"password\"\n placeholder={t(\"neetoMolecules.security.placeholders.enterPassword\")}\n onChange={e => {\n e.target.value = e.target.value.trim();\n onPasswordChange(e);\n }}\n />\n </div>\n );\n};\n\nexport default Password;\n","import React from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { Radio } from \"neetoui/formik\";\n\nimport { OTP_ENABLED } from \"./constants\";\n\nconst RadioBlock = ({ radioItems }) => {\n const {\n values: { allowedKeywords = [] },\n setFieldValue,\n } = useFormikContext();\n\n const handleRadioChange = ({\n event: {\n target: { value },\n },\n allowedKeywords,\n }) => {\n const allowedKeywordsValue =\n value === OTP_ENABLED ? [...allowedKeywords, \"\"] : [];\n setFieldValue(\"allowedKeywords\", allowedKeywordsValue);\n setFieldValue(\"authKind\", value);\n };\n\n return (\n <Radio\n stacked\n name=\"authKind\"\n onChange={event => handleRadioChange({ event, allowedKeywords })}\n >\n {radioItems.map(({ label, value }) => (\n <Radio.Item key={value} {...{ label, value }} />\n ))}\n </Radio>\n );\n};\n\nexport default RadioBlock;\n","import axios from \"axios\";\n\nconst fetch = url => axios.get(url);\n\nconst update = (url, payload) => axios.put(url, payload);\n\nconst settingsApi = { fetch, update };\n\nexport default settingsApi;\n","import useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\nimport { useQuery } from \"react-query\";\n\nimport settingsApi from \"./api\";\nimport { QUERY_KEYS, SETTINGS_STALE_TIME } from \"./constants\";\n\nconst { SETTINGS_LIST, GETTING_STARTED, THEMES_SETTINGS } = QUERY_KEYS;\n\nconst useFetchSettings = url =>\n useQuery(SETTINGS_LIST, () => settingsApi.fetch(url), {\n staleTime: SETTINGS_STALE_TIME,\n });\n\nconst useUpdateSetting = url =>\n useMutationWithInvalidation(payload => settingsApi.update(url, payload), {\n keysToInvalidate: [SETTINGS_LIST, GETTING_STARTED, THEMES_SETTINGS],\n });\n\nexport { useFetchSettings, useUpdateSetting };\n","import React, { useState, useEffect } from \"react\";\n\nimport { toLabelAndValue } from \"neetocist\";\nimport { Form, ActionBlock } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\n\nimport Container from \"components/Container\";\nimport Header from \"components/Header\";\nimport PageLoader from \"components/PageLoader\";\nimport Scrollable from \"components/Scrollable\";\n\nimport AllowedKeywords from \"./AllowedKeywords\";\nimport { SECURITY_SETTINGS_VALIDATION_SCHEMA } from \"./constants\";\nimport Password from \"./PasswordBlock\";\nimport RadioBlock from \"./RadioBlock\";\nimport { useFetchSettings, useUpdateSetting } from \"./useSecurityApi\";\nimport { buildSecuritySettings } from \"./utils\";\n\nconst Security = ({ url, breadcrumbs, title, radioItems }) => {\n const { data: settings = {}, isLoading } = useFetchSettings(url);\n const { mutate: updateSettings } = useUpdateSetting(url);\n\n const [isMobileScreen, setIsMobileScreen] = useState(false);\n\n const isLargerScreen = () => window.innerWidth > 1024;\n\n const handleSubmit = (values, { setSubmitting }) => {\n updateSettings(values, { onSettled: () => setSubmitting(false) });\n };\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) setIsMobileScreen(false);\n else setIsMobileScreen(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n if (isLoading) return <PageLoader />;\n\n return (\n <Container isHeaderFixed>\n <Header\n {...{ breadcrumbs, title }}\n data-cy=\"general-settings-heading\"\n size={isMobileScreen ? \"small\" : \"large\"}\n />\n <Scrollable className=\"w-full pb-6\">\n <Form\n className=\"mx-auto w-full max-w-3xl space-y-6 md:px-0 lg:px-6\"\n formikProps={{\n initialValues: buildSecuritySettings(settings),\n validationSchema: SECURITY_SETTINGS_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n enableReinitialize: true,\n }}\n >\n {({ dirty, isSubmitting }) => (\n <>\n <RadioBlock {...{ radioItems }} />\n <Password />\n <AllowedKeywords />\n <ActionBlock\n cancelButtonProps={{ disabled: false, className: \"ml-3\" }}\n className=\"mt-6 w-full justify-start\"\n submitButtonProps={{\n loading: isSubmitting,\n disabled: !dirty || isSubmitting,\n }}\n />\n </>\n )}\n </Form>\n </Scrollable>\n </Container>\n );\n};\n\nSecurity.propTypes = {\n /**\n * To set a title in the Header section.\n */\n title: PropTypes.node,\n /**\n * API path to manage security record.\n */\n url: PropTypes.string,\n /**\n * To show breadcrumbs in the Header section. `text` accepts a text string to be shown as the breadcrumb and `link` accepts relative URL path for the breadcrumb.\n */\n breadcrumbs: PropTypes.arrayOf(\n PropTypes.shape({\n text: PropTypes.string,\n link: PropTypes.string,\n })\n ),\n radioItems: PropTypes.arrayOf(\n PropTypes.shape(toLabelAndValue(PropTypes.string))\n ),\n};\n\nexport default Security;\n"],"names":["Add","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","setFieldValue","allowedKeywords","values","removeKeyword","index","remove","map","_","React","createElement","className","classNames","key","Input","autoFocus","concat","name","placeholder","Button","icon","Delete","style","onClick","buildSecuritySettings","settings","_objectSpread","setting","addEmail","findKeywordDuplicates","list","message","createError","duplicates","forEach","value","push","errors","Object","length","yup","ValidationError","at","isEmpty","NOT_SECURED","SESSION_AUTH","addMethod","array","mapper","arguments","undefined","identity","test","_ref","authKind","parent","OTP_ENABLED","Set","size","QUERY_KEYS","SETTINGS_LIST","GETTING_STARTED","INTEGRATION_SETTINGS","THEMES_SETTINGS","SETTINGS_STALE_TIME","PASSWORD_ENABLED","APP_NAME","neetoKB","neetoCourse","label","SECURITY_SETTINGS_VALIDATION_SCHEMA","object","password","string","when","is","then","required","what","min","entity","of","trim","unique","AllowedKeywords","_useFormikContext$val","appName","globalProps","Label","_toConsumableArray","ErrorMessage","component","Password","getFieldProps","_getFieldProps","onPasswordChange","onChange","unlimitedChars","e","target","RadioBlock","radioItems","handleRadioChange","_ref2","event","allowedKeywordsValue","Radio","stacked","_ref3","Item","fetch","url","axios","get","update","payload","put","settingsApi","useFetchSettings","useQuery","staleTime","useUpdateSetting","useMutationWithInvalidation","keysToInvalidate","Security","breadcrumbs","title","_useFetchSettings","_useFetchSettings$dat","data","isLoading","_useUpdateSetting","updateSettings","mutate","_useState","useState","_useState2","_slicedToArray","isMobileScreen","setIsMobileScreen","isLargerScreen","window","innerWidth","handleSubmit","setSubmitting","onSettled","useEffect","handleResize","addEventListener","removeEventListener","PageLoader","Container","isHeaderFixed","Header","Scrollable","Form","formikProps","initialValues","validationSchema","onSubmit","enableReinitialize","dirty","isSubmitting","Fragment","ActionBlock","cancelButtonProps","disabled","submitButtonProps","loading"],"mappings":"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"}
@@ -17,7 +17,6 @@ var general = require('@bigbinary/neeto-commons-frontend/utils/general');
17
17
  var reactRouterDom = require('react-router-dom');
18
18
  require('./Breadcrumbs.js');
19
19
  require('./inject-css-80a5faa3.js');
20
- require('./MoreDropdown.js');
21
20
  require('./Search.js');
22
21
  require('./slicedToArray-f320d9e7.js');
23
22
  require('@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce');
@@ -1 +1 @@
1
- {"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/IntegrationItem.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-rounded-lg delay-220 neeto-ui-shadow-sm translate flex cursor-pointer flex-col space-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default React.memo(IntegrationItem);\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"py-6\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","_objectSpread","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
1
+ {"version":3,"file":"Settings.js","sources":["../../src/components/Settings/constants.js","../../src/components/Settings/Item.jsx","../../src/components/Settings/IntegrationItem.jsx","../../src/components/Settings/Category.jsx","../../src/components/Settings/utils.js","../../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import React, { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => (\n <Link\n data-cy={dataCy}\n to={path}\n className={classnames(\n \"neeto-ui-rounded-lg delay-220 neeto-ui-shadow-sm translate flex cursor-pointer flex-col space-y-4 border p-6 no-underline outline-none transition-transform duration-300 ease-in-out hover:-translate-y-1\",\n className\n )}\n {...omit(UNSUPPORTED_LINK_PROPS, otherProps)}\n >\n <div data-testid={`settings-item-${joinHyphenCase(label)}`}>\n <div className=\"mb-2 flex items-center gap-4\">\n {Icon && <Icon className=\"neeto-ui-text-gray-600\" size={32} />}\n <Typography\n data-cy=\"settings-item-heading\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography data-cy=\"settings-item-description\" style=\"body2\">\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </Link>\n);\n\nexport default memo(withRouter(Item));\n","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default React.memo(IntegrationItem);\n","import React from \"react\";\n\nimport classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"py-6\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 md:grid-cols-2 lg:grid-cols-2 lg:gap-6 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import React, { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({ isTitleHidden = false, categories = [] }) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={{\n className: \"w-72\",\n placeholder: t(\"neetoMolecules.settingsPage.placeholder.search\"),\n }}\n />\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full space-y-12\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","React","createElement","Link","_extends","to","classnames","omit","concat","joinHyphenCase","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","_objectSpread","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","key","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","useEffect","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
@@ -11,7 +11,7 @@ var neetoui = require('@bigbinary/neetoui');
11
11
  var ramda = require('ramda');
12
12
  var reactI18next = require('react-i18next');
13
13
  var reactRouterDom = require('react-router-dom');
14
- var Chevron = require('./Chevron-166f3f91.js');
14
+ var Chevron = require('./Chevron-97f5d14e.js');
15
15
  var useFetchNeetoApps = require('@bigbinary/neeto-commons-frontend/react-utils/useFetchNeetoApps');
16
16
  var ProductTypefaceLogos = require('@bigbinary/neeto-icons/typeface-logos');
17
17
  var _extends = require('./extends-1b35a664.js');
@@ -172,14 +172,14 @@ var Sidebar = function Sidebar(_ref) {
172
172
  _useState2 = slicedToArray._slicedToArray(_useState, 2),
173
173
  isSidebarPaneOpen = _useState2[0],
174
174
  setIsSidebarPaneOpen = _useState2[1];
175
- var _useState3 = React.useState(null),
176
- _useState4 = slicedToArray._slicedToArray(_useState3, 2),
177
- selectedNavLinkRoute = _useState4[0],
178
- setSelectedNavLinkRoute = _useState4[1];
179
- var _useLocalStorage = useLocalStorage__default["default"](Chevron.getSidebarStateLocalStorageKey(), false),
175
+ var _useLocalStorage = useLocalStorage__default["default"](Chevron.SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, null),
180
176
  _useLocalStorage2 = slicedToArray._slicedToArray(_useLocalStorage, 2),
181
- isSidebarCollapsed = _useLocalStorage2[0],
182
- setIsSidebarCollapsed = _useLocalStorage2[1];
177
+ selectedNavLinkRoute = _useLocalStorage2[0],
178
+ setSelectedNavLinkRoute = _useLocalStorage2[1];
179
+ var _useLocalStorage3 = useLocalStorage__default["default"](Chevron.getSidebarStateLocalStorageKey(), false),
180
+ _useLocalStorage4 = slicedToArray._slicedToArray(_useLocalStorage3, 2),
181
+ isSidebarCollapsed = _useLocalStorage4[0],
182
+ setIsSidebarCollapsed = _useLocalStorage4[1];
183
183
  var location = reactRouterDom.useLocation();
184
184
  var history = reactRouterDom.useHistory();
185
185
  var _useTranslation = reactI18next.useTranslation(),
@@ -221,6 +221,14 @@ var Sidebar = function Sidebar(_ref) {
221
221
  history.push(utils.buildUrl(settingsNavLink.to));
222
222
  }
223
223
  };
224
+ var activeLink = React.useMemo(function () {
225
+ return navLinks.find(function (link) {
226
+ if (ramda.is(Function, link.isActive)) return link.isActive();
227
+ var url = new URL(link.to, window.location.href);
228
+ return location.pathname.startsWith(url.pathname);
229
+ });
230
+ }, [location.pathname, navLinks]);
231
+ var isSelectedNavLinkVisible = selectedNavLinkRoute && (activeLink === null || activeLink === void 0 ? void 0 : activeLink.to) === selectedNavLinkRoute && neetoCist.isNotEmpty(navLinks);
224
232
  return /*#__PURE__*/React__default["default"].createElement("div", {
225
233
  "data-testid": "sidebar-container",
226
234
  className: classnames__default["default"]("neeto-molecules-sidebar__wrapper", {
@@ -243,11 +251,9 @@ var Sidebar = function Sidebar(_ref) {
243
251
  clearSettingsNav: function clearSettingsNav() {
244
252
  return setSelectedNavLinkRoute(null);
245
253
  }
246
- }), neetoCist.isPresent(selectedNavLinkRoute) ? /*#__PURE__*/React__default["default"].createElement(Chevron.SelectedLink, {
254
+ }), isSelectedNavLinkVisible ? /*#__PURE__*/React__default["default"].createElement(Chevron.SelectedLink, {
247
255
  handleGoBack: handleGoBack,
248
- navLink: neetoCist.findLastBy({
249
- to: selectedNavLinkRoute
250
- }, navLinks)
256
+ navLink: activeLink
251
257
  }) : /*#__PURE__*/React__default["default"].createElement(Links, {
252
258
  isCountsLoading: isCountsLoading,
253
259
  navLinks: navLinks,
@@ -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 }) => {\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 homePath = \"/\";\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n homePath = 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={homePath}\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 } 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 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 ...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 </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label\"\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\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, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, findLastBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\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 \"./sidebar.scss\";\nimport { getSidebarStateLocalStorageKey } from \"./utils\";\n\nconst Sidebar = ({ navLinks, customLogo, isCountsLoading = false }) => {\n const productName = globalProps.appName.substr(5).toLowerCase();\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useState(null);\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 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 }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isPresent(selectedNavLinkRoute) ? (\n <SelectedLink\n {...{ handleGoBack }}\n navLink={findLastBy({ to: selectedNavLinkRoute }, navLinks)}\n />\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 style={isLargerScreen() ? \"text\" : \"secondary\"}\n icon={() => (\n <Chevron\n style={{ color: `rgb(var(--neeto-${productName}-primary))` }}\n />\n )}\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 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","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","homePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","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","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","Typography","component","style","weight","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","isSidebarPaneOpen","setIsSidebarPaneOpen","_useState3","_useState4","selectedNavLinkRoute","_useLocalStorage","useLocalStorage","getSidebarStateLocalStorageKey","_useLocalStorage2","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","isPresent","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","SelectedLink","findLastBy","Button","Chevron","color","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 }) => {\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 homePath = \"/\";\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n homePath = 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={homePath}\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 } 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 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 ...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 </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label\"\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\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 { globalProps } from \"neetocommons/initializers\";\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 = ({ navLinks, customLogo, isCountsLoading = false }) => {\n const productName = globalProps.appName.substr(5).toLowerCase();\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 }}\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 style={isLargerScreen() ? \"text\" : \"secondary\"}\n icon={() => (\n <Chevron\n style={{ color: `rgb(var(--neeto-${productName}-primary))` }}\n />\n )}\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 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","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","homePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","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","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","Fragment","key","CheckPointNavLinks","_extends","activeClassName","hyphenate","_objectSpread","Typography","component","style","weight","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","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","isPresent","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","color","tooltipProps","content","position"],"mappings":"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"}
@@ -25,11 +25,11 @@ require('./index-248c4f4c.js');
25
25
  require('./inject-css-80a5faa3.js');
26
26
  require('./extends-1b35a664.js');
27
27
  require('./defineProperty-886ed289.js');
28
- require('./objectWithoutProperties-2fed2d7d.js');
29
28
  require('./Breadcrumbs.js');
30
29
  require('@bigbinary/neeto-commons-frontend/utils/general');
31
30
  require('react-router-dom');
32
31
  require('./Search.js');
32
+ require('./objectWithoutProperties-2fed2d7d.js');
33
33
  require('@bigbinary/neeto-commons-frontend/react-utils/useFuncDebounce');
34
34
  require('@bigbinary/neeto-commons-frontend/react-utils/useQueryParams');
35
35
  require('@bigbinary/neeto-commons-frontend/react-utils/useUpdateEffect');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "1.15.56",
3
+ "version": "1.15.58-beta",
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>",
package/types/Header.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import React from "react";
2
2
  import { SIZES } from "components/Header/constants";
3
3
  import { DropdownProps } from "neetoui";
4
- import MoreDropdown from "./MoreDropdown";
5
4
  /**
6
5
  *
7
6
  * The Header component can be used to display the page title and an action block
@@ -27,6 +26,6 @@ const Header: React.FC<{
27
26
  link?: string;
28
27
  }[];
29
28
  size?: keyof typeof SIZES;
30
- renderDropdown?: (Dropdown: MoreDropdown) => JSX.Element;
29
+ renderDropdown?: (Dropdown: React.FC<DropdownProps>) => JSX.Element;
31
30
  }>;
32
31
  export default Header;
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chevron-68d2b0e8.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","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\";\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}) => {\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 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={() => !isSectionHeader && isSubRouteActive(to, location)}\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 isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <Items {...{ isSettingsItems }} items={subItem.items} />\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-bg-white neeto-ui-no-underline neeto-molecules-sidebar__link\"\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 />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-6\"]: 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","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","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","activeClassName","className","isActive","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","_objectSpread","isPresent","item","path","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","otherProps","onClick","omit","hyphenize","Left","weight","classNames","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"Chevron-166f3f91.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","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\";\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}) => {\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 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={() => !isSectionHeader && isSubRouteActive(to, location)}\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 isSectionHeader={isPresent(subItem.item)}\n to={subItem.to ?? subItem.path}\n />\n {isSettingsItems && isPresent(subItem.items) && (\n <Items {...{ isSettingsItems }} items={subItem.items} />\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-bg-white neeto-ui-no-underline neeto-molecules-sidebar__link\"\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 />\n </span>\n )}\n <Typography\n component=\"span\"\n style=\"body2\"\n weight=\"normal\"\n className={classNames(\"neeto-molecules-sidebar__link-label\", {\n \"neeto-molecules-sidebar__configure-page-header\":\n isConfigureNavLink,\n [\"pl-6\"]: 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","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","Segments","isIndependent","dataCyPrefix","hyphenate","renderCount","activeClassName","className","isActive","Typography","component","style","Items","items","_ref$isSettingsItems","isSettingsItems","filter","map","subItem","subIndex","_subItem$to","Fragment","_objectSpread","isPresent","item","path","SelectedLink","_ref$navLink","navLink","isConfigureNavLink","handleGoBack","isConfigureSidebar","otherProps","onClick","omit","hyphenize","Left","weight","classNames","_defineProperty","Chevron","height","viewBox","width","d","fill"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAKA,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,gDAAA,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,oBACES,yBAAA,CAAAC,aAAA,CAACC,sBAAO,EAAAC,iBAAA,CAAA;IAACX,EAAE,EAAEO,UAAU,IAAIP,EAAAA;AAAG,GAAA,EAAKE,MAAM,EAAA;AAAEU,IAAAA,GAAG,EAAEZ,EAAAA;AAAG,GAAA,CAAA,EAChDC,QACM,CAAC,CAAA;AAEd;;ACdO,IAAMY,cAAc,GAAG;AAC5BC,EAAAA,WAAW,EAAE,aAAa;AAC1BC,EAAAA,QAAQ,EAAE,UAAA;AACZ,CAAC;;ACAM,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,UAAArB,GAAG,EAAA;AAAA,IAAA,OACDO,iBAAiB,CAACS,YAAY,CAACM,GAAG,CAACtB,GAAG,CAAC,KAAKe,kBAAkB,CAACO,GAAG,CAACtB,GAAG,CAAC,CAAA;AAAA,GAAA,EACzEiB,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,UAAA/C,IAAA,EAAqB;AAAA,EAAA,IAAlBgD,WAAW,GAAAhD,IAAA,CAAXgD,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;;ACzBD,IAAMM,OAAO,GAAG,SAAVA,OAAOA,CAAAtD,IAAA,EAUP;AAAA,EAAA,IATJE,EAAE,GAAAF,IAAA,CAAFE,EAAE;IACFqD,KAAK,GAAAvD,IAAA,CAALuD,KAAK;IAAAC,SAAA,GAAAxD,IAAA,CACLyD,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAA,KAAA,CAAA,GAAGzC,cAAc,CAACC,WAAW,GAAAwC,SAAA;IACjCE,KAAK,GAAA1D,IAAA,CAAL0D,KAAK;IACLC,eAAe,GAAA3D,IAAA,CAAf2D,eAAe;IACfC,eAAe,GAAA5D,IAAA,CAAf4D,eAAe;IACJC,MAAM,GAAA7D,IAAA,CAAjB,SAAS,CAAA;IAAA8D,WAAA,GAAA9D,IAAA,CACT+D,MAAM;AAANA,IAAAA,MAAM,GAAAD,WAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,WAAA;IAAAE,YAAA,GAAAhE,IAAA,CACXiE,OAAO;AAAPA,IAAAA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA,EAAE,GAAAA,YAAA,CAAA;AAEZ,EAAA,IAAIP,IAAI,KAAK1C,cAAc,CAACE,QAAQ,EAAE;AACpC,IAAA,oBAAOP,yBAAA,CAAAC,aAAA,CAACuD,6BAAQ,EAAA;AAAOD,MAAAA,OAAO,EAAPA,OAAO;AAAEF,MAAAA,MAAM,EAANA,MAAM;AAAII,MAAAA,aAAa,EAAE,KAAA;AAAM,KAAE,CAAC,CAAA;AACpE,GAAA;AAEA,EAAA,IAAMC,YAAY,GAAGP,MAAM,IAAIQ,mBAAS,CAACd,KAAK,CAAC,CAAA;AAE/C,EAAA,IAAMe,WAAW,GAAG,SAAdA,WAAWA,CAAGZ,KAAK,EAAA;AAAA,IAAA,OAAKA,KAAK,GAAG,GAAG,GAAG,MAAM,GAAGA,KAAK,CAAA;GAAC,CAAA;AAE3D,EAAA,oBACEhD,yBAAA,CAAAC,aAAA,CAACZ,kBAAkB,EAAA;AACXG,IAAAA,EAAE,EAAFA,EAAE;AACRqE,IAAAA,eAAe,EAAC,QAAQ;AACxBC,IAAAA,SAAS,EAAC,2FAA2F;IACrG,SAAA3B,EAAAA,EAAAA,CAAAA,MAAA,CAAYuB,YAAY,EAAY,WAAA,CAAA;IACpCK,QAAQ,EAAE,SAAAA,QAAA,GAAA;MAAA,OAAM,CAACd,eAAe,IAAIzC,gBAAgB,CAAChB,EAAE,EAAEkB,QAAQ,CAAC,CAAA;AAAA,KAAA;AAAC,GAAA,eAEnEV,yBAAA,CAAAC,aAAA,CAAC+D,kBAAU,EAAA;AACTF,IAAAA,SAAS,EAAC,4DAA4D;AACtEG,IAAAA,SAAS,EAAC,MAAM;IAChB,SAAA9B,EAAAA,EAAAA,CAAAA,MAAA,CAAYuB,YAAY,EAAkB,iBAAA,CAAA;AAC1CQ,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAEZrB,KACS,CAAC,eACb7C,yBAAA,CAAAC,aAAA,CAAC+D,kBAAU,EAAA;AACTF,IAAAA,SAAS,EAAC,gEAAgE;AAC1EG,IAAAA,SAAS,EAAC,MAAM;IAChB,SAAA9B,EAAAA,EAAAA,CAAAA,MAAA,CAAYuB,YAAY,EAAkB,iBAAA,CAAA;AAC1CQ,IAAAA,KAAK,EAAC,OAAA;AAAO,GAAA,EAEZhB,eAAe,gBACdlD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAK6D,IAAAA,SAAS,EAAC,6DAAA;AAA6D,GAAE,CAAC,GAE/EF,WAAW,CAACZ,KAAK,CAET,CACM,CAAC,CAAA;AAEzB,CAAC;;;;ACpDD,IAAMmB,KAAK,GAAG,SAARA,KAAKA,CAAA7E,IAAA,EAAA;AAAA,EAAA,IAAM8E,KAAK,GAAA9E,IAAA,CAAL8E,KAAK;IAAAC,oBAAA,GAAA/E,IAAA,CAAEgF,eAAe;AAAfA,IAAAA,eAAe,GAAAD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAEnB,eAAe,GAAA5D,IAAA,CAAf4D,eAAe,CAAA;EAAA,oBAC9DlD,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE6D,IAAAA,SAAS,EAAC,0CAA0C;IACpD,SAAQ,EAAA,0BAAA;AAA0B,GAAA,EAEjCM,KAAK,CAACG,MAAM,CAACnC,mBAAmB,CAAC,CAACoC,GAAG,CAAC,UAACC,OAAO,EAAEC,QAAQ,EAAA;AAAA,IAAA,IAAAC,WAAA,CAAA;AAAA,IAAA,oBACvD3E,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAAC4E,QAAQ,EAAA;AAACxE,MAAAA,GAAG,EAAEsE,QAAAA;AAAS,KAAA,eAC5B1E,yBAAA,CAAAC,aAAA,CAAC2C,OAAO,EAAAzC,iBAAA,CAAA,EAAA,EAAA0E,eAAA,CAAAA,eAAA,CAAA,EAAA,EACGJ,OAAO,CAAA,EAAA,EAAA,EAAA;AAAEvB,MAAAA,eAAe,EAAfA,eAAAA;AAAe,KAAA,CAAA,EAAA;AACjCD,MAAAA,eAAe,EAAE6B,mBAAS,CAACL,OAAO,CAACM,IAAI,CAAE;AACzCvF,MAAAA,EAAE,EAAAmF,CAAAA,WAAA,GAAEF,OAAO,CAACjF,EAAE,MAAAmF,IAAAA,IAAAA,WAAA,KAAAA,KAAAA,CAAAA,GAAAA,WAAA,GAAIF,OAAO,CAACO,IAAAA;AAAK,KAAA,CAChC,CAAC,EACDV,eAAe,IAAIQ,mBAAS,CAACL,OAAO,CAACL,KAAK,CAAC,iBAC1CpE,yBAAA,CAAAC,aAAA,CAACkE,KAAK,EAAA;AAAOG,MAAAA,eAAe,EAAfA,eAAe;MAAIF,KAAK,EAAEK,OAAO,CAACL,KAAAA;AAAM,KAAE,CAE3C,CAAC,CAAA;AAAA,GAClB,CACE,CAAC,CAAA;AAAA;;;;;ACfR,IAAMa,YAAY,GAAG,SAAfA,YAAYA,CAAA3F,IAAA,EAIZ;AAAA,EAAA,IAAA4F,YAAA,GAAA5F,IAAA,CAHJ6F,OAAO;IAAPA,OAAO,GAAAD,YAAA,KAAG,KAAA,CAAA,GAAA;AAAErC,MAAAA,KAAK,EAAE,EAAE;AAAEuB,MAAAA,KAAK,EAAE,EAAE;AAAEgB,MAAAA,kBAAkB,EAAE,KAAA;AAAM,KAAC,GAAAF,YAAA;IAC7DG,YAAY,GAAA/F,IAAA,CAAZ+F,YAAY;IACZC,kBAAkB,GAAAhG,IAAA,CAAlBgG,kBAAkB,CAAA;AAElB,EAAA,IAAQzC,KAAK,GAA+CsC,OAAO,CAA3DtC,KAAK;IAAEuB,KAAK,GAAwCe,OAAO,CAApDf,KAAK;IAAEgB,kBAAkB,GAAoBD,OAAO,CAA7CC,kBAAkB;AAAKG,IAAAA,UAAU,GAAA5F,gDAAA,CAAKwF,OAAO,EAAAvF,SAAA,CAAA,CAAA;EAEnE,oBACEI,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE6D,IAAAA,SAAS,EAAC,kHAAkH;IAC5H,SAAQ,EAAA,yBAAA;AAAyB,GAAA,eAEjC9D,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAAE,iBAAA,CAAA;AACE2D,IAAAA,SAAS,EAAC,2GAA2G;AACrH0B,IAAAA,OAAO,EAAEH,YAAAA;AAAa,GAAA,EAAAR,aAAA,CAAA,EAAA,EACbY,UAAI,CAAC,CAAC,MAAM,CAAC,EAAEF,UAAU,CAAC,CAElCH,CAAAA,EAAAA,kBAAkB,iBACjBpF,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACE6D,IAAAA,SAAS,EAAC,oCAAoC;AAC9C,IAAA,SAAA,EAAA,EAAA,CAAA3B,MAAA,CAAYuD,iBAAS,CAAC7C,KAAK,CAAC,EAAkB,iBAAA,CAAA;IAC9C,aAAAV,EAAAA,EAAAA,CAAAA,MAAA,CAAgBU,KAAK,EAAA,iBAAA,CAAA;AAAkB,GAAA,eAEvC7C,yBAAA,CAAAC,aAAA,CAAC0F,eAAI,EAAA,IAAE,CACH,CACP,eACD3F,yBAAA,CAAAC,aAAA,CAAC+D,kBAAU,EAAA;AACTC,IAAAA,SAAS,EAAC,MAAM;AAChBC,IAAAA,KAAK,EAAC,OAAO;AACb0B,IAAAA,MAAM,EAAC,QAAQ;AACf9B,IAAAA,SAAS,EAAE+B,8BAAU,CAAC,qCAAqC,EAAAC,8BAAA,CAAA;AACzD,MAAA,gDAAgD,EAC9CV,kBAAAA;KACD,EAAA,MAAM,EAAGE,kBAAkB,CAC7B,CAAA;GAEAzC,EAAAA,KACS,CACT,CAAC,EACLuB,KAAK,iBAAIpE,yBAAA,CAAAC,aAAA,CAACkE,KAAK,EAAA;AAAOC,IAAAA,KAAK,EAALA,KAAK;IAAIE,eAAe,EAAA,IAAA;AAAA,GAAE,CAC9C,CAAC,CAAA;AAEV;;;;;AClDA,IAAMyB,OAAO,GAAG,SAAVA,OAAOA,CAAAzG,IAAA,EAAA;AAAA,EAAA,IAAM4E,KAAK,GAAA5E,IAAA,CAAL4E,KAAK,CAAA;EAAA,oBACtBlE,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAWiE,IAAAA,KAAK,EAALA,KAAK;AAAI8B,IAAAA,MAAM,EAAC,IAAI;AAACC,IAAAA,OAAO,EAAC,WAAW;AAACC,IAAAA,KAAK,EAAC,IAAA;GACxDlG,eAAAA,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEkG,IAAAA,CAAC,EAAC,y5BAAy5B;AAC35BC,IAAAA,IAAI,EAAC,cAAA;AAAc,GACpB,CACE,CAAC,CAAA;AAAA;;;;;;;;;"}