@bigbinary/neeto-molecules 3.3.22 → 3.3.24

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.
Files changed (73) hide show
  1. package/dist/Builder.js +3 -1
  2. package/dist/Builder.js.map +1 -1
  3. package/dist/ConfigurePageSidebar.js +2 -1
  4. package/dist/ConfigurePageSidebar.js.map +1 -1
  5. package/dist/DateFormat.js +2 -1
  6. package/dist/DateFormat.js.map +1 -1
  7. package/dist/EmailForm.js +4 -2
  8. package/dist/EmailForm.js.map +1 -1
  9. package/dist/EmojiPicker.js +2 -1
  10. package/dist/EmojiPicker.js.map +1 -1
  11. package/dist/EmojiReactions.js +1 -0
  12. package/dist/EmojiReactions.js.map +1 -1
  13. package/dist/IconPicker.js +1 -0
  14. package/dist/IconPicker.js.map +1 -1
  15. package/dist/Insights.js +2 -1
  16. package/dist/Insights.js.map +1 -1
  17. package/dist/IpRestriction.js +2 -1
  18. package/dist/IpRestriction.js.map +1 -1
  19. package/dist/MoreDropdown.js +4 -2
  20. package/dist/MoreDropdown.js.map +1 -1
  21. package/dist/NavigationHeader.js +1 -0
  22. package/dist/NavigationHeader.js.map +1 -1
  23. package/dist/OptionFields.js +6 -3
  24. package/dist/OptionFields.js.map +1 -1
  25. package/dist/PublishBlock.js +6 -3
  26. package/dist/PublishBlock.js.map +1 -1
  27. package/dist/Schedule.js +5 -2
  28. package/dist/Schedule.js.map +1 -1
  29. package/dist/ShareViaLink.js +2 -1
  30. package/dist/ShareViaLink.js.map +1 -1
  31. package/dist/Sidebar.js +2 -1
  32. package/dist/Sidebar.js.map +1 -1
  33. package/dist/SubHeader.js +6 -3
  34. package/dist/SubHeader.js.map +1 -1
  35. package/dist/ToggleFeatureCard.js +1 -0
  36. package/dist/ToggleFeatureCard.js.map +1 -1
  37. package/dist/cjs/Builder.js +3 -1
  38. package/dist/cjs/Builder.js.map +1 -1
  39. package/dist/cjs/ConfigurePageSidebar.js +2 -1
  40. package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
  41. package/dist/cjs/DateFormat.js +2 -1
  42. package/dist/cjs/DateFormat.js.map +1 -1
  43. package/dist/cjs/EmailForm.js +4 -2
  44. package/dist/cjs/EmailForm.js.map +1 -1
  45. package/dist/cjs/EmojiPicker.js +2 -1
  46. package/dist/cjs/EmojiPicker.js.map +1 -1
  47. package/dist/cjs/EmojiReactions.js +1 -0
  48. package/dist/cjs/EmojiReactions.js.map +1 -1
  49. package/dist/cjs/IconPicker.js +1 -0
  50. package/dist/cjs/IconPicker.js.map +1 -1
  51. package/dist/cjs/Insights.js +2 -1
  52. package/dist/cjs/Insights.js.map +1 -1
  53. package/dist/cjs/IpRestriction.js +2 -1
  54. package/dist/cjs/IpRestriction.js.map +1 -1
  55. package/dist/cjs/MoreDropdown.js +4 -2
  56. package/dist/cjs/MoreDropdown.js.map +1 -1
  57. package/dist/cjs/NavigationHeader.js +1 -0
  58. package/dist/cjs/NavigationHeader.js.map +1 -1
  59. package/dist/cjs/OptionFields.js +6 -3
  60. package/dist/cjs/OptionFields.js.map +1 -1
  61. package/dist/cjs/PublishBlock.js +6 -3
  62. package/dist/cjs/PublishBlock.js.map +1 -1
  63. package/dist/cjs/Schedule.js +5 -2
  64. package/dist/cjs/Schedule.js.map +1 -1
  65. package/dist/cjs/ShareViaLink.js +2 -1
  66. package/dist/cjs/ShareViaLink.js.map +1 -1
  67. package/dist/cjs/Sidebar.js +2 -1
  68. package/dist/cjs/Sidebar.js.map +1 -1
  69. package/dist/cjs/SubHeader.js +6 -3
  70. package/dist/cjs/SubHeader.js.map +1 -1
  71. package/dist/cjs/ToggleFeatureCard.js +1 -0
  72. package/dist/cjs/ToggleFeatureCard.js.map +1 -1
  73. package/package.json +1 -1
