@bigbinary/neeto-molecules 1.16.2 → 1.16.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{Chevron-8e923abc.js → Chevron-c64ff676.js} +9 -7
- package/dist/Chevron-c64ff676.js.map +1 -0
- package/dist/ConfigurePageSidebar.js +1 -1
- package/dist/Settings.js +5 -2
- package/dist/Settings.js.map +1 -1
- package/dist/Sidebar.js +2 -3
- package/dist/Sidebar.js.map +1 -1
- package/dist/cjs/{Chevron-265965c2.js → Chevron-8a4ed9cd.js} +9 -7
- package/dist/cjs/Chevron-8a4ed9cd.js.map +1 -0
- package/dist/cjs/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/Settings.js +5 -2
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/Sidebar.js +2 -3
- package/dist/cjs/Sidebar.js.map +1 -1
- package/package.json +1 -1
- package/types/Settings.d.ts +1 -0
- package/dist/Chevron-8e923abc.js.map +0 -1
- package/dist/ShareRecording.js +0 -218
- package/dist/ShareRecording.js.map +0 -1
- package/dist/cjs/Chevron-265965c2.js.map +0 -1
- package/dist/cjs/ShareRecording.js +0 -224
- package/dist/cjs/ShareRecording.js.map +0 -1
- package/types/ShareRecording.d.ts +0 -35
package/dist/cjs/Settings.js
CHANGED
|
@@ -157,6 +157,8 @@ var filterCategories = function filterCategories(_ref) {
|
|
|
157
157
|
var Settings = function Settings(_ref) {
|
|
158
158
|
var _ref$isTitleHidden = _ref.isTitleHidden,
|
|
159
159
|
isTitleHidden = _ref$isTitleHidden === void 0 ? false : _ref$isTitleHidden,
|
|
160
|
+
_ref$isSearchHidden = _ref.isSearchHidden,
|
|
161
|
+
isSearchHidden = _ref$isSearchHidden === void 0 ? false : _ref$isSearchHidden,
|
|
160
162
|
_ref$categories = _ref.categories,
|
|
161
163
|
categories = _ref$categories === void 0 ? [] : _ref$categories;
|
|
162
164
|
var _useTranslation = reactI18next.useTranslation(),
|
|
@@ -169,6 +171,7 @@ var Settings = function Settings(_ref) {
|
|
|
169
171
|
categories: categories,
|
|
170
172
|
searchTerm: searchTerm
|
|
171
173
|
});
|
|
174
|
+
var isHeaderVisible = !isSearchHidden || !isTitleHidden;
|
|
172
175
|
React.useEffect(function () {
|
|
173
176
|
scrollIntoSettingCategory(categoryParam);
|
|
174
177
|
}, [categoryParam]);
|
|
@@ -176,12 +179,12 @@ var Settings = function Settings(_ref) {
|
|
|
176
179
|
className: classnames__default["default"]("neeto-molecules-container", {
|
|
177
180
|
"h-auto overflow-y-auto": isTitleHidden
|
|
178
181
|
})
|
|
179
|
-
}, /*#__PURE__*/React__default["default"].createElement(Header, {
|
|
182
|
+
}, isHeaderVisible && /*#__PURE__*/React__default["default"].createElement(Header, {
|
|
180
183
|
className: classnames__default["default"]({
|
|
181
184
|
"min-h-0 pb-4 pt-8": isTitleHidden
|
|
182
185
|
}),
|
|
183
186
|
title: !isTitleHidden && t("neetoMolecules.settingsPage.title"),
|
|
184
|
-
searchProps: {
|
|
187
|
+
searchProps: isSearchHidden ? null : {
|
|
185
188
|
className: "w-72",
|
|
186
189
|
placeholder: t("neetoMolecules.settingsPage.placeholder.search")
|
|
187
190
|
}
|
package/dist/cjs/Settings.js.map
CHANGED
|
@@ -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\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\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\">\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\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\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 = ({\n isTitleHidden = false,\n isSearchHidden = false,\n categories = [],\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\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 {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && t(\"neetoMolecules.settingsPage.title\")}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\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\">\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 * Whether to hide the search bar or not.\n */\n isSearchHidden: 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","_ref$isSearchHidden","isSearchHidden","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","useEffect","Header","title","searchProps","placeholder","isEmpty","NoData"],"mappings":"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"}
|
package/dist/cjs/Sidebar.js
CHANGED
|
@@ -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-
|
|
14
|
+
var Chevron = require('./Chevron-8a4ed9cd.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');
|
|
@@ -148,8 +148,7 @@ var Links = function Links(_ref) {
|
|
|
148
148
|
}, /*#__PURE__*/React__default["default"].createElement(IconSVG, null)), /*#__PURE__*/React__default["default"].createElement(neetoui.Typography, {
|
|
149
149
|
className: "neeto-molecules-sidebar__link-label",
|
|
150
150
|
component: "span",
|
|
151
|
-
style: "body2"
|
|
152
|
-
weight: "normal"
|
|
151
|
+
style: "body2"
|
|
153
152
|
}, label), items && !isConfigureNavLink && /*#__PURE__*/React__default["default"].createElement("span", {
|
|
154
153
|
className: classnames__default["default"]("neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret", {
|
|
155
154
|
"neeto-molecules-sidebar__link-icon--rotate": isMenuExpanded
|
package/dist/cjs/Sidebar.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent } 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 = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\n}) => {\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n 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","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","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","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","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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"}
|
|
1
|
+
{"version":3,"file":"Sidebar.js","sources":["../../src/components/Sidebar/Components/Header.jsx","../../src/components/Sidebar/Components/Links/index.jsx","../../src/components/Sidebar/index.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { capitalize, findBy } from \"neetocist\";\nimport useFetchNeetoApps from \"neetocommons/react-utils/useFetchNeetoApps\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as ProductTypefaceLogos from \"neetoicons/typeface-logos\";\nimport { Link } from \"react-router-dom\";\n\nconst Header = ({ customLogo, clearSettingsNav, homePath }) => {\n const productName = globalProps.appName.substr(5);\n const logoName = `Neeto${capitalize(productName.toLowerCase())}`;\n const ProductTypefaceLogo = ProductTypefaceLogos[logoName] ?? Neeto;\n const LogoComponent = customLogo ?? ProductTypefaceLogo;\n\n const { data } = useFetchNeetoApps();\n\n let appHomePath = homePath;\n if (data?.neetoApps) {\n const thisApp = findBy({ name: productName }, data.neetoApps);\n if (thisApp?.url) {\n appHomePath = new URL(thisApp?.url).pathname;\n }\n }\n\n return (\n <div\n className=\"neeto-molecules-sidebar__header neeto-molecules-sidebar__no-shrinkable\"\n data-cy=\"sidebar-info\"\n >\n <Link\n className=\"neeto-molecules-sidebar__logo neeto-ui-w-full\"\n to={appHomePath}\n onClick={clearSettingsNav}\n >\n <LogoComponent />\n </Link>\n </div>\n );\n};\n\nexport default React.memo(Header);\n","import React, { useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent } 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 >\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 = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\n}) => {\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, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n 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","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","React","createElement","className","Link","to","onClick","memo","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","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","isPresent","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","find","link","push","buildUrl","activeLink","useMemo","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","color","tooltipProps","content","position"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAQA,IAAMA,MAAM,GAAG,SAATA,MAAMA,CAAAC,IAAA,EAAmD;AAAA,EAAA,IAAAC,qBAAA,CAAA;AAAA,EAAA,IAA7CC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAEC,gBAAgB,GAAAH,IAAA,CAAhBG,gBAAgB;IAAEC,QAAQ,GAAAJ,IAAA,CAARI,QAAQ,CAAA;EACtD,IAAMC,WAAW,GAAGC,WAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAAA;AACjD,EAAA,IAAMC,QAAQ,GAAA,OAAA,CAAAC,MAAA,CAAWC,oBAAU,CAACN,WAAW,CAACO,WAAW,EAAE,CAAC,CAAE,CAAA;AAChE,EAAA,IAAMC,mBAAmB,GAAA,CAAAZ,qBAAA,GAAGa,+BAAoB,CAACL,QAAQ,CAAC,MAAAR,IAAAA,IAAAA,qBAAA,KAAAA,KAAAA,CAAAA,GAAAA,qBAAA,GAAIc,0BAAK,CAAA;EACnE,IAAMC,aAAa,GAAGd,UAAU,KAAA,IAAA,IAAVA,UAAU,KAAVA,KAAAA,CAAAA,GAAAA,UAAU,GAAIW,mBAAmB,CAAA;AAEvD,EAAA,IAAAI,kBAAA,GAAiBC,qCAAiB,EAAE;IAA5BC,IAAI,GAAAF,kBAAA,CAAJE,IAAI,CAAA;EAEZ,IAAIC,WAAW,GAAGhB,QAAQ,CAAA;AAC1B,EAAA,IAAIe,IAAI,KAAJA,IAAAA,IAAAA,IAAI,eAAJA,IAAI,CAAEE,SAAS,EAAE;IACnB,IAAMC,OAAO,GAAGC,gBAAM,CAAC;AAAEC,MAAAA,IAAI,EAAEnB,WAAAA;AAAY,KAAC,EAAEc,IAAI,CAACE,SAAS,CAAC,CAAA;AAC7D,IAAA,IAAIC,OAAO,KAAPA,IAAAA,IAAAA,OAAO,eAAPA,OAAO,CAAEG,GAAG,EAAE;AAChBL,MAAAA,WAAW,GAAG,IAAIM,GAAG,CAACJ,OAAO,KAAA,IAAA,IAAPA,OAAO,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAPA,OAAO,CAAEG,GAAG,CAAC,CAACE,QAAQ,CAAA;AAC9C,KAAA;AACF,GAAA;EAEA,oBACEC,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,wEAAwE;IAClF,SAAQ,EAAA,cAAA;AAAc,GAAA,eAEtBF,yBAAA,CAAAC,aAAA,CAACE,mBAAI,EAAA;AACHD,IAAAA,SAAS,EAAC,+CAA+C;AACzDE,IAAAA,EAAE,EAAEZ,WAAY;AAChBa,IAAAA,OAAO,EAAE9B,gBAAAA;GAETyB,eAAAA,yBAAA,CAAAC,aAAA,CAACb,aAAa,EAAE,IAAA,CACZ,CACH,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,eAAA,aAAeY,yBAAK,CAACM,IAAI,CAACnC,MAAM,CAAC;;;;;AC1BjC,IAAMoC,KAAK,GAAG,SAARA,KAAKA,CAAAnC,IAAA,EAIL;AAAA,EAAA,IAHJoC,QAAQ,GAAApC,IAAA,CAARoC,QAAQ;IACSC,yBAAyB,GAAArC,IAAA,CAA1CsC,eAAe;IACfC,uBAAuB,GAAAvC,IAAA,CAAvBuC,uBAAuB,CAAA;AAEvB,EAAA,IAAMC,QAAQ,GAAGC,0BAAW,EAAE,CAAA;AAC9B,EAAA,IAAAC,SAAA,GAAwDC,cAAQ,CAAC,IAAI,CAAC;IAAAC,UAAA,GAAAC,4BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA/DI,IAAAA,oBAAoB,GAAAF,UAAA,CAAA,CAAA,CAAA;AAAEG,IAAAA,uBAAuB,GAAAH,UAAA,CAAA,CAAA,CAAA,CAAA;AAEpD,EAAA,IAAMI,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAC,KAAA,EAA4C;AAAA,IAAA,IAAtCC,KAAK,GAAAD,KAAA,CAALC,KAAK;MAAEC,QAAQ,GAAAF,KAAA,CAARE,QAAQ;MAAEC,KAAK,GAAAH,KAAA,CAALG,KAAK;MAAEC,OAAO,GAAAJ,KAAA,CAAPI,OAAO,CAAA;AAC3D,IAAA,IAAIC,sBAAY,CAACF,KAAK,CAAC,EAAE,OAAA;IAEzB,IAAIC,OAAO,CAACE,kBAAkB,IAAIC,oBAAU,CAACH,OAAO,CAACD,KAAK,CAAC,EAAE;AAC3Db,MAAAA,uBAAuB,CAACc,OAAO,CAACrB,EAAE,CAAC,CAAA;AACrC,KAAA;IAEA,IAAImB,QAAQ,EAAE,EAAE;MACdJ,uBAAuB,CAACU,SAAG,CAAC,CAAA;MAC5BP,KAAK,CAACQ,cAAc,EAAE,CAAA;AAEtB,MAAA,OAAA;AACF,KAAA;IAEAX,uBAAuB,CAAC,IAAI,CAAC,CAAA;GAC9B,CAAA;EAED,oBACEnB,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,uEAAA;AAAuE,GAAA,EACnFM,QAAQ,CAACuB,MAAM,CAACC,2BAAmB,CAAC,CAACC,GAAG,CAAC,UAACR,OAAO,EAAES,KAAK,EAAK;AAC5D,IAAA,IACEC,KAAK,GAOHV,OAAO,CAPTU,KAAK;MACL/B,EAAE,GAMAqB,OAAO,CANTrB,EAAE;MACFgC,IAAI,GAKFX,OAAO,CALTW,IAAI;MACJZ,KAAK,GAIHC,OAAO,CAJTD,KAAK;MACLG,kBAAkB,GAGhBF,OAAO,CAHTE,kBAAkB;MAAAU,qBAAA,GAGhBZ,OAAO,CAFTf,eAAe;AAAfA,MAAAA,eAAe,GAAA2B,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA;AACpBC,MAAAA,UAAU,GAAAC,gDAAA,CACXd,OAAO,EAAAe,SAAA,CAAA,CAAA;IACX,IAAMC,OAAO,GAAGL,IAAI,CAAA;AACpB,IAAA,IAAMvC,GAAG,GAAG,IAAIC,GAAG,CAACM,EAAE,EAAEsC,MAAM,CAAC9B,QAAQ,CAAC+B,IAAI,CAAC,CAAA;AAC7C,IAAA,IAAMpB,QAAQ,GAAG,SAAXA,QAAQA,GAAA;MAAA,OACZqB,QAAE,CAACC,QAAQ,EAAEP,UAAU,CAACf,QAAQ,CAAC,GAC7Be,UAAU,CAACf,QAAQ,EAAE,GACrBX,QAAQ,CAACb,QAAQ,CAAC+C,UAAU,CAACjD,GAAG,CAACE,QAAQ,CAAC,CAAA;AAAA,KAAA,CAAA;IAEhD,IAAMgD,cAAc,GAClBxB,QAAQ,EAAE,IAAIL,oBAAoB,IAAI,CAACT,yBAAyB,CAAA;AAElE,IAAA,oBACET,yBAAA,CAAAC,aAAA,CAACD,yBAAK,CAACgD,QAAQ,EAAA;AAACC,MAAAA,GAAG,EAAEf,KAAAA;AAAM,KAAA,eACzBlC,yBAAA,CAAAC,aAAA,CAACiD,0BAAkB,EAAAC,iBAAA,CAAA;AACjBC,MAAAA,eAAe,EAAC,QAAQ;AACxBlD,MAAAA,SAAS,EAAC,8GAA8G;AACxH,MAAA,aAAA,EAAA,UAAA,CAAApB,MAAA,CAAwBuE,mBAAS,CAAClB,KAAK,CAAC,CAAG;MAC3C9B,OAAO,EAAE,SAAAA,OAAAA,CAAAiB,KAAK,EAAA;AAAA,QAAA,OACZF,kBAAkB,CAAC;AAAEE,UAAAA,KAAK,EAALA,KAAK;AAAEC,UAAAA,QAAQ,EAARA,QAAQ;AAAEC,UAAAA,KAAK,EAALA,KAAK;AAAEC,UAAAA,OAAO,EAAPA,OAAAA;AAAQ,SAAC,CAAC,CAAA;AAAA,OAAA;AACxD,KAAA,EAAA6B,aAAA,CAAA;AACK/B,MAAAA,QAAQ,EAARA,QAAQ;AAAEnB,MAAAA,EAAE,EAAFA,EAAAA;AAAE,KAAA,EAAKkC,UAAU,CAEhCF,CAAAA,EAAAA,IAAI,iBACHpC,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,oCAAoC;MAC9C,aAAaiC,EAAAA,KAAAA;AAAM,KAAA,eAEnBnC,yBAAA,CAAAC,aAAA,CAACwC,OAAO,EAAA,IAAE,CACN,CACP,eACDzC,yBAAA,CAAAC,aAAA,CAACsD,kBAAU,EAAA;AACTrD,MAAAA,SAAS,EAAC,qCAAqC;AAC/CsD,MAAAA,SAAS,EAAC,MAAM;AAChBC,MAAAA,KAAK,EAAC,OAAA;KAELtB,EAAAA,KACS,CAAC,EACZX,KAAK,IAAI,CAACG,kBAAkB,iBAC3B3B,yBAAA,CAAAC,aAAA,CAAA,MAAA,EAAA;AACEC,MAAAA,SAAS,EAAEwD,8BAAU,CACnB,8EAA8E,EAC9E;AACE,QAAA,4CAA4C,EAC1CX,cAAAA;OAEN,CAAA;AAAE,KAAA,eAEF/C,yBAAA,CAAAC,aAAA,CAAC0D,eAAI,EAAA;AAACC,MAAAA,IAAI,EAAE,EAAA;AAAG,KAAE,CACb,CAEU,CAAC,EACpBpC,KAAK,IAAI,CAACG,kBAAkB,IAAIoB,cAAc,iBAC7C/C,yBAAA,CAAAC,aAAA,CAAC4D,aAAK,EAAAP,aAAA,CAAA;AAAO5C,MAAAA,eAAe,EAAfA,eAAe;AAAEc,MAAAA,KAAK,EAALA,KAAAA;KAAUc,EAAAA,UAAU,CAAK,CAE3C,CAAC,CAAA;AAErB,GAAC,CACE,CAAC,CAAA;AAEV,CAAC;;ACxFD,IAAMwB,OAAO,GAAG,SAAVA,OAAOA,CAAA1F,IAAA,EAKP;AAAA,EAAA,IAJJoC,QAAQ,GAAApC,IAAA,CAARoC,QAAQ;IACRlC,UAAU,GAAAF,IAAA,CAAVE,UAAU;IAAAyF,oBAAA,GAAA3F,IAAA,CACVsC,eAAe;AAAfA,IAAAA,eAAe,GAAAqD,oBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,oBAAA;IAAAC,aAAA,GAAA5F,IAAA,CACvBI,QAAQ;AAARA,IAAAA,QAAQ,GAAAwF,aAAA,KAAG,KAAA,CAAA,GAAA,GAAG,GAAAA,aAAA,CAAA;AAEd,EAAA,IAAMvF,WAAW,GAAGC,wBAAW,CAACC,OAAO,CAACC,MAAM,CAAC,CAAC,CAAC,CAACI,WAAW,EAAE,CAAA;AAC/D,EAAA,IAAA8B,SAAA,GAAkDC,cAAQ,CAAC,KAAK,CAAC;IAAAC,UAAA,GAAAC,4BAAA,CAAAH,SAAA,EAAA,CAAA,CAAA;AAA1DmD,IAAAA,iBAAiB,GAAAjD,UAAA,CAAA,CAAA,CAAA;AAAEkD,IAAAA,oBAAoB,GAAAlD,UAAA,CAAA,CAAA,CAAA,CAAA;AAC9C,EAAA,IAAAmD,gBAAA,GAAwDC,mCAAe,CACrEC,2CAAmC,EACnC,IACF,CAAC;IAAAC,iBAAA,GAAArD,4BAAA,CAAAkD,gBAAA,EAAA,CAAA,CAAA;AAHMI,IAAAA,oBAAoB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAE3D,IAAAA,uBAAuB,GAAA2D,iBAAA,CAAA,CAAA,CAAA,CAAA;EAKpD,IAAAE,iBAAA,GAAoDJ,mCAAe,CACjEK,sCAA8B,EAAE,EAChC,KACF,CAAC;IAAAC,iBAAA,GAAAzD,4BAAA,CAAAuD,iBAAA,EAAA,CAAA,CAAA;AAHMG,IAAAA,kBAAkB,GAAAD,iBAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,qBAAqB,GAAAF,iBAAA,CAAA,CAAA,CAAA,CAAA;AAKhD,EAAA,IAAM9D,QAAQ,GAAGC,0BAAW,EAAE,CAAA;AAC9B,EAAA,IAAMgE,OAAO,GAAGC,yBAAU,EAAE,CAAA;AAC5B,EAAA,IAAAC,eAAA,GAAcC,2BAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC,CAAA;AAET,EAAA,IAAMC,cAAc,GAAG,SAAjBA,cAAcA,GAAA;AAAA,IAAA,OAASxC,MAAM,CAACyC,UAAU,GAAG,GAAG,CAAA;AAAA,GAAA,CAAA;EACpD,IAAMC,eAAe,GAAGF,cAAc,EAAE,GACpCP,kBAAkB,GAClB9C,SAAG,CAACoC,iBAAiB,CAAC,CAAA;AAE1BoB,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAI,CAACC,mBAAS,CAAC9E,QAAQ,CAAC,EAAE,OAAA;AAC1B,IAAA,IAAM+E,WAAW,GAAGC,cAAQ,CAAC,UAAAnE,KAAA,EAAsB;AAAA,MAAA,IAAnBjB,EAAE,GAAAiB,KAAA,CAAFjB,EAAE;QAAEmB,QAAQ,GAAAF,KAAA,CAARE,QAAQ,CAAA;AAC1C,MAAA,IAAM1B,GAAG,GAAG,IAAIC,GAAG,CAACM,EAAE,EAAEsC,MAAM,CAAC9B,QAAQ,CAAC+B,IAAI,CAAC,CAAA;MAE7C,OAAOC,QAAE,CAACC,QAAQ,EAAEtB,QAAQ,CAAC,GACzBA,QAAQ,EAAE,GACVX,QAAQ,CAACb,QAAQ,CAAC0F,QAAQ,CAAC5F,GAAG,CAACE,QAAQ,CAAC,CAAA;KAC7C,CAAC,CAACS,QAAQ,CAAC,CAAA;AAEZ,IAAA,IAAI8E,mBAAS,CAACC,WAAW,CAAC,EAAE;MAC1B5E,uBAAuB,CACrB4E,WAAW,CAAC5D,kBAAkB,GAAG4D,WAAW,CAACnF,EAAE,GAAG,IACpD,CAAC,CAAA;AACH,KAAA;GACD,EAAE,EAAE,CAAC,CAAA;AAENiF,EAAAA,eAAS,CAAC,YAAM;AACd,IAAA,IAAMK,YAAY,GAAG,SAAfA,YAAYA,GAAS;MACzB,IAAIR,cAAc,EAAE,EAAE,OAAA;MACtBhB,oBAAoB,CAAC,KAAK,CAAC,CAAA;MAC3BU,qBAAqB,CAAC,IAAI,CAAC,CAAA;KAC5B,CAAA;AACDlC,IAAAA,MAAM,CAACiD,gBAAgB,CAAC,QAAQ,EAAED,YAAY,CAAC,CAAA;IAE/C,OAAO,YAAA;AAAA,MAAA,OAAMhD,MAAM,CAACkD,mBAAmB,CAAC,QAAQ,EAAEF,YAAY,CAAC,CAAA;AAAA,KAAA,CAAA;GAChE,EAAE,EAAE,CAAC,CAAA;AAEN,EAAA,IAAMG,YAAY,GAAG,SAAfA,YAAYA,CAAGvE,KAAK,EAAI;IAC5BA,KAAK,CAACQ,cAAc,EAAE,CAAA;IACtBnB,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC7B,IAAA,IAAMmF,eAAe,GAAGtF,QAAQ,CAACuF,IAAI,CACnC,UAAAC,IAAI,EAAA;MAAA,OAAIV,mBAAS,CAACU,IAAI,CAACrE,kBAAkB,CAAC,IAAIqE,IAAI,CAACrE,kBAAkB,CAAA;AAAA,KACvE,CAAC,CAAA;IACD,IAAImE,eAAe,CAAC1F,EAAE,EAAE;MACtByE,OAAO,CAACoB,IAAI,CAACC,cAAQ,CAACJ,eAAe,CAAC1F,EAAE,CAAC,CAAC,CAAA;AAC5C,KAAA;GACD,CAAA;EAED,IAAM+F,UAAU,GAAGC,aAAO,CACxB,YAAA;AAAA,IAAA,OACE5F,QAAQ,CAACuF,IAAI,CAAC,UAAAC,IAAI,EAAI;AACpB,MAAA,IAAIpD,QAAE,CAACC,QAAQ,EAAEmD,IAAI,CAACzE,QAAQ,CAAC,EAAE,OAAOyE,IAAI,CAACzE,QAAQ,EAAE,CAAA;AACvD,MAAA,IAAM1B,GAAG,GAAG,IAAIC,GAAG,CAACkG,IAAI,CAAC5F,EAAE,EAAEsC,MAAM,CAAC9B,QAAQ,CAAC+B,IAAI,CAAC,CAAA;MAElD,OAAO/B,QAAQ,CAACb,QAAQ,CAAC+C,UAAU,CAACjD,GAAG,CAACE,QAAQ,CAAC,CAAA;AACnD,KAAC,CAAC,CAAA;AAAA,GAAA,EACJ,CAACa,QAAQ,CAACb,QAAQ,EAAES,QAAQ,CAC9B,CAAC,CAAA;AAED,EAAA,IAAM6F,wBAAwB,GAC5B9B,oBAAoB,IACpB,CAAA4B,UAAU,aAAVA,UAAU,KAAA,KAAA,CAAA,GAAA,KAAA,CAAA,GAAVA,UAAU,CAAE/F,EAAE,MAAKmE,oBAAoB,IACvC3C,oBAAU,CAACpB,QAAQ,CAAC,CAAA;EAEtB,oBACER,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,aAAA,EAAY,mBAAmB;AAC/BC,IAAAA,SAAS,EAAEwD,8BAAU,CAAC,kCAAkC,EAAE;MACxD,6CAA6C,EAAEwB,cAAc,EAAE,GAC3DP,kBAAkB,GAClB9C,SAAG,CAACoC,iBAAiB,CAAA;KAC1B,CAAA;GAEDjE,eAAAA,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACEC,IAAAA,SAAS,EAAC,mCAAmC;IAC7CG,OAAO,EAAE,SAAAA,OAAAA,GAAM;MACb6D,oBAAoB,CAAC,KAAK,CAAC,CAAA;MAC3BvD,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAC/B,KAAA;AAAE,GACH,CAAC,eACFX,yBAAA,CAAAC,aAAA,CAAA,KAAA,EAAA;AACE,IAAA,SAAA,EAAQ,iBAAiB;AACzB,IAAA,aAAA,EAAY,SAAS;AACrBC,IAAAA,SAAS,EAAEwD,8BAAU,CACnB,oIAAoI,EACpI;MACE,qCAAqC,EACnC4B,mBAAS,CAACf,oBAAoB,CAAA;KAEpC,CAAA;AAAE,GAAA,eAEFvE,yBAAA,CAAAC,aAAA,CAAC9B,QAAM,EAAA;AACCG,IAAAA,UAAU,EAAVA,UAAU;AAAEE,IAAAA,QAAQ,EAARA,QAAQ;IAC1BD,gBAAgB,EAAE,SAAAA,gBAAA,GAAA;MAAA,OAAMoC,uBAAuB,CAAC,IAAI,CAAC,CAAA;AAAA,KAAA;GACtD,CAAC,EACD0F,wBAAwB,gBACvBrG,yBAAA,CAAAC,aAAA,CAACqG,oBAAY,EAAA;AAAOT,IAAAA,YAAY,EAAZA,YAAY;AAAIpE,IAAAA,OAAO,EAAE0E,UAAAA;AAAW,GAAE,CAAC,gBAE3DnG,yBAAA,CAAAC,aAAA,CAACM,KAAK,EAAA;AAAOG,IAAAA,eAAe,EAAfA,eAAe;AAAEF,IAAAA,QAAQ,EAARA,QAAQ;AAAEG,IAAAA,uBAAuB,EAAvBA,uBAAAA;AAAuB,GAAK,CAEnE,CAAC,eACNX,yBAAA,CAAAC,aAAA,CAACsG,cAAM,EAAA;AACLrG,IAAAA,SAAS,EAAC,kCAAkC;AAC5C,IAAA,SAAA,EAAQ,iCAAiC;AACzC,IAAA,aAAA,EAAY,sBAAsB;AAClCuD,IAAAA,KAAK,EAAEyB,cAAc,EAAE,GAAG,MAAM,GAAG,WAAY;IAC/C9C,IAAI,EAAE,SAAAA,IAAA,GAAA;AAAA,MAAA,oBACJpC,yBAAA,CAAAC,aAAA,CAACuG,eAAO,EAAA;AACN/C,QAAAA,KAAK,EAAE;UAAEgD,KAAK,EAAA,kBAAA,CAAA3H,MAAA,CAAqBL,WAAW,EAAA,YAAA,CAAA;AAAa,SAAA;AAAE,OAC9D,CAAC,CAAA;KACF;AACFiI,IAAAA,YAAY,EAAE;MACZC,OAAO,EAAEvB,eAAe,GACpBH,CAAC,CAAC,iCAAiC,CAAC,GACpCA,CAAC,CAAC,iCAAiC,CAAC;AACxC2B,MAAAA,QAAQ,EAAE,QAAA;KACV;IACFvG,OAAO,EAAE,SAAAA,OAAAA,GAAM;MACbuE,qBAAqB,CAAC,CAACD,kBAAkB,CAAC,CAAA;MAC1CT,oBAAoB,CAACrC,SAAG,CAAC,CAAA;AAC3B,KAAA;AAAE,GACH,CACE,CAAC,CAAA;AAEV;;;;"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@bigbinary/neeto-molecules",
|
|
3
|
-
"version": "1.16.
|
|
3
|
+
"version": "1.16.4",
|
|
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/Settings.d.ts
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Chevron-8e923abc.js","sources":["../src/components/Sidebar/Components/Links/CheckPointNavLink.jsx","../src/components/Sidebar/constants.js","../src/components/Sidebar/utils.js","../src/components/Sidebar/Components/Links/SubLink.jsx","../src/components/Sidebar/Components/Links/Items.jsx","../src/components/Sidebar/Components/Links/SelectedLink.jsx","../src/components/Sidebar/Components/Chevron.jsx"],"sourcesContent":["import React from \"react\";\n\nimport { useNavigationCheckpoints } from \"neetocommons/react-utils/useRegisterNavigationCheckpoint\";\nimport { NavLink } from \"react-router-dom\";\n\nconst CheckPointNavLinks = ({ checkpointKey, to, children, ...others }) => {\n const { [checkpointKey]: checkpoint } =\n useNavigationCheckpoints(checkpointKey);\n\n return (\n <NavLink to={checkpoint || to} {...others} key={to}>\n {children}\n </NavLink>\n );\n};\n\nexport default CheckPointNavLinks;\n","export const SUB_LINK_TYPES = {\n SYSTEM_VIEW: \"system_view\",\n SEGMENTS: \"segments\",\n};\n\nexport const SELECTED_NAV_LINK_ROUTE_STORAGE_KEY = \"selectedNavLinkRoute\";\n","import { isNotEmpty } from \"neetocist\";\nimport { __, all, curry, equals, includes, is } from \"ramda\";\n\nexport const isSubRouteActive = (subRoute, location) => {\n const currentBrowserUrl = new URL(\n location.pathname + location.search + location.hash,\n window.location.origin\n );\n const targetUrl = new URL(subRoute, window.location.origin);\n\n const targetSearchParams = targetUrl.searchParams;\n const targetSearchKeys = Array.from(targetSearchParams.keys());\n\n return (\n all(\n key =>\n currentBrowserUrl.searchParams.get(key) === targetSearchParams.get(key),\n targetSearchKeys\n ) && equals(currentBrowserUrl.pathname, targetUrl.pathname)\n );\n};\n\nexport const getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nexport const filterByPermissions = curry(({ permissions }) => {\n if (permissions && isNotEmpty(permissions)) {\n return is(Array, permissions)\n ? permissions.some(includes(__, globalProps.permissions))\n : globalProps.permissions.includes(permissions);\n }\n\n return true;\n});\n","import React from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Segments } from \"neetofilters\";\nimport { Typography } from \"neetoui\";\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","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","isSubRouteActive","subRoute","location","currentBrowserUrl","URL","pathname","search","hash","window","origin","targetUrl","targetSearchParams","searchParams","targetSearchKeys","Array","from","keys","all","get","equals","getSidebarStateLocalStorageKey","_globalProps$user","_globalProps$user2","user","globalProps","email","phoneNumber","concat","filterByPermissions","curry","permissions","isNotEmpty","is","some","includes","__","SubLink","label","_ref$type","type","count","isSectionHeader","isCountsLoading","dataCy","_ref$entity","entity","_ref$columns","columns","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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"}
|
package/dist/ShareRecording.js
DELETED
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import { _ as _extends } from './extends-093996c9.js';
|
|
2
|
-
import { _ as _defineProperty } from './defineProperty-549061a7.js';
|
|
3
|
-
import { _ as _slicedToArray } from './slicedToArray-b4278ecd.js';
|
|
4
|
-
import { _ as _objectWithoutProperties } from './objectWithoutProperties-a0edb288.js';
|
|
5
|
-
import React__default, { useState, useEffect } from 'react';
|
|
6
|
-
import { Tooltip, Typography, Checkbox, Input, Modal, Spinner, Button } from '@bigbinary/neetoui';
|
|
7
|
-
import { useTranslation } from 'react-i18next';
|
|
8
|
-
import { n } from './inject-css-c86de496.js';
|
|
9
|
-
import { buildUrl } from '@bigbinary/neeto-commons-frontend/utils';
|
|
10
|
-
import { not } from 'ramda';
|
|
11
|
-
import CopyToClipboardButton from './CopyToClipboardButton.js';
|
|
12
|
-
import 'classnames';
|
|
13
|
-
import '@bigbinary/neeto-commons-frontend/utils/general';
|
|
14
|
-
import '@bigbinary/neeto-icons';
|
|
15
|
-
|
|
16
|
-
var css = ".neeto-molecules-share-timestamp-input .neeto-ui-input__wrapper{position:relative}.neeto-molecules-share-timestamp-input .neeto-ui-input__wrapper:not(:last-child):after{content:\":\";font-weight:bolder;position:absolute;right:-8px;top:4px}";
|
|
17
|
-
n(css,{});
|
|
18
|
-
|
|
19
|
-
var ONE_SECOND = 1;
|
|
20
|
-
var ONE_MINUTE = 60 * ONE_SECOND;
|
|
21
|
-
var ONE_HOUR = 60 * ONE_MINUTE;
|
|
22
|
-
|
|
23
|
-
var getTimeValues = function getTimeValues(playbackTimeInSec) {
|
|
24
|
-
var hour = Math.floor(playbackTimeInSec / ONE_HOUR);
|
|
25
|
-
playbackTimeInSec = playbackTimeInSec % ONE_HOUR;
|
|
26
|
-
var minute = Math.floor(playbackTimeInSec / ONE_MINUTE);
|
|
27
|
-
playbackTimeInSec = playbackTimeInSec % ONE_MINUTE;
|
|
28
|
-
var second = Math.floor(playbackTimeInSec / ONE_SECOND);
|
|
29
|
-
return {
|
|
30
|
-
hour: hour,
|
|
31
|
-
minute: minute,
|
|
32
|
-
second: second
|
|
33
|
-
};
|
|
34
|
-
};
|
|
35
|
-
var padZero = function padZero(number) {
|
|
36
|
-
var length = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;
|
|
37
|
-
var string = String(number);
|
|
38
|
-
var threshold = Math.pow(10, length - 1);
|
|
39
|
-
if (number < threshold) {
|
|
40
|
-
while (String(threshold).length > string.length) {
|
|
41
|
-
string = "0".concat(number);
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
return string;
|
|
45
|
-
};
|
|
46
|
-
var shouldRenderHoursInput = function shouldRenderHoursInput(duration) {
|
|
47
|
-
var hours = Math.floor(duration / ONE_HOUR);
|
|
48
|
-
return hours > 0;
|
|
49
|
-
};
|
|
50
|
-
|
|
51
|
-
function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
52
|
-
function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
53
|
-
var ShareModalBody = function ShareModalBody(_ref) {
|
|
54
|
-
var recordingUrl = _ref.recordingUrl,
|
|
55
|
-
totalDuration = _ref.totalDuration,
|
|
56
|
-
getCurrentTimestamp = _ref.getCurrentTimestamp,
|
|
57
|
-
isOpen = _ref.isOpen;
|
|
58
|
-
var _useTranslation = useTranslation(),
|
|
59
|
-
t = _useTranslation.t;
|
|
60
|
-
var currentTimestamp = getCurrentTimestamp();
|
|
61
|
-
var _useState = useState(""),
|
|
62
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
63
|
-
shareLink = _useState2[0],
|
|
64
|
-
setShareLink = _useState2[1];
|
|
65
|
-
var _useState3 = useState(currentTimestamp),
|
|
66
|
-
_useState4 = _slicedToArray(_useState3, 2),
|
|
67
|
-
currentPlaybackTime = _useState4[0],
|
|
68
|
-
setCurrentPlaybackTime = _useState4[1];
|
|
69
|
-
var _useState5 = useState(currentTimestamp > 0),
|
|
70
|
-
_useState6 = _slicedToArray(_useState5, 2),
|
|
71
|
-
isPlaybackTimeCheckboxChecked = _useState6[0],
|
|
72
|
-
setIsPlaybackTimeCheckboxChecked = _useState6[1];
|
|
73
|
-
var _getTimeValues = getTimeValues(currentPlaybackTime),
|
|
74
|
-
hour = _getTimeValues.hour,
|
|
75
|
-
minute = _getTimeValues.minute,
|
|
76
|
-
second = _getTimeValues.second;
|
|
77
|
-
var handlePlaybackTimestampChange = function handlePlaybackTimestampChange(_ref2) {
|
|
78
|
-
var valueInSec = _ref2.valueInSec,
|
|
79
|
-
offset = _ref2.offset;
|
|
80
|
-
var intendedTimeInSec = currentPlaybackTime + valueInSec - offset;
|
|
81
|
-
setCurrentPlaybackTime(Math.min(intendedTimeInSec, totalDuration));
|
|
82
|
-
};
|
|
83
|
-
var renderTimeInput = function renderTimeInput(_ref3) {
|
|
84
|
-
var value = _ref3.value,
|
|
85
|
-
onChange = _ref3.onChange,
|
|
86
|
-
max = _ref3.max;
|
|
87
|
-
return /*#__PURE__*/React__default.createElement(Input, {
|
|
88
|
-
max: max,
|
|
89
|
-
onChange: onChange,
|
|
90
|
-
value: value,
|
|
91
|
-
className: "w-14",
|
|
92
|
-
disabled: not(isPlaybackTimeCheckboxChecked),
|
|
93
|
-
min: 0,
|
|
94
|
-
type: "number",
|
|
95
|
-
unlimitedChars: false
|
|
96
|
-
});
|
|
97
|
-
};
|
|
98
|
-
useEffect(function () {
|
|
99
|
-
if (not(isOpen)) return;
|
|
100
|
-
setIsPlaybackTimeCheckboxChecked(currentTimestamp > 0);
|
|
101
|
-
setCurrentPlaybackTime(currentTimestamp > 0 ? currentTimestamp : 0);
|
|
102
|
-
}, [isOpen]);
|
|
103
|
-
useEffect(function () {
|
|
104
|
-
var playbackUrl = buildUrl(recordingUrl, _objectSpread$1({}, isPlaybackTimeCheckboxChecked && currentPlaybackTime > 0 && {
|
|
105
|
-
time: currentPlaybackTime
|
|
106
|
-
}));
|
|
107
|
-
setShareLink(playbackUrl);
|
|
108
|
-
}, [recordingUrl, isPlaybackTimeCheckboxChecked, currentPlaybackTime]);
|
|
109
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement("div", {
|
|
110
|
-
className: "neeto-ui-bg-gray-100 neeto-ui-rounded-lg mb-3 flex items-center justify-between p-2"
|
|
111
|
-
}, /*#__PURE__*/React__default.createElement(Tooltip, {
|
|
112
|
-
content: shareLink
|
|
113
|
-
}, /*#__PURE__*/React__default.createElement(Typography, {
|
|
114
|
-
className: "truncate",
|
|
115
|
-
style: "body2"
|
|
116
|
-
}, shareLink)), /*#__PURE__*/React__default.createElement(CopyToClipboardButton, {
|
|
117
|
-
className: "flex-shrink-0",
|
|
118
|
-
style: "secondary",
|
|
119
|
-
tooltipContent: t("neetoMolecules.shareRecording.tooltipContent"),
|
|
120
|
-
value: shareLink,
|
|
121
|
-
successTooltipContent: t("neetoMolecules.shareRecording.successTooltipContent")
|
|
122
|
-
})), /*#__PURE__*/React__default.createElement("div", {
|
|
123
|
-
className: "flex items-center gap-x-2"
|
|
124
|
-
}, /*#__PURE__*/React__default.createElement(Checkbox, {
|
|
125
|
-
checked: isPlaybackTimeCheckboxChecked,
|
|
126
|
-
className: "grow-0",
|
|
127
|
-
"data-cy": "time-checkbox",
|
|
128
|
-
label: t("neetoMolecules.shareRecording.checkboxLabel"),
|
|
129
|
-
onChange: function onChange(_ref4) {
|
|
130
|
-
var checked = _ref4.target.checked;
|
|
131
|
-
return setIsPlaybackTimeCheckboxChecked(checked);
|
|
132
|
-
}
|
|
133
|
-
}), /*#__PURE__*/React__default.createElement("div", {
|
|
134
|
-
className: "neeto-molecules-share-timestamp-input flex items-center gap-x-3",
|
|
135
|
-
"data-cy": "time-inputs"
|
|
136
|
-
}, shouldRenderHoursInput(totalDuration) && renderTimeInput({
|
|
137
|
-
max: 99,
|
|
138
|
-
value: padZero(hour),
|
|
139
|
-
onChange: function onChange(e) {
|
|
140
|
-
return handlePlaybackTimestampChange({
|
|
141
|
-
valueInSec: e.target.value * ONE_HOUR,
|
|
142
|
-
offset: hour * ONE_HOUR
|
|
143
|
-
});
|
|
144
|
-
}
|
|
145
|
-
}), renderTimeInput({
|
|
146
|
-
max: 59,
|
|
147
|
-
value: padZero(minute),
|
|
148
|
-
onChange: function onChange(e) {
|
|
149
|
-
return handlePlaybackTimestampChange({
|
|
150
|
-
valueInSec: e.target.value * ONE_MINUTE,
|
|
151
|
-
offset: minute * ONE_MINUTE
|
|
152
|
-
});
|
|
153
|
-
}
|
|
154
|
-
}), renderTimeInput({
|
|
155
|
-
max: 59,
|
|
156
|
-
value: padZero(second),
|
|
157
|
-
onChange: function onChange(e) {
|
|
158
|
-
return handlePlaybackTimestampChange({
|
|
159
|
-
valueInSec: e.target.value * ONE_SECOND,
|
|
160
|
-
offset: second * ONE_SECOND
|
|
161
|
-
});
|
|
162
|
-
}
|
|
163
|
-
}))));
|
|
164
|
-
};
|
|
165
|
-
|
|
166
|
-
var _excluded = ["recordingUrl", "totalDuration", "getCurrentTimestamp", "buttonProps", "isLoading"];
|
|
167
|
-
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
168
|
-
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
169
|
-
var ShareRecording = function ShareRecording(_ref) {
|
|
170
|
-
var recordingUrl = _ref.recordingUrl,
|
|
171
|
-
totalDuration = _ref.totalDuration,
|
|
172
|
-
getCurrentTimestamp = _ref.getCurrentTimestamp,
|
|
173
|
-
_ref$buttonProps = _ref.buttonProps,
|
|
174
|
-
buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps,
|
|
175
|
-
_ref$isLoading = _ref.isLoading,
|
|
176
|
-
isLoading = _ref$isLoading === void 0 ? false : _ref$isLoading,
|
|
177
|
-
otherProps = _objectWithoutProperties(_ref, _excluded);
|
|
178
|
-
var _useTranslation = useTranslation(),
|
|
179
|
-
t = _useTranslation.t;
|
|
180
|
-
var _useState = useState(false),
|
|
181
|
-
_useState2 = _slicedToArray(_useState, 2),
|
|
182
|
-
isOpen = _useState2[0],
|
|
183
|
-
setIsOpen = _useState2[1];
|
|
184
|
-
var handleClick = function handleClick() {
|
|
185
|
-
var _buttonProps$onClick;
|
|
186
|
-
setIsOpen(true);
|
|
187
|
-
buttonProps === null || buttonProps === void 0 ? void 0 : (_buttonProps$onClick = buttonProps.onClick) === null || _buttonProps$onClick === void 0 ? void 0 : _buttonProps$onClick.call(buttonProps);
|
|
188
|
-
};
|
|
189
|
-
return /*#__PURE__*/React__default.createElement(React__default.Fragment, null, /*#__PURE__*/React__default.createElement(Modal, _extends({}, _objectSpread({
|
|
190
|
-
isOpen: isOpen
|
|
191
|
-
}, otherProps), {
|
|
192
|
-
"data-cy": "share-modal",
|
|
193
|
-
size: "large",
|
|
194
|
-
onClose: function onClose() {
|
|
195
|
-
return setIsOpen(false);
|
|
196
|
-
}
|
|
197
|
-
}), /*#__PURE__*/React__default.createElement(Modal.Header, null, /*#__PURE__*/React__default.createElement(Typography, {
|
|
198
|
-
style: "h2"
|
|
199
|
-
}, t("neetoMolecules.shareRecording.title"))), /*#__PURE__*/React__default.createElement(Modal.Body, {
|
|
200
|
-
className: "flex flex-col space-y-2"
|
|
201
|
-
}, isLoading ? /*#__PURE__*/React__default.createElement(Spinner, {
|
|
202
|
-
className: "mx-auto"
|
|
203
|
-
}) : /*#__PURE__*/React__default.createElement(ShareModalBody, {
|
|
204
|
-
getCurrentTimestamp: getCurrentTimestamp,
|
|
205
|
-
isOpen: isOpen,
|
|
206
|
-
recordingUrl: recordingUrl,
|
|
207
|
-
totalDuration: totalDuration
|
|
208
|
-
}))), /*#__PURE__*/React__default.createElement(Button, _extends({
|
|
209
|
-
"data-cy": "share-button",
|
|
210
|
-
label: t("neetoMolecules.common.actions.share"),
|
|
211
|
-
style: "secondary"
|
|
212
|
-
}, buttonProps, {
|
|
213
|
-
onClick: handleClick
|
|
214
|
-
})));
|
|
215
|
-
};
|
|
216
|
-
|
|
217
|
-
export { ShareRecording as default };
|
|
218
|
-
//# sourceMappingURL=ShareRecording.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ShareRecording.js","sources":["../src/components/ShareRecording/constants.js","../src/components/ShareRecording/utils.js","../src/components/ShareRecording/ShareModalBody.jsx","../src/components/ShareRecording/index.jsx"],"sourcesContent":["export const ONE_SECOND = 1;\nexport const ONE_MINUTE = 60 * ONE_SECOND;\nexport const ONE_HOUR = 60 * ONE_MINUTE;\n","import { ONE_HOUR, ONE_MINUTE, ONE_SECOND } from \"./constants\";\n\nexport const getTimeValues = playbackTimeInSec => {\n const hour = Math.floor(playbackTimeInSec / ONE_HOUR);\n playbackTimeInSec = playbackTimeInSec % ONE_HOUR;\n const minute = Math.floor(playbackTimeInSec / ONE_MINUTE);\n playbackTimeInSec = playbackTimeInSec % ONE_MINUTE;\n const second = Math.floor(playbackTimeInSec / ONE_SECOND);\n\n return { hour, minute, second };\n};\n\nexport const padZero = (number, length = 2) => {\n let string = String(number);\n const threshold = Math.pow(10, length - 1);\n\n if (number < threshold) {\n while (String(threshold).length > string.length) {\n string = `0${number}`;\n }\n }\n\n return string;\n};\n\nexport const shouldRenderHoursInput = duration => {\n const hours = Math.floor(duration / ONE_HOUR);\n\n return hours > 0;\n};\n","import React, { useState, useEffect } from \"react\";\n\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Typography, Input, Checkbox, Tooltip } from \"neetoui\";\nimport { not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport { ONE_HOUR, ONE_MINUTE, ONE_SECOND } from \"./constants\";\nimport \"./share-modal.scss\";\nimport { getTimeValues, padZero, shouldRenderHoursInput } from \"./utils\";\n\nconst ShareModalBody = ({\n recordingUrl,\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n}) => {\n const { t } = useTranslation();\n const currentTimestamp = getCurrentTimestamp();\n\n const [shareLink, setShareLink] = useState(\"\");\n const [currentPlaybackTime, setCurrentPlaybackTime] =\n useState(currentTimestamp);\n\n const [isPlaybackTimeCheckboxChecked, setIsPlaybackTimeCheckboxChecked] =\n useState(currentTimestamp > 0);\n\n const { hour, minute, second } = getTimeValues(currentPlaybackTime);\n\n const handlePlaybackTimestampChange = ({ valueInSec, offset }) => {\n const intendedTimeInSec = currentPlaybackTime + valueInSec - offset;\n\n setCurrentPlaybackTime(Math.min(intendedTimeInSec, totalDuration));\n };\n\n const renderTimeInput = ({ value, onChange, max }) => (\n <Input\n {...{ max, onChange, value }}\n className=\"w-14\"\n disabled={not(isPlaybackTimeCheckboxChecked)}\n min={0}\n type=\"number\"\n unlimitedChars={false}\n />\n );\n\n useEffect(() => {\n if (not(isOpen)) return;\n\n setIsPlaybackTimeCheckboxChecked(currentTimestamp > 0);\n setCurrentPlaybackTime(currentTimestamp > 0 ? currentTimestamp : 0);\n }, [isOpen]);\n\n useEffect(() => {\n const playbackUrl = buildUrl(recordingUrl, {\n ...(isPlaybackTimeCheckboxChecked &&\n currentPlaybackTime > 0 && { time: currentPlaybackTime }),\n });\n\n setShareLink(playbackUrl);\n }, [recordingUrl, isPlaybackTimeCheckboxChecked, currentPlaybackTime]);\n\n return (\n <>\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg mb-3 flex items-center justify-between p-2\">\n <Tooltip content={shareLink}>\n <Typography className=\"truncate\" style=\"body2\">\n {shareLink}\n </Typography>\n </Tooltip>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n style=\"secondary\"\n tooltipContent={t(\"neetoMolecules.shareRecording.tooltipContent\")}\n value={shareLink}\n successTooltipContent={t(\n \"neetoMolecules.shareRecording.successTooltipContent\"\n )}\n />\n </div>\n <div className=\"flex items-center gap-x-2\">\n <Checkbox\n checked={isPlaybackTimeCheckboxChecked}\n className=\"grow-0\"\n data-cy=\"time-checkbox\"\n label={t(\"neetoMolecules.shareRecording.checkboxLabel\")}\n onChange={({ target: { checked } }) =>\n setIsPlaybackTimeCheckboxChecked(checked)\n }\n />\n <div\n className=\"neeto-molecules-share-timestamp-input flex items-center gap-x-3\"\n data-cy=\"time-inputs\"\n >\n {shouldRenderHoursInput(totalDuration) &&\n renderTimeInput({\n max: 99,\n value: padZero(hour),\n onChange: e =>\n handlePlaybackTimestampChange({\n valueInSec: e.target.value * ONE_HOUR,\n offset: hour * ONE_HOUR,\n }),\n })}\n {renderTimeInput({\n max: 59,\n value: padZero(minute),\n onChange: e =>\n handlePlaybackTimestampChange({\n valueInSec: e.target.value * ONE_MINUTE,\n offset: minute * ONE_MINUTE,\n }),\n })}\n {renderTimeInput({\n max: 59,\n value: padZero(second),\n onChange: e =>\n handlePlaybackTimestampChange({\n valueInSec: e.target.value * ONE_SECOND,\n offset: second * ONE_SECOND,\n }),\n })}\n </div>\n </div>\n </>\n );\n};\n\nexport default ShareModalBody;\n","import React, { useState } from \"react\";\n\nimport { Modal, Typography, Spinner, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./share-modal.scss\";\nimport ShareModalBody from \"./ShareModalBody\";\n\nconst ShareRecording = ({\n recordingUrl,\n totalDuration,\n getCurrentTimestamp,\n buttonProps = {},\n isLoading = false,\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useState(false);\n\n const handleClick = () => {\n setIsOpen(true);\n buttonProps?.onClick?.();\n };\n\n return (\n <>\n <Modal\n {...{ isOpen, ...otherProps }}\n data-cy=\"share-modal\"\n size=\"large\"\n onClose={() => setIsOpen(false)}\n >\n <Modal.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.shareRecording.title\")}\n </Typography>\n </Modal.Header>\n <Modal.Body className=\"flex flex-col space-y-2\">\n {isLoading ? (\n <Spinner className=\"mx-auto\" />\n ) : (\n <ShareModalBody\n {...{ getCurrentTimestamp, isOpen, recordingUrl, totalDuration }}\n />\n )}\n </Modal.Body>\n </Modal>\n <Button\n data-cy=\"share-button\"\n label={t(\"neetoMolecules.common.actions.share\")}\n style=\"secondary\"\n {...buttonProps}\n onClick={handleClick}\n />\n </>\n );\n};\n\nShareRecording.propTypes = {\n /**\n * Recording URL used for building the share link.\n */\n recordingUrl: PropTypes.string.isRequired,\n /**\n * Total duration of the content being shared.\n */\n totalDuration: PropTypes.number.isRequired,\n /**\n * A function that returns current playback time of the recorded content in seconds.\n */\n getCurrentTimestamp: PropTypes.func.isRequired,\n /**\n * Additional props for the button component.\n */\n buttonProps: PropTypes.object,\n /**\n * Boolean indicating whether content is loading or not.\n */\n isLoading: PropTypes.bool,\n};\n\nexport default ShareRecording;\n"],"names":["ONE_SECOND","ONE_MINUTE","ONE_HOUR","getTimeValues","playbackTimeInSec","hour","Math","floor","minute","second","padZero","number","length","arguments","undefined","string","String","threshold","pow","concat","shouldRenderHoursInput","duration","hours","ShareModalBody","_ref","recordingUrl","totalDuration","getCurrentTimestamp","isOpen","_useTranslation","useTranslation","t","currentTimestamp","_useState","useState","_useState2","_slicedToArray","shareLink","setShareLink","_useState3","_useState4","currentPlaybackTime","setCurrentPlaybackTime","_useState5","_useState6","isPlaybackTimeCheckboxChecked","setIsPlaybackTimeCheckboxChecked","_getTimeValues","handlePlaybackTimestampChange","_ref2","valueInSec","offset","intendedTimeInSec","min","renderTimeInput","_ref3","value","onChange","max","React","createElement","Input","className","disabled","not","type","unlimitedChars","useEffect","playbackUrl","buildUrl","_objectSpread","time","Fragment","Tooltip","content","Typography","style","CopyToClipboardButton","tooltipContent","successTooltipContent","Checkbox","checked","label","_ref4","target","e","ShareRecording","_ref$buttonProps","buttonProps","_ref$isLoading","isLoading","otherProps","_objectWithoutProperties","_excluded","setIsOpen","handleClick","_buttonProps$onClick","onClick","call","Modal","_extends","size","onClose","Header","Body","Spinner","Button"],"mappings":"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"}
|