@bigbinary/neeto-molecules 4.0.89 → 4.0.91
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/AuditLogs.js +1 -1
- package/dist/CalendarView.js +1 -1
- package/dist/{Columns-Bs-Y6jgW.js → Columns-CsOYfWFt.js} +2 -2
- package/dist/Columns-CsOYfWFt.js.map +1 -0
- package/dist/Columns.js +1 -1
- package/dist/FloatingActionMenu.js +4 -0
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/SubHeader.js +1 -1
- package/dist/Taxonomy.js +1 -1
- package/dist/cjs/AuditLogs.js +1 -1
- package/dist/cjs/CalendarView.js +1 -1
- package/dist/cjs/{Columns-DvL5p9SR.js → Columns-DHPNrFgq.js} +2 -2
- package/dist/cjs/Columns-DHPNrFgq.js.map +1 -0
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/FloatingActionMenu.js +4 -0
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/SubHeader.js +1 -1
- package/dist/cjs/Taxonomy.js +1 -1
- package/package.json +1 -1
- package/dist/Columns-Bs-Y6jgW.js.map +0 -1
- package/dist/cjs/Columns-DvL5p9SR.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Columns-DHPNrFgq.js","sources":["../../node_modules/@dnd-kit/utilities/dist/utilities.esm.js","../../src/components/Columns/Item.jsx","../../src/components/Columns/api.js","../../src/components/Columns/constants.js","../../src/components/Columns/useTableConfigurationsApi.js","../../src/components/Columns/useTableConfigurations.js","../../src/components/Columns/utils.js","../../src/components/Columns/Columns.jsx"],"sourcesContent":["import { useMemo, useLayoutEffect, useEffect, useRef, useCallback } from 'react';\n\nfunction useCombinedRefs() {\n for (var _len = arguments.length, refs = new Array(_len), _key = 0; _key < _len; _key++) {\n refs[_key] = arguments[_key];\n }\n\n return useMemo(() => node => {\n refs.forEach(ref => ref(node));\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n refs);\n}\n\n// https://github.com/facebook/react/blob/master/packages/shared/ExecutionEnvironment.js\nconst canUseDOM = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined';\n\nfunction isWindow(element) {\n const elementString = Object.prototype.toString.call(element);\n return elementString === '[object Window]' || // In Electron context the Window object serializes to [object global]\n elementString === '[object global]';\n}\n\nfunction isNode(node) {\n return 'nodeType' in node;\n}\n\nfunction getWindow(target) {\n var _target$ownerDocument, _target$ownerDocument2;\n\n if (!target) {\n return window;\n }\n\n if (isWindow(target)) {\n return target;\n }\n\n if (!isNode(target)) {\n return window;\n }\n\n return (_target$ownerDocument = (_target$ownerDocument2 = target.ownerDocument) == null ? void 0 : _target$ownerDocument2.defaultView) != null ? _target$ownerDocument : window;\n}\n\nfunction isDocument(node) {\n const {\n Document\n } = getWindow(node);\n return node instanceof Document;\n}\n\nfunction isHTMLElement(node) {\n if (isWindow(node)) {\n return false;\n }\n\n return node instanceof getWindow(node).HTMLElement;\n}\n\nfunction isSVGElement(node) {\n return node instanceof getWindow(node).SVGElement;\n}\n\nfunction getOwnerDocument(target) {\n if (!target) {\n return document;\n }\n\n if (isWindow(target)) {\n return target.document;\n }\n\n if (!isNode(target)) {\n return document;\n }\n\n if (isDocument(target)) {\n return target;\n }\n\n if (isHTMLElement(target) || isSVGElement(target)) {\n return target.ownerDocument;\n }\n\n return document;\n}\n\n/**\r\n * A hook that resolves to useEffect on the server and useLayoutEffect on the client\r\n * @param callback {function} Callback function that is invoked when the dependencies of the hook change\r\n */\n\nconst useIsomorphicLayoutEffect = canUseDOM ? useLayoutEffect : useEffect;\n\nfunction useEvent(handler) {\n const handlerRef = useRef(handler);\n useIsomorphicLayoutEffect(() => {\n handlerRef.current = handler;\n });\n return useCallback(function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return handlerRef.current == null ? void 0 : handlerRef.current(...args);\n }, []);\n}\n\nfunction useInterval() {\n const intervalRef = useRef(null);\n const set = useCallback((listener, duration) => {\n intervalRef.current = setInterval(listener, duration);\n }, []);\n const clear = useCallback(() => {\n if (intervalRef.current !== null) {\n clearInterval(intervalRef.current);\n intervalRef.current = null;\n }\n }, []);\n return [set, clear];\n}\n\nfunction useLatestValue(value, dependencies) {\n if (dependencies === void 0) {\n dependencies = [value];\n }\n\n const valueRef = useRef(value);\n useIsomorphicLayoutEffect(() => {\n if (valueRef.current !== value) {\n valueRef.current = value;\n }\n }, dependencies);\n return valueRef;\n}\n\nfunction useLazyMemo(callback, dependencies) {\n const valueRef = useRef();\n return useMemo(() => {\n const newValue = callback(valueRef.current);\n valueRef.current = newValue;\n return newValue;\n }, // eslint-disable-next-line react-hooks/exhaustive-deps\n [...dependencies]);\n}\n\nfunction useNodeRef(onChange) {\n const onChangeHandler = useEvent(onChange);\n const node = useRef(null);\n const setNodeRef = useCallback(element => {\n if (element !== node.current) {\n onChangeHandler == null ? void 0 : onChangeHandler(element, node.current);\n }\n\n node.current = element;\n }, //eslint-disable-next-line\n []);\n return [node, setNodeRef];\n}\n\nfunction usePrevious(value) {\n const ref = useRef();\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref.current;\n}\n\nlet ids = {};\nfunction useUniqueId(prefix, value) {\n return useMemo(() => {\n if (value) {\n return value;\n }\n\n const id = ids[prefix] == null ? 0 : ids[prefix] + 1;\n ids[prefix] = id;\n return prefix + \"-\" + id;\n }, [prefix, value]);\n}\n\nfunction createAdjustmentFn(modifier) {\n return function (object) {\n for (var _len = arguments.length, adjustments = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n adjustments[_key - 1] = arguments[_key];\n }\n\n return adjustments.reduce((accumulator, adjustment) => {\n const entries = Object.entries(adjustment);\n\n for (const [key, valueAdjustment] of entries) {\n const value = accumulator[key];\n\n if (value != null) {\n accumulator[key] = value + modifier * valueAdjustment;\n }\n }\n\n return accumulator;\n }, { ...object\n });\n };\n}\n\nconst add = /*#__PURE__*/createAdjustmentFn(1);\nconst subtract = /*#__PURE__*/createAdjustmentFn(-1);\n\nfunction hasViewportRelativeCoordinates(event) {\n return 'clientX' in event && 'clientY' in event;\n}\n\nfunction isKeyboardEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n KeyboardEvent\n } = getWindow(event.target);\n return KeyboardEvent && event instanceof KeyboardEvent;\n}\n\nfunction isTouchEvent(event) {\n if (!event) {\n return false;\n }\n\n const {\n TouchEvent\n } = getWindow(event.target);\n return TouchEvent && event instanceof TouchEvent;\n}\n\n/**\r\n * Returns the normalized x and y coordinates for mouse and touch events.\r\n */\n\nfunction getEventCoordinates(event) {\n if (isTouchEvent(event)) {\n if (event.touches && event.touches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.touches[0];\n return {\n x,\n y\n };\n } else if (event.changedTouches && event.changedTouches.length) {\n const {\n clientX: x,\n clientY: y\n } = event.changedTouches[0];\n return {\n x,\n y\n };\n }\n }\n\n if (hasViewportRelativeCoordinates(event)) {\n return {\n x: event.clientX,\n y: event.clientY\n };\n }\n\n return null;\n}\n\nconst CSS = /*#__PURE__*/Object.freeze({\n Translate: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n x,\n y\n } = transform;\n return \"translate3d(\" + (x ? Math.round(x) : 0) + \"px, \" + (y ? Math.round(y) : 0) + \"px, 0)\";\n }\n\n },\n Scale: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n const {\n scaleX,\n scaleY\n } = transform;\n return \"scaleX(\" + scaleX + \") scaleY(\" + scaleY + \")\";\n }\n\n },\n Transform: {\n toString(transform) {\n if (!transform) {\n return;\n }\n\n return [CSS.Translate.toString(transform), CSS.Scale.toString(transform)].join(' ');\n }\n\n },\n Transition: {\n toString(_ref) {\n let {\n property,\n duration,\n easing\n } = _ref;\n return property + \" \" + duration + \"ms \" + easing;\n }\n\n }\n});\n\nconst SELECTOR = 'a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]';\nfunction findFirstFocusableNode(element) {\n if (element.matches(SELECTOR)) {\n return element;\n }\n\n return element.querySelector(SELECTOR);\n}\n\nexport { CSS, add, canUseDOM, findFirstFocusableNode, getEventCoordinates, getOwnerDocument, getWindow, hasViewportRelativeCoordinates, isDocument, isHTMLElement, isKeyboardEvent, isNode, isSVGElement, isTouchEvent, isWindow, subtract, useCombinedRefs, useEvent, useInterval, useIsomorphicLayoutEffect, useLatestValue, useLazyMemo, useNodeRef, usePrevious, useUniqueId };\n//# sourceMappingURL=utilities.esm.js.map\n","import { useSortable } from \"@dnd-kit/sortable\";\nimport { CSS } from \"@dnd-kit/utilities\";\nimport classNames from \"classnames\";\nimport { Reorder } from \"neetoicons\";\nimport { Checkbox, Label } from \"neetoui\";\n\nconst Item = ({\n column,\n hiddenColumns,\n checkboxProps,\n onToggle,\n isTableConfigurationFetching,\n}) => {\n const { key, title } = column;\n const {\n attributes,\n listeners,\n setNodeRef,\n transform,\n transition,\n isDragging,\n isOver,\n over,\n active,\n } = useSortable({ id: key });\n\n const dragStyle = {\n transform: isDragging ? CSS.Transform.toString(transform) : undefined,\n transition,\n opacity: isDragging ? 0.5 : 1,\n };\n\n const isIndicatorVisible = !isDragging && isOver;\n const draggedIndex = active?.data?.current?.sortable?.index;\n const targetIndex = over?.data?.current?.sortable?.index;\n\n return (\n <div>\n <div\n className={classNames({\n \"neeto-ui-bg-gray-200 h-1 w-full\":\n isIndicatorVisible && targetIndex < draggedIndex,\n })}\n />\n <div\n className=\"neeto-molecules-columns__sortable-item\"\n data-cy=\"column-sortable-item\"\n ref={setNodeRef}\n style={dragStyle}\n >\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer neeto-ui-items-center px-4 py-2\"\n htmlFor={key}\n >\n <div\n {...attributes}\n {...listeners}\n className=\"neeto-ui-mr-2 neeto-ui-cursor-grab neeto-ui-flex neeto-ui-items-center\"\n data-cy=\"column-drag-handle\"\n >\n <Reorder className=\"neeto-ui-text-gray-800\" size={18} />\n </div>\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n disabled={isTableConfigurationFetching}\n id={key}\n label={title}\n name={key}\n onChange={onToggle}\n {...checkboxProps}\n />\n </Label>\n </div>\n <div\n className={classNames({\n \"neeto-ui-bg-gray-200 h-1 w-full\":\n isIndicatorVisible && targetIndex > draggedIndex,\n })}\n />\n </div>\n );\n};\n\nexport default Item;\n","import axios from \"axios\";\n\nconst baseUrl = \"api/v1/table_configurations\";\n\nconst fetch = tableKey => axios.get(`${baseUrl}/${tableKey}`);\n\nconst create = payload => axios.post(baseUrl, { tableConfiguration: payload });\n\nconst update = ({ tableKey, payload }) =>\n axios.patch(`${baseUrl}/${tableKey}`, { tableConfiguration: payload });\n\nconst destroy = tableKey => axios.delete(`${baseUrl}/${tableKey}`);\n\nconst tableConfigurationApi = { fetch, create, update, destroy };\n\nexport default tableConfigurationApi;\n","export const HIDDEN_COLUMNS_STORAGE_KEY = \"neeto-molecules-hidden-columns\";\nexport const COLUMNS_ORDER_STORAGE_KEY = \"neeto-molecules-columns-order\";\nexport const TABLE_CONFIGURATION_QUERY_KEY = \"table-configuration\";\n","import { useQuery } from \"@tanstack/react-query\";\nimport useMutationWithInvalidation from \"neetocommons/react-utils/useMutationWithInvalidation\";\n\nimport tableConfigurationApi from \"./api\";\nimport { TABLE_CONFIGURATION_QUERY_KEY } from \"./constants.js\";\n\nconst useFetchTableConfiguration = ({ tableKey, options = {} }) =>\n useQuery({\n queryKey: [TABLE_CONFIGURATION_QUERY_KEY, tableKey],\n enabled: !!tableKey,\n queryFn: () => tableConfigurationApi.fetch(tableKey),\n ...options,\n });\n\nconst useUpdateTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.update, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nconst useDestroyTableConfiguration = (tableKey, options = {}) =>\n useMutationWithInvalidation(tableConfigurationApi.destroy, {\n keysToInvalidate: [[TABLE_CONFIGURATION_QUERY_KEY, tableKey]],\n ...options,\n });\n\nexport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n};\n","import { useEffect, useMemo, useCallback } from \"react\";\n\nimport { isNotEqualDeep, isNotEmpty, noop } from \"neetocist\";\nimport { isEmpty, pluck, prop } from \"ramda\";\n\nimport {\n useFetchTableConfiguration,\n useUpdateTableConfiguration,\n useDestroyTableConfiguration,\n} from \"./useTableConfigurationsApi.js\";\n\nconst useTableConfigurations = (\n tableKey,\n columnData,\n onMutationSuccess = noop,\n allowConfigurationResetOnUpdate = true,\n defaultHiddenColumns = []\n) => {\n const {\n data: tableConfiguration,\n isLoading,\n isFetching,\n } = useFetchTableConfiguration({ tableKey });\n\n const { mutate: updateConfiguration } = useUpdateTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const { mutate: destroyConfiguration } = useDestroyTableConfiguration(\n tableKey,\n { onSuccess: onMutationSuccess }\n );\n\n const processColumnsWithConfiguration = useCallback(\n (originalColumns = [], existingColumnConfiguration = []) => {\n if (isEmpty(existingColumnConfiguration)) {\n return originalColumns;\n }\n\n const originalColumnsByKey = new Map(\n originalColumns?.filter(prop(\"key\")).map(column => [column.key, column])\n );\n\n const configurationByKey = new Map(\n existingColumnConfiguration.map(config => [config.key, config])\n );\n\n const orderedConfiguredColumns = existingColumnConfiguration\n .map(config => originalColumnsByKey.get(config.key))\n .filter(Boolean);\n\n const unconfiguredOriginalColumns = originalColumns.filter(\n column => column.key && !configurationByKey.has(column.key)\n );\n\n return [...orderedConfiguredColumns, ...unconfiguredOriginalColumns];\n },\n []\n );\n\n const hasAdditionalColumns = useMemo(() => {\n if (!tableConfiguration?.columns || !columnData) {\n return false;\n }\n\n const configurationKeys = pluck(\"key\", tableConfiguration.columns).sort();\n const dataKeys = pluck(\"key\", columnData).sort();\n\n return isNotEqualDeep(configurationKeys, dataKeys);\n }, [tableConfiguration, columnData]);\n\n const shouldApplyTableConfiguration = useMemo(\n () =>\n !isLoading &&\n tableConfiguration?.columns &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns,\n [tableConfiguration, isLoading, hasAdditionalColumns]\n );\n\n useEffect(() => {\n if (\n hasAdditionalColumns &&\n tableConfiguration &&\n allowConfigurationResetOnUpdate\n ) {\n destroyConfiguration(tableKey);\n }\n }, [hasAdditionalColumns, tableKey, allowConfigurationResetOnUpdate]);\n\n const allProcessedColumns = useMemo(() => {\n if (\n !isLoading &&\n isNotEmpty(tableConfiguration?.columns) &&\n !hasAdditionalColumns\n ) {\n return processColumnsWithConfiguration(\n columnData,\n tableConfiguration?.columns\n );\n }\n\n return columnData || [];\n }, [\n isLoading,\n tableConfiguration?.columns,\n hasAdditionalColumns,\n columnData,\n processColumnsWithConfiguration,\n ]);\n\n const existingColumnConfiguration = useMemo(() => {\n if (shouldApplyTableConfiguration) {\n return tableConfiguration.columns;\n }\n\n if (!columnData || isEmpty(columnData)) {\n return [];\n }\n\n return columnData.map(column => ({\n key: column.key,\n isShown: !defaultHiddenColumns.includes(column.key),\n }));\n }, [\n shouldApplyTableConfiguration,\n columnData,\n tableConfiguration?.columns,\n defaultHiddenColumns,\n ]);\n\n const customizedColumns = useMemo(() => {\n const visibleColumnsConfig = existingColumnConfiguration.filter(\n prop(\"isShown\")\n );\n const visibleColumnKeys = pluck(\"key\", visibleColumnsConfig);\n\n return allProcessedColumns.filter(column =>\n visibleColumnKeys.includes(column.key)\n );\n }, [allProcessedColumns, existingColumnConfiguration]);\n\n const updateColumns = updatedColumns => {\n updateConfiguration({\n tableKey,\n payload: { table_key: tableKey, columns: updatedColumns },\n });\n };\n\n const hideColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: false } : column\n )\n );\n };\n\n const showColumn = columnKey => {\n updateColumns(\n existingColumnConfiguration.map(column =>\n column.key === columnKey ? { ...column, isShown: true } : column\n )\n );\n };\n\n return {\n customizedColumns, // Only visible columns (for displaying the columns in the table)\n allProcessedColumns, // All columns (for displaying the columns in the Subheader)\n isTableConfigurationLoading: isLoading,\n isTableConfigurationFetching: isFetching,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n updateColumns,\n destroyConfiguration,\n };\n};\n\nexport default useTableConfigurations;\n","import { existsBy, removeBy } from \"neetocist\";\nimport { filter, includes, toLower, trim } from \"ramda\";\n\nexport const getHidableColumns = columnData =>\n removeBy({ isHidable: false }, columnData);\n\nexport const filterBySearchTerm = (searchTerm, columns) =>\n filter(\n ({ title }) => includes(trim(toLower(searchTerm)), trim(toLower(title))),\n columns\n );\n\nexport const removeDeletedColumns = (hiddenColumns, columnData) =>\n hiddenColumns.filter(hiddenColumn =>\n existsBy({ dataIndex: hiddenColumn }, columnData)\n );\n","import { useState } from \"react\";\n\nimport { DndContext, closestCenter } from \"@dnd-kit/core\";\nimport {\n SortableContext,\n verticalListSortingStrategy,\n} from \"@dnd-kit/sortable\";\nimport i18next from \"i18next\";\nimport { isNotEmpty, findIndexBy, noop } from \"neetocist\";\nimport { Search } from \"neetoicons\";\nimport { Checkbox, Dropdown, Input, Label, Button } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { assoc, isEmpty, pluck, includes } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport \"./columns.scss\";\nimport Item from \"./Item\";\nimport useTableConfigurations from \"./useTableConfigurations.js\";\nimport { filterBySearchTerm, getHidableColumns } from \"./utils.js\";\n\nconst Columns = ({\n actionBlock,\n checkboxProps = {},\n columnData = [],\n isSearchable = false,\n tableKey = \"\",\n noColumnMessage = i18next.t(\"neetoMolecules.columns.noColumns\"),\n searchProps = {},\n allowConfigurationResetOnUpdate = true,\n onMutationSuccess = noop,\n defaultHiddenColumns = [],\n ...dropdownProps\n}) => {\n const { Divider, Menu, MenuItem } = Dropdown;\n const [searchTerm, setSearchTerm] = useState(\"\");\n const { t } = useTranslation();\n\n const {\n allProcessedColumns,\n existingColumnConfiguration,\n hideColumn,\n showColumn,\n updateColumns,\n destroyConfiguration,\n isTableConfigurationFetching,\n } = useTableConfigurations(\n tableKey,\n columnData,\n onMutationSuccess,\n allowConfigurationResetOnUpdate,\n defaultHiddenColumns\n );\n\n const hiddenColumns = pluck(\n \"key\",\n existingColumnConfiguration.filter(column => column.isShown === false)\n );\n\n const handleDragEnd = event => {\n const { active, over } = event;\n if (!over || active.id === over.id) return;\n\n const oldIndex = findIndexBy(\n { key: active.id },\n existingColumnConfiguration\n );\n\n const newIndex = findIndexBy({ key: over.id }, existingColumnConfiguration);\n\n if (oldIndex === -1 || newIndex === -1) return;\n\n const newOrder = [...existingColumnConfiguration];\n const [movedItem] = newOrder.splice(oldIndex, 1);\n newOrder.splice(newIndex, 0, movedItem);\n updateColumns(newOrder);\n };\n\n const columns = getHidableColumns(allProcessedColumns);\n const filteredColumns = filterBySearchTerm(searchTerm, columns);\n\n const handleHideAllColumns = () => {\n const columnsToHideKeys = pluck(\"key\", columns);\n\n updateColumns(\n existingColumnConfiguration.map(column =>\n includes(column.key, columnsToHideKeys)\n ? assoc(\"isShown\", false, column)\n : column\n )\n );\n };\n\n const handleChange = ({ target: { name: dataIndex, checked } }) => {\n if (checked) showColumn(dataIndex);\n else hideColumn(dataIndex);\n };\n\n const handleSearch = ({ target: { value } }) => setSearchTerm(value);\n\n return (\n <Dropdown\n appendTo={document.body}\n buttonSize=\"medium\"\n buttonStyle=\"text\"\n closeOnSelect={false}\n position=\"bottom-end\"\n onClose={() => setSearchTerm(\"\")}\n {...dropdownProps}\n >\n <Menu>\n <div\n className=\"neeto-molecules-columns__container\"\n data-cy=\"customize-columns-dropdown-container\"\n >\n {isSearchable && (\n <Input\n className=\"px-4 py-2\"\n data-cy=\"neeto-ui-columns-search\"\n data-testid=\"neeto-ui-columns-search\"\n placeholder={t(\"neetoMolecules.columns.search\")}\n prefix={<Search />}\n type=\"search\"\n value={searchTerm}\n onChange={handleSearch}\n {...searchProps}\n />\n )}\n {isEmpty(filteredColumns) && (\n <span className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-items-center neeto-ui-p-2\">\n {noColumnMessage}\n </span>\n )}\n {isNotEmpty(filteredColumns) && !searchTerm && (\n <DndContext\n collisionDetection={closestCenter}\n onDragEnd={handleDragEnd}\n >\n <SortableContext\n items={pluck(\"key\", filteredColumns)}\n strategy={verticalListSortingStrategy}\n >\n {filteredColumns.map(column => (\n <Item\n {...{\n checkboxProps,\n column,\n hiddenColumns,\n isTableConfigurationFetching,\n }}\n key={column.key}\n onToggle={handleChange}\n />\n ))}\n </SortableContext>\n </DndContext>\n )}\n {isNotEmpty(filteredColumns) &&\n searchTerm &&\n filteredColumns.map(({ key, title }) => (\n <MenuItem key={key}>\n <Label\n className=\"neeto-ui-flex neeto-ui-w-full hover:neeto-ui-bg-gray-200 neeto-ui-cursor-pointer px-4 py-2\"\n htmlFor={key}\n >\n <Checkbox\n checked={!hiddenColumns.includes(key)}\n data-cy=\"neeto-ui-columns-checkbox\"\n id={key}\n label={title}\n name={key}\n onChange={handleChange}\n {...checkboxProps}\n />\n </Label>\n </MenuItem>\n ))}\n <Divider />\n {!!actionBlock && (\n <>\n {actionBlock}\n <Divider />\n </>\n )}\n <div className=\"flex justify-end gap-2 p-1 pr-3\">\n <Button\n data-cy=\"column-visibility-hide-all-button\"\n label={t(\"neetoMolecules.columns.hideAll\")}\n style=\"tertiary\"\n onClick={handleHideAllColumns}\n />\n <Button\n data-cy=\"column-visibility-reset-button\"\n label={t(\"neetoMolecules.columns.reset\")}\n style=\"secondary\"\n onClick={() => destroyConfiguration(tableKey)}\n />\n </div>\n </div>\n </Menu>\n </Dropdown>\n );\n};\n\nColumns.propTypes = {\n /**\n * Controls whether the table configuration should be reset on adding custom fields (optional).\n */\n allowConfigurationResetOnUpdate: PropTypes.bool,\n /**\n * Extra action items that can be added at the end of the dropdown (optional).\n */\n actionBlock: PropTypes.element,\n /**\n * Additional props for the checkboxes in the dropdown (optional).\n */\n checkboxProps: PropTypes.object,\n /**\n * The list of columns from which the dropdown options are built (required).\n */\n columnData: PropTypes.array,\n /**\n * Controls whether the dropdown options should be searchable (optional).\n */\n isSearchable: PropTypes.bool,\n /**\n * The table key used to identify table configuration in the API (required).\n */\n tableKey: PropTypes.string,\n /**\n * The message to be shown when there are no columns to be displayed in the dropdown (optional).\n */\n noColumnMessage: PropTypes.string,\n /**\n * Props to be passed to the search input in the column dropdown. Only works when `isSearchable` is set to `true` (optional).\n */\n searchProps: PropTypes.object,\n /**\n * The function will be called when the mutation is successful (optional).\n */\n onMutationSuccess: PropTypes.func,\n};\n\nColumns.displayName = \"Columns\";\nexport default Columns;\n"],"names":["Item","_ref","_active$data","_over$data","column","hiddenColumns","checkboxProps","onToggle","isTableConfigurationFetching","key","title","_useSortable","useSortable","id","attributes","listeners","setNodeRef","transform","transition","isDragging","isOver","over","active","dragStyle","CSS","Transform","toString","undefined","opacity","isIndicatorVisible","draggedIndex","data","current","sortable","index","targetIndex","_jsxs","children","_jsx","className","classNames","ref","style","Label","htmlFor","_objectSpread","Reorder","size","Checkbox","checked","includes","disabled","label","name","onChange","baseUrl","fetch","tableKey","axios","get","concat","create","payload","post","tableConfiguration","update","patch","destroy","tableConfigurationApi","HIDDEN_COLUMNS_STORAGE_KEY","COLUMNS_ORDER_STORAGE_KEY","TABLE_CONFIGURATION_QUERY_KEY","useFetchTableConfiguration","_ref$options","options","useQuery","queryKey","enabled","queryFn","useUpdateTableConfiguration","arguments","length","useMutationWithInvalidation","keysToInvalidate","useDestroyTableConfiguration","useTableConfigurations","columnData","onMutationSuccess","noop","allowConfigurationResetOnUpdate","defaultHiddenColumns","_useFetchTableConfigu","isLoading","isFetching","_useUpdateTableConfig","onSuccess","updateConfiguration","mutate","_useDestroyTableConfi","destroyConfiguration","processColumnsWithConfiguration","useCallback","originalColumns","existingColumnConfiguration","isEmpty","originalColumnsByKey","Map","filter","prop","map","configurationByKey","config","orderedConfiguredColumns","Boolean","unconfiguredOriginalColumns","has","_toConsumableArray","hasAdditionalColumns","useMemo","columns","configurationKeys","pluck","sort","dataKeys","isNotEqualDeep","shouldApplyTableConfiguration","isNotEmpty","useEffect","allProcessedColumns","isShown","customizedColumns","visibleColumnsConfig","visibleColumnKeys","updateColumns","updatedColumns","table_key","hideColumn","columnKey","showColumn","isTableConfigurationLoading","getHidableColumns","removeBy","isHidable","filterBySearchTerm","searchTerm","trim","toLower","Columns","actionBlock","_ref$checkboxProps","_ref$columnData","_ref$isSearchable","isSearchable","_ref$tableKey","_ref$noColumnMessage","noColumnMessage","i18next","t","_ref$searchProps","searchProps","_ref$allowConfigurati","_ref$onMutationSucces","_ref$defaultHiddenCol","dropdownProps","_objectWithoutProperties","_excluded","Divider","Dropdown","Menu","MenuItem","_useState","useState","_useState2","_slicedToArray","setSearchTerm","_useTranslation","useTranslation","_useTableConfiguratio","handleDragEnd","event","oldIndex","findIndexBy","newIndex","newOrder","_newOrder$splice","splice","_newOrder$splice2","movedItem","filteredColumns","handleHideAllColumns","columnsToHideKeys","assoc","handleChange","_ref2","_ref2$target","target","dataIndex","handleSearch","_ref3","value","appendTo","document","body","buttonSize","buttonStyle","closeOnSelect","position","onClose","Input","placeholder","prefix","Search","type","DndContext","collisionDetection","closestCenter","onDragEnd","SortableContext","items","strategy","verticalListSortingStrategy","_createElement","_ref4","_Fragment","Button","onClick","displayName"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/cjs/Columns.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
var Columns = require('./Columns-
|
|
5
|
+
var Columns = require('./Columns-DHPNrFgq.js');
|
|
6
6
|
require('@babel/runtime/helpers/defineProperty');
|
|
7
7
|
require('@babel/runtime/helpers/toConsumableArray');
|
|
8
8
|
require('@babel/runtime/helpers/slicedToArray');
|
|
@@ -784,6 +784,8 @@ var ThemeSwitcher = function ThemeSwitcher() {
|
|
|
784
784
|
zIndex: 99999,
|
|
785
785
|
children: /*#__PURE__*/jsxRuntime.jsxs(Menu, {
|
|
786
786
|
children: [/*#__PURE__*/jsxRuntime.jsx(MenuItem.Button, {
|
|
787
|
+
"data-cy": "theme-switcher-light-button",
|
|
788
|
+
"data-testid": "theme-switcher-light-button",
|
|
787
789
|
suffix: !isDarkThemeSelected && /*#__PURE__*/jsxRuntime.jsx(Check, {
|
|
788
790
|
size: 18
|
|
789
791
|
}),
|
|
@@ -795,6 +797,8 @@ var ThemeSwitcher = function ThemeSwitcher() {
|
|
|
795
797
|
},
|
|
796
798
|
children: t("neetoMolecules.sidebar.themeSwitcher.light")
|
|
797
799
|
}), /*#__PURE__*/jsxRuntime.jsx(MenuItem.Button, {
|
|
800
|
+
"data-cy": "theme-switcher-dark-button",
|
|
801
|
+
"data-testid": "theme-switcher-dark-button",
|
|
798
802
|
suffix: isDarkThemeSelected && /*#__PURE__*/jsxRuntime.jsx(Check, {
|
|
799
803
|
size: 18
|
|
800
804
|
}),
|
|
@@ -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/constants.js","../../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/utils.js","../../src/components/FloatingActionMenu/components/ThemeSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/ThemeSwitcher/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-cy={`${name}-app-link`}\n data-testid={`neetoapp-link-${name}`}\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-cy=\"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-cy=\"switcher-wrapper\"\n data-testid=\"switcher-wrapper\"\n key=\"switcher-wrapper\"\n >\n <div\n data-cy=\"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-cy=\"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 { t } from \"i18next\";\nimport { Book, Help, Community } from \"neetoicons\";\nimport { toLower } from \"ramda\";\n\nconst shouldShowWhatsNew = () => {\n const currentUserEmail = window.globalProps?.user?.email;\n\n return (\n window.location.hostname === \"localhost\" ||\n currentUserEmail === \"oliver@example.com\" ||\n currentUserEmail?.endsWith(\"@bigbinary.com\")\n );\n};\n\nexport const MY_ORGANIZATION_URL = \"/auth/organization/edit\";\nexport const ENGAGE_WIDGET_TRIGGER_ID = \"neetoengage-trigger\";\n\nexport const DEFAULT_HELP_LINK_PROPS = {\n communityProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.community\", {\n app: globalProps.appName,\n }),\n icon: Community,\n \"data-cy\": \"help-link-community-button\",\n \"data-btn-weight\": \"bold\",\n href: \"https://www.launchpass.com/neetohq\",\n target: \"_blank\",\n },\n helpCenterProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.helpCenter\"),\n icon: Book,\n \"data-cy\": \"help-link-help-center-button\",\n \"data-btn-weight\": \"bold\",\n href: `https://help.${toLower(globalProps.appName)}.com/`,\n target: \"_blank\",\n },\n liveChatProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.liveChat\"),\n icon: Help,\n \"data-cy\": \"help-link-live-chat-button\",\n \"data-btn-weight\": \"bold\",\n onClick: () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n },\n },\n};\n\nexport const DEFAULT_MENU_LINK_PROPS = {\n engageProps: {\n id: ENGAGE_WIDGET_TRIGGER_ID,\n label: t(\"neetoMolecules.sidebar.helpLinks.whatsNew\"),\n \"data-cy\": \"help-link-engage-button\",\n isVisible: shouldShowWhatsNew,\n },\n keyboardShortcutProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.keyboardShortcuts\"),\n \"data-cy\": \"help-link-keyboard-shortcut-button\",\n },\n statusProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.productStatus\", {\n app: globalProps.appName,\n }),\n \"data-cy\": \"help-link-status-button\",\n href: \"https://neetostatus.com/\",\n target: \"_blank\",\n },\n};\n\nexport const NON_BUTTON_PROPS = [\"isVisible\"];\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 { isNotPresent, isPresent } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport { NON_BUTTON_PROPS } from \"../constants\";\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-cy=\"floating-action-menu-link-section\"\n key={idx}\n prefix={Icon && <Icon size={18} />}\n style=\"text\"\n {...omit(NON_BUTTON_PROPS, otherProps)}\n >\n {label}\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu-list__item-btn-count\"\n data-cy=\"help-section-menu-changes-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-cy=\"organization-switcher-button\"\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 { ExternalLink } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown, Avatar } 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-theme-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 suffix={<ExternalLink size={18} />}\n target=\"_blank\"\n className={classNames({\n \"neeto-molecules-organization-switcher-active-button\":\n isCurrentSubdomain(organization.organizationUrl),\n })}\n >\n <Avatar\n user={{\n name: organization.userName,\n imageUrl: organization.userImageUrl,\n }}\n />\n {organization.orgName}\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, ProductSwitcher } 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-cy=\"product-switcher-button\"\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 <ProductSwitcher size={20} />\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 <div\n className=\"neeto-ui-relative neeto-ui-flex neeto-ui-items-center neeto-ui-p-3 neeto-ui-bg-primary-50 neeto-molecules-profile-popup__top-section\"\n data-cy=\"floating-action-menu-profile-header\"\n >\n <div className=\"start-0 top-0\">\n <Avatar\n data-cy=\"floating-action-menu-header-profile-icon\"\n size=\"large\"\n user={profileInfo}\n />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 neeto-ui-ps-3\">\n <Typography\n className=\"neeto-ui-m-0\"\n component=\"h2\"\n data-cy=\"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-700\"\n data-cy=\"floating-action-menu-header-user-email\"\n lineHeight=\"tight\"\n style=\"body3\"\n >\n {email}\n </Typography>\n )}\n </div>\n </div>\n );\n};\n\nexport default ProfileHeader;\n","import { t } from \"i18next\";\nimport { getFromLocalStorage } from \"neetocommons/utils\";\nimport { resetAuthTokens } from \"neetocommons/utils/axios\";\nimport { removeFromLocalStorage } from \"neetocommons/utils/general\";\nimport { mergeDeepLeft } from \"ramda\";\n\nimport {\n MY_ORGANIZATION_URL,\n THEMES,\n APP_THEME_LOCALSTORAGE_KEY,\n} 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 getDefaultTopLinks = (\n isOwner,\n setIsProfilePaneOpen,\n isAuthenticated\n) => {\n if (!isAuthenticated) return [];\n\n const topLinks = [\n {\n label: t(\"neetoMolecules.sidebar.myProfile\"),\n onClick: () => setIsProfilePaneOpen(true),\n \"data-cy\": \"my-profile-button\",\n \"data-testid\": \"my-profile-button\",\n },\n ];\n\n if (isOwner) {\n topLinks.push({\n label: t(\"neetoMolecules.sidebar.myWorkspace\"),\n onClick: () => window.open(MY_ORGANIZATION_URL, \"_self\"),\n \"data-cy\": \"profile-organization-settings-button\",\n });\n }\n\n return topLinks;\n};\n\nexport const getDefaultBottomLinks = (isAuthenticated, isConsumer) => [\n isAuthenticated\n ? {\n label: t(\"neetoMolecules.sidebar.logout\"),\n onClick: () => {\n resetAuthTokens();\n removeFromLocalStorage(getSidebarStateLocalStorageKey());\n isConsumer\n ? // eslint-disable-next-line xss/no-location-href-assign\n (window.location.href = `/consumers/logout?redirect_uri=${window.location.href}`)\n : // eslint-disable-next-line xss/no-location-href-assign\n (window.location.href = \"/logout\");\n },\n \"data-cy\": \"profile-logout-button\",\n }\n : {\n label: t(\"neetoMolecules.sidebar.login\"),\n onClick: () => {\n // eslint-disable-next-line xss/no-location-href-assign\n window.location.href = \"/login\";\n },\n \"data-cy\": \"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 { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t, selectedThemeName }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-cy=\"theme-switcher-button\"\n data-testid=\"theme-switcher-button\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.label\", {\n selectedTheme: selectedThemeName,\n })}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import classNames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Check } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown } 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\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst ThemeSwitcher = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const [appTheme, setAppTheme] = useLocalStorage(\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES.LIGHT\n );\n const isDarkThemeSelected = appTheme === THEMES.DARK;\n const selectedThemeName = isDarkThemeSelected\n ? t(\"neetoMolecules.sidebar.themeSwitcher.dark\")\n : t(\"neetoMolecules.sidebar.themeSwitcher.light\");\n\n const isMobile = isSize(\"mobile\");\n\n const switchTheme = theme => {\n theme === THEMES.LIGHT ? setLightTheme() : setDarkTheme();\n setAppTheme(theme);\n };\n\n return (\n <NeetoUIDropdown\n appendTo=\"parent\"\n className=\"neeto-molecules-theme-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton {...{ selectedThemeName }} />}\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 suffix={!isDarkThemeSelected && <Check size={18} />}\n className={classNames({\n \"neeto-molecules-theme-switcher-active-button\":\n !isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.LIGHT)}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.light\")}\n </MenuItem.Button>\n <MenuItem.Button\n suffix={isDarkThemeSelected && <Check size={18} />}\n className={classNames({\n \"neeto-molecules-theme-switcher-active-button\": isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.DARK)}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.dark\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default ThemeSwitcher;\n","import { isNotEmpty, isPresent, humanize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport LinkSection from \"./LinkSection\";\nimport OrganizationSwitcher from \"./OrganizationSwitcher\";\nimport ProductSwitcherMenu from \"./ProductSwitcher\";\nimport ProfileHeader from \"./ProfileHeader\";\nimport ThemeSwitcher from \"./ThemeSwitcher\";\n\nimport { NEETO_AUTH_BILLING_INFO_URL } from \"../constants\";\n\nconst ProfileMenu = ({\n profileInfo,\n showProductSwitcher,\n helpLinks,\n defaultLinks,\n topLinks,\n bottomLinks,\n customContent,\n toggleModal,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n isConsumer,\n}) => {\n const { Menu, MenuItem, Divider } = Dropdown;\n const { isAuthenticated } = profileInfo;\n\n return (\n <Menu className=\"pb-1\">\n <MenuItem\n className=\"neeto-molecules-profile-popup\"\n data-cy=\"profile-popup\"\n data-testid=\"profile-popup\"\n >\n {isAuthenticated && <ProfileHeader {...{ profileInfo }} />}\n </MenuItem>\n {!isConsumer && (\n <>\n {isPresent(globalProps.user?.subscriptionPlan) && (\n <LinkSection\n links={[\n {\n label: (\n <Trans\n i18nKey=\"neetoMolecules.sidebar.currentPlan\"\n values={{\n subscriptionPlan: humanize(\n globalProps.user?.subscriptionPlan\n ),\n }}\n />\n ),\n href: NEETO_AUTH_BILLING_INFO_URL,\n \"data-cy\": \"subscription-plan\",\n \"data-testid\": \"subscription-plan\",\n },\n ]}\n />\n )}\n {showProductSwitcher && <ProductSwitcherMenu {...{ toggleModal }} />}\n {isOrganizationSwitcherEnabled && <OrganizationSwitcher />}\n {isThemeSwitcherEnabled && <ThemeSwitcher />}\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 <LinkSection links={defaultLinks} />\n <Divider />\n <LinkSection links={helpLinks} />\n <Divider />\n </>\n )}\n <LinkSection links={bottomLinks} />\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\";\n\nimport ProductSwitcherModal from \"./ProductSwitcher/Modal\";\nimport ProfileMenu from \"./ProfileMenu\";\n\nimport { DEFAULT_HELP_LINK_PROPS, DEFAULT_MENU_LINK_PROPS } from \"../constants\";\nimport {\n getDefaultBottomLinks,\n getDefaultTopLinks,\n getProfileInfo,\n} from \"../utils\";\n\nconst ProfileButton = ({\n profileInfoOverrides,\n showProductSwitcher,\n bottomLinks,\n topLinks,\n customContent,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n profilePopoverProps,\n isConsumer,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const [changesCount, setChangesCount] = useState(null);\n\n const [, setIsOpen] = KeyboardShortcuts.usePaneState();\n const [, setIsProfilePaneOpen] = Profile.usePaneState();\n\n useHotkeys([\"ctrl+e\", \"command+e\"], () => 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 newTopLinks =\n globalProps.appName.toLowerCase() !== \"neetoauth\"\n ? [\n ...getDefaultTopLinks(\n globalProps.user?.isOwner,\n setIsProfilePaneOpen,\n profileInfo.isAuthenticated\n ),\n ...topLinks,\n ]\n : topLinks;\n\n const newBottomLinks = [\n ...getDefaultBottomLinks(profileInfo.isAuthenticated, isConsumer),\n ...bottomLinks,\n ];\n\n const helpLinks = Object.keys(DEFAULT_HELP_LINK_PROPS)\n .map(key => ({ ...DEFAULT_HELP_LINK_PROPS[key] }))\n .filter(({ hide }) => !hide);\n\n const defaultLinks = Object.keys(DEFAULT_MENU_LINK_PROPS)\n .filter(key => DEFAULT_MENU_LINK_PROPS[key].isVisible?.() ?? true)\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 <Dropdown\n appendTo={() => document.body}\n buttonStyle=\"link\"\n closeOnSelect={false}\n icon={noop}\n interactiveDebounce={30}\n offset={[15, 10]}\n position=\"right-end\"\n strategy=\"fixed\"\n theme=\"light\"\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-cy=\"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 >\n <ProfileMenu\n {...{\n customContent,\n defaultLinks,\n helpLinks,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfo,\n showProductSwitcher,\n }}\n bottomLinks={newBottomLinks}\n toggleModal={setIsModalOpen}\n topLinks={newTopLinks}\n />\n </Dropdown>\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu__notif-count\"\n data-cy=\"help-icon-changes-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 </>\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 ...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-cy=\"floating-action-menu-container\"\n data-testid=\"floating-action-menu-container\"\n {...otherProps}\n >\n <ProfileButton\n {...{\n bottomLinks,\n customContent,\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 * 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","shouldShowWhatsNew","_window$globalProps","currentUserEmail","user","email","location","hostname","endsWith","MY_ORGANIZATION_URL","ENGAGE_WIDGET_TRIGGER_ID","DEFAULT_HELP_LINK_PROPS","communityProps","label","icon","Community","helpCenterProps","Book","toLower","liveChatProps","Help","onClick","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","DEFAULT_MENU_LINK_PROPS","engageProps","id","isVisible","keyboardShortcutProps","statusProps","NON_BUTTON_PROPS","APP_THEME_LOCALSTORAGE_KEY","THEMES","LIGHT","DARK","NEETO_AUTH_BILLING_INFO_URL","LinkSection","links","MenuItem","Dropdown","isNotPresent","_Fragment","idx","Icon","changesCount","otherProps","Button","omit","isPresent","params","loggedInOrganizationsApi","LOGGED_IN_ORGANIZATIONS_LIST","useFetchLoggedInOrganizations","MenuButton","withT","suffix","Right","NeetoUIDropdown","OrganizationSwitcher","_globalProps$user","_useBreakpoints","useBreakpoints","isSize","_useFetchLoggedInOrga","_useFetchLoggedInOrga2","_useFetchLoggedInOrga3","organizations","authAppUrl","isCurrentSubdomain","link","currentSubdomain","split","linkSubdomain","URL","closeOnSelect","customTarget","MenuItemButton","interactiveDebounce","offset","position","trigger","zIndex","organization","organizationUrl","ExternalLink","Avatar","userName","imageUrl","userImageUrl","orgName","userId","Object","assign","_objectDestructuringEmpty","ProductSwitcher","appendTo","dropdownProps","ProductSwitcherMenu","toggleModal","ProfileHeader","profileInfo","lineHeight","title","truncate","getSidebarStateLocalStorageKey","_globalProps$user2","phoneNumber","getUserProfileInfo","_globalProps$user$fir","_globalProps$user3","_globalProps$user$las","_globalProps$user4","_globalProps$user5","_globalProps$user6","_globalProps$user7","firstName","lastName","authenticated","profileImageUrl","isAuthenticated","getConsumerProfileInfo","_globalProps$consumer","_globalProps$consumer2","_globalProps$consumer3","_globalProps$consumer4","_globalProps$consumer5","_globalProps$consumer6","_globalProps$consumer7","consumer","isConsumer","getDefaultTopLinks","isOwner","setIsProfilePaneOpen","topLinks","push","getDefaultBottomLinks","resetAuthTokens","removeFromLocalStorage","getProfileInfo","profileInfoOverrides","mergeDeepLeft","setDarkTheme","document","body","classList","remove","add","setLightTheme","setAppTheme","isDarkTheme","getFromLocalStorage","selectedThemeName","selectedTheme","ThemeSwitcher","_useLocalStorage","useLocalStorage","_useLocalStorage2","appTheme","isDarkThemeSelected","switchTheme","theme","Check","ProfileMenu","showProductSwitcher","helpLinks","defaultLinks","bottomLinks","customContent","isThemeSwitcherEnabled","isOrganizationSwitcherEnabled","Divider","subscriptionPlan","Trans","i18nKey","values","humanize","ProfileButton","profilePopoverProps","isModalOpen","setIsModalOpen","_useState3","_useState4","setChangesCount","_KeyboardShortcuts$us","KeyboardShortcuts","usePaneState","_KeyboardShortcuts$us2","setIsOpen","_Profile$usePaneState","Profile","_Profile$usePaneState2","useHotkeys","not","mode","Nv","onReceiveData","unreadCount","onShow","newTopLinks","_toConsumableArray","newBottomLinks","keys","hide","_DEFAULT_MENU_LINK_PR","_DEFAULT_MENU_LINK_PR2","_DEFAULT_MENU_LINK_PR3","call","_ref3","Pane","popoverProps","buttonStyle","noop","strategy","ProductSwitcherModal","FloatingActionMenu","forwardRef","_ref$profileInfoOverr","_ref$topLinks","_ref$bottomLinks","_ref$showProductSwitc","_ref$isThemeSwitcherE","_ref$isOrganizationSw","_ref$profilePopoverPr","_ref$isConsumer","isBigBinaryEmail","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/constants.js","../../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/utils.js","../../src/components/FloatingActionMenu/components/ThemeSwitcher/MenuButton.jsx","../../src/components/FloatingActionMenu/components/ThemeSwitcher/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-cy={`${name}-app-link`}\n data-testid={`neetoapp-link-${name}`}\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-cy=\"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-cy=\"switcher-wrapper\"\n data-testid=\"switcher-wrapper\"\n key=\"switcher-wrapper\"\n >\n <div\n data-cy=\"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-cy=\"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 { t } from \"i18next\";\nimport { Book, Help, Community } from \"neetoicons\";\nimport { toLower } from \"ramda\";\n\nconst shouldShowWhatsNew = () => {\n const currentUserEmail = window.globalProps?.user?.email;\n\n return (\n window.location.hostname === \"localhost\" ||\n currentUserEmail === \"oliver@example.com\" ||\n currentUserEmail?.endsWith(\"@bigbinary.com\")\n );\n};\n\nexport const MY_ORGANIZATION_URL = \"/auth/organization/edit\";\nexport const ENGAGE_WIDGET_TRIGGER_ID = \"neetoengage-trigger\";\n\nexport const DEFAULT_HELP_LINK_PROPS = {\n communityProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.community\", {\n app: globalProps.appName,\n }),\n icon: Community,\n \"data-cy\": \"help-link-community-button\",\n \"data-btn-weight\": \"bold\",\n href: \"https://www.launchpass.com/neetohq\",\n target: \"_blank\",\n },\n helpCenterProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.helpCenter\"),\n icon: Book,\n \"data-cy\": \"help-link-help-center-button\",\n \"data-btn-weight\": \"bold\",\n href: `https://help.${toLower(globalProps.appName)}.com/`,\n target: \"_blank\",\n },\n liveChatProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.liveChat\"),\n icon: Help,\n \"data-cy\": \"help-link-live-chat-button\",\n \"data-btn-weight\": \"bold\",\n onClick: () => {\n window.NeetoChat?.contextualHelp?.maximizeWidget();\n window.NeetoChat?.contextualHelp?.openWidget();\n },\n },\n};\n\nexport const DEFAULT_MENU_LINK_PROPS = {\n engageProps: {\n id: ENGAGE_WIDGET_TRIGGER_ID,\n label: t(\"neetoMolecules.sidebar.helpLinks.whatsNew\"),\n \"data-cy\": \"help-link-engage-button\",\n isVisible: shouldShowWhatsNew,\n },\n keyboardShortcutProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.keyboardShortcuts\"),\n \"data-cy\": \"help-link-keyboard-shortcut-button\",\n },\n statusProps: {\n label: t(\"neetoMolecules.sidebar.helpLinks.productStatus\", {\n app: globalProps.appName,\n }),\n \"data-cy\": \"help-link-status-button\",\n href: \"https://neetostatus.com/\",\n target: \"_blank\",\n },\n};\n\nexport const NON_BUTTON_PROPS = [\"isVisible\"];\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 { isNotPresent, isPresent } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { omit } from \"ramda\";\n\nimport { NON_BUTTON_PROPS } from \"../constants\";\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-cy=\"floating-action-menu-link-section\"\n key={idx}\n prefix={Icon && <Icon size={18} />}\n style=\"text\"\n {...omit(NON_BUTTON_PROPS, otherProps)}\n >\n {label}\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu-list__item-btn-count\"\n data-cy=\"help-section-menu-changes-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-cy=\"organization-switcher-button\"\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 { ExternalLink } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown, Avatar } 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-theme-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 suffix={<ExternalLink size={18} />}\n target=\"_blank\"\n className={classNames({\n \"neeto-molecules-organization-switcher-active-button\":\n isCurrentSubdomain(organization.organizationUrl),\n })}\n >\n <Avatar\n user={{\n name: organization.userName,\n imageUrl: organization.userImageUrl,\n }}\n />\n {organization.orgName}\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, ProductSwitcher } 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-cy=\"product-switcher-button\"\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 <ProductSwitcher size={20} />\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 <div\n className=\"neeto-ui-relative neeto-ui-flex neeto-ui-items-center neeto-ui-p-3 neeto-ui-bg-primary-50 neeto-molecules-profile-popup__top-section\"\n data-cy=\"floating-action-menu-profile-header\"\n >\n <div className=\"start-0 top-0\">\n <Avatar\n data-cy=\"floating-action-menu-header-profile-icon\"\n size=\"large\"\n user={profileInfo}\n />\n </div>\n <div className=\"neeto-ui-flex neeto-ui-flex-col neeto-ui-flex-grow neeto-ui-min-w-0 neeto-ui-ps-3\">\n <Typography\n className=\"neeto-ui-m-0\"\n component=\"h2\"\n data-cy=\"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-700\"\n data-cy=\"floating-action-menu-header-user-email\"\n lineHeight=\"tight\"\n style=\"body3\"\n >\n {email}\n </Typography>\n )}\n </div>\n </div>\n );\n};\n\nexport default ProfileHeader;\n","import { t } from \"i18next\";\nimport { getFromLocalStorage } from \"neetocommons/utils\";\nimport { resetAuthTokens } from \"neetocommons/utils/axios\";\nimport { removeFromLocalStorage } from \"neetocommons/utils/general\";\nimport { mergeDeepLeft } from \"ramda\";\n\nimport {\n MY_ORGANIZATION_URL,\n THEMES,\n APP_THEME_LOCALSTORAGE_KEY,\n} 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 getDefaultTopLinks = (\n isOwner,\n setIsProfilePaneOpen,\n isAuthenticated\n) => {\n if (!isAuthenticated) return [];\n\n const topLinks = [\n {\n label: t(\"neetoMolecules.sidebar.myProfile\"),\n onClick: () => setIsProfilePaneOpen(true),\n \"data-cy\": \"my-profile-button\",\n \"data-testid\": \"my-profile-button\",\n },\n ];\n\n if (isOwner) {\n topLinks.push({\n label: t(\"neetoMolecules.sidebar.myWorkspace\"),\n onClick: () => window.open(MY_ORGANIZATION_URL, \"_self\"),\n \"data-cy\": \"profile-organization-settings-button\",\n });\n }\n\n return topLinks;\n};\n\nexport const getDefaultBottomLinks = (isAuthenticated, isConsumer) => [\n isAuthenticated\n ? {\n label: t(\"neetoMolecules.sidebar.logout\"),\n onClick: () => {\n resetAuthTokens();\n removeFromLocalStorage(getSidebarStateLocalStorageKey());\n isConsumer\n ? // eslint-disable-next-line xss/no-location-href-assign\n (window.location.href = `/consumers/logout?redirect_uri=${window.location.href}`)\n : // eslint-disable-next-line xss/no-location-href-assign\n (window.location.href = \"/logout\");\n },\n \"data-cy\": \"profile-logout-button\",\n }\n : {\n label: t(\"neetoMolecules.sidebar.login\"),\n onClick: () => {\n // eslint-disable-next-line xss/no-location-href-assign\n window.location.href = \"/login\";\n },\n \"data-cy\": \"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 { withT } from \"neetocommons/react-utils\";\nimport { Right } from \"neetoicons\";\nimport { Dropdown } from \"neetoui\";\n\nconst { MenuItem } = Dropdown;\n\nconst MenuButton = withT(({ t, selectedThemeName }) => (\n <MenuItem.Button\n className=\"neeto-molecules-menu-sublist__item-btn\"\n data-cy=\"theme-switcher-button\"\n data-testid=\"theme-switcher-button\"\n style=\"text\"\n suffix={<Right className=\"rtl:scale-x-[-1]\" size={18} />}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.label\", {\n selectedTheme: selectedThemeName,\n })}\n </MenuItem.Button>\n));\n\nexport default MenuButton;\n","import classNames from \"classnames\";\nimport useBreakpoints from \"neetocommons/react-utils/useBreakpoints\";\nimport useLocalStorage from \"neetocommons/react-utils/useLocalStorage\";\nimport { Check } from \"neetoicons\";\nimport { Dropdown as NeetoUIDropdown } 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\nimport MenuItemButton from \"./MenuButton\";\n\nconst { Menu, MenuItem } = NeetoUIDropdown;\n\nconst ThemeSwitcher = () => {\n const { t } = useTranslation();\n const { isSize } = useBreakpoints();\n\n const [appTheme, setAppTheme] = useLocalStorage(\n APP_THEME_LOCALSTORAGE_KEY,\n THEMES.LIGHT\n );\n const isDarkThemeSelected = appTheme === THEMES.DARK;\n const selectedThemeName = isDarkThemeSelected\n ? t(\"neetoMolecules.sidebar.themeSwitcher.dark\")\n : t(\"neetoMolecules.sidebar.themeSwitcher.light\");\n\n const isMobile = isSize(\"mobile\");\n\n const switchTheme = theme => {\n theme === THEMES.LIGHT ? setLightTheme() : setDarkTheme();\n setAppTheme(theme);\n };\n\n return (\n <NeetoUIDropdown\n appendTo=\"parent\"\n className=\"neeto-molecules-theme-switcher-menu-popup-wrapper\"\n closeOnSelect={false}\n customTarget={<MenuItemButton {...{ selectedThemeName }} />}\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-cy=\"theme-switcher-light-button\"\n data-testid=\"theme-switcher-light-button\"\n suffix={!isDarkThemeSelected && <Check size={18} />}\n className={classNames({\n \"neeto-molecules-theme-switcher-active-button\":\n !isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.LIGHT)}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.light\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"theme-switcher-dark-button\"\n data-testid=\"theme-switcher-dark-button\"\n suffix={isDarkThemeSelected && <Check size={18} />}\n className={classNames({\n \"neeto-molecules-theme-switcher-active-button\": isDarkThemeSelected,\n })}\n onClick={() => switchTheme(THEMES.DARK)}\n >\n {t(\"neetoMolecules.sidebar.themeSwitcher.dark\")}\n </MenuItem.Button>\n </Menu>\n </NeetoUIDropdown>\n );\n};\n\nexport default ThemeSwitcher;\n","import { isNotEmpty, isPresent, humanize } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\nimport { Trans } from \"react-i18next\";\n\nimport LinkSection from \"./LinkSection\";\nimport OrganizationSwitcher from \"./OrganizationSwitcher\";\nimport ProductSwitcherMenu from \"./ProductSwitcher\";\nimport ProfileHeader from \"./ProfileHeader\";\nimport ThemeSwitcher from \"./ThemeSwitcher\";\n\nimport { NEETO_AUTH_BILLING_INFO_URL } from \"../constants\";\n\nconst ProfileMenu = ({\n profileInfo,\n showProductSwitcher,\n helpLinks,\n defaultLinks,\n topLinks,\n bottomLinks,\n customContent,\n toggleModal,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n isConsumer,\n}) => {\n const { Menu, MenuItem, Divider } = Dropdown;\n const { isAuthenticated } = profileInfo;\n\n return (\n <Menu className=\"pb-1\">\n <MenuItem\n className=\"neeto-molecules-profile-popup\"\n data-cy=\"profile-popup\"\n data-testid=\"profile-popup\"\n >\n {isAuthenticated && <ProfileHeader {...{ profileInfo }} />}\n </MenuItem>\n {!isConsumer && (\n <>\n {isPresent(globalProps.user?.subscriptionPlan) && (\n <LinkSection\n links={[\n {\n label: (\n <Trans\n i18nKey=\"neetoMolecules.sidebar.currentPlan\"\n values={{\n subscriptionPlan: humanize(\n globalProps.user?.subscriptionPlan\n ),\n }}\n />\n ),\n href: NEETO_AUTH_BILLING_INFO_URL,\n \"data-cy\": \"subscription-plan\",\n \"data-testid\": \"subscription-plan\",\n },\n ]}\n />\n )}\n {showProductSwitcher && <ProductSwitcherMenu {...{ toggleModal }} />}\n {isOrganizationSwitcherEnabled && <OrganizationSwitcher />}\n {isThemeSwitcherEnabled && <ThemeSwitcher />}\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 <LinkSection links={defaultLinks} />\n <Divider />\n <LinkSection links={helpLinks} />\n <Divider />\n </>\n )}\n <LinkSection links={bottomLinks} />\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\";\n\nimport ProductSwitcherModal from \"./ProductSwitcher/Modal\";\nimport ProfileMenu from \"./ProfileMenu\";\n\nimport { DEFAULT_HELP_LINK_PROPS, DEFAULT_MENU_LINK_PROPS } from \"../constants\";\nimport {\n getDefaultBottomLinks,\n getDefaultTopLinks,\n getProfileInfo,\n} from \"../utils\";\n\nconst ProfileButton = ({\n profileInfoOverrides,\n showProductSwitcher,\n bottomLinks,\n topLinks,\n customContent,\n isThemeSwitcherEnabled,\n isOrganizationSwitcherEnabled,\n profilePopoverProps,\n isConsumer,\n}) => {\n const [isModalOpen, setIsModalOpen] = useState(false);\n const [changesCount, setChangesCount] = useState(null);\n\n const [, setIsOpen] = KeyboardShortcuts.usePaneState();\n const [, setIsProfilePaneOpen] = Profile.usePaneState();\n\n useHotkeys([\"ctrl+e\", \"command+e\"], () => 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 newTopLinks =\n globalProps.appName.toLowerCase() !== \"neetoauth\"\n ? [\n ...getDefaultTopLinks(\n globalProps.user?.isOwner,\n setIsProfilePaneOpen,\n profileInfo.isAuthenticated\n ),\n ...topLinks,\n ]\n : topLinks;\n\n const newBottomLinks = [\n ...getDefaultBottomLinks(profileInfo.isAuthenticated, isConsumer),\n ...bottomLinks,\n ];\n\n const helpLinks = Object.keys(DEFAULT_HELP_LINK_PROPS)\n .map(key => ({ ...DEFAULT_HELP_LINK_PROPS[key] }))\n .filter(({ hide }) => !hide);\n\n const defaultLinks = Object.keys(DEFAULT_MENU_LINK_PROPS)\n .filter(key => DEFAULT_MENU_LINK_PROPS[key].isVisible?.() ?? true)\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 <Dropdown\n appendTo={() => document.body}\n buttonStyle=\"link\"\n closeOnSelect={false}\n icon={noop}\n interactiveDebounce={30}\n offset={[15, 10]}\n position=\"right-end\"\n strategy=\"fixed\"\n theme=\"light\"\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-cy=\"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 >\n <ProfileMenu\n {...{\n customContent,\n defaultLinks,\n helpLinks,\n isConsumer,\n isOrganizationSwitcherEnabled,\n isThemeSwitcherEnabled,\n profileInfo,\n showProductSwitcher,\n }}\n bottomLinks={newBottomLinks}\n toggleModal={setIsModalOpen}\n topLinks={newTopLinks}\n />\n </Dropdown>\n {isPresent(changesCount) && (\n <span\n className=\"neeto-molecules-menu__notif-count\"\n data-cy=\"help-icon-changes-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 </>\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 ...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-cy=\"floating-action-menu-container\"\n data-testid=\"floating-action-menu-container\"\n {...otherProps}\n >\n <ProfileButton\n {...{\n bottomLinks,\n customContent,\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 * 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","shouldShowWhatsNew","_window$globalProps","currentUserEmail","user","email","location","hostname","endsWith","MY_ORGANIZATION_URL","ENGAGE_WIDGET_TRIGGER_ID","DEFAULT_HELP_LINK_PROPS","communityProps","label","icon","Community","helpCenterProps","Book","toLower","liveChatProps","Help","onClick","_window$NeetoChat","_window$NeetoChat2","NeetoChat","contextualHelp","maximizeWidget","openWidget","DEFAULT_MENU_LINK_PROPS","engageProps","id","isVisible","keyboardShortcutProps","statusProps","NON_BUTTON_PROPS","APP_THEME_LOCALSTORAGE_KEY","THEMES","LIGHT","DARK","NEETO_AUTH_BILLING_INFO_URL","LinkSection","links","MenuItem","Dropdown","isNotPresent","_Fragment","idx","Icon","changesCount","otherProps","Button","omit","isPresent","params","loggedInOrganizationsApi","LOGGED_IN_ORGANIZATIONS_LIST","useFetchLoggedInOrganizations","MenuButton","withT","suffix","Right","NeetoUIDropdown","OrganizationSwitcher","_globalProps$user","_useBreakpoints","useBreakpoints","isSize","_useFetchLoggedInOrga","_useFetchLoggedInOrga2","_useFetchLoggedInOrga3","organizations","authAppUrl","isCurrentSubdomain","link","currentSubdomain","split","linkSubdomain","URL","closeOnSelect","customTarget","MenuItemButton","interactiveDebounce","offset","position","trigger","zIndex","organization","organizationUrl","ExternalLink","Avatar","userName","imageUrl","userImageUrl","orgName","userId","Object","assign","_objectDestructuringEmpty","ProductSwitcher","appendTo","dropdownProps","ProductSwitcherMenu","toggleModal","ProfileHeader","profileInfo","lineHeight","title","truncate","getSidebarStateLocalStorageKey","_globalProps$user2","phoneNumber","getUserProfileInfo","_globalProps$user$fir","_globalProps$user3","_globalProps$user$las","_globalProps$user4","_globalProps$user5","_globalProps$user6","_globalProps$user7","firstName","lastName","authenticated","profileImageUrl","isAuthenticated","getConsumerProfileInfo","_globalProps$consumer","_globalProps$consumer2","_globalProps$consumer3","_globalProps$consumer4","_globalProps$consumer5","_globalProps$consumer6","_globalProps$consumer7","consumer","isConsumer","getDefaultTopLinks","isOwner","setIsProfilePaneOpen","topLinks","push","getDefaultBottomLinks","resetAuthTokens","removeFromLocalStorage","getProfileInfo","profileInfoOverrides","mergeDeepLeft","setDarkTheme","document","body","classList","remove","add","setLightTheme","setAppTheme","isDarkTheme","getFromLocalStorage","selectedThemeName","selectedTheme","ThemeSwitcher","_useLocalStorage","useLocalStorage","_useLocalStorage2","appTheme","isDarkThemeSelected","switchTheme","theme","Check","ProfileMenu","showProductSwitcher","helpLinks","defaultLinks","bottomLinks","customContent","isThemeSwitcherEnabled","isOrganizationSwitcherEnabled","Divider","subscriptionPlan","Trans","i18nKey","values","humanize","ProfileButton","profilePopoverProps","isModalOpen","setIsModalOpen","_useState3","_useState4","setChangesCount","_KeyboardShortcuts$us","KeyboardShortcuts","usePaneState","_KeyboardShortcuts$us2","setIsOpen","_Profile$usePaneState","Profile","_Profile$usePaneState2","useHotkeys","not","mode","Nv","onReceiveData","unreadCount","onShow","newTopLinks","_toConsumableArray","newBottomLinks","keys","hide","_DEFAULT_MENU_LINK_PR","_DEFAULT_MENU_LINK_PR2","_DEFAULT_MENU_LINK_PR3","call","_ref3","Pane","popoverProps","buttonStyle","noop","strategy","ProductSwitcherModal","FloatingActionMenu","forwardRef","_ref$profileInfoOverr","_ref$topLinks","_ref$bottomLinks","_ref$showProductSwitc","_ref$isThemeSwitcherE","_ref$isOrganizationSw","_ref$profilePopoverPr","_ref$isConsumer","isBigBinaryEmail","displayName"],"mappings":"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"}
|