@bigbinary/neeto-molecules 3.15.27 → 3.15.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
2
2
  import { memo, useState, useMemo, useEffect, createElement } from 'react';
3
- import { isPresent, noop, filterBy, removeBy } from '@bigbinary/neeto-cist';
3
+ import { isPresent, hyphenate, noop, filterBy, removeBy } from '@bigbinary/neeto-cist';
4
4
  import Down from '@bigbinary/neeto-icons/Down';
5
5
  import Up from '@bigbinary/neeto-icons/Up';
6
6
  import Button from '@bigbinary/neetoui/Button';
@@ -132,6 +132,7 @@ var EditField = function EditField(_ref) {
132
132
  children: [/*#__PURE__*/jsx(InputComponent, {
133
133
  error: error,
134
134
  autoFocus: true,
135
+ "data-cy": "metadata-input-".concat(hyphenate(name)),
135
136
  "data-testid": "metadata-input-".concat(name),
136
137
  placeholder: t("neetoMolecules.common.enter", {
137
138
  what: label
@@ -155,6 +156,7 @@ var EditField = function EditField(_ref) {
155
156
  },
156
157
  onClick: handleMetadataCancel
157
158
  }), /*#__PURE__*/jsx(Button, {
159
+ "data-cy": "metadata-submit-".concat(hyphenate(name)),
158
160
  "data-testid": "metadata-submit-".concat(name),
159
161
  icon: Check,
160
162
  size: "small",
@@ -270,6 +272,7 @@ var Item = function Item(_ref) {
270
272
  content: valueToRender,
271
273
  position: "top",
272
274
  children: /*#__PURE__*/jsx(Typography, {
275
+ "data-cy": "metadata-value-".concat(hyphenate(name)),
273
276
  "data-testid": "metadata-value-".concat(name),
274
277
  style: "body2",
275
278
  weight: "medium",
@@ -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 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-${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 right-0 top-0 flex h-8 items-center pr-1\">\n <Button\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-${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 } 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 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 return (\n <div\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 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-${name}`}\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 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","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","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-cy={`metadata-input-${hyphenate(name)}`}\n data-testid={`metadata-input-${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 right-0 top-0 flex h-8 items-center pr-1\">\n <Button\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-${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 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 return (\n <div\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 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-${hyphenate(name)}`}\n data-testid={`metadata-value-${name}`}\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 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","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,5 +1,5 @@
1
1
  import _defineProperty from '@babel/runtime/helpers/defineProperty';
2
- import { _findBy } from '@bigbinary/neeto-cist';
2
+ import { hyphenate, _findBy } from '@bigbinary/neeto-cist';
3
3
  import Dropdown from '@bigbinary/neetoui/Dropdown';
4
4
  import Spinner from '@bigbinary/neetoui/Spinner';
5
5
  import { memo } from 'react';
@@ -25,6 +25,7 @@ var Menu = function Menu(_ref) {
25
25
  children: allowedOptions === null || allowedOptions === void 0 ? void 0 : allowedOptions.map(function (option) {
26
26
  return /*#__PURE__*/jsx(MenuItem.Button, {
27
27
  className: "status-dropdown-item--".concat(option.color),
28
+ "data-cy": "status-dropdown-item-".concat(hyphenate(option.value)),
28
29
  "data-testid": "status-dropdown-item-".concat(option.value),
29
30
  onClick: function onClick() {
30
31
  return onItemClick(option);
@@ -1 +1 @@
1
- {"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"StatusDropdown.js","sources":["../src/components/StatusDropdown/Menu.jsx","../src/components/StatusDropdown/constants.js","../src/components/StatusDropdown/Target.jsx","../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
@@ -134,6 +134,7 @@ var EditField = function EditField(_ref) {
134
134
  children: [/*#__PURE__*/jsxRuntime.jsx(InputComponent, {
135
135
  error: error,
136
136
  autoFocus: true,
137
+ "data-cy": "metadata-input-".concat(neetoCist.hyphenate(name)),
137
138
  "data-testid": "metadata-input-".concat(name),
138
139
  placeholder: t("neetoMolecules.common.enter", {
139
140
  what: label
@@ -157,6 +158,7 @@ var EditField = function EditField(_ref) {
157
158
  },
158
159
  onClick: handleMetadataCancel
159
160
  }), /*#__PURE__*/jsxRuntime.jsx(Button, {
161
+ "data-cy": "metadata-submit-".concat(neetoCist.hyphenate(name)),
160
162
  "data-testid": "metadata-submit-".concat(name),
161
163
  icon: Check,
162
164
  size: "small",
@@ -272,6 +274,7 @@ var Item = function Item(_ref) {
272
274
  content: valueToRender,
273
275
  position: "top",
274
276
  children: /*#__PURE__*/jsxRuntime.jsx(Typography, {
277
+ "data-cy": "metadata-value-".concat(neetoCist.hyphenate(name)),
275
278
  "data-testid": "metadata-value-".concat(name),
276
279
  style: "body2",
277
280
  weight: "medium",
@@ -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 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-${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 right-0 top-0 flex h-8 items-center pr-1\">\n <Button\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-${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 } 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 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 return (\n <div\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 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-${name}`}\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 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","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","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-cy={`metadata-input-${hyphenate(name)}`}\n data-testid={`metadata-input-${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 right-0 top-0 flex h-8 items-center pr-1\">\n <Button\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-${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 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 return (\n <div\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 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-${hyphenate(name)}`}\n data-testid={`metadata-value-${name}`}\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 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","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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"}
@@ -27,6 +27,7 @@ var Menu = function Menu(_ref) {
27
27
  children: allowedOptions === null || allowedOptions === void 0 ? void 0 : allowedOptions.map(function (option) {
28
28
  return /*#__PURE__*/jsxRuntime.jsx(MenuItem.Button, {
29
29
  className: "status-dropdown-item--".concat(option.color),
30
+ "data-cy": "status-dropdown-item-".concat(neetoCist.hyphenate(option.value)),
30
31
  "data-testid": "status-dropdown-item-".concat(option.value),
31
32
  onClick: function onClick() {
32
33
  return onItemClick(option);
@@ -1 +1 @@
1
- {"version":3,"file":"StatusDropdown.js","sources":["../../src/components/StatusDropdown/Menu.jsx","../../src/components/StatusDropdown/constants.js","../../src/components/StatusDropdown/Target.jsx","../../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
1
+ {"version":3,"file":"StatusDropdown.js","sources":["../../src/components/StatusDropdown/Menu.jsx","../../src/components/StatusDropdown/constants.js","../../src/components/StatusDropdown/Target.jsx","../../src/components/StatusDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { hyphenate } from \"neetocist\";\nimport { Dropdown } from \"neetoui\";\n\nconst { Menu: NeetoUIMenu, MenuItem } = Dropdown;\n\nconst Menu = ({\n onItemClick,\n options,\n shouldShowAllOptions = false,\n hiddenStatuses = [],\n}) => {\n const allowedOptions = shouldShowAllOptions\n ? options\n : options.filter(status => !hiddenStatuses.includes(status.value));\n\n return (\n <NeetoUIMenu data-testid=\"status-dropdown-menu\">\n {allowedOptions?.map(option => (\n <MenuItem.Button\n className={`status-dropdown-item--${option.color}`}\n data-cy={`status-dropdown-item-${hyphenate(option.value)}`}\n data-testid={`status-dropdown-item-${option.value}`}\n key={option.value}\n onClick={() => onItemClick(option)}\n >\n {option.label}\n </MenuItem.Button>\n ))}\n </NeetoUIMenu>\n );\n};\n\nexport default memo(Menu);\n","export const ICON_SIZE = 16;\n","import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nimport { ICON_SIZE } from \"./constants\";\n\nconst Target = ({ color, label, dataCy }) => {\n const targetClassName = `neeto-ui-rounded-sm inline-block cursor-pointer py-0.5 px-2 status-dropdown-target--${color}`;\n\n return (\n <div\n className={targetClassName}\n data-cy={dataCy}\n data-testid=\"status-dropdown\"\n >\n <Typography className=\"inline\" style=\"body2\">\n {label}\n </Typography>\n <Down className=\"ml-2 inline\" size={ICON_SIZE} />\n </div>\n );\n};\n\nexport default memo(Target);\n","import { _findBy } from \"neetocist\";\nimport { Dropdown, Spinner } from \"neetoui\";\nimport PropTypes from \"prop-types\";\n\nimport Menu from \"./Menu\";\nimport \"./status-dropdown.scss\";\nimport Target from \"./Target\";\n\nconst StatusDropdown = ({\n disabled = false,\n hiddenStatuses = [],\n isLoading = false,\n onItemClick,\n options,\n selectedValue,\n shouldShowAllOptions = false,\n dataCy = \"status-dropdown\",\n}) => {\n const selectedOption = _findBy({ value: selectedValue }, options);\n\n return (\n <Dropdown\n {...{ disabled }}\n strategy=\"fixed\"\n customTarget={() => (\n <Target label={selectedValue} {...{ ...selectedOption, dataCy }} />\n )}\n >\n {isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <Menu\n {...{ hiddenStatuses, onItemClick, options, shouldShowAllOptions }}\n />\n )}\n </Dropdown>\n );\n};\n\nStatusDropdown.Menu = Menu;\n\nStatusDropdown.propTypes = {\n /**\n * This prop will decide whether the dropdown is disabled or not.\n */\n disabled: PropTypes.bool,\n /**\n * Statuses to be hidden when shouldShowAllOptions is false.\n */\n hiddenStatuses: PropTypes.array,\n /**\n * This prop will decide whether the dropdown is in loading state or not.\n */\n isLoading: PropTypes.bool,\n /**\n * Function to be called when a menu item is clicked.\n */\n onItemClick: PropTypes.func,\n /**\n * The items that should be shown in the dropdown.\n */\n options: PropTypes.arrayOf(\n PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.string,\n color: PropTypes.string,\n })\n ),\n /**\n * The selected value.\n */\n selectedValue: PropTypes.string,\n /**\n * This prop will decide whether all options should be shown or not. If set to false, the items in hiddenStatuses will not be shown.\n */\n shouldShowAllOptions: PropTypes.bool,\n};\n\nexport default StatusDropdown;\n"],"names":["NeetoUIMenu","Dropdown","Menu","MenuItem","_ref","onItemClick","options","_ref$shouldShowAllOpt","shouldShowAllOptions","_ref$hiddenStatuses","hiddenStatuses","allowedOptions","filter","status","includes","value","_jsx","children","map","option","Button","className","concat","color","hyphenate","onClick","label","memo","ICON_SIZE","Target","dataCy","targetClassName","_jsxs","Typography","style","Down","size","StatusDropdown","_ref$disabled","disabled","_ref$isLoading","isLoading","selectedValue","_ref$dataCy","selectedOption","_findBy","strategy","customTarget","_objectSpread","Spinner"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.15.27",
3
+ "version": "3.15.28",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",