@bigbinary/neeto-molecules 4.1.44 → 4.1.46

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"FloatingActionMenu.js","sources":["../../src/components/FloatingActionMenu/components/ProductSwitcher/constants.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/ProductLink.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Content.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/apis/neeto_apps.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/hooks/useNeetoApps.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/hooks/useProductSwitcherNavigation.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/Menu.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Modal.jsx","../../src/components/FloatingActionMenu/components/HelpMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/components/HelpMenu/index.jsx","../../src/components/FloatingActionMenu/components/LinkSection.jsx","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/apis/logged_in_organizations.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/constants.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/hooks/reactQuery/useFetchLoggedInOrganizations.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Dropdown.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/ProfileHeader.jsx","../../src/components/FloatingActionMenu/components/ProfileExpandMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/constants.js","../../src/components/FloatingActionMenu/components/ProfileExpandMenu/index.jsx","../../src/components/FloatingActionMenu/utils.js","../../src/components/FloatingActionMenu/components/ThemeSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/WorkspaceMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/components/WorkspaceMenu/index.jsx","../../src/components/FloatingActionMenu/components/ProfileMenu.jsx","../../src/components/FloatingActionMenu/components/ProfileButton.jsx","../../src/components/FloatingActionMenu/index.jsx"],"sourcesContent":["export const QUERY_KEYS = { NEETO_APPS_LIST: \"neeto-apps-list\" };\n\nexport const SPECIAL_APP_NAMES = { bugwatch: \"BugWatch\" };\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as AppIcons from \"neetoicons/typeface-logos\";\nimport { Typography } from \"neetoui\";\n\nimport { SPECIAL_APP_NAMES } from \"./constants\";\nimport \"./product-switcher.scss\";\n\nconst ProductLink = ({\n name,\n description,\n url,\n isHighlighted = false,\n ...props\n}) => {\n const normalizedName = (name || \"\").toLowerCase();\n const specialCase = SPECIAL_APP_NAMES[normalizedName];\n\n const appName = `Neeto${name.charAt(0)}${name.slice(1).toLowerCase()}`;\n\n const AppIcon = specialCase\n ? AppIcons[`Neeto${specialCase}`]\n : AppIcons[appName];\n\n return (\n <a\n data-testid={`${normalizedName}-app-link`}\n href={url}\n rel=\"noreferrer\"\n target=\"_blank\"\n className={classnames(\"neeto-molecules-product-switcher-link\", {\n \"neeto-molecules-product-switcher-link--active\":\n globalProps.appName.includes(name),\n \"neeto-molecules-product-switcher-link--highlighted\": isHighlighted,\n })}\n {...props}\n >\n <div className=\"neeto-molecules-product-switcher-link__icon-holder\">\n {AppIcon ? (\n <AppIcon />\n ) : (\n <Neeto className=\"neeto-molecules-product-switcher-link__icon-default\" />\n )}\n </div>\n <div className=\"neeto-molecules-product-switcher-link__content\">\n <Typography\n className=\"neeto-ui-text-gray-600\"\n component=\"span\"\n style=\"body3\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n </div>\n </a>\n );\n};\n\nexport default memo(ProductLink);\n","import { Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ProductLink from \"./ProductLink\";\n\nconst Content = ({ highlightedIndex, filteredApps, isLoading }) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center py-8\">\n <Spinner />\n </div>\n );\n }\n\n return filteredApps?.length > 0 ? (\n <div className=\"neeto-molecules-product-switcher__grid\">\n {filteredApps.map((app, index) => (\n <ProductLink\n key={app.name}\n {...app}\n data-highlighted-index={index}\n isHighlighted={index === highlightedIndex}\n />\n ))}\n </div>\n ) : (\n <Typography\n className=\"neeto-ui-text-center\"\n data-testid=\"no-apps-found-title\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.productSwitcher.noApps\")}\n </Typography>\n );\n};\n\nexport default Content;\n","import axios from \"axios\";\n\nconst fetch = () => axios.get(\"/api/v1/neeto_apps\");\n\nconst neetoAppsApi = { fetch };\n\nexport default neetoAppsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport neetoAppsApi from \"../apis/neeto_apps\";\nimport { QUERY_KEYS } from \"../constants\";\n\nconst useFetchNeetoApps = options =>\n useQuery({\n queryKey: [QUERY_KEYS.NEETO_APPS_LIST],\n queryFn: neetoAppsApi.fetch,\n ...options,\n });\n\nexport { useFetchNeetoApps };\n","import { useState, useEffect, useRef } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nconst useProductSwitcherNavigation = (filteredApps = []) => {\n const [highlightedIndex, setHighlightedIndex] = useState(0);\n const scrollContainerRef = useRef(null);\n\n useEffect(() => setHighlightedIndex(0), [filteredApps]);\n\n useEffect(() => {\n if (!scrollContainerRef.current || isEmpty(filteredApps)) return;\n\n const container = scrollContainerRef.current;\n const highlightedElement = container.querySelector(\n `[data-highlighted-index=\"${highlightedIndex}\"]`\n );\n\n if (!highlightedElement) return;\n\n const containerRect = container.getBoundingClientRect();\n const elRect = highlightedElement.getBoundingClientRect();\n\n if (elRect.top < containerRect.top) {\n container.scrollTop += elRect.top - containerRect.top;\n } else if (elRect.bottom > containerRect.bottom) {\n container.scrollTop += elRect.bottom - containerRect.bottom;\n }\n }, [highlightedIndex, filteredApps]);\n\n const getColumnsPerRow = () => {\n const width = window.innerWidth;\n\n if (width < 768) return 1;\n\n if (width < 1024) return 2;\n\n if (width < 1536) return 3;\n\n return 4;\n };\n\n const handleOpenHighlightedApp = () => {\n const app = filteredApps[highlightedIndex];\n if (!app?.url) return;\n\n window.open(app.url, \"_blank\", \"noopener,noreferrer\");\n };\n\n const navigationHandlers = {\n left: prev => (prev === 0 ? filteredApps.length - 1 : prev - 1),\n right: prev => (prev === filteredApps.length - 1 ? 0 : prev + 1),\n up: prev => {\n const columnsPerRow = getColumnsPerRow();\n const newIndex = prev - columnsPerRow;\n if (newIndex >= 0) return newIndex;\n\n const currentCol = prev % columnsPerRow;\n const lastIndex = filteredApps.length - 1;\n\n return lastIndex - ((lastIndex - currentCol) % columnsPerRow);\n },\n down: prev => {\n const columnsPerRow = getColumnsPerRow();\n const newIndex = prev + columnsPerRow;\n if (newIndex < filteredApps.length) return newIndex;\n\n return prev % columnsPerRow;\n },\n };\n\n const keyActions = {\n Enter: handleOpenHighlightedApp,\n ArrowLeft: () => setHighlightedIndex(navigationHandlers[\"left\"]),\n ArrowRight: () => setHighlightedIndex(navigationHandlers[\"right\"]),\n ArrowUp: () => setHighlightedIndex(navigationHandlers[\"up\"]),\n ArrowDown: () => setHighlightedIndex(navigationHandlers[\"down\"]),\n Tab: e =>\n setHighlightedIndex(navigationHandlers[e.shiftKey ? \"left\" : \"right\"]),\n };\n\n const handleKeyDown = e => {\n const action = keyActions[e.key];\n if (!action) return;\n\n e.preventDefault();\n e.stopPropagation();\n\n if (isNotEmpty(filteredApps)) action(e);\n };\n\n return { highlightedIndex, handleKeyDown, scrollContainerRef };\n};\n\nexport default useProductSwitcherNavigation;\n","import { useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Search } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Content from \"./Content\";\nimport { useFetchNeetoApps } from \"./hooks/useNeetoApps\";\nimport useProductSwitcherNavigation from \"./hooks/useProductSwitcherNavigation\";\nimport \"./product-switcher.scss\";\n\nconst Menu = ({ isMobile = false, initialFocusRef }) => {\n const { t } = useTranslation();\n\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const { data, isLoading } = useFetchNeetoApps();\n\n const substring = searchTerm.replace(/ /g, \"\").toLowerCase();\n\n const filteredApps = useMemo(() => {\n if (!data) return [];\n\n return data?.neetoApps.filter(({ name }) => {\n const nameLower = name.toLowerCase();\n const searchTermLower = substring.toLowerCase();\n\n const isNeetoPrefixMatch =\n searchTermLower.length <= 4 && \"neeto\".startsWith(searchTermLower);\n\n if (isNeetoPrefixMatch) return true;\n\n const productName = searchTermLower.startsWith(\"neeto\")\n ? searchTermLower.replace(\"neeto\", \"\")\n : searchTermLower;\n\n return nameLower.includes(productName);\n });\n }, [data, substring]);\n\n const { highlightedIndex, handleKeyDown, scrollContainerRef } =\n useProductSwitcherNavigation(filteredApps);\n\n return (\n <div\n className=\"neeto-molecules-product-switcher__wrapper\"\n data-testid=\"switcher-wrapper\"\n key=\"switcher-wrapper\"\n >\n <div\n data-testid=\"product-switcher-body-wrapper\"\n className={classNames(\"neeto-molecules-product-switcher__header pt-1\", {\n \"neeto-molecules-product-switcher__header-mobile\": isMobile,\n })}\n >\n {!isMobile && (\n <Typography style=\"h1\">\n {t(\"neetoMolecules.productSwitcher.chooseNeetoProduct\")}\n </Typography>\n )}\n <div className=\"neeto-molecules-product-switcher__search-wrapper\">\n <Input\n autoFocus\n data-testid=\"product-switcher-search-input\"\n placeholder={t(\"neetoMolecules.productSwitcher.searchProducts\")}\n prefix={<Search />}\n ref={initialFocusRef}\n size=\"large\"\n type=\"search\"\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n onKeyDown={handleKeyDown}\n />\n </div>\n </div>\n <div\n ref={scrollContainerRef}\n className={classNames(\"neeto-molecules-product-switcher__body\", {\n [\"neeto-molecules-product-switcher__body-mobile\"]: isMobile,\n })}\n >\n <Content {...{ filteredApps, highlightedIndex, isLoading }} />\n </div>\n </div>\n );\n};\n\nexport default Menu;\n","import { useRef } from \"react\";\n\nimport { Modal as NeetoUIModal } from \"neetoui\";\n\nimport Menu from \"./Menu\";\n\nconst Modal = ({ isOpen, onClose }) => {\n const initialFocusRef = useRef(null);\n\n return (\n <NeetoUIModal\n {...{ initialFocusRef, isOpen, onClose }}\n backdropClassName=\"neeto-molecules-product-switcher_modal\"\n size=\"large\"\n >\n <NeetoUIModal.Body>\n <div\n className=\"neeto-molecules-product-switcher_modal-container\"\n data-testid=\"product-switcher-modal\"\n >\n <Menu {...{ initialFocusRef }} />\n </div>\n </NeetoUIModal.Body>\n </NeetoUIModal>\n );\n};\n\nexport default Modal;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Help, Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t, tReady: _tReady, ...otherProps }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-menu-button\"\n prefix={<Help size={18} />}\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n {t(\"neetoMolecules.sidebar.help\")}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Book, ChatQuestions, Community, Status } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown } from \"neetoui\";\nimport { toLower } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MenuButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst HelpMenu = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n closeOnSelect={false}\n customTarget={<MenuButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-help-articles-button\"\n href={`https://help.${toLower(globalProps.appName)}.com/`}\n prefix={<Book size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.helpArticles\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-live-chat-button\"\n prefix={<ChatQuestions size={18} />}\n onClick={() => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n }}\n >\n {t(\"neetoMolecules.sidebar.helpLinks.liveChat\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-community-button\"\n href=\"https://www.launchpass.com/neetohq\"\n prefix={<Community size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.askTheCommunity\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-status-button\"\n href=\"https://neetostatus.com/\"\n prefix={<Status size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.systemStatus\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default HelpMenu;\n","import { isNotPresent, isPresent } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst LinkSection = ({ links }) => {\n const { MenuItem } = Dropdown;\n if (isNotPresent(links)) return null;\n\n return (\n <>\n {links.map(({ label, icon: Icon, changesCount, ...otherProps }, idx) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"floating-action-menu-link-section\"\n key={idx}\n prefix={Icon && <Icon size={18} />}\n style=\"text\"\n {...otherProps}\n >\n {label}\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu-list__item-btn-count\"\n data-testid=\"help-section-menu-changes-count\"\n >\n {changesCount}\n </span>\n )}\n </MenuItem.Button>\n ))}\n </>\n );\n};\n\nexport default LinkSection;\n","import axios from \"axios\";\n\nconst fetch = email =>\n axios.get(\"/logged_in_organizations\", { params: { email } });\n\nconst loggedInOrganizationsApi = { fetch };\n\nexport default loggedInOrganizationsApi;\n","export const QUERY_KEYS = {\n LOGGED_IN_ORGANIZATIONS_LIST: \"logged-in-organizations-list\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport loggedInOrganizationsApi from \"../../apis/logged_in_organizations.js\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { LOGGED_IN_ORGANIZATIONS_LIST } = QUERY_KEYS;\n\nconst useFetchLoggedInOrganizations = email =>\n useQuery({\n queryKey: [LOGGED_IN_ORGANIZATIONS_LIST],\n queryFn: () => loggedInOrganizationsApi.fetch(email),\n });\n\nexport { useFetchLoggedInOrganizations };\n","import { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"organization-switcher-button\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n {t(\"neetoMolecules.sidebar.organizationSwitcher.label\")}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import classNames from \"classnames\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { CheckCircle } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown, Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchLoggedInOrganizations } from \"./hooks/reactQuery/useFetchLoggedInOrganizations.js\";\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst OrganizationSwitcher = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const { data: { organizations, authAppUrl } = {} } =\n useFetchLoggedInOrganizations(globalProps?.user?.email);\n\n const isMobile = isSize(\"mobile\");\n\n const isCurrentSubdomain = link => {\n const currentSubdomain = window.location.hostname.split(\".\")[0];\n const linkSubdomain = new URL(link).hostname.split(\".\")[0];\n\n return currentSubdomain === linkSubdomain;\n };\n\n return (\n <NeetoUIDropdown\n className=\"neeto-molecules-organization-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n {organizations?.map(organization => (\n <MenuItem.Button\n href={organization.organizationUrl}\n key={organization.userId}\n rel=\"noreferrer\"\n style=\"text\"\n target=\"_blank\"\n className={classNames({\n \"neeto-molecules-organization-switcher-active-button\":\n isCurrentSubdomain(organization.organizationUrl),\n })}\n >\n {organization.orgName}\n {isCurrentSubdomain(organization.organizationUrl) && (\n <Tag\n icon={() => <CheckCircle size={12} />}\n size=\"small\"\n style=\"primary\"\n type=\"solid\"\n >\n {t(\"neetoMolecules.sidebar.organizationSwitcher.signedin\")}\n </Tag>\n )}\n </MenuItem.Button>\n ))}\n <MenuItem.Button href={authAppUrl} rel=\"noreferrer\" target=\"_blank\">\n {t(\"neetoMolecules.sidebar.organizationSwitcher.addAccount\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default OrganizationSwitcher;\n","import { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst MenuButton = ({ ...otherProps }) => {\n const { t } = useTranslation();\n const { MenuItem } = Dropdown;\n\n return (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"product-switcher-button\"\n label={t(\"neetoMolecules.sidebar.productSwitcher\")}\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n {t(\"neetoMolecules.sidebar.productSwitcher\")}\n </MenuItem.Button>\n );\n};\n\nexport default MenuButton;\n","import { Dropdown as NeetoUIDropdown } from \"neetoui\";\n\nimport ProductSwitcherMenu from \"./Menu\";\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst Dropdown = () => (\n <NeetoUIDropdown\n appendTo=\"parent\"\n className=\"neeto-molecules-product-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position=\"right\"\n trigger=\"all\"\n zIndex={99999}\n dropdownProps={{\n classNames: \"neeto-molecules-product-switcher-menu-popup__dropdown\",\n }}\n >\n <Menu>\n <MenuItem>\n <ProductSwitcherMenu />\n </MenuItem>\n </Menu>\n </NeetoUIDropdown>\n);\n\nexport default Dropdown;\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\n\nimport Dropdown from \"./Dropdown\";\nimport MenuButton from \"./MenuButton\";\n\nconst ProductSwitcher = ({ toggleModal }) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n return isMobile ? (\n <MenuButton onClick={() => toggleModal(true)} />\n ) : (\n <Dropdown />\n );\n};\n\nexport default ProductSwitcher;\n","import { truncate } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nconst ProfileHeader = ({ profileInfo }) => {\n const { name, email } = profileInfo;\n\n return (\n <span\n className=\"flex w-full min-w-0 items-center gap-2 text-start\"\n data-testid=\"floating-action-menu-profile-header\"\n >\n <Avatar\n data-testid=\"floating-action-menu-header-profile-icon\"\n size=\"medium\"\n user={profileInfo}\n />\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 gap-1\">\n <Typography\n className=\"neeto-ui-m-0\"\n component=\"span\"\n data-testid=\"floating-action-menu-header-user-name\"\n lineHeight=\"tight\"\n style=\"h5\"\n title={name}\n weight=\"semibold\"\n >\n {truncate(name, 18)}\n </Typography>\n {email && (\n <Typography\n className=\"neeto-ui-w-full neeto-ui-truncate neeto-ui-text-gray-500\"\n component=\"span\"\n data-testid=\"floating-action-menu-header-user-email\"\n lineHeight=\"tight\"\n style=\"body3\"\n >\n {email}\n </Typography>\n )}\n </span>\n </span>\n );\n};\n\nexport default ProfileHeader;\n","import { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport ProfileHeader from \"../ProfileHeader\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = ({ profileInfo, ...otherProps }) => (\n <MenuItem.Button\n className=\"neeto-molecules-profile-popup\"\n data-testid=\"profile-expand-menu-button\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n <ProfileHeader {...{ profileInfo }} />\n </MenuItem.Button>\n);\n\nexport default MenuButton;\n","import { t } from \"i18next\";\n\nexport const MY_ORGANIZATION_URL = \"/auth/organization/edit\";\nexport const DELETE_WORKSPACE_URL = \"/auth/organization/delete\";\nexport const ENGAGE_WIDGET_TRIGGER_ID = \"neetoengage-trigger\";\n\nexport const DEFAULT_MENU_LINK_PROPS = {\n engageProps: {\n id: ENGAGE_WIDGET_TRIGGER_ID,\n label: t(\"neetoMolecules.sidebar.helpLinks.whatsNew\"),\n \"data-testid\": \"help-link-engage-button\",\n },\n keyboardShortcutProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.keyboardShortcuts\"),\n \"data-testid\": \"help-link-keyboard-shortcut-button\",\n },\n};\n\n// Theme switcher\nexport const APP_THEME_LOCALSTORAGE_KEY = \"appTheme\";\n\nexport const THEMES = {\n LIGHT: \"neeto-ui-theme--light\",\n DARK: \"neeto-ui-theme--dark\",\n};\n\nexport const NEETO_AUTH_BILLING_INFO_URL =\n \"/neeto_sso/api/v1/subscription/billing\";\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { CloseCircle, User } from \"neetoicons\";\nimport { Profile } from \"neetoteam\";\nimport { Dropdown as NeetoUIDropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MenuButton from \"./MenuButton\";\n\nimport { DELETE_WORKSPACE_URL } from \"../../constants\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst ProfileExpandMenu = ({ profileInfo }) => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n const [, setIsProfilePaneOpen] = Profile.usePaneState();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n closeOnSelect={false}\n customTarget={<MenuButton {...{ profileInfo }} />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"profile-my-profile-button\"\n prefix={<User size={18} />}\n onClick={() => setIsProfilePaneOpen(true)}\n >\n {t(\"neetoMolecules.sidebar.myProfile\")}\n </MenuItem.Button>\n {window.globalProps?.user?.isOwner && (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"profile-cancel-account-button\"\n href={DELETE_WORKSPACE_URL}\n prefix={<CloseCircle size={18} />}\n rel=\"noreferrer\"\n style=\"text\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.cancelAccount\")}\n </MenuItem.Button>\n )}\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default ProfileExpandMenu;\n","import { t } from \"i18next\";\nimport { getFromLocalStorage } from \"neetocommons/utils\";\nimport { resetAuthTokens } from \"neetocommons/utils/axios\";\nimport { removeFromLocalStorage } from \"neetocommons/utils/general\";\nimport { Logout } from \"neetoicons\";\nimport { mergeDeepLeft } from \"ramda\";\n\nimport { THEMES, APP_THEME_LOCALSTORAGE_KEY } from \"./constants\";\n\nconst getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nconst getUserProfileInfo = () => ({\n name: `${globalProps.user?.firstName ?? \"\"} ${\n globalProps.user?.lastName ?? \"\"\n }`,\n imageUrl: globalProps.authenticated\n ? globalProps.user?.profileImageUrl\n : \"https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg\",\n email: globalProps.user?.email || globalProps.user?.phoneNumber,\n isAuthenticated: globalProps.authenticated,\n});\n\nconst getConsumerProfileInfo = () => ({\n name: `${globalProps.consumer?.firstName ?? \"\"} ${\n globalProps.consumer?.lastName ?? \"\"\n }`,\n imageUrl:\n globalProps.consumer?.profileImageUrl ||\n \"https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg\",\n email: globalProps.consumer?.email || globalProps.consumer?.phoneNumber,\n isAuthenticated: globalProps.isConsumer,\n});\n\nexport const getDefaultBottomLinks = (isAuthenticated, isConsumer) => [\n isAuthenticated\n ? {\n label: t(\"neetoMolecules.sidebar.logout\"),\n icon: Logout,\n onClick: () => {\n resetAuthTokens();\n removeFromLocalStorage(getSidebarStateLocalStorageKey());\n isConsumer\n ? (window.location.href = `/consumers/logout?redirect_uri=${window.location.href}`)\n : (window.location.href = \"/logout\");\n },\n \"data-testid\": \"profile-logout-button\",\n }\n : {\n label: t(\"neetoMolecules.sidebar.login\"),\n onClick: () => {\n window.location.href = \"/login\";\n },\n \"data-testid\": \"profile-login-button\",\n },\n];\n\nexport const getProfileInfo = (profileInfoOverrides, isConsumer) =>\n mergeDeepLeft(\n profileInfoOverrides,\n isConsumer ? getConsumerProfileInfo() : getUserProfileInfo()\n );\n\n// Theme switcher utils.\nexport const setDarkTheme = () => {\n if (!document.body) return;\n\n document.body.classList.remove(THEMES.LIGHT);\n document.body.classList.add(THEMES.DARK);\n};\n\nexport const setLightTheme = () => {\n if (!document.body) return;\n\n document.body.classList.remove(THEMES.DARK);\n document.body.classList.add(THEMES.LIGHT);\n};\n\nexport const setAppTheme = () => {\n const isDarkTheme =\n getFromLocalStorage(APP_THEME_LOCALSTORAGE_KEY) === THEMES.DARK;\n isDarkTheme ? setDarkTheme() : setLightTheme();\n};\n","import classNames from \"classnames\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Moon, Sun } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES,\n} from \"components/FloatingActionMenu/constants\";\nimport {\n setDarkTheme,\n setLightTheme,\n} from \"components/FloatingActionMenu/utils\";\n\nconst { MenuItem } = Dropdown;\n\nconst ThemeSwitcher = () => {\n const { t } = useTranslation();\n\n const [appTheme, setAppTheme] = useLocalStorage(\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES.LIGHT\n );\n const isDarkThemeSelected = appTheme === THEMES.DARK;\n\n const switchTheme = theme => {\n theme === THEMES.LIGHT ? setLightTheme() : setDarkTheme();\n setAppTheme(theme);\n };\n\n return (\n <MenuItem className=\"neeto-molecules-theme-switcher flex items-center justify-between gap-2 px-5 py-3\">\n <div className=\"neeto-molecules-theme-switcher__label\">\n {t(\"neetoMolecules.sidebar.themeSwitcher.label\")}\n </div>\n <div\n className=\"neeto-molecules-theme-switcher__segmented-control\"\n data-testid=\"theme-switcher-button\"\n >\n <button\n data-testid=\"theme-switcher-light-button\"\n type=\"button\"\n className={classNames(\"neeto-molecules-theme-switcher__option\", {\n \"neeto-molecules-theme-switcher__option--active\":\n !isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.LIGHT)}\n >\n <Sun size={18} />\n {t(\"neetoMolecules.sidebar.themeSwitcher.light\")}\n </button>\n <button\n data-testid=\"theme-switcher-dark-button\"\n type=\"button\"\n className={classNames(\"neeto-molecules-theme-switcher__option\", {\n \"neeto-molecules-theme-switcher__option--active\":\n isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.DARK)}\n >\n <Moon size={18} />\n {t(\"neetoMolecules.sidebar.themeSwitcher.dark\")}\n </button>\n </div>\n </MenuItem>\n );\n};\n\nexport default ThemeSwitcher;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown, Typography } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t }) => (\n <MenuItem.Button\n className=\"neeto-molecules-workspace-display\"\n data-testid=\"workspace-display\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n <span className=\"neeto-molecules-workspace-display__content flex flex-col gap-1.5 text-start\">\n <Typography\n className=\"neeto-molecules-workspace-display__label\"\n component=\"span\"\n style=\"body2\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.sidebar.workspace\")}\n </Typography>\n {globalProps.organization?.name && (\n <Typography\n className=\"neeto-molecules-workspace-display__name neeto-ui-text-gray-500\"\n component=\"span\"\n style=\"body3\"\n >\n {globalProps.organization.name}\n </Typography>\n )}\n </span>\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import { globalProps } from \"neetocommons/initializers\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Dropdown as NeetoUIDropdown, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport MenuItemButton from \"./MenuButton\";\n\nimport { MY_ORGANIZATION_URL } from \"../../constants\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst WorkspaceMenu = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n className=\"neeto-molecules-organization-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n data-testid=\"profile-organization-settings-button\"\n href={MY_ORGANIZATION_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.workspaceMenu.settings\")}\n </MenuItem.Button>\n {globalProps.organization?.subdomain && (\n <MenuItem className=\"px-6 py-2\">\n <span className=\"neeto-molecules-workspace-display__content flex flex-col gap-0.5 text-start\">\n <Typography\n className=\"neeto-molecules-workspace-display__label\"\n component=\"span\"\n style=\"body2\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.sidebar.workspaceMenu.subdomain\")}\n </Typography>\n <Typography\n className=\"neeto-molecules-workspace-display__name neeto-ui-text-gray-500 flex items-center gap-1\"\n component=\"span\"\n style=\"body3\"\n >\n <span className=\"min-w-0 truncate\">\n {globalProps.organization.subdomain}\n </span>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={globalProps.organization.subdomain}\n />\n </Typography>\n </span>\n </MenuItem>\n )}\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default WorkspaceMenu;\n","import classnames from \"classnames\";\nimport { isPresent, humanize, isNotEmpty } from \"neetocist\";\nimport { Crown } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HelpMenu from \"./HelpMenu\";\nimport LinkSection from \"./LinkSection\";\nimport OrganizationSwitcher from \"./OrganizationSwitcher\";\nimport ProductSwitcherMenu from \"./ProductSwitcher\";\nimport ProfileExpandMenu from \"./ProfileExpandMenu\";\nimport ThemeSwitcher from \"./ThemeSwitcher\";\nimport WorkspaceMenu from \"./WorkspaceMenu\";\n\nimport { NEETO_AUTH_BILLING_INFO_URL } from \"../constants\";\n\nconst ProfileMenu = ({\n profileInfo,\n showProductSwitcher,\n defaultLinks,\n topLinks,\n bottomLinks,\n customContent,\n toggleModal,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n isConsumer,\n enableSubscriptionUpgradeRequest,\n openUpgradeModal,\n}) => {\n const { Menu, MenuItem, Divider } = Dropdown;\n const { isAuthenticated } = profileInfo;\n const { t } = useTranslation();\n\n const normalizedPlan = (\n globalProps.user?.subscriptionPlan || \"\"\n ).toLowerCase();\n\n const isFreePlan = normalizedPlan === \"free\";\n const showUpgradeAction = isFreePlan && enableSubscriptionUpgradeRequest;\n\n const subscriptionPlanLink = {\n label: (\n <>\n {globalProps.appName}{\" \"}\n <span\n className={classnames(\n \"neeto-molecules-subscription-plan-badge flex items-center gap-1\",\n {\n \"neeto-molecules-subscription-plan-badge--pro\":\n normalizedPlan === \"pro\",\n \"neeto-molecules-subscription-plan-badge--free\": isFreePlan,\n }\n )}\n >\n {normalizedPlan === \"pro\" ? (\n humanize(globalProps.user?.subscriptionPlan)\n ) : (\n <>\n <Crown size={12} />\n {t(\"neetoMolecules.sidebar.upgradePlan\")}\n </>\n )}\n </span>\n </>\n ),\n \"data-testid\": \"subscription-plan\",\n ...(showUpgradeAction\n ? { onClick: openUpgradeModal }\n : { href: NEETO_AUTH_BILLING_INFO_URL }),\n };\n\n return (\n <Menu className=\"pb-1\">\n {!isConsumer && (\n <>\n <LinkSection links={defaultLinks} />\n {isNotEmpty(topLinks) && (\n <>\n <Divider />\n <LinkSection links={topLinks} />\n </>\n )}\n {isPresent(customContent) && (\n <>\n <Divider />\n <MenuItem className=\"neeto-molecules-floating-action-button__profile-wrapper-custom-content\">\n {customContent}\n </MenuItem>\n </>\n )}\n <Divider />\n {globalProps.user?.isOwner && <WorkspaceMenu />}\n {isOrganizationSwitcherEnabled && <OrganizationSwitcher />}\n <Divider />\n {isPresent(globalProps.user?.subscriptionPlan) && (\n <LinkSection links={[subscriptionPlanLink]} />\n )}\n {showProductSwitcher && <ProductSwitcherMenu {...{ toggleModal }} />}\n <HelpMenu />\n <Divider />\n </>\n )}\n {isAuthenticated && !isConsumer && (\n <ProfileExpandMenu {...{ profileInfo }} />\n )}\n <LinkSection links={bottomLinks} />\n {isThemeSwitcherEnabled && (\n <>\n <Divider />\n <ThemeSwitcher />\n </>\n )}\n </Menu>\n );\n};\n\nexport default ProfileMenu;\n","import { useEffect, useState } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Help } from \"neetoicons\";\nimport { Profile } from \"neetoteam\";\nimport { Avatar, Dropdown } from \"neetoui\";\nimport { not } from \"ramda\";\n\nimport KeyboardShortcuts from \"components/KeyboardShortcuts\";\nimport SubscriptionUpgradeRequestModal from \"components/SubscriptionUpgradeRequestModal\";\n\nimport ProductSwitcherModal from \"./ProductSwitcher/Modal\";\nimport ProfileMenu from \"./ProfileMenu\";\n\nimport { DEFAULT_MENU_LINK_PROPS } from \"../constants\";\nimport { getDefaultBottomLinks, getProfileInfo } from \"../utils\";\n\nconst ProfileButton = ({\n profileInfoOverrides,\n showProductSwitcher,\n bottomLinks,\n topLinks,\n customContent,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n profilePopoverProps,\n isConsumer,\n enableSubscriptionUpgradeRequest,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const [isUpgradeModalOpen, setIsUpgradeModalOpen] = useState(false);\n const [isBackdropVisible, setIsBackdropVisible] = useState(false);\n const [changesCount, setChangesCount] = useState(null);\n\n const [, setIsOpen] = KeyboardShortcuts.usePaneState();\n\n useHotkeys([\"ctrl+u\", \"command+u\"], () => setIsModalOpen(not), {\n mode: \"global\",\n });\n\n const profileInfo = getProfileInfo(profileInfoOverrides, isConsumer);\n\n useEffect(() => {\n const Nv = {\n onReceiveData: data => {\n if (!data.unreadCount) return;\n setChangesCount(data.unreadCount);\n },\n onShow: () => {\n setChangesCount(null);\n },\n };\n\n window.Nv = window.Nv ? Object.assign(window.Nv, Nv) : Nv;\n }, []);\n\n const newBottomLinks = [\n ...getDefaultBottomLinks(profileInfo.isAuthenticated, isConsumer),\n ...bottomLinks,\n ];\n\n const defaultLinks = Object.keys(DEFAULT_MENU_LINK_PROPS)\n .map(key => ({\n ...DEFAULT_MENU_LINK_PROPS[key],\n ...(key === \"keyboardShortcutProps\" && {\n onClick: () => setIsOpen(prev => !prev),\n }),\n ...(key === \"engageProps\" && changesCount && { changesCount }),\n }))\n .filter(({ hide }) => !hide);\n\n return (\n <>\n <Profile.Pane popoverProps={profilePopoverProps} />\n {isBackdropVisible && (\n <div className=\"neeto-molecules-floating-action-button__backdrop\" />\n )}\n <Dropdown\n appendTo={() => document.body}\n buttonStyle=\"link\"\n closeOnSelect={false}\n icon={noop}\n interactiveDebounce={30}\n offset={[4, 4]}\n position=\"right-end\"\n strategy=\"fixed\"\n theme=\"light neeto-molecules-floating-action-outer-dropdown-wrapper\"\n trigger=\"all\"\n zIndex={99999}\n customTarget={\n <button\n className=\"neeto-molecules-floating-action-button\"\n type=\"button\"\n >\n <Avatar\n className=\"neeto-ui-flex-shrink-0 neeto-molecules-floating-action-button__profile-avatar\"\n data-testid=\"profile-avatar\"\n size=\"medium\"\n user={profileInfo}\n />\n <span className=\"neeto-molecules-floating-action-button__help-icon\">\n <Help size={20} />\n </span>\n </button>\n }\n dropdownProps={{\n classNames: \"neeto-molecules-floating-action-button__dropdown\",\n }}\n onHide={() => setIsBackdropVisible(false)}\n onShow={() => setIsBackdropVisible(true)}\n >\n <ProfileMenu\n {...{\n customContent,\n defaultLinks,\n enableSubscriptionUpgradeRequest,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfo,\n showProductSwitcher,\n topLinks,\n }}\n bottomLinks={newBottomLinks}\n openUpgradeModal={() => setIsUpgradeModalOpen(true)}\n toggleModal={setIsModalOpen}\n />\n </Dropdown>\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu__notif-count\"\n data-testid=\"help-icon-changes-count\"\n >\n {changesCount}\n </span>\n )}\n <ProductSwitcherModal\n isOpen={isModalOpen}\n onClose={() => setIsModalOpen(false)}\n />\n {enableSubscriptionUpgradeRequest && (\n <SubscriptionUpgradeRequestModal\n isOpen={isUpgradeModalOpen}\n onClose={() => setIsUpgradeModalOpen(false)}\n />\n )}\n </>\n );\n};\n\nexport default ProfileButton;\n","import { forwardRef, useEffect } from \"react\";\n\nimport { globalProps } from \"neetocommons/initializers\";\nimport PropTypes from \"prop-types\";\n\nimport ProfileButton from \"./components/ProfileButton\";\nimport \"./floating-action-menu.scss\";\nimport { setAppTheme } from \"./utils\";\n\nconst FloatingActionMenu = forwardRef(\n (\n {\n profileInfoOverrides = {},\n topLinks = [],\n bottomLinks = [],\n showProductSwitcher = true,\n isThemeSwitcherEnabled = false,\n isOrganizationSwitcherEnabled = false,\n customContent,\n profilePopoverProps = {},\n isConsumer = false,\n enableSubscriptionUpgradeRequest = true,\n ...otherProps\n },\n ref\n ) => {\n useEffect(() => {\n isThemeSwitcherEnabled && setAppTheme();\n }, []);\n\n const isBigBinaryEmail =\n globalProps?.user?.email?.endsWith(\"@bigbinary.com\");\n\n return (\n <div\n {...{ ref }}\n className=\"neeto-molecules-floating-action-menu__container\"\n data-testid=\"floating-action-menu-container\"\n {...otherProps}\n >\n <ProfileButton\n {...{\n bottomLinks,\n customContent,\n enableSubscriptionUpgradeRequest,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfoOverrides,\n profilePopoverProps,\n showProductSwitcher,\n topLinks,\n }}\n isOrganizationSwitcherEnabled={\n isBigBinaryEmail || isOrganizationSwitcherEnabled\n }\n />\n </div>\n );\n }\n);\n\nFloatingActionMenu.displayName = \"FloatingActionMenu\";\n\nFloatingActionMenu.propTypes = {\n /**\n * To specify the profile info to be rendered in the menu\n */\n profileInfoOverrides: PropTypes.shape({\n name: PropTypes.string,\n email: PropTypes.string,\n imageUrl: PropTypes.string,\n }),\n /**\n * Custom content to be rendered in the menu between the top and bottom links if any\n */\n customContent: PropTypes.element,\n /**\n * Any extra links to be rendered at the top of the menu.\n */\n topLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n /**\n * Any extra links to be rendered at the bottom of the menu.\n */\n bottomLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n /**\n * To display the consumer profile info in the menu.\n */\n isConsumer: PropTypes.bool,\n /**\n * To display the product switcher menu option.\n */\n showProductSwitcher: PropTypes.bool,\n /**\n * To display the app theme switcher above the user profile.\n If this prop is set to `true`, it will set the last selected\n theme to the app when the component is mounted.\n */\n isThemeSwitcherEnabled: PropTypes.bool,\n /**\n * To display the organization switcher above the user profile.\n If this prop is set to `true`, it lists all the logged in\n organizations for the current user.\n */\n isOrganizationSwitcherEnabled: PropTypes.bool,\n /**\n * When true, free-plan users see a modal to request a Pro upgrade\n * instead of being redirected to the billing page.\n */\n enableSubscriptionUpgradeRequest: PropTypes.bool,\n /**\n * To show help icon popover for preferred date format, preferred time format and time zone.\n */\n profilePopoverProps: PropTypes.shape({\n preferredDateFormat: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n preferredTimeFormat: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n timeZone: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n }),\n};\n\nexport default FloatingActionMenu;\n"],"names":["QUERY_KEYS","NEETO_APPS_LIST","SPECIAL_APP_NAMES","bugwatch","ProductLink","_ref","name","description","url","_ref$isHighlighted","isHighlighted","props","_objectWithoutProperties","_excluded","normalizedName","toLowerCase","specialCase","appName","concat","charAt","slice","AppIcon","AppIcons","_jsxs","_objectSpread","href","rel","target","className","classnames","globalProps","includes","children","_jsx","Neeto","Typography","component","style","weight","memo","Content","highlightedIndex","filteredApps","isLoading","_useTranslation","useTranslation","t","Spinner","length","map","app","index","fetch","axios","get","neetoAppsApi","useFetchNeetoApps","options","useQuery","queryKey","queryFn","useProductSwitcherNavigation","arguments","undefined","_useState","useState","_useState2","_slicedToArray","setHighlightedIndex","scrollContainerRef","useRef","useEffect","current","isEmpty","container","highlightedElement","querySelector","containerRect","getBoundingClientRect","elRect","top","scrollTop","bottom","getColumnsPerRow","width","window","innerWidth","handleOpenHighlightedApp","open","navigationHandlers","left","prev","right","up","columnsPerRow","newIndex","currentCol","lastIndex","down","keyActions","Enter","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Tab","e","shiftKey","handleKeyDown","action","key","preventDefault","stopPropagation","isNotEmpty","Menu","_ref$isMobile","isMobile","initialFocusRef","searchTerm","setSearchTerm","_useFetchNeetoApps","data","substring","replace","useMemo","neetoApps","filter","_ref2","nameLower","searchTermLower","isNeetoPrefixMatch","startsWith","productName","_useProductSwitcherNa","classNames","Input","autoFocus","placeholder","prefix","Search","ref","size","type","value","onChange","onKeyDown","_defineProperty","Modal","isOpen","onClose","NeetoUIModal","backdropClassName","Body","MenuItem","Dropdown","MenuButton","withT","tReady","otherProps","Button","Help","suffix","Right","NeetoUIDropdown","HelpMenu","_useBreakpoints","useBreakpoints","isSize","closeOnSelect","customTarget","interactiveDebounce","offset","position","trigger","zIndex","toLower","Book","ChatQuestions","onClick","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","Community","Status","LinkSection","links","isNotPresent","_Fragment","idx","label","Icon","icon","changesCount","isPresent","email","params","loggedInOrganizationsApi","LOGGED_IN_ORGANIZATIONS_LIST","useFetchLoggedInOrganizations","OrganizationSwitcher","_globalProps$user","_useFetchLoggedInOrga","user","_useFetchLoggedInOrga2","_useFetchLoggedInOrga3","organizations","authAppUrl","isCurrentSubdomain","link","currentSubdomain","location","hostname","split","linkSubdomain","URL","MenuItemButton","organization","organizationUrl","orgName","Tag","CheckCircle","userId","Object","assign","_objectDestructuringEmpty","appendTo","dropdownProps","ProductSwitcherMenu","ProductSwitcher","toggleModal","ProfileHeader","profileInfo","Avatar","lineHeight","title","truncate","MY_ORGANIZATION_URL","DELETE_WORKSPACE_URL","ENGAGE_WIDGET_TRIGGER_ID","DEFAULT_MENU_LINK_PROPS","engageProps","id","keyboardShortcutProps","APP_THEME_LOCALSTORAGE_KEY","THEMES","LIGHT","DARK","NEETO_AUTH_BILLING_INFO_URL","ProfileExpandMenu","_window$globalProps","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","setIsProfilePaneOpen","User","isOwner","CloseCircle","getSidebarStateLocalStorageKey","_globalProps$user2","phoneNumber","getUserProfileInfo","_globalProps$user$fir","_globalProps$user3","_globalProps$user$las","_globalProps$user4","_globalProps$user5","_globalProps$user6","_globalProps$user7","firstName","lastName","imageUrl","authenticated","profileImageUrl","isAuthenticated","getConsumerProfileInfo","_globalProps$consumer","_globalProps$consumer2","_globalProps$consumer3","_globalProps$consumer4","_globalProps$consumer5","_globalProps$consumer6","_globalProps$consumer7","consumer","isConsumer","getDefaultBottomLinks","Logout","resetAuthTokens","removeFromLocalStorage","getProfileInfo","profileInfoOverrides","mergeDeepLeft","setDarkTheme","document","body","classList","remove","add","setLightTheme","setAppTheme","isDarkTheme","getFromLocalStorage","ThemeSwitcher","_useLocalStorage","useLocalStorage","_useLocalStorage2","appTheme","isDarkThemeSelected","switchTheme","theme","Sun","Moon","_globalProps$organiza","WorkspaceMenu","subdomain","CopyToClipboardButton","ProfileMenu","showProductSwitcher","defaultLinks","topLinks","bottomLinks","customContent","isThemeSwitcherEnabled","isOrganizationSwitcherEnabled","enableSubscriptionUpgradeRequest","openUpgradeModal","Divider","normalizedPlan","subscriptionPlan","isFreePlan","showUpgradeAction","subscriptionPlanLink","humanize","Crown","ProfileButton","profilePopoverProps","isModalOpen","setIsModalOpen","_useState3","_useState4","isUpgradeModalOpen","setIsUpgradeModalOpen","_useState5","_useState6","isBackdropVisible","setIsBackdropVisible","_useState7","_useState8","setChangesCount","_KeyboardShortcuts$us","KeyboardShortcuts","_KeyboardShortcuts$us2","setIsOpen","useHotkeys","not","mode","Nv","onReceiveData","unreadCount","onShow","newBottomLinks","_toConsumableArray","keys","hide","Pane","popoverProps","buttonStyle","noop","strategy","onHide","ProductSwitcherModal","SubscriptionUpgradeRequestModal","FloatingActionMenu","forwardRef","_ref$profileInfoOverr","_ref$topLinks","_ref$bottomLinks","_ref$showProductSwitc","_ref$isThemeSwitcherE","_ref$isOrganizationSw","_ref$profilePopoverPr","_ref$isConsumer","_ref$enableSubscripti","isBigBinaryEmail","endsWith","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"FloatingActionMenu.js","sources":["../../src/components/FloatingActionMenu/components/ProductSwitcher/constants.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/ProductLink.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Content.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/apis/neeto_apps.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/hooks/useNeetoApps.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/hooks/useProductSwitcherNavigation.js","../../src/components/FloatingActionMenu/components/ProductSwitcher/Menu.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Modal.jsx","../../src/components/FloatingActionMenu/components/HelpMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/components/HelpMenu/index.jsx","../../src/components/FloatingActionMenu/components/LinkSection.jsx","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/apis/logged_in_organizations.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/constants.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/hooks/reactQuery/useFetchLoggedInOrganizations.js","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/OrganizationSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/Dropdown.jsx","../../src/components/FloatingActionMenu/components/ProductSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/ProfileHeader.jsx","../../src/components/FloatingActionMenu/components/ProfileExpandMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/constants.js","../../src/components/FloatingActionMenu/components/ProfileExpandMenu/index.jsx","../../src/components/FloatingActionMenu/utils.js","../../src/components/FloatingActionMenu/components/ThemeSwitcher/index.jsx","../../src/components/FloatingActionMenu/components/WorkspaceMenu/MenuButton.jsx","../../src/components/FloatingActionMenu/components/WorkspaceMenu/index.jsx","../../src/components/FloatingActionMenu/components/ProfileMenu.jsx","../../src/components/FloatingActionMenu/components/ProfileButton.jsx","../../src/components/FloatingActionMenu/index.jsx"],"sourcesContent":["export const QUERY_KEYS = { NEETO_APPS_LIST: \"neeto-apps-list\" };\n\nexport const SPECIAL_APP_NAMES = { bugwatch: \"BugWatch\" };\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { Neeto } from \"neetoicons/typeface-logos\";\nimport * as AppIcons from \"neetoicons/typeface-logos\";\nimport { Typography } from \"neetoui\";\n\nimport { SPECIAL_APP_NAMES } from \"./constants\";\nimport \"./product-switcher.scss\";\n\nconst ProductLink = ({\n name,\n description,\n url,\n isHighlighted = false,\n ...props\n}) => {\n const normalizedName = (name || \"\").toLowerCase();\n const specialCase = SPECIAL_APP_NAMES[normalizedName];\n\n const appName = `Neeto${name.charAt(0)}${name.slice(1).toLowerCase()}`;\n\n const AppIcon = specialCase\n ? AppIcons[`Neeto${specialCase}`]\n : AppIcons[appName];\n\n return (\n <a\n data-testid={`${normalizedName}-app-link`}\n href={url}\n rel=\"noreferrer\"\n target=\"_blank\"\n className={classnames(\"neeto-molecules-product-switcher-link\", {\n \"neeto-molecules-product-switcher-link--active\":\n globalProps.appName.includes(name),\n \"neeto-molecules-product-switcher-link--highlighted\": isHighlighted,\n })}\n {...props}\n >\n <div className=\"neeto-molecules-product-switcher-link__icon-holder\">\n {AppIcon ? (\n <AppIcon />\n ) : (\n <Neeto className=\"neeto-molecules-product-switcher-link__icon-default\" />\n )}\n </div>\n <div className=\"neeto-molecules-product-switcher-link__content\">\n <Typography\n className=\"neeto-ui-text-gray-600\"\n component=\"span\"\n style=\"body3\"\n weight=\"normal\"\n >\n {description}\n </Typography>\n </div>\n </a>\n );\n};\n\nexport default memo(ProductLink);\n","import { Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ProductLink from \"./ProductLink\";\n\nconst Content = ({ highlightedIndex, filteredApps, isLoading }) => {\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex items-center justify-center py-8\">\n <Spinner />\n </div>\n );\n }\n\n return filteredApps?.length > 0 ? (\n <div className=\"neeto-molecules-product-switcher__grid\">\n {filteredApps.map((app, index) => (\n <ProductLink\n key={app.name}\n {...app}\n data-highlighted-index={index}\n isHighlighted={index === highlightedIndex}\n />\n ))}\n </div>\n ) : (\n <Typography\n className=\"neeto-ui-text-center\"\n data-testid=\"no-apps-found-title\"\n style=\"body1\"\n >\n {t(\"neetoMolecules.productSwitcher.noApps\")}\n </Typography>\n );\n};\n\nexport default Content;\n","import axios from \"axios\";\n\nconst fetch = () => axios.get(\"/api/v1/neeto_apps\");\n\nconst neetoAppsApi = { fetch };\n\nexport default neetoAppsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport neetoAppsApi from \"../apis/neeto_apps\";\nimport { QUERY_KEYS } from \"../constants\";\n\nconst useFetchNeetoApps = options =>\n useQuery({\n queryKey: [QUERY_KEYS.NEETO_APPS_LIST],\n queryFn: neetoAppsApi.fetch,\n ...options,\n });\n\nexport { useFetchNeetoApps };\n","import { useState, useEffect, useRef } from \"react\";\n\nimport { isNotEmpty } from \"neetocist\";\nimport { isEmpty } from \"ramda\";\n\nconst useProductSwitcherNavigation = (filteredApps = []) => {\n const [highlightedIndex, setHighlightedIndex] = useState(0);\n const scrollContainerRef = useRef(null);\n\n useEffect(() => setHighlightedIndex(0), [filteredApps]);\n\n useEffect(() => {\n if (!scrollContainerRef.current || isEmpty(filteredApps)) return;\n\n const container = scrollContainerRef.current;\n const highlightedElement = container.querySelector(\n `[data-highlighted-index=\"${highlightedIndex}\"]`\n );\n\n if (!highlightedElement) return;\n\n const containerRect = container.getBoundingClientRect();\n const elRect = highlightedElement.getBoundingClientRect();\n\n if (elRect.top < containerRect.top) {\n container.scrollTop += elRect.top - containerRect.top;\n } else if (elRect.bottom > containerRect.bottom) {\n container.scrollTop += elRect.bottom - containerRect.bottom;\n }\n }, [highlightedIndex, filteredApps]);\n\n const getColumnsPerRow = () => {\n const width = window.innerWidth;\n\n if (width < 768) return 1;\n\n if (width < 1024) return 2;\n\n if (width < 1536) return 3;\n\n return 4;\n };\n\n const handleOpenHighlightedApp = () => {\n const app = filteredApps[highlightedIndex];\n if (!app?.url) return;\n\n window.open(app.url, \"_blank\", \"noopener,noreferrer\");\n };\n\n const navigationHandlers = {\n left: prev => (prev === 0 ? filteredApps.length - 1 : prev - 1),\n right: prev => (prev === filteredApps.length - 1 ? 0 : prev + 1),\n up: prev => {\n const columnsPerRow = getColumnsPerRow();\n const newIndex = prev - columnsPerRow;\n if (newIndex >= 0) return newIndex;\n\n const currentCol = prev % columnsPerRow;\n const lastIndex = filteredApps.length - 1;\n\n return lastIndex - ((lastIndex - currentCol) % columnsPerRow);\n },\n down: prev => {\n const columnsPerRow = getColumnsPerRow();\n const newIndex = prev + columnsPerRow;\n if (newIndex < filteredApps.length) return newIndex;\n\n return prev % columnsPerRow;\n },\n };\n\n const keyActions = {\n Enter: handleOpenHighlightedApp,\n ArrowLeft: () => setHighlightedIndex(navigationHandlers[\"left\"]),\n ArrowRight: () => setHighlightedIndex(navigationHandlers[\"right\"]),\n ArrowUp: () => setHighlightedIndex(navigationHandlers[\"up\"]),\n ArrowDown: () => setHighlightedIndex(navigationHandlers[\"down\"]),\n Tab: e =>\n setHighlightedIndex(navigationHandlers[e.shiftKey ? \"left\" : \"right\"]),\n };\n\n const handleKeyDown = e => {\n const action = keyActions[e.key];\n if (!action) return;\n\n e.preventDefault();\n e.stopPropagation();\n\n if (isNotEmpty(filteredApps)) action(e);\n };\n\n return { highlightedIndex, handleKeyDown, scrollContainerRef };\n};\n\nexport default useProductSwitcherNavigation;\n","import { useMemo, useState } from \"react\";\n\nimport classNames from \"classnames\";\nimport { Search } from \"neetoicons\";\nimport { Input, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Content from \"./Content\";\nimport { useFetchNeetoApps } from \"./hooks/useNeetoApps\";\nimport useProductSwitcherNavigation from \"./hooks/useProductSwitcherNavigation\";\nimport \"./product-switcher.scss\";\n\nconst Menu = ({ isMobile = false, initialFocusRef }) => {\n const { t } = useTranslation();\n\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const { data, isLoading } = useFetchNeetoApps();\n\n const substring = searchTerm.replace(/ /g, \"\").toLowerCase();\n\n const filteredApps = useMemo(() => {\n if (!data) return [];\n\n return data?.neetoApps.filter(({ name }) => {\n const nameLower = name.toLowerCase();\n const searchTermLower = substring.toLowerCase();\n\n const isNeetoPrefixMatch =\n searchTermLower.length <= 4 && \"neeto\".startsWith(searchTermLower);\n\n if (isNeetoPrefixMatch) return true;\n\n const productName = searchTermLower.startsWith(\"neeto\")\n ? searchTermLower.replace(\"neeto\", \"\")\n : searchTermLower;\n\n return nameLower.includes(productName);\n });\n }, [data, substring]);\n\n const { highlightedIndex, handleKeyDown, scrollContainerRef } =\n useProductSwitcherNavigation(filteredApps);\n\n return (\n <div\n className=\"neeto-molecules-product-switcher__wrapper\"\n data-testid=\"switcher-wrapper\"\n key=\"switcher-wrapper\"\n >\n <div\n data-testid=\"product-switcher-body-wrapper\"\n className={classNames(\"neeto-molecules-product-switcher__header pt-1\", {\n \"neeto-molecules-product-switcher__header-mobile\": isMobile,\n })}\n >\n {!isMobile && (\n <Typography style=\"h1\">\n {t(\"neetoMolecules.productSwitcher.chooseNeetoProduct\")}\n </Typography>\n )}\n <div className=\"neeto-molecules-product-switcher__search-wrapper\">\n <Input\n autoFocus\n data-testid=\"product-switcher-search-input\"\n placeholder={t(\"neetoMolecules.productSwitcher.searchProducts\")}\n prefix={<Search />}\n ref={initialFocusRef}\n size=\"large\"\n type=\"search\"\n value={searchTerm}\n onChange={e => setSearchTerm(e.target.value)}\n onKeyDown={handleKeyDown}\n />\n </div>\n </div>\n <div\n ref={scrollContainerRef}\n className={classNames(\"neeto-molecules-product-switcher__body\", {\n [\"neeto-molecules-product-switcher__body-mobile\"]: isMobile,\n })}\n >\n <Content {...{ filteredApps, highlightedIndex, isLoading }} />\n </div>\n </div>\n );\n};\n\nexport default Menu;\n","import { useRef } from \"react\";\n\nimport { Modal as NeetoUIModal } from \"neetoui\";\n\nimport Menu from \"./Menu\";\n\nconst Modal = ({ isOpen, onClose }) => {\n const initialFocusRef = useRef(null);\n\n return (\n <NeetoUIModal\n {...{ initialFocusRef, isOpen, onClose }}\n backdropClassName=\"neeto-molecules-product-switcher_modal\"\n size=\"large\"\n >\n <NeetoUIModal.Body>\n <div\n className=\"neeto-molecules-product-switcher_modal-container\"\n data-testid=\"product-switcher-modal\"\n >\n <Menu {...{ initialFocusRef }} />\n </div>\n </NeetoUIModal.Body>\n </NeetoUIModal>\n );\n};\n\nexport default Modal;\n","import { withT } from \"neetocommons/react-utils\";\nimport { Help, Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t, tReady: _tReady, ...otherProps }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-menu-button\"\n prefix={<Help size={18} />}\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n {t(\"neetoMolecules.sidebar.help\")}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Book, ChatQuestions, Community, Status } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown } from \"neetoui\";\nimport { toLower } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MenuButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst HelpMenu = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n closeOnSelect={false}\n customTarget={<MenuButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-help-articles-button\"\n href={`https://help.${toLower(globalProps.appName)}.com/`}\n prefix={<Book size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.helpArticles\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-live-chat-button\"\n prefix={<ChatQuestions size={18} />}\n onClick={() => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n }}\n >\n {t(\"neetoMolecules.sidebar.helpLinks.liveChat\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-community-button\"\n href=\"https://www.launchpass.com/neetohq\"\n prefix={<Community size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.askTheCommunity\")}\n </MenuItem.Button>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"help-link-status-button\"\n href=\"https://neetostatus.com/\"\n prefix={<Status size={18} />}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.helpLinks.systemStatus\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default HelpMenu;\n","import { isNotPresent, isPresent } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst LinkSection = ({ links }) => {\n const { MenuItem } = Dropdown;\n if (isNotPresent(links)) return null;\n\n return (\n <>\n {links.map(({ label, icon: Icon, changesCount, ...otherProps }, idx) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"floating-action-menu-link-section\"\n key={idx}\n prefix={Icon && <Icon size={18} />}\n style=\"text\"\n {...otherProps}\n >\n {label}\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu-list__item-btn-count\"\n data-testid=\"help-section-menu-changes-count\"\n >\n {changesCount}\n </span>\n )}\n </MenuItem.Button>\n ))}\n </>\n );\n};\n\nexport default LinkSection;\n","import axios from \"axios\";\n\nconst fetch = email =>\n axios.get(\"/logged_in_organizations\", { params: { email } });\n\nconst loggedInOrganizationsApi = { fetch };\n\nexport default loggedInOrganizationsApi;\n","export const QUERY_KEYS = {\n LOGGED_IN_ORGANIZATIONS_LIST: \"logged-in-organizations-list\",\n};\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport loggedInOrganizationsApi from \"../../apis/logged_in_organizations.js\";\nimport { QUERY_KEYS } from \"../../constants\";\n\nconst { LOGGED_IN_ORGANIZATIONS_LIST } = QUERY_KEYS;\n\nconst useFetchLoggedInOrganizations = email =>\n useQuery({\n queryKey: [LOGGED_IN_ORGANIZATIONS_LIST],\n queryFn: () => loggedInOrganizationsApi.fetch(email),\n });\n\nexport { useFetchLoggedInOrganizations };\n","import { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"organization-switcher-button\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n {t(\"neetoMolecules.sidebar.organizationSwitcher.label\")}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import classNames from \"classnames\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { CheckCircle } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown, Tag } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { useFetchLoggedInOrganizations } from \"./hooks/reactQuery/useFetchLoggedInOrganizations.js\";\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst OrganizationSwitcher = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const { data: { organizations, authAppUrl } = {} } =\n useFetchLoggedInOrganizations(globalProps?.user?.email);\n\n const isMobile = isSize(\"mobile\");\n\n const isCurrentSubdomain = link => {\n const currentSubdomain = window.location.hostname.split(\".\")[0];\n const linkSubdomain = new URL(link).hostname.split(\".\")[0];\n\n return currentSubdomain === linkSubdomain;\n };\n\n return (\n <NeetoUIDropdown\n className=\"neeto-molecules-organization-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n {organizations?.map(organization => (\n <MenuItem.Button\n href={organization.organizationUrl}\n key={organization.userId}\n rel=\"noreferrer\"\n style=\"text\"\n target=\"_blank\"\n className={classNames({\n \"neeto-molecules-organization-switcher-active-button\":\n isCurrentSubdomain(organization.organizationUrl),\n })}\n >\n {organization.orgName}\n {isCurrentSubdomain(organization.organizationUrl) && (\n <Tag\n icon={() => <CheckCircle size={12} />}\n size=\"small\"\n style=\"primary\"\n type=\"solid\"\n >\n {t(\"neetoMolecules.sidebar.organizationSwitcher.signedin\")}\n </Tag>\n )}\n </MenuItem.Button>\n ))}\n <MenuItem.Button href={authAppUrl} rel=\"noreferrer\" target=\"_blank\">\n {t(\"neetoMolecules.sidebar.organizationSwitcher.addAccount\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default OrganizationSwitcher;\n","import { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nconst MenuButton = ({ ...otherProps }) => {\n const { t } = useTranslation();\n const { MenuItem } = Dropdown;\n\n return (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"product-switcher-button\"\n label={t(\"neetoMolecules.sidebar.productSwitcher\")}\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n {t(\"neetoMolecules.sidebar.productSwitcher\")}\n </MenuItem.Button>\n );\n};\n\nexport default MenuButton;\n","import { Dropdown as NeetoUIDropdown } from \"neetoui\";\n\nimport ProductSwitcherMenu from \"./Menu\";\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst Dropdown = () => (\n <NeetoUIDropdown\n appendTo=\"parent\"\n className=\"neeto-molecules-product-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position=\"right\"\n trigger=\"all\"\n zIndex={99999}\n dropdownProps={{\n classNames: \"neeto-molecules-product-switcher-menu-popup__dropdown\",\n }}\n >\n <Menu>\n <MenuItem>\n <ProductSwitcherMenu />\n </MenuItem>\n </Menu>\n </NeetoUIDropdown>\n);\n\nexport default Dropdown;\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\n\nimport Dropdown from \"./Dropdown\";\nimport MenuButton from \"./MenuButton\";\n\nconst ProductSwitcher = ({ toggleModal }) => {\n const { isSize } = useBreakpoints();\n const isMobile = isSize(\"mobile\");\n\n return isMobile ? (\n <MenuButton onClick={() => toggleModal(true)} />\n ) : (\n <Dropdown />\n );\n};\n\nexport default ProductSwitcher;\n","import { truncate } from \"neetocist\";\nimport { Avatar, Typography } from \"neetoui\";\n\nconst ProfileHeader = ({ profileInfo }) => {\n const { name, email } = profileInfo;\n\n return (\n <span\n className=\"flex w-full min-w-0 items-center gap-2 text-start\"\n data-testid=\"floating-action-menu-profile-header\"\n >\n <Avatar\n data-testid=\"floating-action-menu-header-profile-icon\"\n size=\"medium\"\n user={profileInfo}\n />\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 gap-1\">\n <Typography\n className=\"neeto-ui-m-0\"\n component=\"span\"\n data-testid=\"floating-action-menu-header-user-name\"\n lineHeight=\"tight\"\n style=\"h5\"\n title={name}\n weight=\"semibold\"\n >\n {truncate(name, 18)}\n </Typography>\n {email && (\n <Typography\n className=\"neeto-ui-w-full neeto-ui-truncate neeto-ui-text-gray-500\"\n component=\"span\"\n data-testid=\"floating-action-menu-header-user-email\"\n lineHeight=\"tight\"\n style=\"body3\"\n >\n {email}\n </Typography>\n )}\n </span>\n </span>\n );\n};\n\nexport default ProfileHeader;\n","import { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nimport ProfileHeader from \"../ProfileHeader\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = ({ profileInfo, ...otherProps }) => (\n <MenuItem.Button\n className=\"neeto-molecules-profile-popup\"\n data-testid=\"profile-expand-menu-button\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n {...otherProps}\n >\n <ProfileHeader {...{ profileInfo }} />\n </MenuItem.Button>\n);\n\nexport default MenuButton;\n","import { t } from \"i18next\";\n\nexport const MY_ORGANIZATION_URL = \"/auth/organization/edit\";\nexport const DELETE_WORKSPACE_URL = \"/auth/organization/delete\";\nexport const ENGAGE_WIDGET_TRIGGER_ID = \"neetoengage-trigger\";\n\nexport const DEFAULT_MENU_LINK_PROPS = {\n engageProps: {\n id: ENGAGE_WIDGET_TRIGGER_ID,\n label: t(\"neetoMolecules.sidebar.helpLinks.whatsNew\"),\n \"data-testid\": \"help-link-engage-button\",\n },\n keyboardShortcutProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.keyboardShortcuts\"),\n \"data-testid\": \"help-link-keyboard-shortcut-button\",\n },\n};\n\n// Theme switcher\nexport const APP_THEME_LOCALSTORAGE_KEY = \"appTheme\";\n\nexport const THEMES = {\n LIGHT: \"neeto-ui-theme--light\",\n DARK: \"neeto-ui-theme--dark\",\n};\n\nexport const NEETO_AUTH_BILLING_INFO_URL =\n \"/neeto_sso/api/v1/subscription/billing\";\n","import useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { CloseCircle, User } from \"neetoicons\";\nimport { Profile } from \"neetoteam\";\nimport { Dropdown as NeetoUIDropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport MenuButton from \"./MenuButton\";\n\nimport { DELETE_WORKSPACE_URL } from \"../../constants\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst ProfileExpandMenu = ({ profileInfo }) => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n const [, setIsProfilePaneOpen] = Profile.usePaneState();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n closeOnSelect={false}\n customTarget={<MenuButton {...{ profileInfo }} />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"profile-my-profile-button\"\n prefix={<User size={18} />}\n onClick={() => setIsProfilePaneOpen(true)}\n >\n {t(\"neetoMolecules.sidebar.myProfile\")}\n </MenuItem.Button>\n {window.globalProps?.user?.isOwner && (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-testid=\"profile-cancel-account-button\"\n href={DELETE_WORKSPACE_URL}\n prefix={<CloseCircle size={18} />}\n rel=\"noreferrer\"\n style=\"text\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.cancelAccount\")}\n </MenuItem.Button>\n )}\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default ProfileExpandMenu;\n","import { t } from \"i18next\";\nimport { getFromLocalStorage } from \"neetocommons/utils\";\nimport { resetAuthTokens } from \"neetocommons/utils/axios\";\nimport { removeFromLocalStorage } from \"neetocommons/utils/general\";\nimport { Logout } from \"neetoicons\";\nimport { mergeDeepLeft } from \"ramda\";\n\nimport { THEMES, APP_THEME_LOCALSTORAGE_KEY } from \"./constants\";\n\nconst getSidebarStateLocalStorageKey = () => {\n const user = globalProps.user?.email || globalProps.user?.phoneNumber;\n\n return `sidebarState-${user}`;\n};\n\nconst getUserProfileInfo = () => ({\n name: `${globalProps.user?.firstName ?? \"\"} ${\n globalProps.user?.lastName ?? \"\"\n }`,\n imageUrl: globalProps.authenticated\n ? globalProps.user?.profileImageUrl\n : \"https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg\",\n email: globalProps.user?.email || globalProps.user?.phoneNumber,\n isAuthenticated: globalProps.authenticated,\n});\n\nconst getConsumerProfileInfo = () => ({\n name: `${globalProps.consumer?.firstName ?? \"\"} ${\n globalProps.consumer?.lastName ?? \"\"\n }`,\n imageUrl:\n globalProps.consumer?.profileImageUrl ||\n \"https://d2v7kzglnr2dnh.cloudfront.net/others/profile-pic.jpg\",\n email: globalProps.consumer?.email || globalProps.consumer?.phoneNumber,\n isAuthenticated: globalProps.isConsumer,\n});\n\nexport const getDefaultBottomLinks = (isAuthenticated, isConsumer) => [\n isAuthenticated\n ? {\n label: t(\"neetoMolecules.sidebar.logout\"),\n icon: Logout,\n onClick: () => {\n resetAuthTokens();\n removeFromLocalStorage(getSidebarStateLocalStorageKey());\n isConsumer\n ? (window.location.href = `/consumers/logout?redirect_uri=${window.location.href}`)\n : (window.location.href = \"/logout\");\n },\n \"data-testid\": \"profile-logout-button\",\n }\n : {\n label: t(\"neetoMolecules.sidebar.login\"),\n onClick: () => {\n window.location.href = \"/login\";\n },\n \"data-testid\": \"profile-login-button\",\n },\n];\n\nexport const getProfileInfo = (profileInfoOverrides, isConsumer) =>\n mergeDeepLeft(\n profileInfoOverrides,\n isConsumer ? getConsumerProfileInfo() : getUserProfileInfo()\n );\n\n// Theme switcher utils.\nexport const setDarkTheme = () => {\n if (!document.body) return;\n\n document.body.classList.remove(THEMES.LIGHT);\n document.body.classList.add(THEMES.DARK);\n};\n\nexport const setLightTheme = () => {\n if (!document.body) return;\n\n document.body.classList.remove(THEMES.DARK);\n document.body.classList.add(THEMES.LIGHT);\n};\n\nexport const setAppTheme = () => {\n const isDarkTheme =\n getFromLocalStorage(APP_THEME_LOCALSTORAGE_KEY) === THEMES.DARK;\n isDarkTheme ? setDarkTheme() : setLightTheme();\n};\n","import classNames from \"classnames\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Moon, Sun } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport {\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES,\n} from \"components/FloatingActionMenu/constants\";\nimport {\n setDarkTheme,\n setLightTheme,\n} from \"components/FloatingActionMenu/utils\";\n\nconst { MenuItem } = Dropdown;\n\nconst ThemeSwitcher = () => {\n const { t } = useTranslation();\n\n const [appTheme, setAppTheme] = useLocalStorage(\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES.LIGHT\n );\n const isDarkThemeSelected = appTheme === THEMES.DARK;\n\n const switchTheme = theme => {\n theme === THEMES.LIGHT ? setLightTheme() : setDarkTheme();\n setAppTheme(theme);\n };\n\n return (\n <MenuItem className=\"neeto-molecules-theme-switcher flex items-center justify-between gap-2 px-5 py-3\">\n <div className=\"neeto-molecules-theme-switcher__label\">\n {t(\"neetoMolecules.sidebar.themeSwitcher.label\")}\n </div>\n <div\n className=\"neeto-molecules-theme-switcher__segmented-control\"\n data-testid=\"theme-switcher-button\"\n >\n <button\n data-testid=\"theme-switcher-light-button\"\n type=\"button\"\n className={classNames(\"neeto-molecules-theme-switcher__option\", {\n \"neeto-molecules-theme-switcher__option--active\":\n !isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.LIGHT)}\n >\n <Sun size={18} />\n {t(\"neetoMolecules.sidebar.themeSwitcher.light\")}\n </button>\n <button\n data-testid=\"theme-switcher-dark-button\"\n type=\"button\"\n className={classNames(\"neeto-molecules-theme-switcher__option\", {\n \"neeto-molecules-theme-switcher__option--active\":\n isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.DARK)}\n >\n <Moon size={18} />\n {t(\"neetoMolecules.sidebar.themeSwitcher.dark\")}\n </button>\n </div>\n </MenuItem>\n );\n};\n\nexport default ThemeSwitcher;\n","import { globalProps } from \"neetocommons/initializers\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown, Typography } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t }) => (\n <MenuItem.Button\n className=\"neeto-molecules-workspace-display\"\n data-testid=\"workspace-display\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n <span className=\"neeto-molecules-workspace-display__content flex flex-col gap-1.5 text-start\">\n <Typography\n className=\"neeto-molecules-workspace-display__label\"\n component=\"span\"\n style=\"body2\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.sidebar.workspace\")}\n </Typography>\n {globalProps.organization?.name && (\n <Typography\n className=\"neeto-molecules-workspace-display__name neeto-ui-text-gray-500\"\n component=\"span\"\n style=\"body3\"\n >\n {globalProps.organization.name}\n </Typography>\n )}\n </span>\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import { globalProps } from \"neetocommons/initializers\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport { Dropdown as NeetoUIDropdown, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport MenuItemButton from \"./MenuButton\";\n\nimport { MY_ORGANIZATION_URL } from \"../../constants\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst WorkspaceMenu = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const isMobile = isSize(\"mobile\");\n\n return (\n <NeetoUIDropdown\n className=\"neeto-molecules-organization-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton />}\n interactiveDebounce={30}\n offset={[0, 5]}\n position={isMobile ? \"bottom\" : \"right\"}\n trigger=\"all\"\n zIndex={99999}\n >\n <Menu>\n <MenuItem.Button\n data-testid=\"profile-organization-settings-button\"\n href={MY_ORGANIZATION_URL}\n rel=\"noreferrer\"\n target=\"_blank\"\n >\n {t(\"neetoMolecules.sidebar.workspaceMenu.settings\")}\n </MenuItem.Button>\n {globalProps.organization?.subdomain && (\n <MenuItem className=\"px-6 py-2\">\n <span className=\"neeto-molecules-workspace-display__content flex flex-col gap-0.5 text-start\">\n <Typography\n className=\"neeto-molecules-workspace-display__label\"\n component=\"span\"\n style=\"body2\"\n weight=\"medium\"\n >\n {t(\"neetoMolecules.sidebar.workspaceMenu.subdomain\")}\n </Typography>\n <Typography\n className=\"neeto-molecules-workspace-display__name neeto-ui-text-gray-500 flex items-center gap-1\"\n component=\"span\"\n style=\"body3\"\n >\n <span className=\"min-w-0 truncate\">\n {globalProps.organization.subdomain}\n </span>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={globalProps.organization.subdomain}\n />\n </Typography>\n </span>\n </MenuItem>\n )}\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default WorkspaceMenu;\n","import classnames from \"classnames\";\nimport { isPresent, humanize, isNotEmpty } from \"neetocist\";\nimport { Crown } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport HelpMenu from \"./HelpMenu\";\nimport LinkSection from \"./LinkSection\";\nimport OrganizationSwitcher from \"./OrganizationSwitcher\";\nimport ProductSwitcherMenu from \"./ProductSwitcher\";\nimport ProfileExpandMenu from \"./ProfileExpandMenu\";\nimport ThemeSwitcher from \"./ThemeSwitcher\";\nimport WorkspaceMenu from \"./WorkspaceMenu\";\n\nimport { NEETO_AUTH_BILLING_INFO_URL } from \"../constants\";\n\nconst ProfileMenu = ({\n profileInfo,\n showProductSwitcher,\n defaultLinks,\n topLinks,\n bottomLinks,\n customContent,\n toggleModal,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n isConsumer,\n enableSubscriptionUpgradeRequest,\n openUpgradeModal,\n}) => {\n const { Menu, MenuItem, Divider } = Dropdown;\n const { isAuthenticated } = profileInfo;\n const { t } = useTranslation();\n\n const normalizedPlan = (\n globalProps.user?.subscriptionPlan || \"\"\n ).toLowerCase();\n\n const isFreePlan = normalizedPlan === \"free\";\n const isOwner = globalProps.user?.isOwner;\n const showUpgradeModal =\n isFreePlan && enableSubscriptionUpgradeRequest && !isOwner;\n\n const getSubscriptionPlanAction = () => {\n if (showUpgradeModal) return { onClick: openUpgradeModal };\n\n if (isFreePlan && isOwner && enableSubscriptionUpgradeRequest) {\n return {\n href: `${globalProps.organization?.authAppUrl}/admin/billing/overview`,\n };\n }\n\n return { href: NEETO_AUTH_BILLING_INFO_URL };\n };\n\n const subscriptionPlanLink = {\n label: (\n <>\n {globalProps.appName}{\" \"}\n <span\n className={classnames(\n \"neeto-molecules-subscription-plan-badge flex items-center gap-1\",\n {\n \"neeto-molecules-subscription-plan-badge--pro\":\n normalizedPlan === \"pro\",\n \"neeto-molecules-subscription-plan-badge--free\": isFreePlan,\n }\n )}\n >\n {normalizedPlan === \"pro\" ? (\n humanize(globalProps.user?.subscriptionPlan)\n ) : (\n <>\n <Crown size={12} />\n {t(\"neetoMolecules.sidebar.upgradePlan\")}\n </>\n )}\n </span>\n </>\n ),\n \"data-testid\": \"subscription-plan\",\n ...getSubscriptionPlanAction(),\n };\n\n return (\n <Menu className=\"pb-1\">\n {!isConsumer && (\n <>\n <LinkSection links={defaultLinks} />\n {isNotEmpty(topLinks) && (\n <>\n <Divider />\n <LinkSection links={topLinks} />\n </>\n )}\n {isPresent(customContent) && (\n <>\n <Divider />\n <MenuItem className=\"neeto-molecules-floating-action-button__profile-wrapper-custom-content\">\n {customContent}\n </MenuItem>\n </>\n )}\n <Divider />\n {globalProps.user?.isOwner && <WorkspaceMenu />}\n {isOrganizationSwitcherEnabled && <OrganizationSwitcher />}\n <Divider />\n {isPresent(globalProps.user?.subscriptionPlan) && (\n <LinkSection links={[subscriptionPlanLink]} />\n )}\n {showProductSwitcher && <ProductSwitcherMenu {...{ toggleModal }} />}\n <HelpMenu />\n <Divider />\n </>\n )}\n {isAuthenticated && !isConsumer && (\n <ProfileExpandMenu {...{ profileInfo }} />\n )}\n <LinkSection links={bottomLinks} />\n {isThemeSwitcherEnabled && (\n <>\n <Divider />\n <ThemeSwitcher />\n </>\n )}\n </Menu>\n );\n};\n\nexport default ProfileMenu;\n","import { useEffect, useState } from \"react\";\n\nimport { isPresent, noop } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Help } from \"neetoicons\";\nimport { Profile } from \"neetoteam\";\nimport { Avatar, Dropdown } from \"neetoui\";\nimport { not } from \"ramda\";\n\nimport KeyboardShortcuts from \"components/KeyboardShortcuts\";\nimport SubscriptionUpgradeRequestModal from \"components/SubscriptionUpgradeRequestModal\";\n\nimport ProductSwitcherModal from \"./ProductSwitcher/Modal\";\nimport ProfileMenu from \"./ProfileMenu\";\n\nimport { DEFAULT_MENU_LINK_PROPS } from \"../constants\";\nimport { getDefaultBottomLinks, getProfileInfo } from \"../utils\";\n\nconst ProfileButton = ({\n profileInfoOverrides,\n showProductSwitcher,\n bottomLinks,\n topLinks,\n customContent,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n profilePopoverProps,\n isConsumer,\n enableSubscriptionUpgradeRequest,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const [isUpgradeModalOpen, setIsUpgradeModalOpen] = useState(false);\n const [isBackdropVisible, setIsBackdropVisible] = useState(false);\n const [changesCount, setChangesCount] = useState(null);\n\n const [, setIsOpen] = KeyboardShortcuts.usePaneState();\n\n useHotkeys([\"ctrl+u\", \"command+u\"], () => setIsModalOpen(not), {\n mode: \"global\",\n });\n\n const profileInfo = getProfileInfo(profileInfoOverrides, isConsumer);\n\n useEffect(() => {\n const Nv = {\n onReceiveData: data => {\n if (!data.unreadCount) return;\n setChangesCount(data.unreadCount);\n },\n onShow: () => {\n setChangesCount(null);\n },\n };\n\n window.Nv = window.Nv ? Object.assign(window.Nv, Nv) : Nv;\n }, []);\n\n const newBottomLinks = [\n ...getDefaultBottomLinks(profileInfo.isAuthenticated, isConsumer),\n ...bottomLinks,\n ];\n\n const defaultLinks = Object.keys(DEFAULT_MENU_LINK_PROPS)\n .map(key => ({\n ...DEFAULT_MENU_LINK_PROPS[key],\n ...(key === \"keyboardShortcutProps\" && {\n onClick: () => setIsOpen(prev => !prev),\n }),\n ...(key === \"engageProps\" && changesCount && { changesCount }),\n }))\n .filter(({ hide }) => !hide);\n\n return (\n <>\n <Profile.Pane popoverProps={profilePopoverProps} />\n {isBackdropVisible && (\n <div className=\"neeto-molecules-floating-action-button__backdrop\" />\n )}\n <Dropdown\n appendTo={() => document.body}\n buttonStyle=\"link\"\n closeOnSelect={false}\n icon={noop}\n interactiveDebounce={30}\n offset={[4, 4]}\n position=\"right-end\"\n strategy=\"fixed\"\n theme=\"light neeto-molecules-floating-action-outer-dropdown-wrapper\"\n trigger=\"all\"\n zIndex={99999}\n customTarget={\n <button\n className=\"neeto-molecules-floating-action-button\"\n type=\"button\"\n >\n <Avatar\n className=\"neeto-ui-flex-shrink-0 neeto-molecules-floating-action-button__profile-avatar\"\n data-testid=\"profile-avatar\"\n size=\"medium\"\n user={profileInfo}\n />\n <span className=\"neeto-molecules-floating-action-button__help-icon\">\n <Help size={20} />\n </span>\n </button>\n }\n dropdownProps={{\n classNames: \"neeto-molecules-floating-action-button__dropdown\",\n }}\n onHide={() => setIsBackdropVisible(false)}\n onShow={() => setIsBackdropVisible(true)}\n >\n <ProfileMenu\n {...{\n customContent,\n defaultLinks,\n enableSubscriptionUpgradeRequest,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfo,\n showProductSwitcher,\n topLinks,\n }}\n bottomLinks={newBottomLinks}\n openUpgradeModal={() => setIsUpgradeModalOpen(true)}\n toggleModal={setIsModalOpen}\n />\n </Dropdown>\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu__notif-count\"\n data-testid=\"help-icon-changes-count\"\n >\n {changesCount}\n </span>\n )}\n <ProductSwitcherModal\n isOpen={isModalOpen}\n onClose={() => setIsModalOpen(false)}\n />\n {enableSubscriptionUpgradeRequest && !globalProps.user?.isOwner && (\n <SubscriptionUpgradeRequestModal\n isOpen={isUpgradeModalOpen}\n onClose={() => setIsUpgradeModalOpen(false)}\n />\n )}\n </>\n );\n};\n\nexport default ProfileButton;\n","import { forwardRef, useEffect } from \"react\";\n\nimport { globalProps } from \"neetocommons/initializers\";\nimport PropTypes from \"prop-types\";\n\nimport ProfileButton from \"./components/ProfileButton\";\nimport \"./floating-action-menu.scss\";\nimport { setAppTheme } from \"./utils\";\n\nconst FloatingActionMenu = forwardRef(\n (\n {\n profileInfoOverrides = {},\n topLinks = [],\n bottomLinks = [],\n showProductSwitcher = true,\n isThemeSwitcherEnabled = false,\n isOrganizationSwitcherEnabled = false,\n customContent,\n profilePopoverProps = {},\n isConsumer = false,\n enableSubscriptionUpgradeRequest = true,\n ...otherProps\n },\n ref\n ) => {\n useEffect(() => {\n isThemeSwitcherEnabled && setAppTheme();\n }, []);\n\n const isBigBinaryEmail =\n globalProps?.user?.email?.endsWith(\"@bigbinary.com\");\n\n return (\n <div\n {...{ ref }}\n className=\"neeto-molecules-floating-action-menu__container\"\n data-testid=\"floating-action-menu-container\"\n {...otherProps}\n >\n <ProfileButton\n {...{\n bottomLinks,\n customContent,\n enableSubscriptionUpgradeRequest,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfoOverrides,\n profilePopoverProps,\n showProductSwitcher,\n topLinks,\n }}\n isOrganizationSwitcherEnabled={\n isBigBinaryEmail || isOrganizationSwitcherEnabled\n }\n />\n </div>\n );\n }\n);\n\nFloatingActionMenu.displayName = \"FloatingActionMenu\";\n\nFloatingActionMenu.propTypes = {\n /**\n * To specify the profile info to be rendered in the menu\n */\n profileInfoOverrides: PropTypes.shape({\n name: PropTypes.string,\n email: PropTypes.string,\n imageUrl: PropTypes.string,\n }),\n /**\n * Custom content to be rendered in the menu between the top and bottom links if any\n */\n customContent: PropTypes.element,\n /**\n * Any extra links to be rendered at the top of the menu.\n */\n topLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n /**\n * Any extra links to be rendered at the bottom of the menu.\n */\n bottomLinks: PropTypes.arrayOf(\n PropTypes.shape({\n onClick: PropTypes.func,\n label: PropTypes.string,\n icon: PropTypes.oneOfType([PropTypes.element, PropTypes.func]),\n })\n ),\n /**\n * To display the consumer profile info in the menu.\n */\n isConsumer: PropTypes.bool,\n /**\n * To display the product switcher menu option.\n */\n showProductSwitcher: PropTypes.bool,\n /**\n * To display the app theme switcher above the user profile.\n If this prop is set to `true`, it will set the last selected\n theme to the app when the component is mounted.\n */\n isThemeSwitcherEnabled: PropTypes.bool,\n /**\n * To display the organization switcher above the user profile.\n If this prop is set to `true`, it lists all the logged in\n organizations for the current user.\n */\n isOrganizationSwitcherEnabled: PropTypes.bool,\n /**\n * When true, free-plan users see a modal to request a Pro upgrade\n * instead of being redirected to the billing page.\n */\n enableSubscriptionUpgradeRequest: PropTypes.bool,\n /**\n * To show help icon popover for preferred date format, preferred time format and time zone.\n */\n profilePopoverProps: PropTypes.shape({\n preferredDateFormat: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n preferredTimeFormat: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n timeZone: PropTypes.shape({\n title: PropTypes.string,\n description: PropTypes.oneOfType([PropTypes.string, PropTypes.element]),\n helpLinkProps: PropTypes.shape({\n label: PropTypes.string,\n href: PropTypes.string,\n }),\n }),\n }),\n};\n\nexport default FloatingActionMenu;\n"],"names":["QUERY_KEYS","NEETO_APPS_LIST","SPECIAL_APP_NAMES","bugwatch","ProductLink","_ref","name","description","url","_ref$isHighlighted","isHighlighted","props","_objectWithoutProperties","_excluded","normalizedName","toLowerCase","specialCase","appName","concat","charAt","slice","AppIcon","AppIcons","_jsxs","_objectSpread","href","rel","target","className","classnames","globalProps","includes","children","_jsx","Neeto","Typography","component","style","weight","memo","Content","highlightedIndex","filteredApps","isLoading","_useTranslation","useTranslation","t","Spinner","length","map","app","index","fetch","axios","get","neetoAppsApi","useFetchNeetoApps","options","useQuery","queryKey","queryFn","useProductSwitcherNavigation","arguments","undefined","_useState","useState","_useState2","_slicedToArray","setHighlightedIndex","scrollContainerRef","useRef","useEffect","current","isEmpty","container","highlightedElement","querySelector","containerRect","getBoundingClientRect","elRect","top","scrollTop","bottom","getColumnsPerRow","width","window","innerWidth","handleOpenHighlightedApp","open","navigationHandlers","left","prev","right","up","columnsPerRow","newIndex","currentCol","lastIndex","down","keyActions","Enter","ArrowLeft","ArrowRight","ArrowUp","ArrowDown","Tab","e","shiftKey","handleKeyDown","action","key","preventDefault","stopPropagation","isNotEmpty","Menu","_ref$isMobile","isMobile","initialFocusRef","searchTerm","setSearchTerm","_useFetchNeetoApps","data","substring","replace","useMemo","neetoApps","filter","_ref2","nameLower","searchTermLower","isNeetoPrefixMatch","startsWith","productName","_useProductSwitcherNa","classNames","Input","autoFocus","placeholder","prefix","Search","ref","size","type","value","onChange","onKeyDown","_defineProperty","Modal","isOpen","onClose","NeetoUIModal","backdropClassName","Body","MenuItem","Dropdown","MenuButton","withT","tReady","otherProps","Button","Help","suffix","Right","NeetoUIDropdown","HelpMenu","_useBreakpoints","useBreakpoints","isSize","closeOnSelect","customTarget","interactiveDebounce","offset","position","trigger","zIndex","toLower","Book","ChatQuestions","onClick","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","Community","Status","LinkSection","links","isNotPresent","_Fragment","idx","label","Icon","icon","changesCount","isPresent","email","params","loggedInOrganizationsApi","LOGGED_IN_ORGANIZATIONS_LIST","useFetchLoggedInOrganizations","OrganizationSwitcher","_globalProps$user","_useFetchLoggedInOrga","user","_useFetchLoggedInOrga2","_useFetchLoggedInOrga3","organizations","authAppUrl","isCurrentSubdomain","link","currentSubdomain","location","hostname","split","linkSubdomain","URL","MenuItemButton","organization","organizationUrl","orgName","Tag","CheckCircle","userId","Object","assign","_objectDestructuringEmpty","appendTo","dropdownProps","ProductSwitcherMenu","ProductSwitcher","toggleModal","ProfileHeader","profileInfo","Avatar","lineHeight","title","truncate","MY_ORGANIZATION_URL","DELETE_WORKSPACE_URL","ENGAGE_WIDGET_TRIGGER_ID","DEFAULT_MENU_LINK_PROPS","engageProps","id","keyboardShortcutProps","APP_THEME_LOCALSTORAGE_KEY","THEMES","LIGHT","DARK","NEETO_AUTH_BILLING_INFO_URL","ProfileExpandMenu","_window$globalProps","_Profile$usePaneState","Profile","usePaneState","_Profile$usePaneState2","setIsProfilePaneOpen","User","isOwner","CloseCircle","getSidebarStateLocalStorageKey","_globalProps$user2","phoneNumber","getUserProfileInfo","_globalProps$user$fir","_globalProps$user3","_globalProps$user$las","_globalProps$user4","_globalProps$user5","_globalProps$user6","_globalProps$user7","firstName","lastName","imageUrl","authenticated","profileImageUrl","isAuthenticated","getConsumerProfileInfo","_globalProps$consumer","_globalProps$consumer2","_globalProps$consumer3","_globalProps$consumer4","_globalProps$consumer5","_globalProps$consumer6","_globalProps$consumer7","consumer","isConsumer","getDefaultBottomLinks","Logout","resetAuthTokens","removeFromLocalStorage","getProfileInfo","profileInfoOverrides","mergeDeepLeft","setDarkTheme","document","body","classList","remove","add","setLightTheme","setAppTheme","isDarkTheme","getFromLocalStorage","ThemeSwitcher","_useLocalStorage","useLocalStorage","_useLocalStorage2","appTheme","isDarkThemeSelected","switchTheme","theme","Sun","Moon","_globalProps$organiza","WorkspaceMenu","subdomain","CopyToClipboardButton","ProfileMenu","showProductSwitcher","defaultLinks","topLinks","bottomLinks","customContent","isThemeSwitcherEnabled","isOrganizationSwitcherEnabled","enableSubscriptionUpgradeRequest","openUpgradeModal","Divider","normalizedPlan","subscriptionPlan","isFreePlan","showUpgradeModal","getSubscriptionPlanAction","subscriptionPlanLink","humanize","Crown","ProfileButton","profilePopoverProps","isModalOpen","setIsModalOpen","_useState3","_useState4","isUpgradeModalOpen","setIsUpgradeModalOpen","_useState5","_useState6","isBackdropVisible","setIsBackdropVisible","_useState7","_useState8","setChangesCount","_KeyboardShortcuts$us","KeyboardShortcuts","_KeyboardShortcuts$us2","setIsOpen","useHotkeys","not","mode","Nv","onReceiveData","unreadCount","onShow","newBottomLinks","_toConsumableArray","keys","hide","Pane","popoverProps","buttonStyle","noop","strategy","onHide","ProductSwitcherModal","SubscriptionUpgradeRequestModal","FloatingActionMenu","forwardRef","_ref$profileInfoOverr","_ref$topLinks","_ref$bottomLinks","_ref$showProductSwitc","_ref$isThemeSwitcherE","_ref$isOrganizationSw","_ref$profilePopoverPr","_ref$isConsumer","_ref$enableSubscripti","isBigBinaryEmail","endsWith","displayName"],"mappings":"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"}
@@ -124,9 +124,8 @@ var DragHandle = function DragHandle(props) {
124
124
  "data-testid": "drag-handle"
125
125
  }, props), {}, {
126
126
  children: /*#__PURE__*/jsxRuntime.jsx(Drag, {
127
- className: "neeto-ui-text-gray-400",
128
- size: 16,
129
- strokeWidth: 2
127
+ className: "neeto-ui-text-gray-400 hover:neeto-ui-text-gray-500 transition-all duration-300 ease-in-out",
128
+ size: 16
130
129
  })
131
130
  }));
132
131
  };
