@bigbinary/neeto-molecules 5.5.0-beta1 → 5.5.1
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/BrowserSupport.js +116 -51
- package/dist/BrowserSupport.js.map +1 -1
- package/dist/{Columns-C20zru7a.js → Columns-CpCh1cnJ.js} +6 -4
- package/dist/Columns-CpCh1cnJ.js.map +1 -0
- package/dist/{ConfigureView-D-2SQf3j.js → ConfigureView-re6uU4Lp.js} +6 -4
- package/dist/ConfigureView-re6uU4Lp.js.map +1 -0
- package/dist/EmailForm.js +3 -1
- package/dist/EmailForm.js.map +1 -1
- package/dist/FinderModal.js +14 -1
- package/dist/FinderModal.js.map +1 -1
- package/dist/FloatingActionMenu.js +175 -55
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/IpRestriction.js +19 -9
- package/dist/IpRestriction.js.map +1 -1
- package/dist/ProductEmbed.js +35 -23
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/ShareViaLink.js +4 -4
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +43 -5
- package/dist/Sidebar.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +27 -18
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/BrowserSupport.js +119 -51
- package/dist/cjs/BrowserSupport.js.map +1 -1
- package/dist/cjs/{Columns-rqa7goJu.js → Columns-Gcp48xQM.js} +5 -3
- package/dist/cjs/Columns-Gcp48xQM.js.map +1 -0
- package/dist/cjs/{ConfigureView-CNWEfiae.js → ConfigureView-CAdrpELW.js} +6 -4
- package/dist/cjs/ConfigureView-CAdrpELW.js.map +1 -0
- package/dist/cjs/EmailForm.js +3 -1
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/FinderModal.js +14 -1
- package/dist/cjs/FinderModal.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +189 -69
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/IpRestriction.js +19 -9
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +34 -22
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +4 -4
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +43 -5
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +29 -20
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/mail-Di35Ay-Z.js +20 -0
- package/dist/cjs/mail-Di35Ay-Z.js.map +1 -0
- package/dist/cjs/performanceDiagnostics-CS7NTxaH.js +93 -0
- package/dist/cjs/performanceDiagnostics-CS7NTxaH.js.map +1 -0
- package/dist/cjs/{phone-number-DVlbgxBG.js → phone-number-BydWe8Mf.js} +22 -3
- package/dist/cjs/phone-number-BydWe8Mf.js.map +1 -0
- package/dist/cjs/useWhatsNewChangesCount-BVkLLk7f.js +121 -0
- package/dist/cjs/useWhatsNewChangesCount-BVkLLk7f.js.map +1 -0
- package/dist/cjs/useWhatsNewChangesCount-CyOUS5U3.js +106 -0
- package/dist/cjs/useWhatsNewChangesCount-CyOUS5U3.js.map +1 -0
- package/dist/cjs/v2/BrowserSupport.js +119 -51
- package/dist/cjs/v2/BrowserSupport.js.map +1 -1
- package/dist/cjs/v2/Builder.js +17 -13
- package/dist/cjs/v2/Builder.js.map +1 -1
- package/dist/cjs/v2/CalendarView.js +2 -2
- package/dist/cjs/v2/Columns.js +1 -1
- package/dist/cjs/v2/ConfigurePageSidebar.js +1 -1
- package/dist/cjs/v2/DndTable.js +1 -0
- package/dist/cjs/v2/DndTable.js.map +1 -1
- package/dist/cjs/v2/DynamicVariables.js +17 -8
- package/dist/cjs/v2/DynamicVariables.js.map +1 -1
- package/dist/cjs/v2/EmailForm.js +97 -10
- package/dist/cjs/v2/EmailForm.js.map +1 -1
- package/dist/cjs/v2/EmailPreview.js +1 -1
- package/dist/cjs/v2/EmailPreview.js.map +1 -1
- package/dist/cjs/v2/Engagements.js +10 -7
- package/dist/cjs/v2/Engagements.js.map +1 -1
- package/dist/cjs/v2/FinderModal.js +104 -72
- package/dist/cjs/v2/FinderModal.js.map +1 -1
- package/dist/cjs/v2/FloatingActionMenu.js +267 -110
- package/dist/cjs/v2/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/v2/IpRestriction.js +17 -7
- package/dist/cjs/v2/IpRestriction.js.map +1 -1
- package/dist/cjs/v2/MadeWith.js +5 -3
- package/dist/cjs/v2/MadeWith.js.map +1 -1
- package/dist/cjs/v2/MoreDropdown.js +5 -2
- package/dist/cjs/v2/MoreDropdown.js.map +1 -1
- package/dist/cjs/v2/OptionFields.js +1 -0
- package/dist/cjs/v2/OptionFields.js.map +1 -1
- package/dist/cjs/v2/PhoneNumber.js +1 -1
- package/dist/cjs/v2/ProductEmbed.js +25 -13
- package/dist/cjs/v2/ProductEmbed.js.map +1 -1
- package/dist/cjs/v2/SessionEnvironment.js +3 -16
- package/dist/cjs/v2/SessionEnvironment.js.map +1 -1
- package/dist/cjs/v2/Sidebar.js +95 -32
- package/dist/cjs/v2/Sidebar.js.map +1 -1
- package/dist/cjs/v2/StickyRibbonsContainer.js +29 -19
- package/dist/cjs/v2/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/v2/SubHeader.js +1 -1
- package/dist/cjs/v2/Taxonomy.js +1 -1
- package/dist/mail-CkquKByM.js +18 -0
- package/dist/mail-CkquKByM.js.map +1 -0
- package/dist/performanceDiagnostics-DJcT0dfG.js +88 -0
- package/dist/performanceDiagnostics-DJcT0dfG.js.map +1 -0
- package/dist/{phone-number-ClrmOx58.js → phone-number-n0BLV3g6.js} +24 -5
- package/dist/phone-number-n0BLV3g6.js.map +1 -0
- package/dist/useWhatsNewChangesCount-C71JkNHv.js +96 -0
- package/dist/useWhatsNewChangesCount-C71JkNHv.js.map +1 -0
- package/dist/useWhatsNewChangesCount-CQxhUCpt.js +106 -0
- package/dist/useWhatsNewChangesCount-CQxhUCpt.js.map +1 -0
- package/dist/v2/BrowserSupport.js +116 -51
- package/dist/v2/BrowserSupport.js.map +1 -1
- package/dist/v2/Builder.js +17 -13
- package/dist/v2/Builder.js.map +1 -1
- package/dist/v2/CalendarView.js +2 -2
- package/dist/v2/Columns.js +1 -1
- package/dist/v2/ConfigurePageSidebar.js +1 -1
- package/dist/v2/DndTable.js +1 -0
- package/dist/v2/DndTable.js.map +1 -1
- package/dist/v2/DynamicVariables.js +18 -9
- package/dist/v2/DynamicVariables.js.map +1 -1
- package/dist/v2/EmailForm.js +100 -13
- package/dist/v2/EmailForm.js.map +1 -1
- package/dist/v2/EmailPreview.js +1 -1
- package/dist/v2/EmailPreview.js.map +1 -1
- package/dist/v2/Engagements.js +10 -7
- package/dist/v2/Engagements.js.map +1 -1
- package/dist/v2/FinderModal.js +105 -73
- package/dist/v2/FinderModal.js.map +1 -1
- package/dist/v2/FloatingActionMenu.js +238 -81
- package/dist/v2/FloatingActionMenu.js.map +1 -1
- package/dist/v2/IpRestriction.js +17 -7
- package/dist/v2/IpRestriction.js.map +1 -1
- package/dist/v2/MadeWith.js +5 -3
- package/dist/v2/MadeWith.js.map +1 -1
- package/dist/v2/MoreDropdown.js +5 -2
- package/dist/v2/MoreDropdown.js.map +1 -1
- package/dist/v2/OptionFields.js +1 -0
- package/dist/v2/OptionFields.js.map +1 -1
- package/dist/v2/PhoneNumber.js +2 -2
- package/dist/v2/ProductEmbed.js +26 -14
- package/dist/v2/ProductEmbed.js.map +1 -1
- package/dist/v2/SessionEnvironment.js +2 -15
- package/dist/v2/SessionEnvironment.js.map +1 -1
- package/dist/v2/Sidebar.js +95 -32
- package/dist/v2/Sidebar.js.map +1 -1
- package/dist/v2/StickyRibbonsContainer.js +27 -17
- package/dist/v2/StickyRibbonsContainer.js.map +1 -1
- package/dist/v2/SubHeader.js +1 -1
- package/dist/v2/Taxonomy.js +1 -1
- package/package.json +8 -8
- package/src/translations/ar.json +19 -3
- package/src/translations/bg.json +19 -3
- package/src/translations/ca.json +19 -3
- package/src/translations/cs.json +19 -3
- package/src/translations/da.json +19 -3
- package/src/translations/de.json +19 -3
- package/src/translations/en.json +18 -2
- package/src/translations/es-MX.json +19 -3
- package/src/translations/es.json +19 -3
- package/src/translations/et.json +19 -3
- package/src/translations/fi.json +19 -3
- package/src/translations/fil.json +19 -3
- package/src/translations/fr.json +19 -3
- package/src/translations/he.json +19 -3
- package/src/translations/hi.json +19 -3
- package/src/translations/hr.json +19 -3
- package/src/translations/hu.json +19 -3
- package/src/translations/id.json +19 -3
- package/src/translations/it.json +19 -3
- package/src/translations/ja.json +19 -3
- package/src/translations/ko.json +19 -3
- package/src/translations/lv.json +995 -0
- package/src/translations/nl.json +19 -3
- package/src/translations/pl.json +19 -3
- package/src/translations/pt-BR.json +19 -3
- package/src/translations/pt.json +19 -3
- package/src/translations/ro.json +19 -3
- package/src/translations/ru.json +19 -3
- package/src/translations/sk.json +19 -3
- package/src/translations/sl.json +19 -3
- package/src/translations/sv.json +19 -3
- package/src/translations/th.json +19 -3
- package/src/translations/tr.json +19 -3
- package/src/translations/uk.json +19 -3
- package/src/translations/vi.json +19 -3
- package/src/translations/zh-CN.json +19 -3
- package/src/translations/zh-TW.json +19 -3
- package/types/BrowserSupport.d.ts +128 -39
- package/types/v2/EmailForm.d.ts +1 -0
- package/types/v2/EmailFormProvider.d.ts +3 -1
- package/dist/Columns-C20zru7a.js.map +0 -1
- package/dist/ConfigureView-D-2SQf3j.js.map +0 -1
- package/dist/cjs/Columns-rqa7goJu.js.map +0 -1
- package/dist/cjs/ConfigureView-CNWEfiae.js.map +0 -1
- package/dist/cjs/phone-number-DVlbgxBG.js.map +0 -1
- package/dist/phone-number-ClrmOx58.js.map +0 -1
|
@@ -16,12 +16,13 @@ import Windows from '@bigbinary/neeto-icons/misc/Windows';
|
|
|
16
16
|
import { M as Monitor, S as Smartphone } from '../smartphone-BPMMk8y-.js';
|
|
17
17
|
import { G as Globe } from '../globe-B6bOL4zQ.js';
|
|
18
18
|
import { c as createLucideIcon } from '../createLucideIcon--oLqczpc.js';
|
|
19
|
+
import { M as Mail } from '../mail-CkquKByM.js';
|
|
19
20
|
import { U as User } from '../user-Dhw9zdMR.js';
|
|
20
21
|
import useHotkeys from '@bigbinary/neeto-hotkeys';
|
|
21
22
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
22
23
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
23
24
|
import 'formik';
|
|
24
|
-
import { P as PhoneNumberInput } from '../phone-number-
|
|
25
|
+
import { P as PhoneNumberInput } from '../phone-number-n0BLV3g6.js';
|
|
25
26
|
import '../index.es5.min-Oe75miEx.js';
|
|
26
27
|
import '@babel/runtime/helpers/asyncToGenerator';
|
|
27
28
|
import 'i18next';
|
|
@@ -55,20 +56,6 @@ import '../circle-question-mark-B807GLZf.js';
|
|
|
55
56
|
*/
|
|
56
57
|
|
|
57
58
|
|
|
58
|
-
const __iconNode$2 = [
|
|
59
|
-
["path", { d: "m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7", key: "132q7q" }],
|
|
60
|
-
["rect", { x: "2", y: "4", width: "20", height: "16", rx: "2", key: "izxlao" }]
|
|
61
|
-
];
|
|
62
|
-
const Mail = createLucideIcon("mail", __iconNode$2);
|
|
63
|
-
|
|
64
|
-
/**
|
|
65
|
-
* @license lucide-react v1.24.0 - ISC
|
|
66
|
-
*
|
|
67
|
-
* This source code is licensed under the ISC license.
|
|
68
|
-
* See the LICENSE file in the root directory of this source tree.
|
|
69
|
-
*/
|
|
70
|
-
|
|
71
|
-
|
|
72
59
|
const __iconNode$1 = [
|
|
73
60
|
[
|
|
74
61
|
"path",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionEnvironment.js","sources":["../../node_modules/lucide-react/dist/esm/icons/mail.mjs","../../node_modules/lucide-react/dist/esm/icons/map-pin.mjs","../../node_modules/lucide-react/dist/esm/icons/phone.mjs","../../src/v2/components/SessionEnvironment/constants.js","../../src/v2/components/SessionEnvironment/utils.jsx","../../src/v2/components/SessionEnvironment/EditField.jsx","../../src/v2/components/SessionEnvironment/Item.jsx","../../src/v2/components/SessionEnvironment/DetailsBlock.jsx","../../src/v2/components/SessionEnvironment/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\"path\", { d: \"m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7\", key: \"132q7q\" }],\n [\"rect\", { x: \"2\", y: \"4\", width: \"20\", height: \"16\", rx: \"2\", key: \"izxlao\" }]\n];\nconst Mail = createLucideIcon(\"mail\", __iconNode);\n\nexport { __iconNode, Mail as default };\n//# sourceMappingURL=mail.mjs.map\n","/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0\",\n key: \"1r0f0z\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }]\n];\nconst MapPin = createLucideIcon(\"map-pin\", __iconNode);\n\nexport { __iconNode, MapPin as default };\n//# sourceMappingURL=map-pin.mjs.map\n","/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384\",\n key: \"9njp5v\"\n }\n ]\n];\nconst Phone = createLucideIcon(\"phone\", __iconNode);\n\nexport { __iconNode, Phone as default };\n//# sourceMappingURL=phone.mjs.map\n","import {\n Globe,\n Mail,\n MapPin,\n Monitor,\n Phone,\n Smartphone,\n User,\n} from \"lucide-react\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Mail,\n phone_number: Phone,\n location: MapPin,\n timezone: Globe,\n chrome: Chrome,\n safari: Safari,\n mobile_safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n // ua-parser-js v2 renamed \"Mac OS\" to \"macOS\" (and reports \"iOS\"/\"Ubuntu\"\n // directly), so the derived lookup keys changed; keep the v1 keys too.\n macos: Apple,\n ios: Apple,\n ubuntu: Ubuntu,\n linux: Ubuntu,\n mobile: Smartphone,\n desktop: Monitor,\n};\n","import { isPresent } from \"neetocist\";\nimport { prop, pipe } from \"ramda\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n\nexport const isValuePresent = pipe(prop(\"value\"), isPresent);\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { memo } from \"react\";\n\nimport { Button, Input } from \"@bigbinary/neeto-atoms\";\nimport { Check, X } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getInputType, mergeRefs } from \"./utils\";\n\nimport { PhoneNumberInput } from \"../PhoneNumber\";\n\nconst EditField = ({\n name,\n error,\n label,\n kind,\n value,\n handleChange,\n handleMetadataCancel,\n handleMetadataSubmit,\n}) => {\n const { t } = useTranslation();\n\n const enterRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const cancelRef = useHotkeys(ESCAPE, handleMetadataCancel, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n return (\n <div className=\"relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n className=\"w-full [&_input]:pe-[2.8125rem]\"\n data-testid={`metadata-input-${hyphenate(name)}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={mergeRefs(enterRef, cancelRef)}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"absolute end-0 top-0 flex h-8 items-center pe-1\">\n <Button\n data-testid={`metadata-cancel-${hyphenate(name)}`}\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${hyphenate(name)}`}\n icon={Check}\n size=\"sm\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n );\n};\n\nexport default memo(EditField);\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { isPresent, hyphenate } from \"neetocist\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { BOOLEAN_VALUES_MAP, PHONE_NUMBER } from \"./constants\";\nimport EditField from \"./EditField\";\nimport { getIcon } from \"./utils\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\nimport TimeFormat from \"../TimeFormat\";\n\nconst Item = ({\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n item,\n showIcons,\n}) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value) || value === \"\") return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n if (name === \"email\") return value.toLowerCase();\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n const handleValueKeyDown = event => {\n if (!isEditable) return;\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setIsEditing(true);\n }\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n const labelKey = hyphenate(name ?? label);\n const resolvedLabel =\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`);\n const isValueEmpty = isNil(value) || value === \"\";\n // An empty editable field renders a self-describing \"Add <field>\" target\n // instead of a bare \"-\" a few pixels wide.\n const showAddPlaceholder = isValueEmpty && isEditable;\n\n return (\n <div\n data-testid={`metadata-${labelKey}-container`}\n className={classNames(\n \"mb-3 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n {\n \"flex-wrap\": name !== PHONE_NUMBER && allowMultiline,\n \"flex-nowrap\": !allowMultiline,\n }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip content={resolvedLabel}>\n {/* Icons act as the row's label — mute them like the text labels so\n values carry the visual weight. */}\n <div className=\"text-muted-foreground flex-shrink-0\">\n {iconToRender}\n </div>\n </Tooltip>\n ) : (\n <Typography\n className=\"whitespace-nowrap\"\n color=\"muted\"\n data-testid={`metadata-label-${labelKey}`}\n variant=\"body3\"\n >\n {resolvedLabel}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n variant: \"body3\",\n weight: \"medium\",\n className: classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n { \"whitespace-nowrap\": !allowMultiline }\n ),\n }}\n />\n ) : (\n <Tooltip\n content={valueToRender}\n disabled={isValueEmpty}\n position=\"top\"\n >\n <Typography\n color={showAddPlaceholder ? \"muted\" : undefined}\n data-testid={`metadata-value-${labelKey}`}\n role={isEditable ? \"button\" : undefined}\n tabIndex={isEditable ? 0 : undefined}\n variant=\"body3\"\n weight={showAddPlaceholder ? \"normal\" : \"medium\"}\n className={classNames(\n `truncate overflow-hidden break-all whitespace-normal ${extraClasses}`,\n {\n \"hover:border-input focus-visible:ring-ring cursor-pointer rounded border border-transparent p-0.5 transition-colors focus-visible:ring-1 focus-visible:outline-none motion-reduce:transition-none\":\n isEditable,\n \"whitespace-nowrap\": !allowMultiline,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n onKeyDown={handleValueKeyDown}\n >\n {showAddPlaceholder\n ? t(\"neetoMolecules.common.actions.add\", {\n entity: resolvedLabel,\n })\n : valueToRender}\n </Typography>\n </Tooltip>\n )}\n {showCopyButton && !isValueEmpty && (\n <CopyToClipboardButton\n className=\"text-muted-foreground size-6 flex-shrink-0\"\n value={valueToRender}\n variant=\"ghost\"\n />\n )}\n </>\n ) : (\n <EditField\n {...{\n error,\n handleChange,\n handleMetadataCancel,\n handleMetadataSubmit,\n kind,\n label,\n name,\n value,\n }}\n />\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent, noop } from \"neetocist\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\n\nimport HelpPopover from \"../HelpPopover\";\n\nconst DetailsBlock = ({\n allowMultiline = true,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\" data-testid=\"details-block-items-parent\">\n {title && (\n <div className=\"mb-2 flex items-center gap-2\">\n <Typography className=\"uppercase\" variant=\"h6\" weight=\"bold\">\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details\n .filter(detail => detail.isEditable || isValuePresent(detail))\n .map((detail, index) => (\n <Item\n {...{\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n showIcons,\n }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { Button, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\n\nconst SessionEnvironment = ({\n allowMultiline = false,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner data-testid=\"neeto-ui-spinner\" />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n allowMultiline,\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"border-border my-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"border-border my-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n data-testid=\"view-more-less-button\"\n icon={showViewMore ? ChevronUp : ChevronDown}\n variant=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n /*\n allowMultiline is a boolean that will be used to decide whether the items should be displayed in a single line or multiple lines.\n */\n allowMultiline: PropTypes.bool,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["__iconNode","BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Mail","phone_number","Phone","location","MapPin","timezone","Globe","chrome","Chrome","safari","Safari","mobile_safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","macos","ios","ubuntu","Ubuntu","linux","mobile","Smartphone","desktop","Monitor","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","isValuePresent","pipe","prop","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","EditField","error","label","handleChange","handleMetadataCancel","handleMetadataSubmit","_useTranslation","useTranslation","t","enterRef","useHotkeys","mode","cancelRef","InputComponent","PhoneNumberInput","Input","_jsxs","className","children","autoFocus","concat","hyphenate","placeholder","what","type","onChange","Button","icon","X","variant","tooltipProps","content","position","onClick","Check","memo","Item","allowMultiline","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","fieldId","event","target","handleValueKeyDown","key","preventDefault","useEffect","labelKey","resolvedLabel","isValueEmpty","showAddPlaceholder","classNames","Tooltip","Typography","color","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","disabled","undefined","role","tabIndex","onKeyDown","entity","CopyToClipboardButton","DetailsBlock","_ref$allowMultiline","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","HelpPopover","_objectSpread","detail","map","index","_createElement","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","ChevronUp","ChevronDown","not"],"mappings":"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","x_google_ignoreList":[0,1,2]}
|
|
1
|
+
{"version":3,"file":"SessionEnvironment.js","sources":["../../node_modules/lucide-react/dist/esm/icons/map-pin.mjs","../../node_modules/lucide-react/dist/esm/icons/phone.mjs","../../src/v2/components/SessionEnvironment/constants.js","../../src/v2/components/SessionEnvironment/utils.jsx","../../src/v2/components/SessionEnvironment/EditField.jsx","../../src/v2/components/SessionEnvironment/Item.jsx","../../src/v2/components/SessionEnvironment/DetailsBlock.jsx","../../src/v2/components/SessionEnvironment/index.jsx"],"sourcesContent":["/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0\",\n key: \"1r0f0z\"\n }\n ],\n [\"circle\", { cx: \"12\", cy: \"10\", r: \"3\", key: \"ilqhr7\" }]\n];\nconst MapPin = createLucideIcon(\"map-pin\", __iconNode);\n\nexport { __iconNode, MapPin as default };\n//# sourceMappingURL=map-pin.mjs.map\n","/**\n * @license lucide-react v1.24.0 - ISC\n *\n * This source code is licensed under the ISC license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createLucideIcon from '../createLucideIcon.mjs';\n\nconst __iconNode = [\n [\n \"path\",\n {\n d: \"M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384\",\n key: \"9njp5v\"\n }\n ]\n];\nconst Phone = createLucideIcon(\"phone\", __iconNode);\n\nexport { __iconNode, Phone as default };\n//# sourceMappingURL=phone.mjs.map\n","import {\n Globe,\n Mail,\n MapPin,\n Monitor,\n Phone,\n Smartphone,\n User,\n} from \"lucide-react\";\nimport {\n Apple,\n Chrome,\n Edge,\n Firefox,\n Safari,\n Ubuntu,\n Windows,\n} from \"neetoicons/misc\";\n\nexport const BOOLEAN_VALUES_MAP = { true: \"Yes\", false: \"No\" };\nexport const ENTER = \"enter\";\nexport const ESCAPE = \"escape\";\nexport const PHONE_NUMBER = \"phone_number\";\nexport const INTEGER = \"integer\";\nexport const ICONS_MAP = {\n name: User,\n user: User,\n email: Mail,\n phone_number: Phone,\n location: MapPin,\n timezone: Globe,\n chrome: Chrome,\n safari: Safari,\n mobile_safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n // ua-parser-js v2 renamed \"Mac OS\" to \"macOS\" (and reports \"iOS\"/\"Ubuntu\"\n // directly), so the derived lookup keys changed; keep the v1 keys too.\n macos: Apple,\n ios: Apple,\n ubuntu: Ubuntu,\n linux: Ubuntu,\n mobile: Smartphone,\n desktop: Monitor,\n};\n","import { isPresent } from \"neetocist\";\nimport { prop, pipe } from \"ramda\";\n\nimport { ICONS_MAP, INTEGER, PHONE_NUMBER } from \"./constants\";\n\nexport const getInputType = ({ name, kind }) => {\n if (name === PHONE_NUMBER) return \"tel\";\n else if (kind === INTEGER) return \"number\";\n\n return \"text\";\n};\n\nexport const getIcon = ({ iconSize, name, value }) => {\n const Icon =\n name === \"browser\" || name === \"os\"\n ? ICONS_MAP[value?.toLowerCase().replace(\" \", \"_\")]\n : ICONS_MAP[name];\n\n return isPresent(Icon) ? <Icon size={iconSize} /> : null;\n};\n\nexport const isValuePresent = pipe(prop(\"value\"), isPresent);\n\nexport const mergeRefs =\n (...refs) =>\n node =>\n refs\n .filter(Boolean)\n .forEach(ref =>\n typeof ref === \"function\" ? ref(node) : (ref.current = node)\n );\n","import { memo } from \"react\";\n\nimport { Button, Input } from \"@bigbinary/neeto-atoms\";\nimport { Check, X } from \"lucide-react\";\nimport { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getInputType, mergeRefs } from \"./utils\";\n\nimport { PhoneNumberInput } from \"../PhoneNumber\";\n\nconst EditField = ({\n name,\n error,\n label,\n kind,\n value,\n handleChange,\n handleMetadataCancel,\n handleMetadataSubmit,\n}) => {\n const { t } = useTranslation();\n\n const enterRef = useHotkeys(ENTER, handleMetadataSubmit, {\n mode: \"scoped\",\n });\n\n const cancelRef = useHotkeys(ESCAPE, handleMetadataCancel, {\n mode: \"scoped\",\n });\n\n const InputComponent = name === PHONE_NUMBER ? PhoneNumberInput : Input;\n\n return (\n <div className=\"relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n className=\"w-full [&_input]:pe-[2.8125rem]\"\n data-testid={`metadata-input-${hyphenate(name)}`}\n placeholder={t(\"neetoMolecules.common.enter\", { what: label })}\n ref={mergeRefs(enterRef, cancelRef)}\n type={getInputType({ name, kind })}\n value={value || \"\"}\n onChange={handleChange}\n />\n <div className=\"absolute end-0 top-0 flex h-8 items-center pe-1\">\n <Button\n data-testid={`metadata-cancel-${hyphenate(name)}`}\n icon={X}\n size=\"sm\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-testid={`metadata-submit-${hyphenate(name)}`}\n icon={Check}\n size=\"sm\"\n variant=\"ghost\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.save\"),\n position: \"top\",\n }}\n onClick={handleMetadataSubmit}\n />\n </div>\n </div>\n );\n};\n\nexport default memo(EditField);\n","import { useEffect, useMemo, useState } from \"react\";\n\nimport { Tooltip, Typography } from \"@bigbinary/neeto-atoms\";\nimport classNames from \"classnames\";\nimport { isPresent, hyphenate } from \"neetocist\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { BOOLEAN_VALUES_MAP, PHONE_NUMBER } from \"./constants\";\nimport EditField from \"./EditField\";\nimport { getIcon } from \"./utils\";\n\nimport CopyToClipboardButton from \"../CopyToClipboardButton\";\nimport TimeFormat from \"../TimeFormat\";\n\nconst Item = ({\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n item,\n showIcons,\n}) => {\n const [isEditing, setIsEditing] = useState(item.isEditing);\n const [value, setValue] = useState(item.value);\n\n const { t } = useTranslation();\n\n const {\n icon,\n isEditable = false,\n extraClasses = \"\",\n extraWrapperClasses = \"\",\n id,\n fieldValueId,\n custom = false,\n name,\n kind,\n error,\n label,\n showCopyButton = false,\n } = item;\n\n const valueToRender = useMemo(() => {\n if (isNil(value) || value === \"\") return \"-\";\n\n if (typeof value === \"boolean\") return BOOLEAN_VALUES_MAP[value.toString()];\n\n if (name === \"email\") return value.toLowerCase();\n\n return value;\n }, [value]);\n\n const iconToRender = useMemo(\n () => icon || getIcon({ iconSize, name, value }),\n [icon, iconSize, name, value]\n );\n\n const onSuccess = () => setIsEditing(false);\n\n const handleMetadataSubmit = () =>\n handleSubmit({ fieldId: id, fieldValueId, name, value, custom, onSuccess });\n\n const handleMetadataCancel = () => {\n setIsEditing(false);\n setValue(item.value);\n handleCancel(name);\n };\n\n const handleChange = event => {\n const value = name === PHONE_NUMBER ? event : event.target.value;\n setValue(value);\n };\n\n const handleValueKeyDown = event => {\n if (!isEditable) return;\n\n if (event.key === \"Enter\" || event.key === \" \") {\n event.preventDefault();\n setIsEditing(true);\n }\n };\n\n useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n const labelKey = hyphenate(name ?? label);\n const resolvedLabel =\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`);\n const isValueEmpty = isNil(value) || value === \"\";\n // An empty editable field renders a self-describing \"Add <field>\" target\n // instead of a bare \"-\" a few pixels wide.\n const showAddPlaceholder = isValueEmpty && isEditable;\n\n return (\n <div\n data-testid={`metadata-${labelKey}-container`}\n className={classNames(\n \"mb-3 flex place-items-center gap-2 align-middle\",\n extraWrapperClasses,\n {\n \"flex-wrap\": name !== PHONE_NUMBER && allowMultiline,\n \"flex-nowrap\": !allowMultiline,\n }\n )}\n >\n {showIcons && isPresent(iconToRender) ? (\n <Tooltip content={resolvedLabel}>\n {/* Icons act as the row's label — mute them like the text labels so\n values carry the visual weight. */}\n <div className=\"text-muted-foreground flex-shrink-0\">\n {iconToRender}\n </div>\n </Tooltip>\n ) : (\n <Typography\n className=\"whitespace-nowrap\"\n color=\"muted\"\n data-testid={`metadata-label-${labelKey}`}\n variant=\"body3\"\n >\n {resolvedLabel}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n variant: \"body3\",\n weight: \"medium\",\n className: classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n { \"whitespace-nowrap\": !allowMultiline }\n ),\n }}\n />\n ) : (\n <Tooltip\n content={valueToRender}\n disabled={isValueEmpty}\n position=\"top\"\n >\n <Typography\n color={showAddPlaceholder ? \"muted\" : undefined}\n data-testid={`metadata-value-${labelKey}`}\n role={isEditable ? \"button\" : undefined}\n tabIndex={isEditable ? 0 : undefined}\n variant=\"body3\"\n weight={showAddPlaceholder ? \"normal\" : \"medium\"}\n className={classNames(\n `truncate overflow-hidden break-all whitespace-normal ${extraClasses}`,\n {\n \"hover:border-input focus-visible:ring-ring cursor-pointer rounded border border-transparent p-0.5 transition-colors focus-visible:ring-1 focus-visible:outline-none motion-reduce:transition-none\":\n isEditable,\n \"whitespace-nowrap\": !allowMultiline,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n onKeyDown={handleValueKeyDown}\n >\n {showAddPlaceholder\n ? t(\"neetoMolecules.common.actions.add\", {\n entity: resolvedLabel,\n })\n : valueToRender}\n </Typography>\n </Tooltip>\n )}\n {showCopyButton && !isValueEmpty && (\n <CopyToClipboardButton\n className=\"text-muted-foreground size-6 flex-shrink-0\"\n value={valueToRender}\n variant=\"ghost\"\n />\n )}\n </>\n ) : (\n <EditField\n {...{\n error,\n handleChange,\n handleMetadataCancel,\n handleMetadataSubmit,\n kind,\n label,\n name,\n value,\n }}\n />\n )}\n </div>\n );\n};\n\nexport default Item;\n","import { memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { isPresent, noop } from \"neetocist\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\n\nimport HelpPopover from \"../HelpPopover\";\n\nconst DetailsBlock = ({\n allowMultiline = true,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps,\n iconSize,\n showIcons = false,\n title = \"\",\n}) => (\n <div className=\"mb-4\" data-testid=\"details-block-items-parent\">\n {title && (\n <div className=\"mb-2 flex items-center gap-2\">\n <Typography className=\"uppercase\" variant=\"h6\" weight=\"bold\">\n {title}\n </Typography>\n {isPresent(helpPopoverProps) && <HelpPopover {...helpPopoverProps} />}\n </div>\n )}\n {details\n .filter(detail => detail.isEditable || isValuePresent(detail))\n .map((detail, index) => (\n <Item\n {...{\n allowMultiline,\n handleCancel,\n handleSubmit,\n iconSize,\n showIcons,\n }}\n item={detail}\n key={index}\n />\n ))}\n </div>\n);\n\nexport default memo(DetailsBlock);\n","import { memo, useMemo, useState } from \"react\";\n\nimport { Button, Spinner } from \"@bigbinary/neeto-atoms\";\nimport { ChevronDown, ChevronUp } from \"lucide-react\";\nimport { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\n\nconst SessionEnvironment = ({\n allowMultiline = false,\n details,\n handleCancel = noop,\n handleSubmit = noop,\n helpPopoverProps = {},\n iconSize = 20,\n isLoading = false,\n moreDetails = [],\n title = \"\",\n}) => {\n const [showViewMore, setShowViewMore] = useState(false);\n\n const customViewMoreItems = useMemo(\n () => filterBy({ kind: \"custom\" }, moreDetails),\n [moreDetails]\n );\n\n const { t } = useTranslation();\n\n if (isLoading) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner data-testid=\"neeto-ui-spinner\" />\n </div>\n );\n }\n\n return (\n <div className=\"w-full\">\n <DetailsBlock\n {...{\n allowMultiline,\n details,\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n title,\n }}\n showIcons\n />\n {showViewMore && (\n <>\n <hr className=\"border-border my-4\" />\n <DetailsBlock\n {...{\n handleCancel,\n handleSubmit,\n helpPopoverProps,\n iconSize,\n }}\n details={removeBy({ kind: \"custom\" }, moreDetails)}\n />\n {isPresent(customViewMoreItems) && (\n <>\n <hr className=\"border-border my-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n data-testid=\"view-more-less-button\"\n icon={showViewMore ? ChevronUp : ChevronDown}\n variant=\"link\"\n label={\n showViewMore\n ? t(\"neetoMolecules.sessionEnvironment.viewLess\")\n : t(\"neetoMolecules.sessionEnvironment.viewMore\")\n }\n onClick={() => setShowViewMore(not)}\n />\n </div>\n );\n};\n\nSessionEnvironment.propTypes = {\n /*\n details can be an array of fields to be displayed.\n */\n details: PropTypes.array,\n /*\n handleCancel is a function that will be called when the cancel button is clicked.\n */\n handleCancel: PropTypes.func,\n /*\n handleSubmit is a function that will be called when the form is submitted.\n */\n handleSubmit: PropTypes.func,\n /*\n helpPopoverProps are the props that will be passed to the HelpPopover component.\n */\n helpPopoverProps: PropTypes.object,\n /*\n iconSize is a number that will be used to set the size of the icon.\n */\n iconSize: PropTypes.number,\n /*\n isLoading is a boolean that will be used to show a spinner when true.\n */\n isLoading: PropTypes.bool,\n /*\n moreDetails can be an array of fields to be displayed when the view more button is clicked.\n */\n moreDetails: PropTypes.array,\n /*\n The title to be displayed above the details.\n */\n title: PropTypes.string,\n /*\n allowMultiline is a boolean that will be used to decide whether the items should be displayed in a single line or multiple lines.\n */\n allowMultiline: PropTypes.bool,\n};\n\nexport default memo(SessionEnvironment);\n"],"names":["__iconNode","BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Mail","phone_number","Phone","location","MapPin","timezone","Globe","chrome","Chrome","safari","Safari","mobile_safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","macos","ios","ubuntu","Ubuntu","linux","mobile","Smartphone","desktop","Monitor","getInputType","_ref","kind","getIcon","_ref2","iconSize","value","Icon","toLowerCase","replace","isPresent","_jsx","size","isValuePresent","pipe","prop","mergeRefs","_len","arguments","length","refs","Array","_key","node","filter","Boolean","forEach","ref","current","EditField","error","label","handleChange","handleMetadataCancel","handleMetadataSubmit","_useTranslation","useTranslation","t","enterRef","useHotkeys","mode","cancelRef","InputComponent","PhoneNumberInput","Input","_jsxs","className","children","autoFocus","concat","hyphenate","placeholder","what","type","onChange","Button","icon","X","variant","tooltipProps","content","position","onClick","Check","memo","Item","allowMultiline","handleCancel","handleSubmit","item","showIcons","_useState","useState","isEditing","_useState2","_slicedToArray","setIsEditing","_useState3","_useState4","setValue","_item$isEditable","isEditable","_item$extraClasses","extraClasses","_item$extraWrapperCla","extraWrapperClasses","id","fieldValueId","_item$custom","custom","_item$showCopyButton","showCopyButton","valueToRender","useMemo","isNil","toString","iconToRender","onSuccess","fieldId","event","target","handleValueKeyDown","key","preventDefault","useEffect","labelKey","resolvedLabel","isValueEmpty","showAddPlaceholder","classNames","Tooltip","Typography","color","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","disabled","undefined","role","tabIndex","onKeyDown","entity","CopyToClipboardButton","DetailsBlock","_ref$allowMultiline","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","HelpPopover","_objectSpread","detail","map","index","_createElement","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","ChevronUp","ChevronDown","not"],"mappings":"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","x_google_ignoreList":[0,1]}
|
package/dist/v2/Sidebar.js
CHANGED
|
@@ -7,19 +7,21 @@ import { append, is, findLast } from 'ramda';
|
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
8
|
import { Link, useLocation, useHistory } from 'react-router-dom';
|
|
9
9
|
import { u as useKeyboardShortcutsPaneState } from '../useKeyboardShortcutsPaneState-BlyFMEtW.js';
|
|
10
|
-
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem, g as getSidebarStateLocalStorageKey, c as SIDEBAR_WIDTH_KEY, d as DEFAULT_SIDEBAR_WIDTH, e as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, C as ConfigureView, h as getActiveConfigurePageLink, M as MIN_SIDEBAR_WIDTH, i as MAX_SIDEBAR_WIDTH } from '../ConfigureView-
|
|
10
|
+
import { S as SPECIAL_APP_NAMES, D as DEFAULT_HOME_PATH, f as filterByPermissions, a as CheckPointNavLinks, P as PINNED_MORE_NAV_LINKS_KEY, b as SubLinkItem, g as getSidebarStateLocalStorageKey, c as SIDEBAR_WIDTH_KEY, d as DEFAULT_SIDEBAR_WIDTH, e as SELECTED_NAV_LINK_ROUTE_STORAGE_KEY, C as ConfigureView, h as getActiveConfigurePageLink, M as MIN_SIDEBAR_WIDTH, i as MAX_SIDEBAR_WIDTH } from '../ConfigureView-re6uU4Lp.js';
|
|
11
11
|
import classnames from 'classnames';
|
|
12
12
|
import { globalProps as globalProps$1 } from '@bigbinary/neeto-commons-frontend/v2/initializers';
|
|
13
13
|
import Neeto from '@bigbinary/neeto-icons/typeface-logos/Neeto';
|
|
14
14
|
import * as AppIcons from '@bigbinary/neeto-icons/typeface-logos';
|
|
15
15
|
import { jsx, jsxs, Fragment as Fragment$1 } from 'react/jsx-runtime';
|
|
16
|
-
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
17
16
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
17
|
+
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
18
18
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
19
19
|
import { DropdownMenu, Badge, Tooltip, Button } from '@bigbinary/neeto-atoms';
|
|
20
|
+
import { u as useWhatsNewChangesCount, E as ENGAGE_WIDGET_TRIGGER_ID } from '../useWhatsNewChangesCount-CQxhUCpt.js';
|
|
20
21
|
import { P as Plus } from '../plus-Bnd2C3yl.js';
|
|
21
22
|
import { E as Ellipsis } from '../ellipsis-BSu1ZIFZ.js';
|
|
22
23
|
import { C as ChevronRight } from '../chevron-right-CEsVcNLw.js';
|
|
24
|
+
import { c as createLucideIcon } from '../createLucideIcon--oLqczpc.js';
|
|
23
25
|
import { n } from '../inject-css-C2dztUxs.js';
|
|
24
26
|
import 'zustand/shallow';
|
|
25
27
|
import '@bigbinary/neeto-commons-frontend/v2/react-utils/withImmutableActions';
|
|
@@ -28,7 +30,28 @@ import '@bigbinary/neeto-commons-frontend/v2/utils/general';
|
|
|
28
30
|
import '@bigbinary/neeto-commons-frontend/v2/react-utils/useRegisterNavigationCheckpoint';
|
|
29
31
|
import '@bigbinary/neeto-filters-frontend/v2/Segments';
|
|
30
32
|
import '../chevron-left-KSkgB-X_.js';
|
|
31
|
-
import '
|
|
33
|
+
import 'i18next';
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* @license lucide-react v1.24.0 - ISC
|
|
37
|
+
*
|
|
38
|
+
* This source code is licensed under the ISC license.
|
|
39
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
40
|
+
*/
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
const __iconNode = [
|
|
44
|
+
[
|
|
45
|
+
"path",
|
|
46
|
+
{
|
|
47
|
+
d: "M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z",
|
|
48
|
+
key: "q8bfy3"
|
|
49
|
+
}
|
|
50
|
+
],
|
|
51
|
+
["path", { d: "M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14", key: "1853fq" }],
|
|
52
|
+
["path", { d: "M8 6v8", key: "15ugcq" }]
|
|
53
|
+
];
|
|
54
|
+
const Megaphone = createLucideIcon("megaphone", __iconNode);
|
|
32
55
|
|
|
33
56
|
var Header = function Header(_ref) {
|
|
34
57
|
var _ProductTypefaceLogos;
|
|
@@ -46,7 +69,7 @@ var Header = function Header(_ref) {
|
|
|
46
69
|
"data-testid": "sidebar-info",
|
|
47
70
|
children: /*#__PURE__*/jsx(Link, {
|
|
48
71
|
to: DEFAULT_HOME_PATH,
|
|
49
|
-
className: classnames("mt-2 block
|
|
72
|
+
className: classnames("me-10 mt-2 block py-2", {
|
|
50
73
|
"cursor-pointer": isOnboarded,
|
|
51
74
|
"pointer-events-none": !isOnboarded
|
|
52
75
|
}),
|
|
@@ -55,7 +78,7 @@ var Header = function Header(_ref) {
|
|
|
55
78
|
className: "text-sidebar-foreground text-xl leading-9 font-bold",
|
|
56
79
|
children: globalProps$1.sidebarTitle
|
|
57
80
|
}) : /*#__PURE__*/jsx(LogoComponent, {
|
|
58
|
-
className: "h-
|
|
81
|
+
className: "h-7 w-auto max-w-full"
|
|
59
82
|
})
|
|
60
83
|
})
|
|
61
84
|
});
|
|
@@ -70,7 +93,7 @@ var AddAction = function AddAction(_ref) {
|
|
|
70
93
|
side: "bottom"
|
|
71
94
|
},
|
|
72
95
|
customTarget: /*#__PURE__*/jsx("span", {
|
|
73
|
-
className: "text-sidebar-foreground hover:bg-sidebar-accent
|
|
96
|
+
className: "text-sidebar-foreground hover:bg-sidebar-accent focus-visible:ring-sidebar-ring md:data-[state=open]:bg-sidebar-accent flex aspect-square w-5 shrink-0 cursor-pointer items-center justify-center rounded-md outline-hidden focus-visible:ring-2 md:opacity-0 md:group-focus-within/menu-item:opacity-100 md:group-hover/menu-item:opacity-100 md:data-[state=open]:opacity-100",
|
|
74
97
|
"data-testid": "add-dropdown-trigger",
|
|
75
98
|
role: "button",
|
|
76
99
|
tabIndex: 0,
|
|
@@ -144,9 +167,11 @@ var MoreDropdown = function MoreDropdown(_ref) {
|
|
|
144
167
|
closeOnSelect: false,
|
|
145
168
|
position: isRTL ? "left-start" : "right-start",
|
|
146
169
|
customTarget: /*#__PURE__*/jsxs("button", {
|
|
147
|
-
className: "text-sidebar-foreground hover:bg-sidebar-accent
|
|
170
|
+
className: "text-sidebar-foreground hover:bg-sidebar-accent flex h-9 w-full items-center gap-3 rounded-md p-2 text-sm outline-hidden",
|
|
148
171
|
"data-testid": "more-nav-links-dropdown-button",
|
|
149
|
-
children: [/*#__PURE__*/jsx(Ellipsis, {
|
|
172
|
+
children: [/*#__PURE__*/jsx(Ellipsis, {
|
|
173
|
+
className: "size-4 shrink-0 [stroke-width:1.8]"
|
|
174
|
+
}), /*#__PURE__*/jsx("span", {
|
|
150
175
|
className: "truncate",
|
|
151
176
|
children: t("neetoMolecules.sidebar.more")
|
|
152
177
|
})]
|
|
@@ -219,8 +244,13 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
219
244
|
var navLinks = _ref.navLinks,
|
|
220
245
|
moreNavLinks = _ref.moreNavLinks,
|
|
221
246
|
isCountsLoadingDeprecated = _ref.isCountsLoading,
|
|
222
|
-
setSelectedNavLinkRoute = _ref.setSelectedNavLinkRoute
|
|
247
|
+
setSelectedNavLinkRoute = _ref.setSelectedNavLinkRoute,
|
|
248
|
+
_ref$showWhatsNew = _ref.showWhatsNew,
|
|
249
|
+
showWhatsNew = _ref$showWhatsNew === void 0 ? false : _ref$showWhatsNew;
|
|
223
250
|
var location = useLocation();
|
|
251
|
+
var _useTranslation = useTranslation(),
|
|
252
|
+
t = _useTranslation.t;
|
|
253
|
+
var whatsNewCount = useWhatsNewChangesCount();
|
|
224
254
|
var _useState = useState([]),
|
|
225
255
|
_useState2 = _slicedToArray(_useState, 2),
|
|
226
256
|
expandedNavLinkKeys = _useState2[0],
|
|
@@ -274,11 +304,37 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
274
304
|
if (activeMoreNavLink && !isNavLinkPinned(activeMoreNavLink)) {
|
|
275
305
|
additionalItems.push(activeMoreNavLink);
|
|
276
306
|
}
|
|
277
|
-
|
|
307
|
+
|
|
308
|
+
// "What's new" opens the neetoEngage changelog widget, which binds to the
|
|
309
|
+
// element carrying ENGAGE_WIDGET_TRIGGER_ID. Rendering it as a persistent
|
|
310
|
+
// sidebar item gives the widget a stable trigger. The unread count is shown
|
|
311
|
+
// as an info-blue badge on the right of the item (via the `tag` slot).
|
|
312
|
+
var whatsNewNavLink = _objectSpread({
|
|
313
|
+
key: "sidebar-whats-new",
|
|
314
|
+
icon: Megaphone,
|
|
315
|
+
label: t("neetoMolecules.sidebar.helpLinks.whatsNew"),
|
|
316
|
+
to: "#",
|
|
317
|
+
id: ENGAGE_WIDGET_TRIGGER_ID,
|
|
318
|
+
isActive: function isActive() {
|
|
319
|
+
return false;
|
|
320
|
+
},
|
|
321
|
+
"data-testid": "sidebar-whats-new",
|
|
322
|
+
onClick: function onClick(event) {
|
|
323
|
+
return event.preventDefault();
|
|
324
|
+
}
|
|
325
|
+
}, isPresent(whatsNewCount) && {
|
|
326
|
+
tag: {
|
|
327
|
+
label: String(renderCount(whatsNewCount)),
|
|
328
|
+
variant: "blue",
|
|
329
|
+
size: "sm",
|
|
330
|
+
"data-testid": "sidebar-whats-new-count"
|
|
331
|
+
}
|
|
332
|
+
});
|
|
333
|
+
var combinedNavLinks = [].concat(_toConsumableArray(showWhatsNew && isPresent(whatsNewCount) ? [whatsNewNavLink] : []), _toConsumableArray(navLinks), _toConsumableArray(additionalItems));
|
|
278
334
|
return /*#__PURE__*/jsx(SidebarGroup, {
|
|
279
335
|
children: /*#__PURE__*/jsx(SidebarGroupContent, {
|
|
280
336
|
children: /*#__PURE__*/jsxs(SidebarMenu, {
|
|
281
|
-
className: "gap-
|
|
337
|
+
className: "gap-2",
|
|
282
338
|
children: [combinedNavLinks.filter(filterByPermissions).map(function (navLink, index) {
|
|
283
339
|
var label = navLink.label,
|
|
284
340
|
to = navLink.to,
|
|
@@ -301,6 +357,7 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
301
357
|
return is(Function, otherProps.isActive) ? otherProps.isActive() : location.pathname.startsWith(url.pathname);
|
|
302
358
|
};
|
|
303
359
|
var isExpandable = items || Component;
|
|
360
|
+
var hasTrailingActions = isNotEmpty(addActions) || isExpandable && !isConfigureNavLink;
|
|
304
361
|
var navLinkKey = navLink.key || navLink.to;
|
|
305
362
|
var isMenuExpanded = expandedNavLinkKeys.includes(navLinkKey) && !isCountsLoadingDeprecated;
|
|
306
363
|
var handleCaretClick = function handleCaretClick(event) {
|
|
@@ -314,11 +371,10 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
314
371
|
children: [/*#__PURE__*/jsx(SidebarMenuItem, {
|
|
315
372
|
children: /*#__PURE__*/jsx(SidebarMenuButton, {
|
|
316
373
|
asChild: true,
|
|
317
|
-
className: "h-
|
|
374
|
+
className: "h-9",
|
|
318
375
|
isActive: isActive(),
|
|
319
376
|
children: /*#__PURE__*/jsxs(CheckPointNavLinks, _objectSpread(_objectSpread({
|
|
320
377
|
activeClassName: "active",
|
|
321
|
-
className: "font-medium",
|
|
322
378
|
"data-testid": "navlink-".concat(hyphenate(label)),
|
|
323
379
|
onClick: function onClick(event) {
|
|
324
380
|
handleNavLinkClick({
|
|
@@ -342,21 +398,23 @@ var NavLinks = function NavLinks(_ref) {
|
|
|
342
398
|
}), /*#__PURE__*/jsx("span", {
|
|
343
399
|
className: "flex-grow truncate",
|
|
344
400
|
children: label
|
|
345
|
-
}),
|
|
346
|
-
className: "ms-auto flex shrink-0 items-center gap-
|
|
347
|
-
children: [
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
401
|
+
}), (tag || hasTrailingActions) && /*#__PURE__*/jsxs("span", {
|
|
402
|
+
className: "ms-auto flex shrink-0 items-center gap-2",
|
|
403
|
+
children: [tag && /*#__PURE__*/jsx(Badge, _objectSpread({}, tag)), hasTrailingActions && /*#__PURE__*/jsxs("span", {
|
|
404
|
+
className: "flex shrink-0 items-center gap-0.5",
|
|
405
|
+
children: [isNotEmpty(addActions) && /*#__PURE__*/jsx(AddAction, {
|
|
406
|
+
actions: addActions
|
|
407
|
+
}), isExpandable && !isConfigureNavLink && /*#__PURE__*/jsx("span", {
|
|
408
|
+
role: "button",
|
|
409
|
+
tabIndex: -1,
|
|
410
|
+
className: classnames("shrink-0 transition-transform duration-200", {
|
|
411
|
+
"rotate-90 rtl:-rotate-90": isMenuExpanded
|
|
412
|
+
}),
|
|
413
|
+
onClick: handleCaretClick,
|
|
414
|
+
children: /*#__PURE__*/jsx(ChevronRight, {
|
|
415
|
+
className: "rtl:rotate-180"
|
|
416
|
+
})
|
|
417
|
+
})]
|
|
360
418
|
})]
|
|
361
419
|
})]
|
|
362
420
|
}))
|
|
@@ -404,7 +462,9 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
404
462
|
_ref$showWorkspaceNam = _ref.showWorkspaceName,
|
|
405
463
|
showWorkspaceName = _ref$showWorkspaceNam === void 0 ? false : _ref$showWorkspaceNam,
|
|
406
464
|
_ref$isExpandable = _ref.isExpandable,
|
|
407
|
-
isExpandable = _ref$isExpandable === void 0 ? true : _ref$isExpandable
|
|
465
|
+
isExpandable = _ref$isExpandable === void 0 ? true : _ref$isExpandable,
|
|
466
|
+
_ref$showWhatsNew = _ref.showWhatsNew,
|
|
467
|
+
showWhatsNew = _ref$showWhatsNew === void 0 ? true : _ref$showWhatsNew;
|
|
408
468
|
var _useLocalStorage = useLocalStorage(getSidebarStateLocalStorageKey(), false),
|
|
409
469
|
_useLocalStorage2 = _slicedToArray(_useLocalStorage, 2),
|
|
410
470
|
isSidebarCollapsed = _useLocalStorage2[0],
|
|
@@ -433,6 +493,7 @@ var Sidebar = function Sidebar(_ref) {
|
|
|
433
493
|
navLinks: navLinks,
|
|
434
494
|
setIsSidebarCollapsed: setIsSidebarCollapsed,
|
|
435
495
|
setSidebarWidth: setSidebarWidth,
|
|
496
|
+
showWhatsNew: showWhatsNew,
|
|
436
497
|
showWorkspaceName: showWorkspaceName,
|
|
437
498
|
sidebarWidth: sidebarWidth
|
|
438
499
|
})
|
|
@@ -448,7 +509,8 @@ var SidebarBody = function SidebarBody(_ref2) {
|
|
|
448
509
|
isSidebarCollapsed = _ref2.isSidebarCollapsed,
|
|
449
510
|
setIsSidebarCollapsed = _ref2.setIsSidebarCollapsed,
|
|
450
511
|
sidebarWidth = _ref2.sidebarWidth,
|
|
451
|
-
setSidebarWidth = _ref2.setSidebarWidth
|
|
512
|
+
setSidebarWidth = _ref2.setSidebarWidth,
|
|
513
|
+
showWhatsNew = _ref2.showWhatsNew;
|
|
452
514
|
var _useSidebar = useSidebar(),
|
|
453
515
|
isMobile = _useSidebar.isMobile,
|
|
454
516
|
setOpenMobile = _useSidebar.setOpenMobile,
|
|
@@ -583,7 +645,7 @@ var SidebarBody = function SidebarBody(_ref2) {
|
|
|
583
645
|
return setSelectedNavLinkRoute(null);
|
|
584
646
|
}
|
|
585
647
|
}), /*#__PURE__*/jsx(SidebarTrigger, {
|
|
586
|
-
className: "absolute end-2 top-
|
|
648
|
+
className: "absolute end-2.5 top-7",
|
|
587
649
|
"data-testid": "neeto-molecules-sidebar-toggler",
|
|
588
650
|
title: t("neetoMolecules.sidebar.hideMenu")
|
|
589
651
|
}), showWorkspaceName && /*#__PURE__*/jsxs("div", {
|
|
@@ -604,7 +666,8 @@ var SidebarBody = function SidebarBody(_ref2) {
|
|
|
604
666
|
isCountsLoading: isCountsLoading,
|
|
605
667
|
moreNavLinks: moreNavLinks,
|
|
606
668
|
navLinks: navLinks,
|
|
607
|
-
setSelectedNavLinkRoute: setSelectedNavLinkRoute
|
|
669
|
+
setSelectedNavLinkRoute: setSelectedNavLinkRoute,
|
|
670
|
+
showWhatsNew: showWhatsNew
|
|
608
671
|
})
|
|
609
672
|
}), !isMobile && isExpandable && !isSidebarCollapsed && /*#__PURE__*/jsx(SidebarRail, {
|
|
610
673
|
onClickCapture: handleRailClick,
|