@bigbinary/neeto-molecules 4.0.130 → 4.0.131
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 +4 -4
- package/dist/AuditLogs.js.map +1 -1
- package/dist/Breadcrumbs.js +2 -2
- package/dist/Breadcrumbs.js.map +1 -1
- package/dist/Builder.js +15 -22
- package/dist/Builder.js.map +1 -1
- package/dist/CalendarView.js +5 -6
- package/dist/CalendarView.js.map +1 -1
- package/dist/CardLayout.js +0 -1
- package/dist/CardLayout.js.map +1 -1
- package/dist/{Chevron-Cat_oK6Q.js → Chevron-CvDNGT0i.js} +9 -10
- package/dist/Chevron-CvDNGT0i.js.map +1 -0
- package/dist/Codeblock.js +3 -5
- package/dist/Codeblock.js.map +1 -1
- package/dist/{Columns-CsOYfWFt.js → Columns-D51hN86M.js} +8 -9
- package/dist/Columns-D51hN86M.js.map +1 -0
- package/dist/Columns.js +1 -1
- package/dist/ConfigurePageSidebar.js +2 -3
- package/dist/ConfigurePageSidebar.js.map +1 -1
- package/dist/ConfirmationModal.js +2 -2
- package/dist/ConfirmationModal.js.map +1 -1
- package/dist/CopyToClipboardButton.js +1 -2
- package/dist/CopyToClipboardButton.js.map +1 -1
- package/dist/DeleteArchiveModal.js +5 -7
- package/dist/DeleteArchiveModal.js.map +1 -1
- package/dist/DeviceIncompatibilityMessage.js +0 -1
- package/dist/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/DocumentEditor.js +3 -3
- package/dist/DocumentEditor.js.map +1 -1
- package/dist/DynamicVariables.js +4 -6
- package/dist/DynamicVariables.js.map +1 -1
- package/dist/EmailForm.js +4 -5
- package/dist/EmailForm.js.map +1 -1
- package/dist/EmailPreview.js +4 -5
- package/dist/EmailPreview.js.map +1 -1
- package/dist/EmojiPicker.js +1 -1
- package/dist/EmojiPicker.js.map +1 -1
- package/dist/EmojiReactions.js +1 -1
- package/dist/EmojiReactions.js.map +1 -1
- package/dist/ErrorPage.js +5 -5
- package/dist/ErrorPage.js.map +1 -1
- package/dist/FileUpload.js +9 -10
- package/dist/FileUpload.js.map +1 -1
- package/dist/FloatingActionMenu.js +19 -38
- package/dist/FloatingActionMenu.js.map +1 -1
- package/dist/Header.js +1 -3
- package/dist/Header.js.map +1 -1
- package/dist/HelpPopover.js +1 -5
- package/dist/HelpPopover.js.map +1 -1
- package/dist/IconPicker.js +2 -3
- package/dist/IconPicker.js.map +1 -1
- package/dist/Insights.js +3 -6
- package/dist/Insights.js.map +1 -1
- package/dist/IntegrationCard.js +10 -12
- package/dist/IntegrationCard.js.map +1 -1
- package/dist/IpRestriction.js +11 -13
- package/dist/IpRestriction.js.map +1 -1
- package/dist/KeyboardShortcuts.js +3 -4
- package/dist/KeyboardShortcuts.js.map +1 -1
- package/dist/LoginPage.js +3 -6
- package/dist/LoginPage.js.map +1 -1
- package/dist/MadeWith.js +0 -1
- package/dist/MadeWith.js.map +1 -1
- package/dist/MenuBar.js +6 -6
- package/dist/MenuBar.js.map +1 -1
- package/dist/Metadata.js +4 -7
- package/dist/Metadata.js.map +1 -1
- package/dist/MobilePreviewHeader.js +1 -1
- package/dist/MobilePreviewHeader.js.map +1 -1
- package/dist/MoreDropdown.js +1 -2
- package/dist/MoreDropdown.js.map +1 -1
- package/dist/NavigationHeader.js +1 -6
- package/dist/NavigationHeader.js.map +1 -1
- package/dist/NeetoWidget.js +1 -2
- package/dist/NeetoWidget.js.map +1 -1
- package/dist/Onboarding.js +1 -9
- package/dist/Onboarding.js.map +1 -1
- package/dist/OptionFields.js +6 -22
- package/dist/OptionFields.js.map +1 -1
- package/dist/PageLoader.js +1 -1
- package/dist/PageLoader.js.map +1 -1
- package/dist/PhoneNumber.js +0 -1
- package/dist/PhoneNumber.js.map +1 -1
- package/dist/ProductEmbed.js +7 -20
- package/dist/ProductEmbed.js.map +1 -1
- package/dist/PublishBlock.js +1 -12
- package/dist/PublishBlock.js.map +1 -1
- package/dist/PublishYourItem.js +2 -2
- package/dist/PublishYourItem.js.map +1 -1
- package/dist/Rename.js +9 -13
- package/dist/Rename.js.map +1 -1
- package/dist/Schedule.js +16 -20
- package/dist/Schedule.js.map +1 -1
- package/dist/SendToFields.js +1 -5
- package/dist/SendToFields.js.map +1 -1
- package/dist/SessionEnvironment.js +1 -7
- package/dist/SessionEnvironment.js.map +1 -1
- package/dist/Settings.js +8 -9
- package/dist/Settings.js.map +1 -1
- package/dist/ShareRecordingPane.js +6 -6
- package/dist/ShareRecordingPane.js.map +1 -1
- package/dist/ShareViaEmail.js +6 -9
- package/dist/ShareViaEmail.js.map +1 -1
- package/dist/ShareViaLink.js +5 -21
- package/dist/ShareViaLink.js.map +1 -1
- package/dist/Sidebar.js +5 -7
- package/dist/Sidebar.js.map +1 -1
- package/dist/StatusDropdown.js +7 -10
- package/dist/StatusDropdown.js.map +1 -1
- package/dist/StickyRibbonsContainer.js +3 -3
- package/dist/StickyRibbonsContainer.js.map +1 -1
- package/dist/SubHeader.js +12 -15
- package/dist/SubHeader.js.map +1 -1
- package/dist/Taxonomy.js +3 -5
- package/dist/Taxonomy.js.map +1 -1
- package/dist/ToggleFeatureCard.js +18 -24
- package/dist/ToggleFeatureCard.js.map +1 -1
- package/dist/VersionHistory.js +1 -3
- package/dist/VersionHistory.js.map +1 -1
- package/dist/cjs/AuditLogs.js +4 -4
- package/dist/cjs/AuditLogs.js.map +1 -1
- package/dist/cjs/Breadcrumbs.js +2 -2
- package/dist/cjs/Breadcrumbs.js.map +1 -1
- package/dist/cjs/Builder.js +15 -22
- package/dist/cjs/Builder.js.map +1 -1
- package/dist/cjs/CalendarView.js +5 -6
- package/dist/cjs/CalendarView.js.map +1 -1
- package/dist/cjs/CardLayout.js +0 -1
- package/dist/cjs/CardLayout.js.map +1 -1
- package/dist/cjs/{Chevron-ChTcXDNM.js → Chevron-CLyBYgRO.js} +9 -10
- package/dist/cjs/Chevron-CLyBYgRO.js.map +1 -0
- package/dist/cjs/Codeblock.js +3 -5
- package/dist/cjs/Codeblock.js.map +1 -1
- package/dist/cjs/{Columns-DHPNrFgq.js → Columns-7xltEL2z.js} +8 -9
- package/dist/cjs/Columns-7xltEL2z.js.map +1 -0
- package/dist/cjs/Columns.js +1 -1
- package/dist/cjs/ConfigurePageSidebar.js +2 -3
- package/dist/cjs/ConfigurePageSidebar.js.map +1 -1
- package/dist/cjs/ConfirmationModal.js +2 -2
- package/dist/cjs/ConfirmationModal.js.map +1 -1
- package/dist/cjs/CopyToClipboardButton.js +1 -2
- package/dist/cjs/CopyToClipboardButton.js.map +1 -1
- package/dist/cjs/DeleteArchiveModal.js +5 -7
- package/dist/cjs/DeleteArchiveModal.js.map +1 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js +0 -1
- package/dist/cjs/DeviceIncompatibilityMessage.js.map +1 -1
- package/dist/cjs/DocumentEditor.js +3 -3
- package/dist/cjs/DocumentEditor.js.map +1 -1
- package/dist/cjs/DynamicVariables.js +4 -6
- package/dist/cjs/DynamicVariables.js.map +1 -1
- package/dist/cjs/EmailForm.js +4 -5
- package/dist/cjs/EmailForm.js.map +1 -1
- package/dist/cjs/EmailPreview.js +4 -5
- package/dist/cjs/EmailPreview.js.map +1 -1
- package/dist/cjs/EmojiPicker.js +1 -1
- package/dist/cjs/EmojiPicker.js.map +1 -1
- package/dist/cjs/EmojiReactions.js +1 -1
- package/dist/cjs/EmojiReactions.js.map +1 -1
- package/dist/cjs/ErrorPage.js +5 -5
- package/dist/cjs/ErrorPage.js.map +1 -1
- package/dist/cjs/FileUpload.js +9 -10
- package/dist/cjs/FileUpload.js.map +1 -1
- package/dist/cjs/FloatingActionMenu.js +19 -38
- package/dist/cjs/FloatingActionMenu.js.map +1 -1
- package/dist/cjs/Header.js +1 -3
- package/dist/cjs/Header.js.map +1 -1
- package/dist/cjs/HelpPopover.js +1 -5
- package/dist/cjs/HelpPopover.js.map +1 -1
- package/dist/cjs/IconPicker.js +2 -3
- package/dist/cjs/IconPicker.js.map +1 -1
- package/dist/cjs/Insights.js +3 -6
- package/dist/cjs/Insights.js.map +1 -1
- package/dist/cjs/IntegrationCard.js +9 -11
- package/dist/cjs/IntegrationCard.js.map +1 -1
- package/dist/cjs/IpRestriction.js +11 -13
- package/dist/cjs/IpRestriction.js.map +1 -1
- package/dist/cjs/KeyboardShortcuts.js +3 -4
- package/dist/cjs/KeyboardShortcuts.js.map +1 -1
- package/dist/cjs/LoginPage.js +3 -6
- package/dist/cjs/LoginPage.js.map +1 -1
- package/dist/cjs/MadeWith.js +0 -1
- package/dist/cjs/MadeWith.js.map +1 -1
- package/dist/cjs/MenuBar.js +6 -6
- package/dist/cjs/MenuBar.js.map +1 -1
- package/dist/cjs/Metadata.js +4 -7
- package/dist/cjs/Metadata.js.map +1 -1
- package/dist/cjs/MobilePreviewHeader.js +1 -1
- package/dist/cjs/MobilePreviewHeader.js.map +1 -1
- package/dist/cjs/MoreDropdown.js +1 -2
- package/dist/cjs/MoreDropdown.js.map +1 -1
- package/dist/cjs/NavigationHeader.js +1 -6
- package/dist/cjs/NavigationHeader.js.map +1 -1
- package/dist/cjs/NeetoWidget.js +1 -2
- package/dist/cjs/NeetoWidget.js.map +1 -1
- package/dist/cjs/Onboarding.js +1 -9
- package/dist/cjs/Onboarding.js.map +1 -1
- package/dist/cjs/OptionFields.js +6 -22
- package/dist/cjs/OptionFields.js.map +1 -1
- package/dist/cjs/PageLoader.js +1 -1
- package/dist/cjs/PageLoader.js.map +1 -1
- package/dist/cjs/PhoneNumber.js +0 -1
- package/dist/cjs/PhoneNumber.js.map +1 -1
- package/dist/cjs/ProductEmbed.js +7 -20
- package/dist/cjs/ProductEmbed.js.map +1 -1
- package/dist/cjs/PublishBlock.js +1 -12
- package/dist/cjs/PublishBlock.js.map +1 -1
- package/dist/cjs/PublishYourItem.js +2 -2
- package/dist/cjs/PublishYourItem.js.map +1 -1
- package/dist/cjs/Rename.js +9 -13
- package/dist/cjs/Rename.js.map +1 -1
- package/dist/cjs/Schedule.js +16 -20
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/SendToFields.js +1 -5
- package/dist/cjs/SendToFields.js.map +1 -1
- package/dist/cjs/SessionEnvironment.js +1 -7
- package/dist/cjs/SessionEnvironment.js.map +1 -1
- package/dist/cjs/Settings.js +8 -9
- package/dist/cjs/Settings.js.map +1 -1
- package/dist/cjs/ShareRecordingPane.js +6 -6
- package/dist/cjs/ShareRecordingPane.js.map +1 -1
- package/dist/cjs/ShareViaEmail.js +6 -9
- package/dist/cjs/ShareViaEmail.js.map +1 -1
- package/dist/cjs/ShareViaLink.js +5 -21
- package/dist/cjs/ShareViaLink.js.map +1 -1
- package/dist/cjs/Sidebar.js +5 -7
- package/dist/cjs/Sidebar.js.map +1 -1
- package/dist/cjs/StatusDropdown.js +6 -9
- package/dist/cjs/StatusDropdown.js.map +1 -1
- package/dist/cjs/StickyRibbonsContainer.js +3 -3
- package/dist/cjs/StickyRibbonsContainer.js.map +1 -1
- package/dist/cjs/SubHeader.js +12 -15
- package/dist/cjs/SubHeader.js.map +1 -1
- package/dist/cjs/Taxonomy.js +3 -5
- package/dist/cjs/Taxonomy.js.map +1 -1
- package/dist/cjs/ToggleFeatureCard.js +17 -23
- package/dist/cjs/ToggleFeatureCard.js.map +1 -1
- package/dist/cjs/VersionHistory.js +1 -3
- package/dist/cjs/VersionHistory.js.map +1 -1
- package/package.json +1 -1
- package/types/IntegrationCard.d.ts +1 -1
- package/types/Settings.d.ts +2 -2
- package/types/ShareViaLink.d.ts +2 -2
- package/types/SubHeader.d.ts +2 -2
- package/types/ToggleFeatureCard.d.ts +3 -3
- package/dist/Chevron-Cat_oK6Q.js.map +0 -1
- package/dist/Columns-CsOYfWFt.js.map +0 -1
- package/dist/cjs/Chevron-ChTcXDNM.js.map +0 -1
- package/dist/cjs/Columns-DHPNrFgq.js.map +0 -1
|
@@ -131,7 +131,6 @@ var EditField = function EditField(_ref) {
|
|
|
131
131
|
children: [/*#__PURE__*/jsx(InputComponent, {
|
|
132
132
|
error: error,
|
|
133
133
|
autoFocus: true,
|
|
134
|
-
"data-cy": "metadata-input-".concat(hyphenate(name)),
|
|
135
134
|
"data-testid": "metadata-input-".concat(hyphenate(name)),
|
|
136
135
|
placeholder: t("neetoMolecules.common.enter", {
|
|
137
136
|
what: label
|
|
@@ -146,7 +145,6 @@ var EditField = function EditField(_ref) {
|
|
|
146
145
|
}), /*#__PURE__*/jsxs("div", {
|
|
147
146
|
className: "neeto-molecules-session-environment-editable-field__actions absolute end-0 top-0 flex h-8 items-center pe-1",
|
|
148
147
|
children: [/*#__PURE__*/jsx(Button, {
|
|
149
|
-
"data-cy": "metadata-cancel-".concat(hyphenate(name)),
|
|
150
148
|
"data-testid": "metadata-cancel-".concat(hyphenate(name)),
|
|
151
149
|
icon: Close,
|
|
152
150
|
size: "small",
|
|
@@ -157,7 +155,6 @@ var EditField = function EditField(_ref) {
|
|
|
157
155
|
},
|
|
158
156
|
onClick: handleMetadataCancel
|
|
159
157
|
}), /*#__PURE__*/jsx(Button, {
|
|
160
|
-
"data-cy": "metadata-submit-".concat(hyphenate(name)),
|
|
161
158
|
"data-testid": "metadata-submit-".concat(hyphenate(name)),
|
|
162
159
|
icon: Check,
|
|
163
160
|
size: "small",
|
|
@@ -247,7 +244,6 @@ var Item = function Item(_ref) {
|
|
|
247
244
|
}, [item]);
|
|
248
245
|
var labelKey = hyphenate(name !== null && name !== void 0 ? name : label);
|
|
249
246
|
return /*#__PURE__*/jsxs("div", {
|
|
250
|
-
"data-cy": "metadata-".concat(labelKey, "-container"),
|
|
251
247
|
"data-testid": "metadata-".concat(labelKey, "-container"),
|
|
252
248
|
className: classnames("mb-3 flex place-items-center gap-2 align-middle", extraWrapperClasses, {
|
|
253
249
|
"flex-wrap": name !== PHONE_NUMBER && allowMultiline,
|
|
@@ -261,7 +257,6 @@ var Item = function Item(_ref) {
|
|
|
261
257
|
})
|
|
262
258
|
}) : /*#__PURE__*/jsx(Typography, {
|
|
263
259
|
className: "neeto-molecules-session-environment-editable-field neeto-ui-text-gray-600 whitespace-nowrap",
|
|
264
|
-
"data-cy": "metadata-label-".concat(labelKey),
|
|
265
260
|
"data-testid": "metadata-label-".concat(labelKey),
|
|
266
261
|
style: "body2",
|
|
267
262
|
children: label || t("neetoMolecules.sessionEnvironment.details.keys.".concat(name))
|
|
@@ -279,7 +274,6 @@ var Item = function Item(_ref) {
|
|
|
279
274
|
content: valueToRender,
|
|
280
275
|
position: "top",
|
|
281
276
|
children: /*#__PURE__*/jsx(Typography, {
|
|
282
|
-
"data-cy": "metadata-value-".concat(labelKey),
|
|
283
277
|
"data-testid": "metadata-value-".concat(labelKey),
|
|
284
278
|
style: "body2",
|
|
285
279
|
weight: "medium",
|
|
@@ -423,7 +417,7 @@ var SessionEnvironment = function SessionEnvironment(_ref) {
|
|
|
423
417
|
})]
|
|
424
418
|
}), /*#__PURE__*/jsx(Button, {
|
|
425
419
|
className: "mb-4",
|
|
426
|
-
"data-
|
|
420
|
+
"data-testid": "view-more-less-button",
|
|
427
421
|
icon: showViewMore ? Up : Down,
|
|
428
422
|
style: "link",
|
|
429
423
|
label: showViewMore ? t("neetoMolecules.sessionEnvironment.viewLess") : t("neetoMolecules.sessionEnvironment.viewMore"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SessionEnvironment.js","sources":["../src/components/SessionEnvironment/constants.js","../src/components/SessionEnvironment/utils.jsx","../src/components/SessionEnvironment/EditField.jsx","../src/components/SessionEnvironment/Item.jsx","../src/components/SessionEnvironment/DetailsBlock.jsx","../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\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: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\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 { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\n\nimport { ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getInputType, mergeRefs } from \"./utils\";\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=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\n data-cy={`metadata-input-${hyphenate(name)}`}\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=\"neeto-molecules-session-environment-editable-field__actions absolute end-0 top-0 flex h-8 items-center pe-1\">\n <Button\n data-cy={`metadata-cancel-${hyphenate(name)}`}\n data-testid={`metadata-cancel-${hyphenate(name)}`}\n icon={Close}\n size=\"small\"\n style=\"text\"\n tooltipProps={{\n content: t(\"neetoMolecules.common.actions.cancel\"),\n position: \"top\",\n }}\n onClick={handleMetadataCancel}\n />\n <Button\n data-cy={`metadata-submit-${hyphenate(name)}`}\n data-testid={`metadata-submit-${hyphenate(name)}`}\n icon={Check}\n size=\"small\"\n style=\"text\"\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 classNames from \"classnames\";\nimport { isPresent, hyphenate } from \"neetocist\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, PHONE_NUMBER } from \"./constants\";\nimport EditField from \"./EditField\";\nimport { getIcon } from \"./utils\";\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)) 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 useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n const labelKey = hyphenate(name ?? label);\n\n return (\n <div\n data-cy={`metadata-${labelKey}-container`}\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\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field neeto-ui-text-gray-600 whitespace-nowrap\"\n data-cy={`metadata-label-${labelKey}`}\n data-testid={`metadata-label-${labelKey}`}\n style=\"body2\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\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 content={valueToRender} position=\"top\">\n <Typography\n data-cy={`metadata-value-${labelKey}`}\n data-testid={`metadata-value-${labelKey}`}\n style=\"body2\"\n weight=\"medium\"\n className={classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n {\n \"neeto-molecules-session-environment-editable-text cursor-pointer p-0.5\":\n isEditable,\n \"whitespace-nowrap\": !allowMultiline,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n </Tooltip>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\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 { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\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\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\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 { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\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 />\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=\"neeto-ui-border-gray-200 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=\"neeto-ui-border-gray-200 my-4\" />\n {pluck(\"value\", customViewMoreItems)}\n </>\n )}\n </>\n )}\n <Button\n className=\"mb-4\"\n data-cy=\"view-more-less-button\"\n icon={showViewMore ? Up : Down}\n style=\"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":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","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","Close","style","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","useEffect","labelKey","classNames","Tooltip","Typography","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","CopyToClipboardButton","DetailsBlock","_ref$allowMultiline","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","detail","map","index","_createElement","key","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"SessionEnvironment.js","sources":["../src/components/SessionEnvironment/constants.js","../src/components/SessionEnvironment/utils.jsx","../src/components/SessionEnvironment/EditField.jsx","../src/components/SessionEnvironment/Item.jsx","../src/components/SessionEnvironment/DetailsBlock.jsx","../src/components/SessionEnvironment/index.jsx"],"sourcesContent":["import {\n Computer,\n Email,\n Location,\n Mobile,\n Phone,\n Subdomain,\n User,\n} from \"neetoicons\";\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: Email,\n phone_number: Phone,\n location: Location,\n timezone: Subdomain,\n chrome: Chrome,\n safari: Safari,\n firefox: Firefox,\n edge: Edge,\n ie: Edge,\n windows: Windows,\n mac_os: Apple,\n linux: Ubuntu,\n mobile: Mobile,\n desktop: Computer,\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 { hyphenate } from \"neetocist\";\nimport useHotkeys from \"neetohotkeys\";\nimport { Check, Close } from \"neetoicons\";\nimport { Button, Input } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { PhoneNumberInput } from \"components/PhoneNumber\";\n\nimport { ENTER, ESCAPE, PHONE_NUMBER } from \"./constants\";\nimport { getInputType, mergeRefs } from \"./utils\";\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=\"neeto-molecules-session-environment-editable-field relative flex min-w-0 flex-grow items-center\">\n <InputComponent\n {...{ error }}\n autoFocus\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=\"neeto-molecules-session-environment-editable-field__actions absolute end-0 top-0 flex h-8 items-center pe-1\">\n <Button\n data-testid={`metadata-cancel-${hyphenate(name)}`}\n icon={Close}\n size=\"small\"\n style=\"text\"\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=\"small\"\n style=\"text\"\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 classNames from \"classnames\";\nimport { isPresent, hyphenate } from \"neetocist\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport { isNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\nimport TimeFormat from \"components/TimeFormat\";\n\nimport { BOOLEAN_VALUES_MAP, PHONE_NUMBER } from \"./constants\";\nimport EditField from \"./EditField\";\nimport { getIcon } from \"./utils\";\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)) 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 useEffect(() => {\n setValue(item.value);\n }, [item]);\n\n const labelKey = hyphenate(name ?? label);\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\n content={\n label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)\n }\n >\n <div className=\"flex-shrink-0\">{iconToRender}</div>\n </Tooltip>\n ) : (\n <Typography\n className=\"neeto-molecules-session-environment-editable-field neeto-ui-text-gray-600 whitespace-nowrap\"\n data-testid={`metadata-label-${labelKey}`}\n style=\"body2\"\n >\n {label || t(`neetoMolecules.sessionEnvironment.details.keys.${name}`)}\n </Typography>\n )}\n {!isEditing ? (\n <>\n {kind === \"datetime\" ? (\n <TimeFormat.DateWeekTime\n date={value}\n typographyProps={{\n style: \"body2\",\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 content={valueToRender} position=\"top\">\n <Typography\n data-testid={`metadata-value-${labelKey}`}\n style=\"body2\"\n weight=\"medium\"\n className={classNames(\n `overflow-hidden truncate whitespace-normal break-all ${extraClasses}`,\n {\n \"neeto-molecules-session-environment-editable-text cursor-pointer p-0.5\":\n isEditable,\n \"whitespace-nowrap\": !allowMultiline,\n }\n )}\n onClick={() => isEditable && setIsEditing(true)}\n >\n {valueToRender}\n </Typography>\n </Tooltip>\n )}\n {showCopyButton && (\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n size=\"small\"\n style=\"text\"\n value={valueToRender}\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 { isPresent, noop } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport Item from \"./Item\";\nimport { isValuePresent } from \"./utils\";\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\n className=\"neeto-ui-text-gray-700\"\n style=\"h5\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\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 { filterBy, isPresent, noop, removeBy } from \"neetocist\";\nimport { Down, Up } from \"neetoicons\";\nimport { Button, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { pluck, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DetailsBlock from \"./DetailsBlock\";\nimport \"./session-environment.scss\";\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 />\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=\"neeto-ui-border-gray-200 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=\"neeto-ui-border-gray-200 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 ? Up : Down}\n style=\"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":["BOOLEAN_VALUES_MAP","ENTER","ESCAPE","PHONE_NUMBER","INTEGER","ICONS_MAP","name","User","user","email","Email","phone_number","Phone","location","Location","timezone","Subdomain","chrome","Chrome","safari","Safari","firefox","Firefox","edge","Edge","ie","windows","Windows","mac_os","Apple","linux","Ubuntu","mobile","Mobile","desktop","Computer","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","Close","style","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","useEffect","labelKey","classNames","Tooltip","Typography","_Fragment","TimeFormat","DateWeekTime","date","typographyProps","weight","CopyToClipboardButton","DetailsBlock","_ref$allowMultiline","details","_ref$handleCancel","noop","_ref$handleSubmit","helpPopoverProps","_ref$showIcons","_ref$title","title","textTransform","HelpPopover","_objectSpread","detail","map","index","_createElement","key","SessionEnvironment","_ref$helpPopoverProps","_ref$iconSize","_ref$isLoading","isLoading","_ref$moreDetails","moreDetails","showViewMore","setShowViewMore","customViewMoreItems","filterBy","Spinner","removeBy","pluck","Up","Down","not"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBO,IAAMA,kBAAkB,GAAG;AAAE,EAAA,MAAA,EAAM,KAAK;EAAE,OAAA,EAAO;AAAK,CAAC;AACvD,IAAMC,KAAK,GAAG,OAAO;AACrB,IAAMC,MAAM,GAAG,QAAQ;AACvB,IAAMC,YAAY,GAAG,cAAc;AACnC,IAAMC,OAAO,GAAG,SAAS;AACzB,IAAMC,SAAS,GAAG;AACvBC,EAAAA,IAAI,EAAEC,IAAI;AACVC,EAAAA,IAAI,EAAED,IAAI;AACVE,EAAAA,KAAK,EAAEC,KAAK;AACZC,EAAAA,YAAY,EAAEC,KAAK;AACnBC,EAAAA,QAAQ,EAAEC,QAAQ;AAClBC,EAAAA,QAAQ,EAAEC,SAAS;AACnBC,EAAAA,MAAM,EAAEC,MAAM;AACdC,EAAAA,MAAM,EAAEC,MAAM;AACdC,EAAAA,OAAO,EAAEC,OAAO;AAChBC,EAAAA,IAAI,EAAEC,IAAI;AACVC,EAAAA,EAAE,EAAED,IAAI;AACRE,EAAAA,OAAO,EAAEC,OAAO;AAChBC,EAAAA,MAAM,EAAEC,KAAK;AACbC,EAAAA,KAAK,EAAEC,MAAM;AACbC,EAAAA,MAAM,EAAEC,MAAM;AACdC,EAAAA,OAAO,EAAEC;AACX,CAAC;;ACpCM,IAAMC,YAAY,GAAG,SAAfA,YAAYA,CAAAC,IAAA,EAAuB;AAAA,EAAA,IAAjB/B,IAAI,GAAA+B,IAAA,CAAJ/B,IAAI;IAAEgC,IAAI,GAAAD,IAAA,CAAJC,IAAI;AACvC,EAAA,IAAIhC,IAAI,KAAKH,YAAY,EAAE,OAAO,KAAK,CAAC,KACnC,IAAImC,IAAI,KAAKlC,OAAO,EAAE,OAAO,QAAQ;AAE1C,EAAA,OAAO,MAAM;AACf,CAAC;AAEM,IAAMmC,OAAO,GAAG,SAAVA,OAAOA,CAAAC,KAAA,EAAkC;AAAA,EAAA,IAA5BC,QAAQ,GAAAD,KAAA,CAARC,QAAQ;IAAEnC,IAAI,GAAAkC,KAAA,CAAJlC,IAAI;IAAEoC,KAAK,GAAAF,KAAA,CAALE,KAAK;AAC7C,EAAA,IAAMC,IAAI,GACRrC,IAAI,KAAK,SAAS,IAAIA,IAAI,KAAK,IAAI,GAC/BD,SAAS,CAACqC,KAAK,aAALA,KAAK,KAAA,MAAA,GAAA,MAAA,GAALA,KAAK,CAAEE,WAAW,EAAE,CAACC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,GACjDxC,SAAS,CAACC,IAAI,CAAC;AAErB,EAAA,OAAOwC,SAAS,CAACH,IAAI,CAAC,gBAAGI,GAAA,CAACJ,IAAI,EAAA;AAACK,IAAAA,IAAI,EAAEP;GAAW,CAAC,GAAG,IAAI;AAC1D,CAAC;AAEM,IAAMQ,cAAc,GAAGC,IAAI,CAACC,IAAI,CAAC,OAAO,CAAC,EAAEL,SAAS,CAAC;AAErD,IAAMM,SAAS,GACpB,SADWA,SAASA,GAAA;AAAA,EAAA,KAAA,IAAAC,IAAA,GAAAC,SAAA,CAAAC,MAAA,EAChBC,IAAI,GAAA,IAAAC,KAAA,CAAAJ,IAAA,GAAAK,IAAA,GAAA,CAAA,EAAAA,IAAA,GAAAL,IAAA,EAAAK,IAAA,EAAA,EAAA;AAAJF,IAAAA,IAAI,CAAAE,IAAA,CAAA,GAAAJ,SAAA,CAAAI,IAAA,CAAA;AAAA,EAAA;AAAA,EAAA,OACR,UAAAC,IAAI,EAAA;IAAA,OACFH,IAAI,CACDI,MAAM,CAACC,OAAO,CAAC,CACfC,OAAO,CAAC,UAAAC,GAAG,EAAA;AAAA,MAAA,OACV,OAAOA,GAAG,KAAK,UAAU,GAAGA,GAAG,CAACJ,IAAI,CAAC,GAAII,GAAG,CAACC,OAAO,GAAGL,IAAK;AAAA,IAAA,CAC9D,CAAC;AAAA,EAAA,CAAA;AAAA,CAAA;;ACjBP,IAAMM,SAAS,GAAG,SAAZA,SAASA,CAAA5B,IAAA,EAST;AAAA,EAAA,IARJ/B,IAAI,GAAA+B,IAAA,CAAJ/B,IAAI;IACJ4D,KAAK,GAAA7B,IAAA,CAAL6B,KAAK;IACLC,KAAK,GAAA9B,IAAA,CAAL8B,KAAK;IACL7B,IAAI,GAAAD,IAAA,CAAJC,IAAI;IACJI,KAAK,GAAAL,IAAA,CAALK,KAAK;IACL0B,YAAY,GAAA/B,IAAA,CAAZ+B,YAAY;IACZC,oBAAoB,GAAAhC,IAAA,CAApBgC,oBAAoB;IACpBC,oBAAoB,GAAAjC,IAAA,CAApBiC,oBAAoB;AAEpB,EAAA,IAAAC,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAMC,QAAQ,GAAGC,UAAU,CAAC1E,KAAK,EAAEqE,oBAAoB,EAAE;AACvDM,IAAAA,IAAI,EAAE;AACR,GAAC,CAAC;AAEF,EAAA,IAAMC,SAAS,GAAGF,UAAU,CAACzE,MAAM,EAAEmE,oBAAoB,EAAE;AACzDO,IAAAA,IAAI,EAAE;AACR,GAAC,CAAC;EAEF,IAAME,cAAc,GAAGxE,IAAI,KAAKH,YAAY,GAAG4E,gBAAgB,GAAGC,KAAK;AAEvE,EAAA,oBACEC,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,iGAAiG;IAAAC,QAAA,EAAA,cAC9GpC,GAAA,CAAC+B,cAAc,EAAA;AACPZ,MAAAA,KAAK,EAALA,KAAK;MACXkB,SAAS,EAAA,IAAA;AACT,MAAA,aAAA,EAAA,iBAAA,CAAAC,MAAA,CAA+BC,SAAS,CAAChF,IAAI,CAAC,CAAG;AACjDiF,MAAAA,WAAW,EAAEd,CAAC,CAAC,6BAA6B,EAAE;AAAEe,QAAAA,IAAI,EAAErB;AAAM,OAAC,CAAE;AAC/DJ,MAAAA,GAAG,EAAEX,SAAS,CAACsB,QAAQ,EAAEG,SAAS,CAAE;MACpCY,IAAI,EAAErD,YAAY,CAAC;AAAE9B,QAAAA,IAAI,EAAJA,IAAI;AAAEgC,QAAAA,IAAI,EAAJA;AAAK,OAAC,CAAE;MACnCI,KAAK,EAAEA,KAAK,IAAI,EAAG;AACnBgD,MAAAA,QAAQ,EAAEtB;KACX,CAAC,eACFa,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,6GAA6G;MAAAC,QAAA,EAAA,cAC1HpC,GAAA,CAAC4C,MAAM,EAAA;AACL,QAAA,aAAA,EAAA,kBAAA,CAAAN,MAAA,CAAgCC,SAAS,CAAChF,IAAI,CAAC,CAAG;AAClDsF,QAAAA,IAAI,EAAEC,KAAM;AACZ7C,QAAAA,IAAI,EAAC,OAAO;AACZ8C,QAAAA,KAAK,EAAC,MAAM;AACZC,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAEvB,CAAC,CAAC,sCAAsC,CAAC;AAClDwB,UAAAA,QAAQ,EAAE;SACV;AACFC,QAAAA,OAAO,EAAE7B;AAAqB,OAC/B,CAAC,eACFtB,GAAA,CAAC4C,MAAM,EAAA;AACL,QAAA,aAAA,EAAA,kBAAA,CAAAN,MAAA,CAAgCC,SAAS,CAAChF,IAAI,CAAC,CAAG;AAClDsF,QAAAA,IAAI,EAAEO,KAAM;AACZnD,QAAAA,IAAI,EAAC,OAAO;AACZ8C,QAAAA,KAAK,EAAC,MAAM;AACZC,QAAAA,YAAY,EAAE;AACZC,UAAAA,OAAO,EAAEvB,CAAC,CAAC,oCAAoC,CAAC;AAChDwB,UAAAA,QAAQ,EAAE;SACV;AACFC,QAAAA,OAAO,EAAE5B;AAAqB,OAC/B,CAAC;AAAA,KACC,CAAC;AAAA,GACH,CAAC;AAEV,CAAC;AAED,kBAAA,aAAe8B,IAAI,CAACnC,SAAS,CAAC;;AC5D9B,IAAMoC,IAAI,GAAG,SAAPA,IAAIA,CAAAhE,IAAA,EAOJ;AAAA,EAAA,IANJiE,cAAc,GAAAjE,IAAA,CAAdiE,cAAc;IACdC,YAAY,GAAAlE,IAAA,CAAZkE,YAAY;IACZC,YAAY,GAAAnE,IAAA,CAAZmE,YAAY;IACZ/D,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IACRgE,IAAI,GAAApE,IAAA,CAAJoE,IAAI;IACJC,SAAS,GAAArE,IAAA,CAATqE,SAAS;AAET,EAAA,IAAAC,SAAA,GAAkCC,QAAQ,CAACH,IAAI,CAACI,SAAS,CAAC;IAAAC,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAAnDE,IAAAA,SAAS,GAAAC,UAAA,CAAA,CAAA,CAAA;AAAEE,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAAG,UAAA,GAA0BL,QAAQ,CAACH,IAAI,CAAC/D,KAAK,CAAC;IAAAwE,UAAA,GAAAH,cAAA,CAAAE,UAAA,EAAA,CAAA,CAAA;AAAvCvE,IAAAA,KAAK,GAAAwE,UAAA,CAAA,CAAA,CAAA;AAAEC,IAAAA,QAAQ,GAAAD,UAAA,CAAA,CAAA,CAAA;AAEtB,EAAA,IAAA3C,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IACEmB,IAAI,GAYFa,IAAI,CAZNb,IAAI;IAAAwB,gBAAA,GAYFX,IAAI,CAXNY,UAAU;AAAVA,IAAAA,UAAU,GAAAD,gBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,gBAAA;IAAAE,kBAAA,GAWhBb,IAAI,CAVNc,YAAY;AAAZA,IAAAA,YAAY,GAAAD,kBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,kBAAA;IAAAE,qBAAA,GAUff,IAAI,CATNgB,mBAAmB;AAAnBA,IAAAA,mBAAmB,GAAAD,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IACxBE,EAAE,GAQAjB,IAAI,CARNiB,EAAE;IACFC,YAAY,GAOVlB,IAAI,CAPNkB,YAAY;IAAAC,YAAA,GAOVnB,IAAI,CANNoB,MAAM;AAANA,IAAAA,MAAM,GAAAD,YAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,YAAA;IACdtH,IAAI,GAKFmG,IAAI,CALNnG,IAAI;IACJgC,IAAI,GAIFmE,IAAI,CAJNnE,IAAI;IACJ4B,KAAK,GAGHuC,IAAI,CAHNvC,KAAK;IACLC,KAAK,GAEHsC,IAAI,CAFNtC,KAAK;IAAA2D,oBAAA,GAEHrB,IAAI,CADNsB,cAAc;AAAdA,IAAAA,cAAc,GAAAD,oBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,oBAAA;AAGxB,EAAA,IAAME,aAAa,GAAGC,OAAO,CAAC,YAAM;AAClC,IAAA,IAAIC,KAAK,CAACxF,KAAK,CAAC,EAAE,OAAO,GAAG;AAE5B,IAAA,IAAI,OAAOA,KAAK,KAAK,SAAS,EAAE,OAAO1C,kBAAkB,CAAC0C,KAAK,CAACyF,QAAQ,EAAE,CAAC;IAE3E,IAAI7H,IAAI,KAAK,OAAO,EAAE,OAAOoC,KAAK,CAACE,WAAW,EAAE;AAEhD,IAAA,OAAOF,KAAK;AACd,EAAA,CAAC,EAAE,CAACA,KAAK,CAAC,CAAC;EAEX,IAAM0F,YAAY,GAAGH,OAAO,CAC1B,YAAA;IAAA,OAAMrC,IAAI,IAAIrD,OAAO,CAAC;AAAEE,MAAAA,QAAQ,EAARA,QAAQ;AAAEnC,MAAAA,IAAI,EAAJA,IAAI;AAAEoC,MAAAA,KAAK,EAALA;AAAM,KAAC,CAAC;EAAA,CAAA,EAChD,CAACkD,IAAI,EAAEnD,QAAQ,EAAEnC,IAAI,EAAEoC,KAAK,CAC9B,CAAC;AAED,EAAA,IAAM2F,SAAS,GAAG,SAAZA,SAASA,GAAA;IAAA,OAASrB,YAAY,CAAC,KAAK,CAAC;AAAA,EAAA,CAAA;AAE3C,EAAA,IAAM1C,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAA;AAAA,IAAA,OACxBkC,YAAY,CAAC;AAAE8B,MAAAA,OAAO,EAAEZ,EAAE;AAAEC,MAAAA,YAAY,EAAZA,YAAY;AAAErH,MAAAA,IAAI,EAAJA,IAAI;AAAEoC,MAAAA,KAAK,EAALA,KAAK;AAAEmF,MAAAA,MAAM,EAANA,MAAM;AAAEQ,MAAAA,SAAS,EAATA;AAAU,KAAC,CAAC;AAAA,EAAA,CAAA;AAE7E,EAAA,IAAMhE,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAS;IACjC2C,YAAY,CAAC,KAAK,CAAC;AACnBG,IAAAA,QAAQ,CAACV,IAAI,CAAC/D,KAAK,CAAC;IACpB6D,YAAY,CAACjG,IAAI,CAAC;EACpB,CAAC;AAED,EAAA,IAAM8D,YAAY,GAAG,SAAfA,YAAYA,CAAGmE,KAAK,EAAI;AAC5B,IAAA,IAAM7F,KAAK,GAAGpC,IAAI,KAAKH,YAAY,GAAGoI,KAAK,GAAGA,KAAK,CAACC,MAAM,CAAC9F,KAAK;IAChEyE,QAAQ,CAACzE,KAAK,CAAC;EACjB,CAAC;AAED+F,EAAAA,SAAS,CAAC,YAAM;AACdtB,IAAAA,QAAQ,CAACV,IAAI,CAAC/D,KAAK,CAAC;AACtB,EAAA,CAAC,EAAE,CAAC+D,IAAI,CAAC,CAAC;EAEV,IAAMiC,QAAQ,GAAGpD,SAAS,CAAChF,IAAI,KAAA,IAAA,IAAJA,IAAI,KAAA,MAAA,GAAJA,IAAI,GAAI6D,KAAK,CAAC;AAEzC,EAAA,oBACEc,IAAA,CAAA,KAAA,EAAA;IACE,aAAA,EAAA,WAAA,CAAAI,MAAA,CAAyBqD,QAAQ,EAAA,YAAA,CAAa;AAC9CxD,IAAAA,SAAS,EAAEyD,UAAU,CACnB,iDAAiD,EACjDlB,mBAAmB,EACnB;AACE,MAAA,WAAW,EAAEnH,IAAI,KAAKH,YAAY,IAAImG,cAAc;AACpD,MAAA,aAAa,EAAE,CAACA;AAClB,KACF,CAAE;IAAAnB,QAAA,EAAA,CAEDuB,SAAS,IAAI5D,SAAS,CAACsF,YAAY,CAAC,gBACnCrF,GAAA,CAAC6F,OAAO,EAAA;MACN5C,OAAO,EACL7B,KAAK,IAAIM,CAAC,mDAAAY,MAAA,CAAmD/E,IAAI,CAAE,CACpE;AAAA6E,MAAAA,QAAA,eAEDpC,GAAA,CAAA,KAAA,EAAA;AAAKmC,QAAAA,SAAS,EAAC,eAAe;AAAAC,QAAAA,QAAA,EAAEiD;OAAkB;AAAC,KAC5C,CAAC,gBAEVrF,GAAA,CAAC8F,UAAU,EAAA;AACT3D,MAAAA,SAAS,EAAC,6FAA6F;MACvG,aAAA,EAAA,iBAAA,CAAAG,MAAA,CAA+BqD,QAAQ,CAAG;AAC1C5C,MAAAA,KAAK,EAAC,OAAO;MAAAX,QAAA,EAEZhB,KAAK,IAAIM,CAAC,mDAAAY,MAAA,CAAmD/E,IAAI,CAAE;AAAC,KAC3D,CACb,EACA,CAACuG,SAAS,gBACT5B,IAAA,CAAA6D,QAAA,EAAA;MAAA3D,QAAA,EAAA,CACG7C,IAAI,KAAK,UAAU,gBAClBS,GAAA,CAACgG,UAAU,CAACC,YAAY,EAAA;AACtBC,QAAAA,IAAI,EAAEvG,KAAM;AACZwG,QAAAA,eAAe,EAAE;AACfpD,UAAAA,KAAK,EAAE,OAAO;AACdqD,UAAAA,MAAM,EAAE,QAAQ;AAChBjE,UAAAA,SAAS,EAAEyD,UAAU,CAAA,uDAAA,CAAAtD,MAAA,CACqCkC,YAAY,CAAA,EACpE;AAAE,YAAA,mBAAmB,EAAE,CAACjB;WAC1B;AACF;AAAE,OACH,CAAC,gBAEFvD,GAAA,CAAC6F,OAAO,EAAA;AAAC5C,QAAAA,OAAO,EAAEgC,aAAc;AAAC/B,QAAAA,QAAQ,EAAC,KAAK;QAAAd,QAAA,eAC7CpC,GAAA,CAAC8F,UAAU,EAAA;UACT,aAAA,EAAA,iBAAA,CAAAxD,MAAA,CAA+BqD,QAAQ,CAAG;AAC1C5C,UAAAA,KAAK,EAAC,OAAO;AACbqD,UAAAA,MAAM,EAAC,QAAQ;AACfjE,UAAAA,SAAS,EAAEyD,UAAU,CAAA,uDAAA,CAAAtD,MAAA,CACqCkC,YAAY,CAAA,EACpE;AACE,YAAA,wEAAwE,EACtEF,UAAU;AACZ,YAAA,mBAAmB,EAAE,CAACf;AACxB,WACF,CAAE;UACFJ,OAAO,EAAE,SAATA,OAAOA,GAAA;AAAA,YAAA,OAAQmB,UAAU,IAAIL,YAAY,CAAC,IAAI,CAAC;UAAA,CAAC;AAAA7B,UAAAA,QAAA,EAE/C6C;SACS;AAAC,OACN,CACV,EACAD,cAAc,iBACbhF,GAAA,CAACqG,qBAAqB,EAAA;AACpBlE,QAAAA,SAAS,EAAC,eAAe;AACzBlC,QAAAA,IAAI,EAAC,OAAO;AACZ8C,QAAAA,KAAK,EAAC,MAAM;AACZpD,QAAAA,KAAK,EAAEsF;AAAc,OACtB,CACF;AAAA,KACD,CAAC,gBAEHjF,GAAA,CAACkB,WAAS,EAAA;AAENC,MAAAA,KAAK,EAALA,KAAK;AACLE,MAAAA,YAAY,EAAZA,YAAY;AACZC,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBC,MAAAA,oBAAoB,EAApBA,oBAAoB;AACpBhC,MAAAA,IAAI,EAAJA,IAAI;AACJ6B,MAAAA,KAAK,EAALA,KAAK;AACL7D,MAAAA,IAAI,EAAJA,IAAI;AACJoC,MAAAA,KAAK,EAALA;AAAK,KAER,CACF;AAAA,GACE,CAAC;AAEV,CAAC;;;;AC9JD,IAAM2G,YAAY,GAAG,SAAfA,YAAYA,CAAAhH,IAAA,EAAA;AAAA,EAAA,IAAAiH,mBAAA,GAAAjH,IAAA,CAChBiE,cAAc;AAAdA,IAAAA,cAAc,GAAAgD,mBAAA,KAAA,MAAA,GAAG,IAAI,GAAAA,mBAAA;IACrBC,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IAAAC,iBAAA,GAAAnH,IAAA,CACPkE,YAAY;AAAZA,IAAAA,YAAY,GAAAiD,iBAAA,KAAA,MAAA,GAAGC,IAAI,GAAAD,iBAAA;IAAAE,iBAAA,GAAArH,IAAA,CACnBmE,YAAY;AAAZA,IAAAA,YAAY,GAAAkD,iBAAA,KAAA,MAAA,GAAGD,IAAI,GAAAC,iBAAA;IACnBC,gBAAgB,GAAAtH,IAAA,CAAhBsH,gBAAgB;IAChBlH,QAAQ,GAAAJ,IAAA,CAARI,QAAQ;IAAAmH,cAAA,GAAAvH,IAAA,CACRqE,SAAS;AAATA,IAAAA,SAAS,GAAAkD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAC,UAAA,GAAAxH,IAAA,CACjByH,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;AAAA,EAAA,oBAEV5E,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,MAAM;AAAC,IAAA,aAAA,EAAY,4BAA4B;IAAAC,QAAA,EAAA,CAC3D2E,KAAK,iBACJ7E,IAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,8BAA8B;MAAAC,QAAA,EAAA,cAC3CpC,GAAA,CAAC8F,UAAU,EAAA;AACT3D,QAAAA,SAAS,EAAC,wBAAwB;AAClCY,QAAAA,KAAK,EAAC,IAAI;AACViE,QAAAA,aAAa,EAAC,WAAW;AACzBZ,QAAAA,MAAM,EAAC,MAAM;AAAAhE,QAAAA,QAAA,EAEZ2E;AAAK,OACI,CAAC,EACZhH,SAAS,CAAC6G,gBAAgB,CAAC,iBAAI5G,GAAA,CAACiH,WAAW,EAAAC,aAAA,CAAA,EAAA,EAAKN,gBAAgB,CAAG,CAAC;AAAA,KAClE,CACN,EACAJ,OAAO,CACL3F,MAAM,CAAC,UAAAsG,MAAM,EAAA;AAAA,MAAA,OAAIA,MAAM,CAAC7C,UAAU,IAAIpE,cAAc,CAACiH,MAAM,CAAC;AAAA,IAAA,CAAA,CAAC,CAC7DC,GAAG,CAAC,UAACD,MAAM,EAAEE,KAAK,EAAA;MAAA,oBACjBC,aAAA,CAAChE,IAAI,EAAA;AAEDC,QAAAA,cAAc,EAAdA,cAAc;AACdC,QAAAA,YAAY,EAAZA,YAAY;AACZC,QAAAA,YAAY,EAAZA,YAAY;AACZ/D,QAAAA,QAAQ,EAARA,QAAQ;AACRiE,QAAAA,SAAS,EAATA,SAAS;AAEXD,QAAAA,IAAI,EAAEyD,MAAO;AACbI,QAAAA,GAAG,EAAEF;AAAM,OACZ,CAAC;AAAA,IAAA,CACH,CAAC;AAAA,GACD,CAAC;AAAA,CACP;AAED,qBAAA,aAAehE,IAAI,CAACiD,YAAY,CAAC;;;;;ACxCjC,IAAMkB,kBAAkB,GAAG,SAArBA,kBAAkBA,CAAAlI,IAAA,EAUlB;AAAA,EAAA,IAAAiH,mBAAA,GAAAjH,IAAA,CATJiE,cAAc;AAAdA,IAAAA,cAAc,GAAAgD,mBAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,mBAAA;IACtBC,OAAO,GAAAlH,IAAA,CAAPkH,OAAO;IAAAC,iBAAA,GAAAnH,IAAA,CACPkE,YAAY;AAAZA,IAAAA,YAAY,GAAAiD,iBAAA,KAAA,MAAA,GAAGC,IAAI,GAAAD,iBAAA;IAAAE,iBAAA,GAAArH,IAAA,CACnBmE,YAAY;AAAZA,IAAAA,YAAY,GAAAkD,iBAAA,KAAA,MAAA,GAAGD,IAAI,GAAAC,iBAAA;IAAAc,qBAAA,GAAAnI,IAAA,CACnBsH,gBAAgB;AAAhBA,IAAAA,gBAAgB,GAAAa,qBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,qBAAA;IAAAC,aAAA,GAAApI,IAAA,CACrBI,QAAQ;AAARA,IAAAA,QAAQ,GAAAgI,aAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,aAAA;IAAAC,cAAA,GAAArI,IAAA,CACbsI,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,MAAA,GAAG,KAAK,GAAAA,cAAA;IAAAE,gBAAA,GAAAvI,IAAA,CACjBwI,WAAW;AAAXA,IAAAA,WAAW,GAAAD,gBAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,gBAAA;IAAAf,UAAA,GAAAxH,IAAA,CAChByH,KAAK;AAALA,IAAAA,KAAK,GAAAD,UAAA,KAAA,MAAA,GAAG,EAAE,GAAAA,UAAA;AAEV,EAAA,IAAAlD,SAAA,GAAwCC,QAAQ,CAAC,KAAK,CAAC;IAAAE,UAAA,GAAAC,cAAA,CAAAJ,SAAA,EAAA,CAAA,CAAA;AAAhDmE,IAAAA,YAAY,GAAAhE,UAAA,CAAA,CAAA,CAAA;AAAEiE,IAAAA,eAAe,GAAAjE,UAAA,CAAA,CAAA,CAAA;EAEpC,IAAMkE,mBAAmB,GAAG/C,OAAO,CACjC,YAAA;AAAA,IAAA,OAAMgD,QAAQ,CAAC;AAAE3I,MAAAA,IAAI,EAAE;KAAU,EAAEuI,WAAW,CAAC;EAAA,CAAA,EAC/C,CAACA,WAAW,CACd,CAAC;AAED,EAAA,IAAAtG,eAAA,GAAcC,cAAc,EAAE;IAAtBC,CAAC,GAAAF,eAAA,CAADE,CAAC;AAET,EAAA,IAAIkG,SAAS,EAAE;AACb,IAAA,oBACE5H,GAAA,CAAA,KAAA,EAAA;AAAKmC,MAAAA,SAAS,EAAC,gDAAgD;AAAAC,MAAAA,QAAA,eAC7DpC,GAAA,CAACmI,OAAO,EAAA,EAAE;AAAC,KACR,CAAC;AAEV,EAAA;AAEA,EAAA,oBACEjG,IAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,QAAQ;IAAAC,QAAA,EAAA,cACrBpC,GAAA,CAACsG,cAAY,EAAA;AAET/C,MAAAA,cAAc,EAAdA,cAAc;AACdiD,MAAAA,OAAO,EAAPA,OAAO;AACPhD,MAAAA,YAAY,EAAZA,YAAY;AACZC,MAAAA,YAAY,EAAZA,YAAY;AACZmD,MAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBlH,MAAAA,QAAQ,EAARA,QAAQ;AACRqH,MAAAA,KAAK,EAALA,KAAK;MAEPpD,SAAS,EAAA;AAAA,KACV,CAAC,EACDoE,YAAY,iBACX7F,IAAA,CAAA6D,QAAA,EAAA;AAAA3D,MAAAA,QAAA,gBACEpC,GAAA,CAAA,IAAA,EAAA;AAAImC,QAAAA,SAAS,EAAC;AAA+B,OAAE,CAAC,eAChDnC,GAAA,CAACsG,cAAY,EAAA;AAET9C,QAAAA,YAAY,EAAZA,YAAY;AACZC,QAAAA,YAAY,EAAZA,YAAY;AACZmD,QAAAA,gBAAgB,EAAhBA,gBAAgB;AAChBlH,QAAAA,QAAQ,EAARA,QAAQ;QAEV8G,OAAO,EAAE4B,QAAQ,CAAC;AAAE7I,UAAAA,IAAI,EAAE;AAAS,SAAC,EAAEuI,WAAW;OAClD,CAAC,EACD/H,SAAS,CAACkI,mBAAmB,CAAC,iBAC7B/F,IAAA,CAAA6D,QAAA,EAAA;AAAA3D,QAAAA,QAAA,gBACEpC,GAAA,CAAA,IAAA,EAAA;AAAImC,UAAAA,SAAS,EAAC;AAA+B,SAAE,CAAC,EAC/CkG,KAAK,CAAC,OAAO,EAAEJ,mBAAmB,CAAC;AAAA,OACpC,CACH;AAAA,KACD,CACH,eACDjI,GAAA,CAAC4C,MAAM,EAAA;AACLT,MAAAA,SAAS,EAAC,MAAM;AAChB,MAAA,aAAA,EAAY,uBAAuB;AACnCU,MAAAA,IAAI,EAAEkF,YAAY,GAAGO,EAAE,GAAGC,IAAK;AAC/BxF,MAAAA,KAAK,EAAC,MAAM;MACZ3B,KAAK,EACH2G,YAAY,GACRrG,CAAC,CAAC,4CAA4C,CAAC,GAC/CA,CAAC,CAAC,4CAA4C,CACnD;MACDyB,OAAO,EAAE,SAATA,OAAOA,GAAA;QAAA,OAAQ6E,eAAe,CAACQ,GAAG,CAAC;AAAA,MAAA;AAAC,KACrC,CAAC;AAAA,GACC,CAAC;AAEV,CAAC;AAyCD,YAAA,aAAenF,IAAI,CAACmE,kBAAkB,CAAC;;;;"}
|
package/dist/Settings.js
CHANGED
|
@@ -39,7 +39,7 @@ var UNSUPPORTED_LINK_PROPS = ["staticContext", "tReady"];
|
|
|
39
39
|
var css = ".neeto-molecules-settings-link:active,.neeto-molecules-settings-link:hover{box-shadow:0 0 9.2px 0 rgba(29,33,59,.122)}.neeto-molecules-settings-link:active .neeto-molecules-settings-item-heading,.neeto-molecules-settings-link:hover .neeto-molecules-settings-item-heading{color:rgb(var(--neeto-ui-primary-500))}.neeto-molecules-settings-link:focus,.neeto-molecules-settings-link:focus-visible{border-color:rgb(var(--neeto-ui-primary-500));box-shadow:0 0 9.2px 0 rgba(29,33,59,.122)}.neeto-molecules-settings-link:focus .neeto-molecules-settings-item-heading,.neeto-molecules-settings-link:focus-visible .neeto-molecules-settings-item-heading{color:rgb(var(--neeto-ui-primary-500))}.neeto-molecules-settings-item [data-dark-mode-color=true]{fill:rgb(var(--neeto-ui-black))}.neeto-molecules-settings-item svg path{stroke-width:1.2px}";
|
|
40
40
|
n(css,{});
|
|
41
41
|
|
|
42
|
-
var _excluded$1 = ["label", "description", "icon", "path", "href", "
|
|
42
|
+
var _excluded$1 = ["label", "description", "icon", "path", "href", "dataTestid", "className", "children"];
|
|
43
43
|
function ownKeys$4(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
44
44
|
function _objectSpread$4(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$4(Object(t), true).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$4(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
45
45
|
var Item = function Item(_ref) {
|
|
@@ -49,13 +49,13 @@ var Item = function Item(_ref) {
|
|
|
49
49
|
Icon = _ref$icon === void 0 ? null : _ref$icon,
|
|
50
50
|
path = _ref.path,
|
|
51
51
|
href = _ref.href,
|
|
52
|
-
|
|
52
|
+
dataTestid = _ref.dataTestid,
|
|
53
53
|
_ref$className = _ref.className,
|
|
54
54
|
className = _ref$className === void 0 ? "" : _ref$className,
|
|
55
55
|
children = _ref.children,
|
|
56
56
|
otherProps = _objectWithoutProperties(_ref, _excluded$1);
|
|
57
57
|
var commonProps = _objectSpread$4({
|
|
58
|
-
"data-
|
|
58
|
+
"data-testid": dataTestid,
|
|
59
59
|
className: classnames("neeto-molecules-settings-link neeto-ui-rounded-lg neeto-ui-border-gray-300 flex cursor-pointer flex-col gap-y-4 border p-6 no-underline outline-none transition-shadow duration-300 ease-in-out group", className)
|
|
60
60
|
}, omit(UNSUPPORTED_LINK_PROPS, otherProps));
|
|
61
61
|
var LinkElement = href ? "a" : Link;
|
|
@@ -67,7 +67,6 @@ var Item = function Item(_ref) {
|
|
|
67
67
|
return /*#__PURE__*/jsxs(LinkElement, _objectSpread$4(_objectSpread$4({}, linkProps), {}, {
|
|
68
68
|
children: [/*#__PURE__*/jsxs("div", {
|
|
69
69
|
className: "neeto-molecules-settings-item",
|
|
70
|
-
"data-cy": "settings-item-".concat(joinHyphenCase(label)),
|
|
71
70
|
"data-testid": "settings-item-".concat(joinHyphenCase(label)),
|
|
72
71
|
children: [/*#__PURE__*/jsxs("div", {
|
|
73
72
|
className: "mb-2.5 flex items-center gap-3",
|
|
@@ -76,14 +75,14 @@ var Item = function Item(_ref) {
|
|
|
76
75
|
size: 24
|
|
77
76
|
}), /*#__PURE__*/jsx(Typography, {
|
|
78
77
|
className: "neeto-molecules-settings-item-heading neeto-ui-text-black transition-color text-lg leading-6 duration-300 ease-in-out",
|
|
79
|
-
"data-
|
|
78
|
+
"data-testid": "settings-item-heading",
|
|
80
79
|
style: "h3",
|
|
81
80
|
weight: "semibold",
|
|
82
81
|
children: label
|
|
83
82
|
})]
|
|
84
83
|
}), /*#__PURE__*/jsx(Typography, {
|
|
85
84
|
className: "neeto-ui-text-gray-600",
|
|
86
|
-
"data-
|
|
85
|
+
"data-testid": "settings-item-description",
|
|
87
86
|
style: "body2",
|
|
88
87
|
children: description
|
|
89
88
|
})]
|
|
@@ -112,10 +111,10 @@ var IntegrationItem = withT(function (_ref) {
|
|
|
112
111
|
label: label,
|
|
113
112
|
path: path
|
|
114
113
|
}, otherProps)), {}, {
|
|
115
|
-
|
|
114
|
+
dataTestid: "".concat(hyphenate(label).replace(/\./g, "-"), "-integration-card"),
|
|
116
115
|
children: isConnected && /*#__PURE__*/jsx(Tag, {
|
|
117
116
|
className: "flex-row-reverse",
|
|
118
|
-
"data-
|
|
117
|
+
"data-testid": "integration-status-tag",
|
|
119
118
|
icon: Check,
|
|
120
119
|
label: t("neetoMolecules.integrationCard.connected"),
|
|
121
120
|
style: "success"
|
|
@@ -141,7 +140,7 @@ var Category = function Category(_ref) {
|
|
|
141
140
|
children: [isLabelPresent && /*#__PURE__*/jsx(Typography, {
|
|
142
141
|
className: "mb-6 mt-2",
|
|
143
142
|
component: "h2",
|
|
144
|
-
"data-
|
|
143
|
+
"data-testid": "settings-category-heading",
|
|
145
144
|
style: "h2",
|
|
146
145
|
weight: "semibold",
|
|
147
146
|
children: label
|
package/dist/Settings.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/IntegrationItem.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\nimport \"./settings.scss\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n href,\n dataCy,\n className = \"\",\n children,\n ...otherProps\n}) => {\n const commonProps = {\n \"data-cy\": dataCy,\n className: classnames(\n \"neeto-molecules-settings-link neeto-ui-rounded-lg neeto-ui-border-gray-300 flex cursor-pointer flex-col gap-y-4 border p-6 no-underline outline-none transition-shadow duration-300 ease-in-out group\",\n className\n ),\n ...omit(UNSUPPORTED_LINK_PROPS, otherProps),\n };\n\n const LinkElement = href ? \"a\" : Link;\n const linkProps = href\n ? { href, ...commonProps }\n : { to: path, ...commonProps };\n\n return (\n <LinkElement {...linkProps}>\n <div\n className=\"neeto-molecules-settings-item\"\n data-cy={`settings-item-${joinHyphenCase(label)}`}\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2.5 flex items-center gap-3\">\n {Icon && <Icon className=\"neeto-ui-text-gray-500\" size={24} />}\n <Typography\n className=\"neeto-molecules-settings-item-heading neeto-ui-text-black transition-color text-lg leading-6 duration-300 ease-in-out\"\n data-cy=\"settings-item-heading\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography\n className=\"neeto-ui-text-gray-600\"\n data-cy=\"settings-item-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </LinkElement>\n );\n};\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataCy={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-cy=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-cy=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 py-1 md:grid-cols-2 lg:grid-cols-2 lg:gap-4 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n headerProps = {},\n categories = [],\n className = \"\",\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", className, {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\n {...headerProps}\n />\n )}\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n /**\n * Additional classes to be added to the container.\n */\n className: propTypes.string,\n /**\n * Props to be passed to the header component.\n */\n headerProps: propTypes.object,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","href","dataCy","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","commonProps","_objectSpread","classnames","omit","LinkElement","Link","linkProps","to","_jsxs","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_ref$headerProps","headerProps","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Settings.js","sources":["../src/components/Settings/constants.js","../src/components/Settings/Item.jsx","../src/components/Settings/IntegrationItem.jsx","../src/components/Settings/Category.jsx","../src/components/Settings/utils.js","../src/components/Settings/index.jsx"],"sourcesContent":["export const UNSUPPORTED_LINK_PROPS = [\"staticContext\", \"tReady\"];\n","import { memo } from \"react\";\n\nimport classnames from \"classnames\";\nimport { joinHyphenCase } from \"neetocommons/utils/general\";\nimport { Typography } from \"neetoui\";\nimport { omit } from \"ramda\";\nimport { withRouter, Link } from \"react-router-dom\";\n\nimport { UNSUPPORTED_LINK_PROPS } from \"./constants\";\nimport \"./settings.scss\";\n\nconst Item = ({\n label,\n description,\n icon: Icon = null,\n path,\n href,\n dataTestid,\n className = \"\",\n children,\n ...otherProps\n}) => {\n const commonProps = {\n \"data-testid\": dataTestid,\n className: classnames(\n \"neeto-molecules-settings-link neeto-ui-rounded-lg neeto-ui-border-gray-300 flex cursor-pointer flex-col gap-y-4 border p-6 no-underline outline-none transition-shadow duration-300 ease-in-out group\",\n className\n ),\n ...omit(UNSUPPORTED_LINK_PROPS, otherProps),\n };\n\n const LinkElement = href ? \"a\" : Link;\n const linkProps = href\n ? { href, ...commonProps }\n : { to: path, ...commonProps };\n\n return (\n <LinkElement {...linkProps}>\n <div\n className=\"neeto-molecules-settings-item\"\n data-testid={`settings-item-${joinHyphenCase(label)}`}\n >\n <div className=\"mb-2.5 flex items-center gap-3\">\n {Icon && <Icon className=\"neeto-ui-text-gray-500\" size={24} />}\n <Typography\n className=\"neeto-molecules-settings-item-heading neeto-ui-text-black transition-color text-lg leading-6 duration-300 ease-in-out\"\n data-testid=\"settings-item-heading\"\n style=\"h3\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n </div>\n <Typography\n className=\"neeto-ui-text-gray-600\"\n data-testid=\"settings-item-description\"\n style=\"body2\"\n >\n {description}\n </Typography>\n </div>\n {children && (\n <div className=\"neeto-ui-border-gray-300 border-t pt-3\">{children}</div>\n )}\n </LinkElement>\n );\n};\n\nexport default memo(withRouter(Item));\n","import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { withT } from \"neetocommons/react-utils\";\nimport { Check } from \"neetoicons\";\nimport { Tag } from \"neetoui\";\n\nimport Item from \"./Item\";\n\nconst IntegrationItem = withT(\n ({ t, isConnected, icon, description, label, path, ...otherProps }) => (\n <Item\n {...{ description, icon, label, path, ...otherProps }}\n dataTestid={`${hyphenate(label).replace(/\\./g, \"-\")}-integration-card`}\n >\n {isConnected && (\n <Tag\n className=\"flex-row-reverse\"\n data-testid=\"integration-status-tag\"\n icon={Check}\n label={t(\"neetoMolecules.integrationCard.connected\")}\n style=\"success\"\n />\n )}\n </Item>\n )\n);\n\nexport default memo(IntegrationItem);\n","import classNames from \"classnames\";\nimport { isPresent } from \"neetocist\";\nimport { Typography } from \"neetoui\";\n\nimport IntegrationItem from \"./IntegrationItem\";\nimport Item from \"./Item\";\n\nconst Category = ({ items, label, id, isIntegration }) => {\n const SettingsCard = isIntegration ? IntegrationItem : Item;\n\n const isLabelPresent = isPresent(label);\n\n return (\n <div\n {...{ id }}\n className={classNames(\"flex flex-col\", { \"mb-7\": isLabelPresent })}\n >\n {isLabelPresent && (\n <Typography\n className=\"mb-6 mt-2\"\n component=\"h2\"\n data-testid=\"settings-category-heading\"\n style=\"h2\"\n weight=\"semibold\"\n >\n {label}\n </Typography>\n )}\n <div className=\"grid grid-cols-1 gap-3 py-1 md:grid-cols-2 lg:grid-cols-2 lg:gap-4 xl:grid-cols-3 2xl:grid-cols-4\">\n {items.map(item => (\n <SettingsCard key={item.label} {...item} />\n ))}\n </div>\n </div>\n );\n};\n\nexport default Category;\n","import { filterBy, isNotEmpty } from \"neetocist\";\n\nconst isTextMatching = (label, searchTerm) =>\n label.toLowerCase().includes(searchTerm.trim().toLowerCase());\n\nexport const scrollIntoSettingCategory = activeCategory => {\n document.getElementById(activeCategory)?.scrollIntoView({\n behavior: \"smooth\",\n });\n};\n\nexport const filterCategories = ({ categories = [], searchTerm = \"\" }) => {\n const isSearchTermBlank = !searchTerm.trim();\n\n const filteredCategories = isSearchTermBlank\n ? categories\n : categories.map(category => ({\n ...category,\n items: filterBy(\n ({ label, description }) =>\n isTextMatching(label, searchTerm) ||\n isTextMatching(description, searchTerm),\n category.items\n ),\n }));\n\n return filterBy({ items: isNotEmpty }, filteredCategories);\n};\n","import { useEffect } from \"react\";\n\nimport classNames from \"classnames\";\nimport useQueryParams from \"neetocommons/react-utils/useQueryParams\";\nimport { NoData } from \"neetoui\";\nimport propTypes from \"prop-types\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Header from \"components/Header\";\n\nimport Category from \"./Category\";\nimport { filterCategories, scrollIntoSettingCategory } from \"./utils\";\n\nconst Settings = ({\n isTitleHidden = false,\n isSearchHidden = false,\n title,\n headerProps = {},\n categories = [],\n className = \"\",\n}) => {\n const { t } = useTranslation();\n\n const { category: categoryParam, searchTerm = \"\" } = useQueryParams();\n\n const filteredCategories = filterCategories({ categories, searchTerm });\n\n const isHeaderVisible = !isSearchHidden || !isTitleHidden;\n\n const headerTitle = title ?? t(\"neetoMolecules.settingsPage.title\");\n\n useEffect(() => {\n scrollIntoSettingCategory(categoryParam);\n }, [categoryParam]);\n\n return (\n <div\n className={classNames(\"neeto-molecules-container\", className, {\n \"h-auto overflow-y-auto\": isTitleHidden,\n })}\n >\n {isHeaderVisible && (\n <Header\n className={classNames({ \"min-h-0 pb-4 pt-8\": isTitleHidden })}\n title={!isTitleHidden && headerTitle}\n searchProps={\n isSearchHidden\n ? null\n : {\n className: \"w-72\",\n placeholder: t(\n \"neetoMolecules.settingsPage.placeholder.search\"\n ),\n }\n }\n {...headerProps}\n />\n )}\n {isEmpty(filteredCategories) ? (\n <div\n className=\"flex h-full w-full flex-grow items-center justify-center\"\n data-testid=\"settings-no-data\"\n >\n <NoData title={t(\"neetoMolecules.settingsPage.noData\")} />\n </div>\n ) : (\n <div className=\"w-full\">\n {filteredCategories.map(({ id, label, items, isIntegration }) => (\n <Category {...{ id, isIntegration, items, label }} key={id} />\n ))}\n </div>\n )}\n </div>\n );\n};\n\nSettings.propTypes = {\n /**\n * Whether to hide the title or not.\n */\n isTitleHidden: propTypes.bool,\n /**\n * This can be used to customize the title.\n */\n title: propTypes.string,\n /**\n * Whether to hide the search bar or not.\n */\n isSearchHidden: propTypes.bool,\n /**\n * An array of setting categories to be displayed.\n */\n categories: propTypes.array,\n /**\n * Additional classes to be added to the container.\n */\n className: propTypes.string,\n /**\n * Props to be passed to the header component.\n */\n headerProps: propTypes.object,\n};\n\nexport default Settings;\n"],"names":["UNSUPPORTED_LINK_PROPS","Item","_ref","label","description","_ref$icon","icon","Icon","path","href","dataTestid","_ref$className","className","children","otherProps","_objectWithoutProperties","_excluded","commonProps","_objectSpread","classnames","omit","LinkElement","Link","linkProps","to","_jsxs","concat","joinHyphenCase","_jsx","size","Typography","style","weight","memo","withRouter","IntegrationItem","withT","t","isConnected","hyphenate","replace","Tag","Check","Category","items","id","isIntegration","SettingsCard","isLabelPresent","isPresent","classNames","component","map","item","isTextMatching","searchTerm","toLowerCase","includes","trim","scrollIntoSettingCategory","activeCategory","_document$getElementB","document","getElementById","scrollIntoView","behavior","filterCategories","_ref$categories","categories","_ref$searchTerm","isSearchTermBlank","filteredCategories","category","filterBy","_ref2","isNotEmpty","Settings","_ref$isTitleHidden","isTitleHidden","_ref$isSearchHidden","isSearchHidden","title","_ref$headerProps","headerProps","_useTranslation","useTranslation","_useQueryParams","useQueryParams","categoryParam","_useQueryParams$searc","isHeaderVisible","headerTitle","useEffect","Header","searchProps","placeholder","isEmpty","NoData","_createElement","key"],"mappings":"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"}
|
|
@@ -159,11 +159,11 @@ var SharePaneBody = function SharePaneBody(_ref) {
|
|
|
159
159
|
actionBlock: /*#__PURE__*/jsxs("div", {
|
|
160
160
|
className: "flex items-center gap-x-2",
|
|
161
161
|
children: [/*#__PURE__*/jsx(Button, {
|
|
162
|
-
"data-
|
|
162
|
+
"data-testid": "regenerate-url-button",
|
|
163
163
|
label: t("neetoMolecules.shareRecording.regenerateUrl"),
|
|
164
164
|
onClick: handleRegenerateUrl
|
|
165
165
|
}), /*#__PURE__*/jsx(Button, {
|
|
166
|
-
"data-
|
|
166
|
+
"data-testid": "cancel-button",
|
|
167
167
|
label: t("neetoMolecules.shareRecording.cancel"),
|
|
168
168
|
style: "secondary",
|
|
169
169
|
onClick: onClose
|
|
@@ -179,7 +179,7 @@ var SharePaneBody = function SharePaneBody(_ref) {
|
|
|
179
179
|
}), /*#__PURE__*/jsx(Input, {
|
|
180
180
|
unlimitedChars: true,
|
|
181
181
|
className: "w-40",
|
|
182
|
-
"data-
|
|
182
|
+
"data-testid": "time-input",
|
|
183
183
|
placeholder: showHours ? "HH:MM:SS" : "MM:SS",
|
|
184
184
|
value: rawInput,
|
|
185
185
|
onBlur: formatAndSetTime,
|
|
@@ -189,7 +189,7 @@ var SharePaneBody = function SharePaneBody(_ref) {
|
|
|
189
189
|
}), enableAutoplayAndMuteFlags && /*#__PURE__*/jsxs(Fragment, {
|
|
190
190
|
children: [/*#__PURE__*/jsx(Switch, {
|
|
191
191
|
checked: muted,
|
|
192
|
-
"data-
|
|
192
|
+
"data-testid": "muted-checkbox",
|
|
193
193
|
id: "muted",
|
|
194
194
|
label: t("neetoMolecules.shareRecording.muted"),
|
|
195
195
|
name: "muted",
|
|
@@ -198,7 +198,7 @@ var SharePaneBody = function SharePaneBody(_ref) {
|
|
|
198
198
|
}
|
|
199
199
|
}), /*#__PURE__*/jsx(Switch, {
|
|
200
200
|
checked: autoplay,
|
|
201
|
-
"data-
|
|
201
|
+
"data-testid": "autoplay-checkbox",
|
|
202
202
|
id: "autoplay",
|
|
203
203
|
label: t("neetoMolecules.shareRecording.autoplay"),
|
|
204
204
|
name: "autoplay",
|
|
@@ -266,7 +266,7 @@ var ShareRecordingPane = function ShareRecordingPane(_ref) {
|
|
|
266
266
|
onClose: onClose,
|
|
267
267
|
size: size
|
|
268
268
|
}, otherProps)), {}, {
|
|
269
|
-
"data-
|
|
269
|
+
"data-testid": "share-pane",
|
|
270
270
|
children: [/*#__PURE__*/jsx(Pane.Header, {
|
|
271
271
|
children: /*#__PURE__*/jsx(Typography, {
|
|
272
272
|
style: "h2",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ShareRecordingPane.js","sources":["../src/components/ShareRecordingPane/constants.js","../src/components/ShareRecordingPane/utils.js","../src/components/ShareRecordingPane/SharePaneBody.jsx","../src/components/ShareRecordingPane/index.jsx"],"sourcesContent":["export const ONE_SECOND = 1;\nexport const ONE_MINUTE = 60 * ONE_SECOND;\nexport const ONE_HOUR = 60 * ONE_MINUTE;\n","import { ONE_HOUR, ONE_MINUTE } from \"./constants\";\n\nexport const padZero = (number, length = 2) => {\n let string = String(number);\n const threshold = Math.pow(10, length - 1);\n\n if (number < threshold) {\n while (String(threshold).length > string.length) {\n string = `0${number}`;\n }\n }\n\n return string;\n};\n\nexport const shouldRenderHoursInput = duration => {\n const hours = Math.floor(duration / ONE_HOUR);\n\n return hours > 0;\n};\n\nexport const formatTime = (timeInSeconds, showHours) => {\n const hours = Math.floor(timeInSeconds / ONE_HOUR);\n const minutes = Math.floor((timeInSeconds % ONE_HOUR) / ONE_MINUTE);\n const seconds = timeInSeconds % ONE_MINUTE;\n\n return showHours\n ? `${padZero(hours)}:${padZero(minutes)}:${padZero(seconds)}`\n : `${padZero(minutes)}:${padZero(seconds)}`;\n};\n\nexport const parseTime = timeString => {\n const parts = timeString\n .split(\":\")\n .map(part => (part === \"\" ? NaN : parseInt(part, 10)));\n if (parts.some(isNaN) || parts.length > 3) {\n return 0;\n }\n\n if (parts.length === 1) {\n return parts[0];\n } else if (parts.length === 2) {\n return parts[0] * ONE_MINUTE + parts[1];\n } else if (parts.length === 3) {\n return parts[0] * ONE_HOUR + parts[1] * ONE_MINUTE + parts[2];\n }\n\n return 0;\n};\n\nexport const validateInput = input => {\n const regex = /^[0-9:]{0,8}$/;\n const colons = (input.match(/:/g) || []).length;\n\n return regex.test(input) && colons <= 2;\n};\n","import { useState, useEffect, useCallback } from \"react\";\n\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Label, Typography, Input, Switch, Button } from \"neetoui\";\nimport { assoc, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport {\n formatTime,\n parseTime,\n shouldRenderHoursInput,\n validateInput,\n} from \"./utils\";\n\nconst SharePaneBody = ({\n recordingUrls,\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n preview: Preview,\n enableAutoplayAndMuteFlags,\n}) => {\n const { t } = useTranslation();\n\n const currentTimestamp = getCurrentTimestamp();\n\n const [shareLinks, setShareLinks] = useState([]);\n const [currentPlaybackTime, setCurrentPlaybackTime] =\n useState(currentTimestamp);\n\n const [params, setParams] = useState({\n muted: false,\n autoplay: false,\n });\n\n const { muted, autoplay } = params;\n\n const [rawInput, setRawInput] = useState(\"\");\n\n const showHours = shouldRenderHoursInput(totalDuration);\n\n const handlePlaybackTimestampChange = e => {\n const input = e.target.value;\n if (validateInput(input)) {\n setRawInput(input);\n }\n };\n\n const handleFlagsChange = (key, value) => setParams(assoc(key, value));\n\n const formatAndSetTime = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setRawInput(formatTime(timeInSeconds, showHours));\n };\n\n const handleKeyDown = e => {\n if (e.key !== \"Enter\") return;\n formatAndSetTime();\n };\n\n const generateUrls = useCallback(\n (timeInSeconds, urlParams) => {\n const playbackUrls = recordingUrls.map(recordingUrl =>\n buildUrl(recordingUrl, {\n time: timeInSeconds,\n muted: urlParams.muted ? 1 : undefined,\n autoplay: urlParams.autoplay ? 1 : undefined,\n })\n );\n setShareLinks(playbackUrls);\n },\n [recordingUrls]\n );\n\n const handleRegenerateUrl = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setCurrentPlaybackTime(timeInSeconds);\n generateUrls(timeInSeconds, params);\n };\n\n useEffect(() => {\n if (not(isOpen)) return;\n\n const initialTime = currentTimestamp > 0 ? currentTimestamp : 0;\n const initialParams = { muted: false, autoplay: false };\n\n setCurrentPlaybackTime(initialTime);\n setRawInput(formatTime(initialTime, showHours));\n setParams(initialParams);\n generateUrls(initialTime, initialParams);\n }, [isOpen, showHours, currentTimestamp, generateUrls]);\n\n return (\n <div className=\"flex w-full flex-col gap-y-6\">\n <CardLayout\n title={t(\"neetoMolecules.shareRecording.configureUrlParameters\")}\n actionBlock={\n <div className=\"flex items-center gap-x-2\">\n <Button\n data-cy=\"regenerate-url-button\"\n label={t(\"neetoMolecules.shareRecording.regenerateUrl\")}\n onClick={handleRegenerateUrl}\n />\n <Button\n data-cy=\"cancel-button\"\n label={t(\"neetoMolecules.shareRecording.cancel\")}\n style=\"secondary\"\n onClick={onClose}\n />\n </div>\n }\n description={t(\n \"neetoMolecules.shareRecording.configureUrlParametersDescription\"\n )}\n >\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"flex items-center gap-x-2\">\n <Label>{t(\"neetoMolecules.shareRecording.startVideoAt\")}</Label>\n <Input\n unlimitedChars\n className=\"w-40\"\n data-cy=\"time-input\"\n placeholder={showHours ? \"HH:MM:SS\" : \"MM:SS\"}\n value={rawInput}\n onBlur={formatAndSetTime}\n onChange={handlePlaybackTimestampChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n {enableAutoplayAndMuteFlags && (\n <>\n <Switch\n checked={muted}\n data-cy=\"muted-checkbox\"\n id=\"muted\"\n label={t(\"neetoMolecules.shareRecording.muted\")}\n name=\"muted\"\n onChange={e => handleFlagsChange(\"muted\", e.target.checked)}\n />\n <Switch\n checked={autoplay}\n data-cy=\"autoplay-checkbox\"\n id=\"autoplay\"\n label={t(\"neetoMolecules.shareRecording.autoplay\")}\n name=\"autoplay\"\n onChange={e => handleFlagsChange(\"autoplay\", e.target.checked)}\n />\n </>\n )}\n </div>\n </CardLayout>\n <div className=\"flex flex-col gap-y-2\">\n <Typography style=\"h3\">\n {t(\"neetoMolecules.shareRecording.generatedUrls\")}\n </Typography>\n {shareLinks.map((shareLink, index) => (\n <div\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex w-full items-center justify-between gap-1 p-2\"\n key={index}\n >\n <Typography className=\"min-w-0 flex-1 break-words\" style=\"body2\">\n {shareLink}\n </Typography>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n style=\"secondary\"\n value={shareLink}\n />\n </div>\n ))}\n </div>\n {Preview && (\n <div className=\"flex flex-col gap-y-2 pt-2\">\n <Label>{t(\"neetoMolecules.shareRecording.preview\")}</Label>\n <Preview {...{ currentPlaybackTime }} />\n </div>\n )}\n </div>\n );\n};\n\nexport default SharePaneBody;\n","import { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SharePaneBody from \"./SharePaneBody\";\n\nconst ShareRecordingPane = ({\n recordingUrl = null,\n recordingUrls = [],\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n isLoading = false,\n preview,\n enableAutoplayAndMuteFlags = false,\n size = \"large\",\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const recordingUrlsToShare = isNotEmpty(recordingUrls)\n ? recordingUrls\n : [recordingUrl];\n\n return (\n <Pane {...{ isOpen, onClose, size, ...otherProps }} data-cy=\"share-pane\">\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.shareRecording.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"flex flex-col gap-y-2\">\n {isLoading ? (\n <Spinner className=\"mx-auto\" />\n ) : (\n <SharePaneBody\n {...{\n enableAutoplayAndMuteFlags,\n getCurrentTimestamp,\n isOpen,\n onClose,\n preview,\n totalDuration,\n }}\n recordingUrls={recordingUrlsToShare}\n />\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nShareRecordingPane.propTypes = {\n /**\n * Recording URL used for building the share link.\n */\n recordingUrl: PropTypes.string,\n /**\n * Recording URLs used for building the share link.\n */\n recordingUrls: PropTypes.array,\n /**\n * Total duration of the content being shared.\n */\n totalDuration: PropTypes.number.isRequired,\n /**\n * A function that returns current playback time of the recorded content in seconds.\n */\n getCurrentTimestamp: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether the pane is open or not.\n */\n isOpen: PropTypes.bool.isRequired,\n /**\n * Function to close the pane.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether content is loading or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Component to render as a preview of the recording.\n */\n preview: PropTypes.elementType,\n /**\n * Size of the pane.\n */\n size: PropTypes.oneOf([\"extraLarge\", \"large\", \"small\"]),\n};\n\nexport default ShareRecordingPane;\n"],"names":["ONE_SECOND","ONE_MINUTE","ONE_HOUR","padZero","number","length","arguments","undefined","string","String","threshold","Math","pow","concat","shouldRenderHoursInput","duration","hours","floor","formatTime","timeInSeconds","showHours","minutes","seconds","parseTime","timeString","parts","split","map","part","NaN","parseInt","some","isNaN","validateInput","input","regex","colons","match","test","SharePaneBody","_ref","recordingUrls","totalDuration","getCurrentTimestamp","isOpen","onClose","Preview","preview","enableAutoplayAndMuteFlags","_useTranslation","useTranslation","t","currentTimestamp","_useState","useState","_useState2","_slicedToArray","shareLinks","setShareLinks","_useState3","_useState4","currentPlaybackTime","setCurrentPlaybackTime","_useState5","muted","autoplay","_useState6","params","setParams","_useState7","_useState8","rawInput","setRawInput","handlePlaybackTimestampChange","e","target","value","handleFlagsChange","key","assoc","formatAndSetTime","handleKeyDown","generateUrls","useCallback","urlParams","playbackUrls","recordingUrl","buildUrl","time","handleRegenerateUrl","useEffect","not","initialTime","initialParams","_jsxs","className","children","_jsx","CardLayout","title","actionBlock","Button","label","onClick","style","description","Label","Input","unlimitedChars","placeholder","onBlur","onChange","onKeyDown","_Fragment","Switch","checked","id","name","Typography","shareLink","index","CopyToClipboardButton","ShareRecordingPane","_ref$recordingUrl","_ref$recordingUrls","_ref$isLoading","isLoading","_ref$enableAutoplayAn","_ref$size","size","otherProps","_objectWithoutProperties","_excluded","recordingUrlsToShare","isNotEmpty","Pane","_objectSpread","Header","Body","Spinner"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ShareRecordingPane.js","sources":["../src/components/ShareRecordingPane/constants.js","../src/components/ShareRecordingPane/utils.js","../src/components/ShareRecordingPane/SharePaneBody.jsx","../src/components/ShareRecordingPane/index.jsx"],"sourcesContent":["export const ONE_SECOND = 1;\nexport const ONE_MINUTE = 60 * ONE_SECOND;\nexport const ONE_HOUR = 60 * ONE_MINUTE;\n","import { ONE_HOUR, ONE_MINUTE } from \"./constants\";\n\nexport const padZero = (number, length = 2) => {\n let string = String(number);\n const threshold = Math.pow(10, length - 1);\n\n if (number < threshold) {\n while (String(threshold).length > string.length) {\n string = `0${number}`;\n }\n }\n\n return string;\n};\n\nexport const shouldRenderHoursInput = duration => {\n const hours = Math.floor(duration / ONE_HOUR);\n\n return hours > 0;\n};\n\nexport const formatTime = (timeInSeconds, showHours) => {\n const hours = Math.floor(timeInSeconds / ONE_HOUR);\n const minutes = Math.floor((timeInSeconds % ONE_HOUR) / ONE_MINUTE);\n const seconds = timeInSeconds % ONE_MINUTE;\n\n return showHours\n ? `${padZero(hours)}:${padZero(minutes)}:${padZero(seconds)}`\n : `${padZero(minutes)}:${padZero(seconds)}`;\n};\n\nexport const parseTime = timeString => {\n const parts = timeString\n .split(\":\")\n .map(part => (part === \"\" ? NaN : parseInt(part, 10)));\n if (parts.some(isNaN) || parts.length > 3) {\n return 0;\n }\n\n if (parts.length === 1) {\n return parts[0];\n } else if (parts.length === 2) {\n return parts[0] * ONE_MINUTE + parts[1];\n } else if (parts.length === 3) {\n return parts[0] * ONE_HOUR + parts[1] * ONE_MINUTE + parts[2];\n }\n\n return 0;\n};\n\nexport const validateInput = input => {\n const regex = /^[0-9:]{0,8}$/;\n const colons = (input.match(/:/g) || []).length;\n\n return regex.test(input) && colons <= 2;\n};\n","import { useState, useEffect, useCallback } from \"react\";\n\nimport { buildUrl } from \"neetocommons/utils\";\nimport { Label, Typography, Input, Switch, Button } from \"neetoui\";\nimport { assoc, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport CardLayout from \"components/CardLayout\";\nimport CopyToClipboardButton from \"components/CopyToClipboardButton\";\n\nimport {\n formatTime,\n parseTime,\n shouldRenderHoursInput,\n validateInput,\n} from \"./utils\";\n\nconst SharePaneBody = ({\n recordingUrls,\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n preview: Preview,\n enableAutoplayAndMuteFlags,\n}) => {\n const { t } = useTranslation();\n\n const currentTimestamp = getCurrentTimestamp();\n\n const [shareLinks, setShareLinks] = useState([]);\n const [currentPlaybackTime, setCurrentPlaybackTime] =\n useState(currentTimestamp);\n\n const [params, setParams] = useState({\n muted: false,\n autoplay: false,\n });\n\n const { muted, autoplay } = params;\n\n const [rawInput, setRawInput] = useState(\"\");\n\n const showHours = shouldRenderHoursInput(totalDuration);\n\n const handlePlaybackTimestampChange = e => {\n const input = e.target.value;\n if (validateInput(input)) {\n setRawInput(input);\n }\n };\n\n const handleFlagsChange = (key, value) => setParams(assoc(key, value));\n\n const formatAndSetTime = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setRawInput(formatTime(timeInSeconds, showHours));\n };\n\n const handleKeyDown = e => {\n if (e.key !== \"Enter\") return;\n formatAndSetTime();\n };\n\n const generateUrls = useCallback(\n (timeInSeconds, urlParams) => {\n const playbackUrls = recordingUrls.map(recordingUrl =>\n buildUrl(recordingUrl, {\n time: timeInSeconds,\n muted: urlParams.muted ? 1 : undefined,\n autoplay: urlParams.autoplay ? 1 : undefined,\n })\n );\n setShareLinks(playbackUrls);\n },\n [recordingUrls]\n );\n\n const handleRegenerateUrl = () => {\n let timeInSeconds = parseTime(rawInput);\n if (timeInSeconds > totalDuration) {\n timeInSeconds = totalDuration;\n }\n setCurrentPlaybackTime(timeInSeconds);\n generateUrls(timeInSeconds, params);\n };\n\n useEffect(() => {\n if (not(isOpen)) return;\n\n const initialTime = currentTimestamp > 0 ? currentTimestamp : 0;\n const initialParams = { muted: false, autoplay: false };\n\n setCurrentPlaybackTime(initialTime);\n setRawInput(formatTime(initialTime, showHours));\n setParams(initialParams);\n generateUrls(initialTime, initialParams);\n }, [isOpen, showHours, currentTimestamp, generateUrls]);\n\n return (\n <div className=\"flex w-full flex-col gap-y-6\">\n <CardLayout\n title={t(\"neetoMolecules.shareRecording.configureUrlParameters\")}\n actionBlock={\n <div className=\"flex items-center gap-x-2\">\n <Button\n data-testid=\"regenerate-url-button\"\n label={t(\"neetoMolecules.shareRecording.regenerateUrl\")}\n onClick={handleRegenerateUrl}\n />\n <Button\n data-testid=\"cancel-button\"\n label={t(\"neetoMolecules.shareRecording.cancel\")}\n style=\"secondary\"\n onClick={onClose}\n />\n </div>\n }\n description={t(\n \"neetoMolecules.shareRecording.configureUrlParametersDescription\"\n )}\n >\n <div className=\"flex flex-col gap-y-4\">\n <div className=\"flex items-center gap-x-2\">\n <Label>{t(\"neetoMolecules.shareRecording.startVideoAt\")}</Label>\n <Input\n unlimitedChars\n className=\"w-40\"\n data-testid=\"time-input\"\n placeholder={showHours ? \"HH:MM:SS\" : \"MM:SS\"}\n value={rawInput}\n onBlur={formatAndSetTime}\n onChange={handlePlaybackTimestampChange}\n onKeyDown={handleKeyDown}\n />\n </div>\n {enableAutoplayAndMuteFlags && (\n <>\n <Switch\n checked={muted}\n data-testid=\"muted-checkbox\"\n id=\"muted\"\n label={t(\"neetoMolecules.shareRecording.muted\")}\n name=\"muted\"\n onChange={e => handleFlagsChange(\"muted\", e.target.checked)}\n />\n <Switch\n checked={autoplay}\n data-testid=\"autoplay-checkbox\"\n id=\"autoplay\"\n label={t(\"neetoMolecules.shareRecording.autoplay\")}\n name=\"autoplay\"\n onChange={e => handleFlagsChange(\"autoplay\", e.target.checked)}\n />\n </>\n )}\n </div>\n </CardLayout>\n <div className=\"flex flex-col gap-y-2\">\n <Typography style=\"h3\">\n {t(\"neetoMolecules.shareRecording.generatedUrls\")}\n </Typography>\n {shareLinks.map((shareLink, index) => (\n <div\n className=\"neeto-ui-bg-gray-100 neeto-ui-rounded-lg flex w-full items-center justify-between gap-1 p-2\"\n key={index}\n >\n <Typography className=\"min-w-0 flex-1 break-words\" style=\"body2\">\n {shareLink}\n </Typography>\n <CopyToClipboardButton\n className=\"flex-shrink-0\"\n style=\"secondary\"\n value={shareLink}\n />\n </div>\n ))}\n </div>\n {Preview && (\n <div className=\"flex flex-col gap-y-2 pt-2\">\n <Label>{t(\"neetoMolecules.shareRecording.preview\")}</Label>\n <Preview {...{ currentPlaybackTime }} />\n </div>\n )}\n </div>\n );\n};\n\nexport default SharePaneBody;\n","import { isNotEmpty } from \"neetocist\";\nimport { Pane, Typography, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport SharePaneBody from \"./SharePaneBody\";\n\nconst ShareRecordingPane = ({\n recordingUrl = null,\n recordingUrls = [],\n totalDuration,\n getCurrentTimestamp,\n isOpen,\n onClose,\n isLoading = false,\n preview,\n enableAutoplayAndMuteFlags = false,\n size = \"large\",\n ...otherProps\n}) => {\n const { t } = useTranslation();\n\n const recordingUrlsToShare = isNotEmpty(recordingUrls)\n ? recordingUrls\n : [recordingUrl];\n\n return (\n <Pane\n {...{ isOpen, onClose, size, ...otherProps }}\n data-testid=\"share-pane\"\n >\n <Pane.Header>\n <Typography style=\"h2\">\n {t(\"neetoMolecules.shareRecording.title\")}\n </Typography>\n </Pane.Header>\n <Pane.Body className=\"flex flex-col gap-y-2\">\n {isLoading ? (\n <Spinner className=\"mx-auto\" />\n ) : (\n <SharePaneBody\n {...{\n enableAutoplayAndMuteFlags,\n getCurrentTimestamp,\n isOpen,\n onClose,\n preview,\n totalDuration,\n }}\n recordingUrls={recordingUrlsToShare}\n />\n )}\n </Pane.Body>\n </Pane>\n );\n};\n\nShareRecordingPane.propTypes = {\n /**\n * Recording URL used for building the share link.\n */\n recordingUrl: PropTypes.string,\n /**\n * Recording URLs used for building the share link.\n */\n recordingUrls: PropTypes.array,\n /**\n * Total duration of the content being shared.\n */\n totalDuration: PropTypes.number.isRequired,\n /**\n * A function that returns current playback time of the recorded content in seconds.\n */\n getCurrentTimestamp: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether the pane is open or not.\n */\n isOpen: PropTypes.bool.isRequired,\n /**\n * Function to close the pane.\n */\n onClose: PropTypes.func.isRequired,\n /**\n * Boolean indicating whether content is loading or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Component to render as a preview of the recording.\n */\n preview: PropTypes.elementType,\n /**\n * Size of the pane.\n */\n size: PropTypes.oneOf([\"extraLarge\", \"large\", \"small\"]),\n};\n\nexport default ShareRecordingPane;\n"],"names":["ONE_SECOND","ONE_MINUTE","ONE_HOUR","padZero","number","length","arguments","undefined","string","String","threshold","Math","pow","concat","shouldRenderHoursInput","duration","hours","floor","formatTime","timeInSeconds","showHours","minutes","seconds","parseTime","timeString","parts","split","map","part","NaN","parseInt","some","isNaN","validateInput","input","regex","colons","match","test","SharePaneBody","_ref","recordingUrls","totalDuration","getCurrentTimestamp","isOpen","onClose","Preview","preview","enableAutoplayAndMuteFlags","_useTranslation","useTranslation","t","currentTimestamp","_useState","useState","_useState2","_slicedToArray","shareLinks","setShareLinks","_useState3","_useState4","currentPlaybackTime","setCurrentPlaybackTime","_useState5","muted","autoplay","_useState6","params","setParams","_useState7","_useState8","rawInput","setRawInput","handlePlaybackTimestampChange","e","target","value","handleFlagsChange","key","assoc","formatAndSetTime","handleKeyDown","generateUrls","useCallback","urlParams","playbackUrls","recordingUrl","buildUrl","time","handleRegenerateUrl","useEffect","not","initialTime","initialParams","_jsxs","className","children","_jsx","CardLayout","title","actionBlock","Button","label","onClick","style","description","Label","Input","unlimitedChars","placeholder","onBlur","onChange","onKeyDown","_Fragment","Switch","checked","id","name","Typography","shareLink","index","CopyToClipboardButton","ShareRecordingPane","_ref$recordingUrl","_ref$recordingUrls","_ref$isLoading","isLoading","_ref$enableAutoplayAn","_ref$size","size","otherProps","_objectWithoutProperties","_excluded","recordingUrlsToShare","isNotEmpty","Pane","_objectSpread","Header","Body","Spinner"],"mappings":"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"}
|