@@ -935,9 +934,10 @@ var BlockOption = reactUtils.withT(function (_ref) {
935
934
  ref: innerRef
936
935
  }, draggableProps), dragHandleProps), {}, {
937
936
  children: /*#__PURE__*/jsxRuntime.jsxs("div", {
938
- className: "neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded-sm shadow-xs group relative mb-2 flex h-10 cursor-pointer items-center gap-2 border p-3 transition-colors duration-300 ease-in-out",
937
+ className: "neeto-ui-border-gray-400 hover:neeto-ui-bg-gray-200 neeto-ui-rounded group relative mb-2 ml-3 flex h-10 cursor-pointer items-center gap-2 border p-3 shadow-xs transition-colors duration-300 ease-in-out",
939
938
  "data-testid": "address-field-block",
940
939
  children: [isDraggable && /*#__PURE__*/jsxRuntime.jsx(DragHandle, _objectSpread$2(_objectSpread$2({}, dragHandleProps), {}, {
940
+ className: "absolute top-1/2 -left-0.5 -translate-x-full -translate-y-1/2",
941
941
  "data-testid": "drag-handle-".concat(optionIndex)
942
942
  })), isCheckboxEnabled && /*#__PURE__*/jsxRuntime.jsx(Checkbox, {
943
943
  name: name,