@@ -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 { memo } 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 memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, items, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n findCurrentConfigureNavLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = findCurrentConfigureNavLink({ navLinks, location });\n if (settingsNavLink?.to) {\n history.push(buildUrl(settingsNavLink.to));\n }\n };\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","_jsx","className","children","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","findCurrentConfigureNavLink","push","buildUrl","activeLink","useMemo","find","link","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position"],"mappings":"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"}
1
+ {"version":3,"file":"Sidebar.js","sources":["../src/components/Sidebar/Components/Header.jsx","../src/components/Sidebar/Components/Links/index.jsx","../src/components/Sidebar/index.jsx"],"sourcesContent":["import { memo } 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 memo(Header);\n","import { Fragment, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { hyphenate, isNotEmpty, isNotPresent, isPresent } from \"neetocist\";\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\nimport { is, not } from \"ramda\";\nimport { useLocation } from \"react-router-dom\";\n\nimport CheckPointNavLinks from \"./CheckPointNavLink\";\nimport Items from \"./Items\";\n\nimport { filterByPermissions } from \"../../utils\";\n\nconst renderCount = count => (count > 999 ? \"999+\" : count);\n\nconst Links = ({\n navLinks,\n isCountsLoading: isCountsLoadingDeprecated,\n setSelectedNavLinkRoute,\n}) => {\n const location = useLocation();\n const [isActiveLinkExpanded, setIsActiveLinkExpanded] = useState(true);\n\n const handleNavLinkClick = ({ event, isActive, items, navLink }) => {\n if (isNotPresent(items)) return;\n\n if (navLink.isConfigureNavLink && isNotEmpty(navLink.items)) {\n setSelectedNavLinkRoute(navLink.to);\n }\n\n if (isActive()) {\n setIsActiveLinkExpanded(not);\n event.preventDefault();\n\n return;\n }\n\n setIsActiveLinkExpanded(true);\n };\n\n return (\n <div className=\"neeto-molecules-sidebar__links neeto-molecules-sidebar__no-shrinkable\">\n {navLinks.filter(filterByPermissions).map((navLink, index) => {\n const {\n label,\n to,\n icon,\n items,\n isConfigureNavLink,\n isCountsLoading = false,\n count = null,\n ...otherProps\n } = navLink;\n const IconSVG = icon;\n const url = new URL(to, window.location.href);\n const isActive = () =>\n is(Function, otherProps.isActive)\n ? otherProps.isActive()\n : location.pathname.startsWith(url.pathname);\n\n const isMenuExpanded =\n isActive() && isActiveLinkExpanded && !isCountsLoadingDeprecated;\n\n return (\n <Fragment key={index}>\n <CheckPointNavLinks\n activeClassName=\"active\"\n className=\"neeto-ui-flex neeto-ui-items-center neeto-ui-no-underline neeto-ui-select-none neeto-molecules-sidebar__link\"\n data-testid={`navlink-${hyphenate(label)}`}\n onClick={event =>\n handleNavLinkClick({ event, isActive, items, navLink })\n }\n {...{ isActive, to, ...otherProps }}\n >\n {icon && (\n <span\n className=\"neeto-molecules-sidebar__link-icon\"\n data-testid={label}\n >\n <IconSVG />\n {isPresent(count) && !isCountsLoading && (\n <span className=\"neeto-molecules-sidebar__link-unread-count\">\n {renderCount(count)}\n </span>\n )}\n </span>\n )}\n <Typography\n className=\"neeto-molecules-sidebar__link-label neeto-ui-flex-grow flex items-center gap-1\"\n component=\"span\"\n style=\"body2\"\n >\n {label}\n </Typography>\n {items && !isConfigureNavLink && (\n <span\n className={classnames(\n \"neeto-molecules-sidebar__link-icon neeto-molecules-sidebar__link-icon--caret\",\n {\n \"neeto-molecules-sidebar__link-icon--rotate\":\n isMenuExpanded,\n }\n )}\n >\n <Down size={16} />\n </span>\n )}\n </CheckPointNavLinks>\n {items && !isConfigureNavLink && isMenuExpanded && (\n <Items {...{ isCountsLoading, items, ...otherProps }} />\n )}\n </Fragment>\n );\n })}\n </div>\n );\n};\n\nexport default Links;\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport classnames from \"classnames\";\nimport { isPresent, isNotEmpty } from \"neetocist\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { findLast, is, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { useLocation, useHistory } from \"react-router-dom\";\n\nimport Chevron from \"./Components/Chevron\";\nimport Header from \"./Components/Header\";\nimport Links from \"./Components/Links\";\nimport SelectedLink from \"./Components/Links/SelectedLink\";\nimport { SELECTED_NAV_LINK_ROUTE_STORAGE_KEY } from \"./constants\";\nimport \"./sidebar.scss\";\nimport {\n findCurrentConfigureNavLink,\n getSidebarStateLocalStorageKey,\n} from \"./utils\";\n\nconst Sidebar = ({\n navLinks,\n customLogo,\n isCountsLoading = false,\n homePath = \"/\",\n}) => {\n const [isSidebarPaneOpen, setIsSidebarPaneOpen] = useState(false);\n const [selectedNavLinkRoute, setSelectedNavLinkRoute] = useLocalStorage(\n SELECTED_NAV_LINK_ROUTE_STORAGE_KEY,\n null\n );\n\n const [isSidebarCollapsed, setIsSidebarCollapsed] = useLocalStorage(\n getSidebarStateLocalStorageKey(),\n false\n );\n\n const location = useLocation();\n const history = useHistory();\n const { t } = useTranslation();\n\n const isLargerScreen = () => window.innerWidth > 768;\n const isSidebarClosed = isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen);\n\n useEffect(() => {\n if (!isPresent(navLinks)) return;\n const currentLink = findLast(({ to, isActive }) => {\n const url = new URL(to, window.location.href);\n\n return is(Function, isActive)\n ? isActive()\n : location.pathname.includes(url.pathname);\n })(navLinks);\n\n if (isPresent(currentLink)) {\n setSelectedNavLinkRoute(\n currentLink.isConfigureNavLink ? currentLink.to : null\n );\n }\n }, []);\n\n useEffect(() => {\n const handleResize = () => {\n if (isLargerScreen()) return;\n setIsSidebarPaneOpen(false);\n setIsSidebarCollapsed(true);\n };\n window.addEventListener(\"resize\", handleResize);\n\n return () => window.removeEventListener(\"resize\", handleResize);\n }, []);\n\n const handleGoBack = event => {\n event.preventDefault();\n setSelectedNavLinkRoute(null);\n const settingsNavLink = findCurrentConfigureNavLink({ navLinks, location });\n if (settingsNavLink?.to) {\n history.push(buildUrl(settingsNavLink.to));\n }\n };\n\n const activeLink = useMemo(\n () =>\n navLinks.find(link => {\n if (is(Function, link.isActive)) return link.isActive();\n const url = new URL(link.to, window.location.href);\n\n return location.pathname.startsWith(url.pathname);\n }),\n [location.pathname, navLinks]\n );\n\n const isSelectedNavLinkVisible =\n selectedNavLinkRoute &&\n activeLink?.to === selectedNavLinkRoute &&\n isNotEmpty(navLinks);\n\n return (\n <div\n data-testid=\"sidebar-container\"\n className={classnames(\"neeto-molecules-sidebar__wrapper\", {\n \"neeto-molecules-sidebar__wrapper--collapsed\": isLargerScreen()\n ? isSidebarCollapsed\n : not(isSidebarPaneOpen),\n })}\n >\n <div\n className=\"neeto-molecules-sidebar__backdrop\"\n onClick={() => {\n setIsSidebarPaneOpen(false);\n setSelectedNavLinkRoute(null);\n }}\n />\n <div\n data-cy=\"sidebar-wrapper\"\n data-testid=\"sidebar\"\n className={classnames(\n \"neeto-molecules-sidebar neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-shrink-0 neeto-ui-overflow-y-auto neeto-ui-overflow-x-hidden\",\n {\n \"neeto-molecules-sidebar--focus-mode\":\n isPresent(selectedNavLinkRoute),\n }\n )}\n >\n <Header\n {...{ customLogo, homePath }}\n clearSettingsNav={() => setSelectedNavLinkRoute(null)}\n />\n {isSelectedNavLinkVisible ? (\n <SelectedLink {...{ handleGoBack }} navLink={activeLink} />\n ) : (\n <Links {...{ isCountsLoading, navLinks, setSelectedNavLinkRoute }} />\n )}\n </div>\n <Button\n className=\"neeto-molecules-sidebar__toggler\"\n data-cy=\"neeto-molecules-sidebar-toggler\"\n data-testid=\"sidebar-toggleButton\"\n icon={() => <Chevron />}\n style={isLargerScreen() ? \"text\" : \"secondary\"}\n tooltipProps={{\n content: isSidebarClosed\n ? t(\"neetoMolecules.sidebar.showMenu\")\n : t(\"neetoMolecules.sidebar.hideMenu\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n onClick={() => {\n setIsSidebarCollapsed(!isSidebarCollapsed);\n setIsSidebarPaneOpen(not);\n }}\n />\n </div>\n );\n};\n\nSidebar.propTypes = {\n /**\n * To specify the navlinks to be shown in sidebar.\n */\n navLinks: PropTypes.arrayOf(\n PropTypes.shape({\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n checkpointKey: PropTypes.string,\n isCountsLoading: PropTypes.bool,\n items: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n to: PropTypes.string,\n count: PropTypes.number,\n isActive: PropTypes.func,\n type: PropTypes.string,\n filters: PropTypes.array,\n checkpointKey: PropTypes.string,\n })\n ),\n })\n ),\n /**\n * To override the logo displayed on the sidebar.\n */\n customLogo: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n /**\n * Boolean to notate whether the counts are being fetched.\n */\n isCountsLoading: PropTypes.bool,\n};\n\nexport default Sidebar;\n"],"names":["Header","_ref","_ProductTypefaceLogos","customLogo","clearSettingsNav","homePath","productName","globalProps","appName","substr","logoName","concat","capitalize","toLowerCase","ProductTypefaceLogo","ProductTypefaceLogos","Neeto","LogoComponent","_useFetchNeetoApps","useFetchNeetoApps","data","appHomePath","neetoApps","thisApp","findBy","name","url","URL","pathname","_jsx","className","children","Link","to","onClick","memo","renderCount","count","Links","navLinks","isCountsLoadingDeprecated","isCountsLoading","setSelectedNavLinkRoute","location","useLocation","_useState","useState","_useState2","_slicedToArray","isActiveLinkExpanded","setIsActiveLinkExpanded","handleNavLinkClick","_ref2","event","isActive","items","navLink","isNotPresent","isConfigureNavLink","isNotEmpty","not","preventDefault","filter","filterByPermissions","map","index","label","icon","_navLink$isCountsLoad","_navLink$count","otherProps","_objectWithoutProperties","_excluded","IconSVG","window","href","is","Function","startsWith","isMenuExpanded","_jsxs","Fragment","CheckPointNavLinks","_objectSpread","activeClassName","hyphenate","isPresent","Typography","component","style","classnames","Down","size","Items","Sidebar","_ref$isCountsLoading","_ref$homePath","isSidebarPaneOpen","setIsSidebarPaneOpen","_useLocalStorage","useLocalStorage","SELECTED_NAV_LINK_ROUTE_STORAGE_KEY","_useLocalStorage2","selectedNavLinkRoute","_useLocalStorage3","getSidebarStateLocalStorageKey","_useLocalStorage4","isSidebarCollapsed","setIsSidebarCollapsed","history","useHistory","_useTranslation","useTranslation","t","isLargerScreen","innerWidth","isSidebarClosed","useEffect","currentLink","findLast","includes","handleResize","addEventListener","removeEventListener","handleGoBack","settingsNavLink","findCurrentConfigureNavLink","push","buildUrl","activeLink","useMemo","find","link","isSelectedNavLinkVisible","SelectedLink","Button","Chevron","tooltipProps","content","position","touch"],"mappings":"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"}
package/dist/SubHeader.js CHANGED
@@ -74,7 +74,8 @@ var Columns = /*#__PURE__*/forwardRef(function (_ref, ref) {
74
74
  label: null,
75
75
  tooltipProps: {
76
76
  content: t("neetoMolecules.columns.columns"),
77
- position: "bottom"
77
+ position: "bottom",
78
+ touch: ["hold", 500]
78
79
  },
79
80
  "data-testid": "columns-button",
80
81
  "data-cy": "columns-dropdown-button"
@@ -105,7 +106,8 @@ var DownloadButton = withT(function (_ref) {
105
106
  style: "text",
106
107
  tooltipProps: {
107
108
  content: t("neetoMolecules.common.download"),
108
- position: "bottom"
109
+ position: "bottom",
110
+ touch: ["hold", 500]
109
111
  }
110
112
  }), count && /*#__PURE__*/jsx("span", {
111
113
  className: "neeto-molecules-subheader__download-count",
@@ -130,7 +132,8 @@ var FilterButton = withT(function (_ref) {
130
132
  style: "text",
131
133
  tooltipProps: {
132
134
  content: t("neetoMolecules.common.filter"),
133
- position: "bottom"
135
+ position: "bottom",
136
+ touch: ["hold", 500]
134
137
  },
135
138
  label: null
136
139
  }, buttonProps)
@@ -1 +1 @@
1
- {"version":3,"file":"SubHeader.js","sources":["../src/components/SubHeader/RightBlock/Columns.jsx","../src/components/SubHeader/RightBlock/Download.jsx","../src/components/SubHeader/RightBlock/Filter.jsx","../src/components/SubHeader/RightBlock/index.jsx","../src/components/SubHeader/index.jsx"],"sourcesContent":["import { forwardRef, useMemo } from \"react\";\n\nimport { Column } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageColumns, { useHiddenColumns } from \"components/Columns\";\n\nconst Columns = forwardRef(\n (\n { buttonProps = {}, columnData, localStorageKey, fixedColumns, ...props },\n ref\n ) => {\n const { t } = useTranslation();\n\n const columnDataIndex = useMemo(\n () =>\n pluck(\n \"dataIndex\",\n (columnData || []).filter(\n column => !fixedColumns?.includes(column.dataIndex)\n )\n ),\n [columnData, fixedColumns]\n );\n\n const { hideColumn, showColumn } = useHiddenColumns(localStorageKey);\n\n return (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n actionBlock={\n <div className=\"grid grid-cols-2 gap-2 px-4 py-3\">\n <Button\n className=\"col-span-1 justify-center\"\n label=\"Hide all\"\n style=\"secondary\"\n onClick={() => hideColumn(columnDataIndex)}\n />\n <Button\n className=\"col-span-1 justify-center\"\n label=\"Show all\"\n style=\"secondary\"\n onClick={() => showColumn(columnDataIndex)}\n />\n </div>\n }\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n },\n \"data-testid\": \"columns-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, localStorageKey, ...props, ref }}\n />\n </div>\n );\n }\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n onChange: PropTypes.func,\n actionBlock: PropTypes.node,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n localStorageKey: PropTypes.string,\n initialValue: PropTypes.array,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["Columns","forwardRef","_ref","ref","_ref$buttonProps","buttonProps","columnData","localStorageKey","fixedColumns","props","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","columnDataIndex","useMemo","pluck","filter","column","includes","dataIndex","_useHiddenColumns","useHiddenColumns","hideColumn","showColumn","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","actionBlock","_jsxs","Button","label","style","onClick","icon","Column","tooltipProps","content","position","displayName","DownloadButton","withT","count","_ref$dataCy","dataCy","Download","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener"],"mappings":"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"}
1
+ {"version":3,"file":"SubHeader.js","sources":["../src/components/SubHeader/RightBlock/Columns.jsx","../src/components/SubHeader/RightBlock/Download.jsx","../src/components/SubHeader/RightBlock/Filter.jsx","../src/components/SubHeader/RightBlock/index.jsx","../src/components/SubHeader/index.jsx"],"sourcesContent":["import { forwardRef, useMemo } from \"react\";\n\nimport { Column } from \"neetoicons\";\nimport { Button } from \"neetoui\";\nimport { pluck } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ManageColumns, { useHiddenColumns } from \"components/Columns\";\n\nconst Columns = forwardRef(\n (\n { buttonProps = {}, columnData, localStorageKey, fixedColumns, ...props },\n ref\n ) => {\n const { t } = useTranslation();\n\n const columnDataIndex = useMemo(\n () =>\n pluck(\n \"dataIndex\",\n (columnData || []).filter(\n column => !fixedColumns?.includes(column.dataIndex)\n )\n ),\n [columnData, fixedColumns]\n );\n\n const { hideColumn, showColumn } = useHiddenColumns(localStorageKey);\n\n return (\n <div className=\"neeto-molecules-subheader__columns\">\n <ManageColumns\n isSearchable\n className=\"neeto-ui-dropdown--manage-columns\"\n actionBlock={\n <div className=\"grid grid-cols-2 gap-2 px-4 py-3\">\n <Button\n className=\"col-span-1 justify-center\"\n label=\"Hide all\"\n style=\"secondary\"\n onClick={() => hideColumn(columnDataIndex)}\n />\n <Button\n className=\"col-span-1 justify-center\"\n label=\"Show all\"\n style=\"secondary\"\n onClick={() => showColumn(columnDataIndex)}\n />\n </div>\n }\n buttonProps={{\n icon: Column,\n label: null,\n tooltipProps: {\n content: t(\"neetoMolecules.columns.columns\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n \"data-testid\": \"columns-button\",\n \"data-cy\": \"columns-dropdown-button\",\n ...buttonProps,\n }}\n {...{ columnData, localStorageKey, ...props, ref }}\n />\n </div>\n );\n }\n);\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Download } from \"neetoicons\";\nimport { Button } from \"neetoui\";\n\nconst DownloadButton = withT(\n ({ t, count, onClick, \"data-cy\": dataCy = \"download-button\" }) => (\n <div className=\"neeto-molecules-subheader__download\">\n <Button\n {...{ onClick }}\n data-cy={dataCy}\n data-testid=\"download-button\"\n icon={Download}\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.download\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n }}\n />\n {count && (\n <span className=\"neeto-molecules-subheader__download-count\">\n {count}\n </span>\n )}\n </div>\n )\n);\n\nexport default DownloadButton;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Filters as NeetoFilters } from \"neetofilters\";\nimport { Filter } from \"neetoicons\";\n\nconst FilterButton = withT(({ t, buttonProps, ...props }) => (\n <div className=\"neeto-molecules-subheader__filter\">\n <NeetoFilters\n buttonProps={{\n \"data-testid\": \"filter-button\",\n icon: Filter,\n style: \"text\",\n tooltipProps: {\n content: t(\"neetoMolecules.common.filter\"),\n position: \"bottom\",\n touch: [\"hold\", 500],\n },\n label: null,\n ...buttonProps,\n }}\n {...props}\n />\n </div>\n));\n\nexport default FilterButton;\n","import classnames from \"classnames\";\nimport { isNotPresent } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { not } from \"ramda\";\n\nimport Columns from \"./Columns\";\nimport Download from \"./Download\";\nimport Filter from \"./Filter\";\n\nconst RightBlock = ({\n downloadButtonProps,\n columnsButtonProps,\n filterProps,\n dataProps,\n}) => {\n const showIcons = isNotPresent(dataProps?.totalCount)\n ? true\n : dataProps?.totalCount > 0;\n\n return (\n <div\n data-testid=\"subheader-rightblock-buttons-container\"\n className={classnames(\"neeto-molecules-subheader__right-actions\", {\n hidden: not(showIcons),\n })}\n >\n {downloadButtonProps && <Download {...downloadButtonProps} />}\n {columnsButtonProps && <Columns {...columnsButtonProps} />}\n {filterProps && <Filter {...filterProps} />}\n </div>\n );\n};\n\nRightBlock.propTypes = {\n /**\n * Props that are passed to the download button.\n */\n downloadButtonProps: PropTypes.shape({\n count: PropTypes.number,\n onClick: PropTypes.func,\n }),\n /**\n * Props that are passed to the columns button, same as the `Columns` component from neetoMolecules.\n */\n columnsButtonProps: PropTypes.shape({\n onChange: PropTypes.func,\n actionBlock: PropTypes.node,\n checkboxProps: PropTypes.object,\n columnData: PropTypes.array,\n isSearchable: PropTypes.bool,\n localStorageKey: PropTypes.string,\n initialValue: PropTypes.array,\n noColumnMessage: PropTypes.string,\n searchProps: PropTypes.object,\n }),\n /**\n * Props that are passed the the filter component. These are the same props as the\n * neetoFilters `Filters` component.\n */\n filterProps: PropTypes.shape({\n size: PropTypes.oneOf([\"xsmall\", \"small\", \"large\"]),\n isOpen: PropTypes.bool,\n setIsOpen: PropTypes.func,\n columns: PropTypes.object,\n onChange: PropTypes.func,\n onSelectorsChange: PropTypes.func,\n buttonProps: PropTypes.object,\n paneProps: PropTypes.object,\n isSearchable: PropTypes.bool,\n className: PropTypes.string,\n }),\n /**\n * Props related to data being displayed, such as tables, lists, and more. The buttons\n * will be hidden if the value of `totalCount` in `dataProps` is `0`.\n */\n dataProps: PropTypes.shape({ totalCount: PropTypes.number }),\n};\n\nexport default RightBlock;\n","import { useLayoutEffect, useRef } from \"react\";\n\nimport classnames from \"classnames\";\nimport PropTypes from \"prop-types\";\n\nimport RightBlock from \"./RightBlock\";\nimport \"./subheader.scss\";\n\nconst SubHeader = ({\n className = \"\",\n leftActionBlock,\n rightActionBlock,\n \"data-cy\": dataCy = \"subheader\",\n}) => {\n const subheaderRef = useRef(null);\n\n useLayoutEffect(() => {\n const updateHeaderHeight = () => {\n if (!subheaderRef.current) return;\n const height = subheaderRef.current.offsetHeight;\n document.body.style.setProperty(\n \"--neeto-molecules-effective-subheader-height\",\n `${height}px`\n );\n };\n\n updateHeaderHeight();\n\n window.addEventListener(\"resize\", updateHeaderHeight);\n\n return () => window.removeEventListener(\"resize\", updateHeaderHeight);\n }, []);\n\n return (\n <div\n className={classnames([\"neeto-molecules-subheader\", className])}\n data-cy={dataCy}\n data-testid=\"subheader\"\n ref={subheaderRef}\n >\n <div\n className=\"neeto-molecules-subheader__left-wrapper\"\n data-cy=\"subheader-left-wrapper\"\n >\n {leftActionBlock && (\n <div\n className=\"neeto-molecules-subheader__left\"\n data-cy=\"subheader-left\"\n >\n {leftActionBlock}\n </div>\n )}\n </div>\n {rightActionBlock && (\n <div\n className=\"neeto-molecules-subheader__right\"\n data-cy=\"subheader-right\"\n >\n {rightActionBlock}\n </div>\n )}\n </div>\n );\n};\n\nSubHeader.RightBlock = RightBlock;\n\nSubHeader.propTypes = {\n /**\n * To specify external classnames as overrides to the `SubHeader`.\n */\n className: PropTypes.string,\n /**\n * To specify the content to be rendered in the left side of the `SubHeader` section.\n */\n leftActionBlock: PropTypes.node,\n /**\n * To specify the content to be rendered in the right side of the `SubHeader` section.\n */\n rightActionBlock: PropTypes.node,\n};\n\nexport default SubHeader;\n"],"names":["Columns","forwardRef","_ref","ref","_ref$buttonProps","buttonProps","columnData","localStorageKey","fixedColumns","props","_objectWithoutProperties","_excluded","_useTranslation","useTranslation","t","columnDataIndex","useMemo","pluck","filter","column","includes","dataIndex","_useHiddenColumns","useHiddenColumns","hideColumn","showColumn","_jsx","className","children","ManageColumns","_objectSpread","isSearchable","actionBlock","_jsxs","Button","label","style","onClick","icon","Column","tooltipProps","content","position","touch","displayName","DownloadButton","withT","count","_ref$dataCy","dataCy","Download","FilterButton","NeetoFilters","Filter","RightBlock","downloadButtonProps","columnsButtonProps","filterProps","dataProps","showIcons","isNotPresent","totalCount","classnames","hidden","not","SubHeader","_ref$className","leftActionBlock","rightActionBlock","subheaderRef","useRef","useLayoutEffect","updateHeaderHeight","current","height","offsetHeight","document","body","setProperty","concat","window","addEventListener","removeEventListener"],"mappings":"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"}
@@ -132,6 +132,7 @@ var ToggleFeatureCard = function ToggleFeatureCard(_ref) {
132
132
  });
133
133
  return /*#__PURE__*/jsxs("div", {
134
134
  id: id,
135
+ "data-cy": "feature-card-container",
135
136
  "data-testid": "toggle-feature-card",
136
137
  ref: cardRef,
137
138
  className: classnames("neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4", {
@@ -1 +1 @@
1
- {"version":3,"file":"ToggleFeatureCard.js","sources":["../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../src/components/ToggleFeatureCard/ToolTipSwitch.jsx","../src/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => {\n const tooltipContent = enabledCondition\n ? tooltipProps.enabledSwitchText\n : tooltipProps.disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...tooltipProps}\n >\n <span>\n <FormikSwitch\n data-cy={switchDataCy}\n data-testid=\"toggle-feature-card-switch\"\n disabled={isDisabled}\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Edit, Close } from \"neetoicons\";\nimport { Typography, Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport \"./toggleFeatureCard.scss\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataCy = \"\",\n switchDataCy = \"\",\n descriptionDataCy = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-testid=\"toggle-feature-card\"\n ref={cardRef}\n className={classnames(\n \"neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4\",\n { \"neeto-ui-border-gray-300\": !shouldHighlight },\n { \"toggle-feature-card--highlighted\": shouldHighlight }\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataCy,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n component=\"span\"\n data-cy={titleDataCy}\n data-testid=\"toggle-feature-card-title\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n data-cy={descriptionDataCy}\n data-testid=\"toggle-feature-card-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center space-x-2\">\n {inputProps?.display}\n <Button\n data-cy={inputProps?.editButtonDataCy}\n data-testid=\"toggle-feature-card-input-display-edit\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n tooltipProps={{\n content:\n inputProps?.editButtonTooltip ||\n t(\n \"neetoMolecules.toggleFeatureCard.input.editButtonDefaultTooltip\"\n ),\n position: \"right\",\n }}\n onClick={() => setIsEditing(true)}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n data-cy={inputProps?.dataCy}\n data-testid=\"toggle-feature-card-input-field\"\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataCy: PropTypes.string,\n placeholder: PropTypes.string,\n dataCy: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","tooltipContent","enabledSwitchText","disabledSwitchText","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","inputProps","_ref$switchProps","switchProps","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","icon","Edit","size","type","editButtonTooltip","onClick","Input","autoFocus","dataCy","label","placeholder","suffix","Close"],"mappings":"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"}
1
+ {"version":3,"file":"ToggleFeatureCard.js","sources":["../src/components/ToggleFeatureCard/hooks/useScrollIntoView.js","../src/components/ToggleFeatureCard/ToolTipSwitch.jsx","../src/components/ToggleFeatureCard/index.jsx"],"sourcesContent":["import { useEffect } from \"react\";\n\nconst useScrollIntoView = ({ elementId, trigger }) => {\n useEffect(() => {\n if (!trigger) return;\n document.getElementById(elementId)?.scrollIntoView();\n }, [trigger]);\n};\n\nexport default useScrollIntoView;\n","import { Tooltip } from \"neetoui\";\nimport { Switch as FormikSwitch } from \"neetoui/formik\";\n\nconst TooltipSwitch = ({\n enabledCondition,\n name = \"\",\n isDisabled = false,\n switchDataCy,\n tooltipProps = {},\n ...otherProps\n}) => {\n const tooltipContent = enabledCondition\n ? tooltipProps.enabledSwitchText\n : tooltipProps.disabledSwitchText;\n\n return (\n <Tooltip\n content={tooltipContent}\n disabled={!tooltipContent}\n position=\"top\"\n {...tooltipProps}\n >\n <span>\n <FormikSwitch\n data-cy={switchDataCy}\n data-testid=\"toggle-feature-card-switch\"\n disabled={isDisabled}\n {...{ name, ...otherProps }}\n />\n </span>\n </Tooltip>\n );\n};\n\nexport default TooltipSwitch;\n","import { useRef, useState, useEffect } from \"react\";\n\nimport classnames from \"classnames\";\nimport { useFormikContext } from \"formik\";\nimport { slugify } from \"neetocist\";\nimport useOnClickOutside from \"neetocommons/react-utils/useOnClickOutside\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Edit, Close } from \"neetoicons\";\nimport { Typography, Label, Button } from \"neetoui\";\nimport { Input } from \"neetoui/formik\";\nimport PropTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { SIZES } from \"./constants\";\nimport useScrollIntoView from \"./hooks/useScrollIntoView\";\nimport \"./toggleFeatureCard.scss\";\nimport TooltipSwitch from \"./ToolTipSwitch\";\n\nconst ToggleFeatureCard = ({\n title = \"\",\n description = null,\n switchName = \"switch\",\n titleDataCy = \"\",\n switchDataCy = \"\",\n descriptionDataCy = \"\",\n isDisabled = false,\n children = null,\n inputProps,\n switchProps = {},\n}) => {\n const { t } = useTranslation();\n const cardRef = useRef();\n const id = slugify(title);\n\n const [isEditing, setIsEditing] = useState(false);\n\n const { setFieldValue, values, submitCount, errors, initialValues } =\n useFormikContext();\n\n useEffect(() => {\n if (!(submitCount >= 1 && isEmpty(errors))) return;\n setIsEditing(false);\n }, [submitCount]);\n\n useEffect(() => {\n if (isEmpty(errors)) return;\n setIsEditing(true);\n }, [values, errors]);\n\n const [shouldHighlight, setShouldHighlight] = useState(\n location.hash.split(\"#\")[1] === id\n );\n\n const hasInput = values?.[switchName] && inputProps?.name;\n const enabledCondition = values?.[switchName];\n\n const handleInputReset = () => {\n setIsEditing(false);\n hasInput &&\n setFieldValue(inputProps?.name, initialValues?.[inputProps?.name]);\n };\n\n useOnClickOutside(cardRef, () => setShouldHighlight(false));\n\n useScrollIntoView({ elementId: id, trigger: shouldHighlight });\n\n const inputRef = useHotkeys(\"enter\", () => setIsEditing(false), {\n mode: \"scoped\",\n });\n\n return (\n <div\n {...{ id }}\n data-cy=\"feature-card-container\"\n data-testid=\"toggle-feature-card\"\n ref={cardRef}\n className={classnames(\n \"neeto-ui-bg-white neeto-ui-rounded-lg flex flex-col space-y-2 border p-4\",\n { \"neeto-ui-border-gray-300\": !shouldHighlight },\n { \"toggle-feature-card--highlighted\": shouldHighlight }\n )}\n >\n <Label className=\"flex flex-row items-center gap-2\">\n <TooltipSwitch\n {...{\n enabledCondition,\n isDisabled,\n switchDataCy,\n ...switchProps,\n }}\n name={switchName}\n />\n <Typography\n component=\"span\"\n data-cy={titleDataCy}\n data-testid=\"toggle-feature-card-title\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {title}\n </Typography>\n </Label>\n <Typography\n className=\"mb-4 whitespace-pre-line\"\n data-cy={descriptionDataCy}\n data-testid=\"toggle-feature-card-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n {hasInput && !isEditing && (\n <div className=\"m-0 flex flex-row items-center space-x-2\">\n {inputProps?.display}\n <Button\n data-cy={inputProps?.editButtonDataCy}\n data-testid=\"toggle-feature-card-input-display-edit\"\n icon={Edit}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n tooltipProps={{\n content:\n inputProps?.editButtonTooltip ||\n t(\n \"neetoMolecules.toggleFeatureCard.input.editButtonDefaultTooltip\"\n ),\n position: \"right\",\n }}\n onClick={() => setIsEditing(true)}\n />\n </div>\n )}\n {hasInput && isEditing && (\n <Input\n autoFocus\n data-cy={inputProps?.dataCy}\n data-testid=\"toggle-feature-card-input-field\"\n label={inputProps?.label}\n name={inputProps?.name}\n placeholder={inputProps?.placeholder}\n ref={inputRef}\n size=\"medium\"\n suffix={\n <Button\n data-testid=\"toggle-feature-card-input-reset\"\n icon={Close}\n size=\"small\"\n style=\"text\"\n type=\"button\"\n onClick={handleInputReset}\n />\n }\n {...inputProps}\n />\n )}\n {children}\n </div>\n );\n};\n\nToggleFeatureCard.propTypes = {\n /**\n * The title that will be displayed for the card.\n */\n title: PropTypes.string,\n /**\n * The descripton text for the particular feature or setting.\n */\n description: PropTypes.string,\n /**\n * The formik name of the feature or setting to be toggled. eg:\n {switchName: \"enableEmails\"}.\n */\n switchName: PropTypes.string,\n /**\n * Can be used to disable the toggle switch conditionally.\n */\n isDisabled: PropTypes.bool,\n /**\n * Custom child components to be displayed in the card.\n */\n children: PropTypes.node,\n /**\n * Can be used to add an input field for a setting or a feature.\n For example, `Enable email notifications` card can have an email input field.\n */\n inputProps: PropTypes.shape({\n name: PropTypes.string,\n display: PropTypes.node,\n label: PropTypes.string,\n editButtonTooltip: PropTypes.string,\n editButtonDataCy: PropTypes.string,\n placeholder: PropTypes.string,\n dataCy: PropTypes.string,\n onChange: PropTypes.func,\n suffix: PropTypes.node,\n prefix: PropTypes.node,\n className: PropTypes.string,\n nakedInput: PropTypes.bool,\n size: PropTypes.oneOf(Object.values(SIZES)),\n type: PropTypes.string,\n maxLength: PropTypes.number,\n contentSize: PropTypes.number,\n unlimitedChars: PropTypes.bool,\n }),\n /**\n * Can be used to add props to the switch component.\n */\n switchProps: PropTypes.shape({\n onChange: PropTypes.func,\n className: PropTypes.string,\n checked: PropTypes.bool,\n tooltipProps: PropTypes.shape({\n enabledSwitchText: PropTypes.string,\n disabledSwitchText: PropTypes.string,\n }),\n }),\n};\n\nexport default ToggleFeatureCard;\n"],"names":["useScrollIntoView","_ref","elementId","trigger","useEffect","_document$getElementB","document","getElementById","scrollIntoView","TooltipSwitch","enabledCondition","_ref$name","name","_ref$isDisabled","isDisabled","switchDataCy","_ref$tooltipProps","tooltipProps","otherProps","_objectWithoutProperties","_excluded","tooltipContent","enabledSwitchText","disabledSwitchText","_jsx","Tooltip","_objectSpread","content","disabled","position","children","FormikSwitch","ToggleFeatureCard","_ref$title","title","_ref$description","description","_ref$switchName","switchName","_ref$titleDataCy","titleDataCy","_ref$switchDataCy","_ref$descriptionDataC","descriptionDataCy","_ref$children","inputProps","_ref$switchProps","switchProps","_useTranslation","useTranslation","t","cardRef","useRef","id","slugify","_useState","useState","_useState2","_slicedToArray","isEditing","setIsEditing","_useFormikContext","useFormikContext","setFieldValue","values","submitCount","errors","initialValues","isEmpty","_useState3","location","hash","split","_useState4","shouldHighlight","setShouldHighlight","hasInput","handleInputReset","useOnClickOutside","inputRef","useHotkeys","mode","_jsxs","ref","className","classnames","Label","Typography","component","style","weight","display","Button","editButtonDataCy","icon","Edit","size","type","editButtonTooltip","onClick","Input","autoFocus","dataCy","label","placeholder","suffix","Close"],"mappings":"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"}
@@ -75,6 +75,7 @@ var Element = function Element(_ref) {
75
75
  content: disabledElementTooltip === null || disabledElementTooltip === void 0 ? void 0 : disabledElementTooltip(label),
76
76
  disabled: !disabledElementTooltip || isCreatable,
77
77
  position: "top",
78
+ touch: ["hold", 500],
78
79
  children: /*#__PURE__*/jsxRuntime.jsx("div", {
79
80
  "data-cy": "add-".concat(general.joinHyphenCase(label), "-element"),
80
81
  className: classnames__default["default"]("neeto-ui-border-gray-400 neeto-ui-bg-white hover:neeto-ui-bg-gray-200 neeto-ui-rounded-lg mb-2 flex h-10 items-center gap-2 border p-3 transition-all duration-300 ease-in-out", {
@@ -348,7 +349,8 @@ var TitleBar = function TitleBar(_ref) {
348
349
  size: "small",
349
350
  style: "secondary",
350
351
  tooltipProps: {
351
- content: t("neetoMolecules.builderSidebar.addAllElements")
352
+ content: t("neetoMolecules.builderSidebar.addAllElements"),
353
+ touch: ["hold", 500]
352
354
  },
353
355
  onClick: addAllElements
354
356
  })]