@bigbinary/neeto-team-members-frontend 4.5.3 → 4.5.6
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/README.md +1 -1
- package/app/javascript/src/translations/en.json +115 -113
- package/dist/MembersDropdown.js +2 -1
- package/dist/MembersDropdown.js.map +1 -1
- package/dist/Profile.js +41 -49
- package/dist/Profile.js.map +1 -1
- package/dist/TeamsDropdown.js +2 -1
- package/dist/TeamsDropdown.js.map +1 -1
- package/dist/cjs/MembersDropdown.js +2 -1
- package/dist/cjs/MembersDropdown.js.map +1 -1
- package/dist/cjs/Profile.js +39 -47
- package/dist/cjs/Profile.js.map +1 -1
- package/dist/cjs/TeamsDropdown.js +2 -1
- package/dist/cjs/TeamsDropdown.js.map +1 -1
- package/dist/cjs/index.js +1 -1
- package/dist/{index-DX_qEZeG.js → index-B4YBmZV4.js} +3 -1
- package/dist/index-B4YBmZV4.js.map +1 -0
- package/dist/{index-Cpad1EmZ.js → index-DlpnpPeg.js} +3 -1
- package/dist/index-DlpnpPeg.js.map +1 -0
- package/dist/index.js +1 -1
- package/package.json +19 -18
- package/dist/index-Cpad1EmZ.js.map +0 -1
- package/dist/index-DX_qEZeG.js.map +0 -1
package/dist/Profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Profile.js","sources":["../app/javascript/src/apis/profile.js","../app/javascript/src/hooks/profile/useProfileApi.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx","../app/javascript/src/components/Profile/ChangeProfile.jsx","../app/javascript/src/components/Profile/hooks/useProfileUpdatePane.js","../app/javascript/src/components/Profile/Preview.jsx","../app/javascript/src/components/Profile/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchProfile = options =>\n useQuery({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nconst useUpdateProfileMutation = options =>\n useMutationWithInvalidation(profileApi.updateUser, {\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]],\n ...options,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useFetchProfile, useUpdateProfileMutation };\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.lastName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n\nexport const DEFAULT_POPOVER_VALUES = {\n preferredDateFormat: {},\n preferredTimeFormat: {},\n timeZone: {},\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n };\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useRef } from \"react\";\n\nimport { useField } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Edit } from \"neetoicons\";\nimport { Avatar, Dropdown, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n\n const [field, _, helpers] = useField(\"avatar\");\n const { setValue } = helpers;\n\n const avatarDetails = { imageUrl: field.value.imageUrl };\n\n const onProfileImageChange = event => {\n const imageFile = event.target.files[0];\n const validationError = validateProfileImage(imageFile);\n\n if (validationError) {\n Toastr.error(validationError);\n\n return validationError;\n }\n\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile,\n });\n };\n\n const handleChangeImage = () => fileInputRef.current?.click();\n\n const handleRemoveImage = () => setValue({ imageUrl: \"\", file: \"_destroy\" });\n\n const validateProfileImage = imageFile => {\n const { type, size } = imageFile;\n\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n\n return null;\n };\n\n return (\n <div className=\"mb-4 flex flex-col items-center gap-2\">\n <div className=\"relative flex-shrink-0\">\n <div className=\"absolute bottom-0 right-0 z-10\">\n <Dropdown\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n buttonProps={{ className: \"rounded-full\" }}\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n icon={Edit}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"profile-image-upload-button\"\n onClick={handleChangeImage}\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n {t(\"neetoTeamMembers.buttons.remove\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"flex flex-col items-center\">\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n style=\"body3\"\n >\n <Trans\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <input\n hidden\n accept=\"image/*\"\n data-cy=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n ref={fileInputRef}\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n","import { useCallback, useEffect } from \"react\";\n\nimport { useProfileImageUpload } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { Label, Pane, Spinner, Toastr, Typography } from \"neetoui\";\nimport { Input, Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport {\n useUpdateProfileMutation,\n useFetchProfile,\n} from \"hooks/profile/useProfileApi\";\n\nimport { PROFILE_VALIDATION_SCHEMA } from \"./constants\";\nimport useCountries from \"./hooks/useCountries\";\nimport ProfileImage from \"./ProfileImage\";\nimport \"./styles.scss\";\n\nconst ChangeProfile = ({ onClose }) => {\n const { t } = useTranslation();\n\n const { uploadImage, isUploading } = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: { appName: \"neetoAuth\" },\n },\n });\n\n const handleUploadImage = image =>\n new Promise(resolve => {\n uploadImage(image, uploadedImageData => {\n resolve(uploadedImageData);\n });\n });\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const {\n firstName = \"\",\n lastName = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryId = \"\",\n timeFormat = TIME_FORMAT_OPTIONS[0].value,\n } = user;\n\n const {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList,\n handleCountryChange = noop,\n } = useCountries();\n\n const { mutate: updateProfile, isPending: isUpdatingProfile } =\n useUpdateProfileMutation();\n\n const timezoneRef = useCallback(\n ({ node, setFieldValue }) => {\n if (isNotNil(node)) {\n new NeetoTimezoneSelector(node, {\n isTimeFormat24H: timeFormat === \"24h\",\n className: \"w-full z-10\",\n position: \"bottom\",\n initialValue: timeZone,\n onChange: ({ main }) => setFieldValue(\"timeZone\", main),\n });\n }\n },\n [timeZone, timeFormat]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n timeZone,\n dateFormat,\n timeFormat,\n avatar: { imageUrl: profileImageUrl, file: null },\n };\n\n const handleSubmit = async values => {\n try {\n let avatar = {};\n\n if (values.avatar.file === \"_destroy\") {\n avatar = { fileId: \"_destroy\", filePath: \"\", url: \"\" };\n } else if (values.avatar.file) {\n const { fileId, filePath, url } = await handleUploadImage(\n values.avatar.file\n );\n avatar = { fileId, filePath, url };\n }\n\n const {\n countryId: updatedCountryId,\n timeFormat: updatedTimeFormat,\n ...rest\n } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier:\n updatedCountryId !== countryId ? updatedCountryId : undefined,\n timeFormatIdentifier:\n updatedTimeFormat !== timeFormat ? updatedTimeFormat : undefined,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n useEffect(() => {\n const country = findBy({ value: countryId }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryId, countryDropdownOptions]);\n\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n formProps={{ \"data-cy\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, errors, touched }) => (\n <>\n <Pane.Body className=\"w-full\">\n <div className=\"w-full pb-6\">\n <ProfileImage />\n <div className=\"neeto-ui-border-gray-200 mt-4 w-full space-y-4 border-t pt-4\">\n <Input\n autoFocus\n required\n data-cy=\"profile-first-name-text-field\"\n data-test-id=\"ntm-profile-first-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.firstName\")}\n name=\"firstName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.firstName\"\n )}\n />\n <Input\n required\n data-cy=\"profile-last-name-text-field\"\n data-test-id=\"ntm-profile-last-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.lastName\")}\n name=\"lastName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.lastName\"\n )}\n />\n </div>\n <div className=\"neeto-ui-border-gray-200 mt-4 w-full space-y-4 border-t pt-4\">\n <Select\n required\n data-cy=\"ntm-profile-country-select\"\n name=\"countryId\"\n options={countryDropdownOptions}\n value={selectedCountryOption}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.selectCountry\"\n )}\n onChange={option => {\n const dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields?.dateFormat);\n setFieldValue(\"countryId\", option?.value);\n }}\n />\n <div className=\"space-y-2\">\n <div className=\"space-y-2\">\n <Label required>\n {t(\n \"neetoTeamMembers.profile.inputs.label.selectTimeZone\"\n )}\n </Label>\n <div\n className=\"w-full flex-grow\"\n data-cy=\"ntm-profile-time-zone-select\"\n ref={node => timezoneRef({ node, setFieldValue })}\n />\n </div>\n {touched.timeZone && errors.timeZone && (\n <Typography\n className=\"neeto-ui-text-error-800\"\n lineHeight=\"none\"\n style=\"body3\"\n >\n {errors.timeZone}\n </Typography>\n )}\n </div>\n <Select\n required\n data-cy=\"ntm-time-format-select\"\n name=\"timeFormat\"\n options={TIME_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.selectTimeFormat\"\n )}\n onChange={option => {\n setFieldValue(\"timeFormat\", option.value);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-cy=\"ntm-date-format-select\"\n name=\"dateFormat\"\n options={DATE_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.dateFormat\"\n )}\n onChange={option => {\n setFieldValue(\"dateFormat\", option.value);\n }}\n />\n </div>\n </div>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isUpdatingProfile || isUploading}\n cancelButtonProps={{\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </Form>\n );\n};\n\nexport default ChangeProfile;\n","/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nimport withImmutableActions from \"neetocommons/react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst useProfileUpdateStore = create(\n withImmutableActions(set => ({\n isOpen: false,\n\n setIsOpen: arg => {\n if (typeof arg === \"function\") {\n set(state => ({ isOpen: arg(state.isOpen) }));\n } else {\n set({ isOpen: arg });\n }\n },\n }))\n);\n\nconst useProfileUpdatePaneState = () =>\n useProfileUpdateStore(\n ({ isOpen, setIsOpen }) => [isOpen, setIsOpen],\n shallow\n );\n\nexport default useProfileUpdatePaneState;\n","import { memo, useEffect, useState } from \"react\";\n\nimport { ianaTimezoneToHumanReadable } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, capitalize, isNotEmpty } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Avatar, Label, Pane, Spinner, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport { useFetchProfile } from \"hooks/profile/useProfileApi\";\n\nimport \"./styles.scss\";\n\nconst Preview = ({\n preferredDateFormat = {},\n preferredTimeFormat = {},\n preferredTimeZone = {},\n}) => {\n const { t } = useTranslation();\n\n const [time, setTime] = useState(\"\");\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const {\n firstName = \"\",\n lastName = \"\",\n email = \"\",\n dateFormat = user.dateFormat || DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"UTC\",\n profileImageUrl = \"\",\n countryName = \"\",\n timeFormat = user.timeFormat || TIME_FORMAT_OPTIONS[0].value,\n } = user;\n\n const name = `${firstName} ${lastName}`.trim();\n\n useEffect(() => {\n const updateTime = () => {\n const now = new Date();\n const options = {\n timeZone,\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: timeFormat === \"12h\" || true,\n };\n\n const formattedTime = new Intl.DateTimeFormat(\"en-US\", options).format(\n now\n );\n setTime(formattedTime);\n };\n\n const interval = setInterval(updateTime, 1000);\n\n return () => clearInterval(interval);\n }, [timeZone]);\n\n if (!time || isFetchingUserDetails) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Pane.Body className=\"w-full\">\n <div className=\"w-full\">\n <div className=\"mb-4 flex flex-col items-center justify-center\">\n <Avatar\n className=\"mb-1\"\n size=\"extraLarge\"\n user={{ name, imageUrl: profileImageUrl }}\n />\n <Typography style=\"h3\" weight=\"semibold\">\n {name}\n </Typography>\n <div className=\"flex items-center gap-1\">\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {email}\n </Typography>\n <CopyToClipboardButton size=\"small\" style=\"text\" value={email} />\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.firstName\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {firstName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.lastName\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {lastName}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.country\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {countryName || \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredTimeZone) && {\n popoverProps: preferredTimeZone,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.timeZone\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {ianaTimezoneToHumanReadable(timeZone)} - {time}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredTimeFormat) && {\n popoverProps: preferredTimeFormat,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.preferredTimeFormat\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {findBy({ value: timeFormat }, TIME_FORMAT_OPTIONS)?.label || \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredDateFormat) && {\n popoverProps: preferredDateFormat,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.preferredDateFormat\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {findBy({ value: dateFormat }, DATE_FORMAT_OPTIONS)?.label || \"-\"}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>\n {t(\"neetoTeamMembers.labels.billingAndSubscriptions\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-700\" style=\"body2\">\n <Trans\n i18nKey=\"neetoTeamMembers.common.subscriptionType\"\n values={{\n subscription: capitalize(\n globalProps.user?.subscriptionPlan || \"free\"\n ),\n }}\n />\n </Typography>\n </div>\n </div>\n </div>\n </Pane.Body>\n );\n};\n\nexport default memo(Preview);\n","import { useState } from \"react\";\n\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChangeProfile from \"./ChangeProfile\";\nimport { DEFAULT_POPOVER_VALUES, MY_PROFILE_PATH } from \"./constants\";\nimport useProfileUpdatePaneState from \"./hooks/useProfileUpdatePane\";\nimport Preview from \"./Preview\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Profile = ({ popoverProps = DEFAULT_POPOVER_VALUES }) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useProfileUpdatePaneState();\n const [isEditMode, setIsEditMode] = useState(false);\n\n const onClose = () => {\n setIsOpen(false);\n setIsEditMode(false);\n };\n\n const enableEditMode = () => setIsEditMode(true);\n\n return (\n <div className=\"w-full\">\n <Pane {...{ isOpen, onClose }} className=\"max-w-96\">\n <Pane.Header>\n <div className=\"flex justify-between\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n {!isEditMode && (\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"secondary\"\n icon={MenuHorizontal}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"edit-basic-info-menu-button\"\n onClick={enableEditMode}\n >\n {t(\"neetoTeamMembers.buttons.editBasicInfo\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"update-email-menu-button\"\n href={MY_PROFILE_PATH}\n >\n {t(\"neetoTeamMembers.buttons.updateEmail\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"manage-billing-subscriptions-menu-button\"\n href={MY_PROFILE_PATH}\n >\n {t(\n \"neetoTeamMembers.buttons.manageBillingAndSubscriptions\"\n )}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n </div>\n </Pane.Header>\n {isEditMode ? (\n <ChangeProfile {...{ onClose }} />\n ) : (\n <Preview\n preferredDateFormat={popoverProps?.preferredDateFormat}\n preferredTimeFormat={popoverProps?.preferredTimeFormat}\n preferredTimeZone={popoverProps?.timeZone}\n />\n )}\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","useFetchProfile","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","USER_PROFILE","queryFn","staleTime","DEFAULT_STALE_TIME","useUpdateProfileMutation","useMutationWithInvalidation","keysToInvalidate","onSuccess","window","location","reload","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","DEFAULT_POPOVER_VALUES","preferredDateFormat","preferredTimeFormat","timeZone","useFetchCountries","COUNTRIES_LIST","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","Menu","Dropdown","MenuItem","ProfileImage","_useTranslation","useTranslation","fileInputRef","useRef","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleChangeImage","_fileInputRef$current","current","click","handleRemoveImage","type","size","includes","_jsxs","className","children","_jsx","buttonProps","buttonSize","buttonStyle","icon","Edit","Button","onClick","Avatar","user","Typography","style","Trans","i18nKey","values","limit","hidden","accept","ref","onChange","ChangeProfile","onClose","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","_useFetchProfile$data","_useFetchProfile$data2","_useFetchProfile$data3","isFetchingUserDetails","isFetching","_user$firstName","_user$lastName","_user$dateFormat","DATE_FORMAT_OPTIONS","_user$timeZone","_user$profileImageUrl","profileImageUrl","_user$countryId","countryId","_user$timeFormat","timeFormat","TIME_FORMAT_OPTIONS","_useCountries","_useCountries$handleC","noop","_useUpdateProfileMuta","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","_ref2","node","setFieldValue","isNotNil","NeetoTimezoneSelector","isTimeFormat24H","position","initialValue","_ref3","main","initialFormValues","avatar","handleSubmit","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","updatedTimeFormat","rest","wrap","_callee$","_context","prev","next","sent","_objectWithoutProperties","_excluded","countryIdentifier","undefined","timeFormatIdentifier","t0","stop","_x","apply","arguments","useEffect","findBy","Spinner","Form","formProps","formikProps","initialValues","validationSchema","onSubmit","_ref5","errors","touched","_Fragment","Pane","Body","Input","autoFocus","placeholder","Select","option","Label","lineHeight","Footer","ActionBlock","isSubmitting","cancelButtonProps","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","state","useProfileUpdatePaneState","shallow","Preview","_findBy","_findBy2","_globalProps$user","_ref$preferredDateFor","_ref$preferredTimeFor","_ref$preferredTimeZon","preferredTimeZone","time","setTime","_user$email","email","_user$countryName","countryName","updateTime","now","Date","hour","minute","hour12","formattedTime","Intl","DateTimeFormat","format","interval","setInterval","clearInterval","weight","CopyToClipboardButton","helpIconProps","isNotEmpty","popoverProps","ianaTimezoneToHumanReadable","subscription","capitalize","subscriptionPlan","memo","Profile","_ref$popoverProps","_useProfileUpdatePane","_useProfileUpdatePane2","isEditMode","setIsEditMode","enableEditMode","Header","MenuHorizontal","href","usePaneState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Profile.js","sources":["../app/javascript/src/apis/profile.js","../app/javascript/src/hooks/profile/useProfileApi.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx","../app/javascript/src/components/Profile/ChangeProfile.jsx","../app/javascript/src/components/Profile/hooks/useProfileUpdatePane.js","../app/javascript/src/components/Profile/utils.js","../app/javascript/src/components/Profile/Preview.jsx","../app/javascript/src/components/Profile/index.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchProfile = options =>\n useQuery({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nconst useUpdateProfileMutation = options =>\n useMutationWithInvalidation(profileApi.updateUser, {\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]],\n ...options,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useFetchProfile, useUpdateProfileMutation };\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.lastName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n\nexport const DEFAULT_POPOVER_VALUES = {\n preferredDateFormat: {},\n preferredTimeFormat: {},\n timeZone: {},\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n };\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useRef } from \"react\";\n\nimport { useField } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Edit } from \"neetoicons\";\nimport { Avatar, Dropdown, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n\n const [field, _, helpers] = useField(\"avatar\");\n const { setValue } = helpers;\n\n const avatarDetails = { imageUrl: field.value.imageUrl };\n\n const onProfileImageChange = event => {\n const imageFile = event.target.files[0];\n const validationError = validateProfileImage(imageFile);\n\n if (validationError) {\n Toastr.error(validationError);\n\n return validationError;\n }\n\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile,\n });\n };\n\n const handleChangeImage = () => fileInputRef.current?.click();\n\n const handleRemoveImage = () => setValue({ imageUrl: \"\", file: \"_destroy\" });\n\n const validateProfileImage = imageFile => {\n const { type, size } = imageFile;\n\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n\n return null;\n };\n\n return (\n <div className=\"mb-4 flex flex-col items-center gap-2\">\n <div className=\"relative flex-shrink-0\">\n <div className=\"absolute bottom-0 right-0 z-10\">\n <Dropdown\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n buttonProps={{ className: \"rounded-full\" }}\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n icon={Edit}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"profile-image-upload-button\"\n onClick={handleChangeImage}\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n {t(\"neetoTeamMembers.buttons.remove\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"flex flex-col items-center\">\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n style=\"body3\"\n >\n <Trans\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <input\n hidden\n accept=\"image/*\"\n data-cy=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n ref={fileInputRef}\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n","import { useCallback, useEffect } from \"react\";\n\nimport { useProfileImageUpload } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { Label, Pane, Spinner, Toastr, Typography } from \"neetoui\";\nimport { Input, Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport {\n useUpdateProfileMutation,\n useFetchProfile,\n} from \"hooks/profile/useProfileApi\";\n\nimport { PROFILE_VALIDATION_SCHEMA } from \"./constants\";\nimport useCountries from \"./hooks/useCountries\";\nimport ProfileImage from \"./ProfileImage\";\nimport \"./styles.scss\";\n\nconst ChangeProfile = ({ onClose }) => {\n const { t } = useTranslation();\n\n const { uploadImage, isUploading } = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: { appName: \"neetoAuth\" },\n },\n });\n\n const handleUploadImage = image =>\n new Promise(resolve => {\n uploadImage(image, uploadedImageData => {\n resolve(uploadedImageData);\n });\n });\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const {\n firstName = \"\",\n lastName = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryId = \"\",\n timeFormat = TIME_FORMAT_OPTIONS[0].value,\n } = user;\n\n const {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList,\n handleCountryChange = noop,\n } = useCountries();\n\n const { mutate: updateProfile, isPending: isUpdatingProfile } =\n useUpdateProfileMutation();\n\n const timezoneRef = useCallback(\n ({ node, setFieldValue }) => {\n if (isNotNil(node)) {\n new NeetoTimezoneSelector(node, {\n isTimeFormat24H: timeFormat === \"24h\",\n className: \"w-full z-10\",\n position: \"bottom\",\n initialValue: timeZone,\n onChange: ({ main }) => setFieldValue(\"timeZone\", main),\n });\n }\n },\n [timeZone, timeFormat]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n timeZone,\n dateFormat,\n timeFormat,\n avatar: { imageUrl: profileImageUrl, file: null },\n };\n\n const handleSubmit = async values => {\n try {\n let avatar = {};\n\n if (values.avatar.file === \"_destroy\") {\n avatar = { fileId: \"_destroy\", filePath: \"\", url: \"\" };\n } else if (values.avatar.file) {\n const { fileId, filePath, url } = await handleUploadImage(\n values.avatar.file\n );\n avatar = { fileId, filePath, url };\n }\n\n const {\n countryId: updatedCountryId,\n timeFormat: updatedTimeFormat,\n ...rest\n } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier:\n updatedCountryId !== countryId ? updatedCountryId : undefined,\n timeFormatIdentifier:\n updatedTimeFormat !== timeFormat ? updatedTimeFormat : undefined,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n useEffect(() => {\n const country = findBy({ value: countryId }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryId, countryDropdownOptions]);\n\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n formProps={{ \"data-cy\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, errors, touched }) => (\n <>\n <Pane.Body className=\"w-full\">\n <div className=\"w-full pb-6\">\n <ProfileImage />\n <div className=\"neeto-ui-border-gray-200 mt-4 w-full space-y-4 border-t pt-4\">\n <Input\n autoFocus\n required\n data-cy=\"profile-first-name-text-field\"\n data-test-id=\"ntm-profile-first-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.firstName\")}\n name=\"firstName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.firstName\"\n )}\n />\n <Input\n required\n data-cy=\"profile-last-name-text-field\"\n data-test-id=\"ntm-profile-last-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.lastName\")}\n name=\"lastName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.lastName\"\n )}\n />\n </div>\n <div className=\"neeto-ui-border-gray-200 mt-4 w-full space-y-4 border-t pt-4\">\n <Select\n required\n data-cy=\"ntm-profile-country-select\"\n name=\"countryId\"\n options={countryDropdownOptions}\n value={selectedCountryOption}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.selectCountry\"\n )}\n onChange={option => {\n const dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields?.dateFormat);\n setFieldValue(\"countryId\", option?.value);\n }}\n />\n <div className=\"space-y-2\">\n <div className=\"space-y-2\">\n <Label required>\n {t(\n \"neetoTeamMembers.profile.inputs.label.selectTimeZone\"\n )}\n </Label>\n <div\n className=\"w-full flex-grow\"\n data-cy=\"ntm-profile-time-zone-select\"\n ref={node => timezoneRef({ node, setFieldValue })}\n />\n </div>\n {touched.timeZone && errors.timeZone && (\n <Typography\n className=\"neeto-ui-text-error-800\"\n lineHeight=\"none\"\n style=\"body3\"\n >\n {errors.timeZone}\n </Typography>\n )}\n </div>\n <Select\n required\n data-cy=\"ntm-time-format-select\"\n name=\"timeFormat\"\n options={TIME_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.selectTimeFormat\"\n )}\n onChange={option => {\n setFieldValue(\"timeFormat\", option.value);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-cy=\"ntm-date-format-select\"\n name=\"dateFormat\"\n options={DATE_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.dateFormat\"\n )}\n onChange={option => {\n setFieldValue(\"dateFormat\", option.value);\n }}\n />\n </div>\n </div>\n </div>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isUpdatingProfile || isUploading}\n cancelButtonProps={{\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </Form>\n );\n};\n\nexport default ChangeProfile;\n","/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nimport withImmutableActions from \"neetocommons/react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst useProfileUpdateStore = create(\n withImmutableActions(set => ({\n isOpen: false,\n\n setIsOpen: arg => {\n if (typeof arg === \"function\") {\n set(state => ({ isOpen: arg(state.isOpen) }));\n } else {\n set({ isOpen: arg });\n }\n },\n }))\n);\n\nconst useProfileUpdatePaneState = () =>\n useProfileUpdateStore(\n ({ isOpen, setIsOpen }) => [isOpen, setIsOpen],\n shallow\n );\n\nexport default useProfileUpdatePaneState;\n","import { is, isNil, trim } from \"ramda\";\n\nexport const sanitizeValue = (value, defaultValue) =>\n isNil(value) || (is(String, value) && trim(value) === \"\")\n ? defaultValue\n : value;\n","import { memo } from \"react\";\n\nimport { ianaTimezoneToHumanReadable } from \"@bigbinary/neeto-time-zones\";\nimport { _findBy, isNotEmpty } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Avatar, Label, Pane, Spinner, Typography } from \"neetoui\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport { useFetchProfile } from \"hooks/profile/useProfileApi\";\n\nimport \"./styles.scss\";\nimport { sanitizeValue } from \"./utils\";\n\nconst Preview = ({\n preferredDateFormat = {},\n preferredTimeFormat = {},\n preferredTimeZone = {},\n}) => {\n const { t } = useTranslation();\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const sanitizedUser = {\n countryName: sanitizeValue(user.countryName, \"-\"),\n dateFormat: sanitizeValue(user.dateFormat, \"\"),\n email: sanitizeValue(user.email, \"-\"),\n firstName: sanitizeValue(user.firstName, \"-\"),\n lastName: sanitizeValue(user.lastName, \"-\"),\n profileImageUrl: sanitizeValue(user.profileImageUrl, \"\"),\n timeFormat: sanitizeValue(user.timeFormat, \"\"),\n timeZone: sanitizeValue(user.timeZone, \"Etc/UTC\"),\n };\n\n const {\n countryName,\n dateFormat,\n email,\n firstName,\n lastName,\n profileImageUrl,\n timeFormat,\n timeZone,\n } = sanitizedUser;\n\n const name = `${firstName} ${lastName}`.trim();\n const subscription = sanitizeValue(\n globalProps.user?.subscriptionPlan,\n t(\"neetoTeamMembers.common.free\")\n );\n\n const time = new Intl.DateTimeFormat(\"en-US\", {\n timeZone,\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: (timeFormat || TIME_FORMAT_OPTIONS[0].value) === \"12h\",\n }).format(new Date());\n\n if (isFetchingUserDetails) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Pane.Body className=\"w-full\">\n <div className=\"w-full\">\n <div className=\"mb-4 flex flex-col items-center justify-center\">\n <Avatar\n className=\"mb-1\"\n size=\"extraLarge\"\n user={{ name, imageUrl: profileImageUrl }}\n />\n <Typography style=\"h3\" weight=\"semibold\">\n {name}\n </Typography>\n <div className=\"flex items-center gap-1\">\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {email}\n </Typography>\n <CopyToClipboardButton size=\"small\" style=\"text\" value={email} />\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.firstName\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {firstName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.lastName\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {lastName}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>{t(\"neetoTeamMembers.labels.country\")}</Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {countryName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredTimeZone) && {\n popoverProps: preferredTimeZone,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.timeZone\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {ianaTimezoneToHumanReadable(timeZone)} - {time}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredTimeFormat) && {\n popoverProps: preferredTimeFormat,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.preferredTimeFormat\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {_findBy({ value: timeFormat }, TIME_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1\">\n <Label\n helpIconProps={\n isNotEmpty(preferredDateFormat) && {\n popoverProps: preferredDateFormat,\n }\n }\n >\n {t(\"neetoTeamMembers.labels.preferredDateFormat\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-600\" style=\"body2\">\n {_findBy({ value: dateFormat }, DATE_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-border-gray-200 space-y-4 border-t py-4\">\n <div className=\"flex flex-col gap-1\">\n <Label>\n {t(\"neetoTeamMembers.labels.billingAndSubscriptions\")}\n </Label>\n <Typography\n className=\"neeto-ui-text-gray-700 first-letter:uppercase\"\n style=\"body2\"\n >\n <Trans\n i18nKey=\"neetoTeamMembers.common.subscriptionType\"\n values={{ subscription }}\n />\n </Typography>\n </div>\n </div>\n </div>\n </Pane.Body>\n );\n};\n\nexport default memo(Preview);\n","import { useState } from \"react\";\n\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChangeProfile from \"./ChangeProfile\";\nimport { DEFAULT_POPOVER_VALUES, MY_PROFILE_PATH } from \"./constants\";\nimport useProfileUpdatePaneState from \"./hooks/useProfileUpdatePane\";\nimport Preview from \"./Preview\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Profile = ({ popoverProps = DEFAULT_POPOVER_VALUES }) => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useProfileUpdatePaneState();\n const [isEditMode, setIsEditMode] = useState(false);\n\n const onClose = () => {\n setIsOpen(false);\n setIsEditMode(false);\n };\n\n const enableEditMode = () => setIsEditMode(true);\n\n return (\n <div className=\"w-full\">\n <Pane {...{ isOpen, onClose }} className=\"max-w-96\">\n <Pane.Header>\n <div className=\"flex justify-between\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n {!isEditMode && (\n <Dropdown\n buttonSize=\"small\"\n buttonStyle=\"secondary\"\n icon={MenuHorizontal}\n >\n <Menu>\n <MenuItem.Button\n data-cy=\"edit-basic-info-menu-button\"\n onClick={enableEditMode}\n >\n {t(\"neetoTeamMembers.buttons.editBasicInfo\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"update-email-menu-button\"\n href={MY_PROFILE_PATH}\n >\n {t(\"neetoTeamMembers.buttons.updateEmail\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-cy=\"manage-billing-subscriptions-menu-button\"\n href={MY_PROFILE_PATH}\n >\n {t(\n \"neetoTeamMembers.buttons.manageBillingAndSubscriptions\"\n )}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n </div>\n </Pane.Header>\n {isEditMode ? (\n <ChangeProfile {...{ onClose }} />\n ) : (\n <Preview\n preferredDateFormat={popoverProps?.preferredDateFormat}\n preferredTimeFormat={popoverProps?.preferredTimeFormat}\n preferredTimeZone={popoverProps?.timeZone}\n />\n )}\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","useFetchProfile","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","USER_PROFILE","queryFn","staleTime","DEFAULT_STALE_TIME","useUpdateProfileMutation","useMutationWithInvalidation","keysToInvalidate","onSuccess","window","location","reload","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","DEFAULT_POPOVER_VALUES","preferredDateFormat","preferredTimeFormat","timeZone","useFetchCountries","COUNTRIES_LIST","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","Menu","Dropdown","MenuItem","ProfileImage","_useTranslation","useTranslation","fileInputRef","useRef","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleChangeImage","_fileInputRef$current","current","click","handleRemoveImage","type","size","includes","_jsxs","className","children","_jsx","buttonProps","buttonSize","buttonStyle","icon","Edit","Button","onClick","Avatar","user","Typography","style","Trans","i18nKey","values","limit","hidden","accept","ref","onChange","ChangeProfile","onClose","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","_useFetchProfile$data","_useFetchProfile$data2","_useFetchProfile$data3","isFetchingUserDetails","isFetching","_user$firstName","_user$lastName","_user$dateFormat","DATE_FORMAT_OPTIONS","_user$timeZone","_user$profileImageUrl","profileImageUrl","_user$countryId","countryId","_user$timeFormat","timeFormat","TIME_FORMAT_OPTIONS","_useCountries","_useCountries$handleC","noop","_useUpdateProfileMuta","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","_ref2","node","setFieldValue","isNotNil","NeetoTimezoneSelector","isTimeFormat24H","position","initialValue","_ref3","main","initialFormValues","avatar","handleSubmit","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","updatedTimeFormat","rest","wrap","_callee$","_context","prev","next","sent","_objectWithoutProperties","_excluded","countryIdentifier","undefined","timeFormatIdentifier","t0","stop","_x","apply","arguments","useEffect","findBy","Spinner","Form","formProps","formikProps","initialValues","validationSchema","onSubmit","_ref5","errors","touched","_Fragment","Pane","Body","Input","autoFocus","placeholder","Select","option","Label","lineHeight","Footer","ActionBlock","isSubmitting","cancelButtonProps","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","state","useProfileUpdatePaneState","shallow","sanitizeValue","defaultValue","isNil","is","String","Preview","_globalProps$user","_findBy2","_findBy3","_ref$preferredDateFor","_ref$preferredTimeFor","_ref$preferredTimeZon","preferredTimeZone","sanitizedUser","countryName","email","subscription","subscriptionPlan","time","Intl","DateTimeFormat","hour","minute","hour12","format","Date","weight","CopyToClipboardButton","helpIconProps","isNotEmpty","popoverProps","ianaTimezoneToHumanReadable","_findBy","memo","Profile","_ref$popoverProps","_useProfileUpdatePane","_useProfileUpdatePane2","isEditMode","setIsEditMode","enableEditMode","Header","MenuHorizontal","href","usePaneState"],"mappings":"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"}
|
package/dist/TeamsDropdown.js
CHANGED
|
@@ -5,7 +5,7 @@ import Dropdown from '@bigbinary/neetoui/Dropdown';
|
|
|
5
5
|
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
6
6
|
import { isEmpty } from 'ramda';
|
|
7
7
|
import { useTranslation } from 'react-i18next';
|
|
8
|
-
import { A as AssignList } from './index-
|
|
8
|
+
import { A as AssignList } from './index-DlpnpPeg.js';
|
|
9
9
|
import Down from '@bigbinary/neeto-icons/Down';
|
|
10
10
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
11
11
|
import './inject-css-DmrvuTKK.js';
|
|
@@ -23,6 +23,7 @@ var AssignDropdownTarget = function AssignDropdownTarget(_ref) {
|
|
|
23
23
|
var config = _ref.config;
|
|
24
24
|
return /*#__PURE__*/jsxs("div", {
|
|
25
25
|
className: "flex h-10 cursor-pointer select-none items-center gap-2",
|
|
26
|
+
"data-cy": "group-dropdown",
|
|
26
27
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
27
28
|
style: "h5",
|
|
28
29
|
weight: "normal",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TeamsDropdown.js","sources":["../app/javascript/src/components/TeamsDropdown/AssignDropdownTarget.jsx","../app/javascript/src/components/TeamsDropdown/index.jsx"],"sourcesContent":["import { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nconst AssignDropdownTarget = ({ config }) => (\n <div
|
|
1
|
+
{"version":3,"file":"TeamsDropdown.js","sources":["../app/javascript/src/components/TeamsDropdown/AssignDropdownTarget.jsx","../app/javascript/src/components/TeamsDropdown/index.jsx"],"sourcesContent":["import { Down } from \"neetoicons\";\nimport { Typography } from \"neetoui\";\n\nconst AssignDropdownTarget = ({ config }) => (\n <div\n className=\"flex h-10 cursor-pointer select-none items-center gap-2\"\n data-cy=\"group-dropdown\"\n >\n <Typography style=\"h5\" weight=\"normal\">\n {config?.selectedTeam?.label || \"--\"}\n </Typography>\n <Down size={16} />\n </div>\n);\n\nexport default AssignDropdownTarget;\n","import { useState, useMemo } from \"react\";\n\nimport { Typography, Dropdown, Spinner } from \"neetoui\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/dropdown.scss\";\n\nimport AssignDropdownTarget from \"./AssignDropdownTarget\";\n\nimport AssignList from \"../Common/AssignList\";\n\nconst TeamsDropdown = ({ config }) => {\n const { t } = useTranslation();\n const [searchTerm, setSearchTerm] = useState(\"\");\n const trimmedSearchTerm = searchTerm.trim();\n const teamSelectOptions = useMemo(\n () =>\n config?.availableTeams?.filter(({ label }) =>\n label?.toLowerCase().includes(trimmedSearchTerm.toLowerCase())\n ),\n [config?.availableTeams, trimmedSearchTerm]\n );\n\n return (\n <Dropdown\n className=\"w-full\"\n closeOnSelect={config?.closeOnSelect ?? true}\n customTarget={() => <AssignDropdownTarget {...{ config }} />}\n position=\"bottom-end\"\n targetClassName=\"w-full\"\n onClose={() => setSearchTerm(\"\")}\n >\n <AssignList>\n <AssignList.Search\n {...{ searchTerm }}\n handleClearSearchTerm={() => setSearchTerm(\"\")}\n placeholder={\n config?.searchPlaceholder ||\n t(\"neetoTeamMembers.placeholders.search\")\n }\n onChange={({ target: { value } }) => setSearchTerm(value)}\n />\n {config?.isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <div className=\"ntm-assign-droplist__list-wrapper flex flex-col px-3\">\n {isEmpty(teamSelectOptions) ? (\n <div className=\"flex w-full items-center justify-center p-2\">\n <Typography style=\"body2\">\n {t(\"neetoTeamMembers.helpers.noRecords\")}\n </Typography>\n </div>\n ) : (\n teamSelectOptions?.map(({ label, value }) => (\n <AssignList.TeamsListItem\n key={value}\n teamName={label}\n active={\n config?.selectedTeam.value === value ||\n (!config?.selectedTeam?.value && value === \"ungrouped\")\n }\n onClick={() =>\n config?.handleChange({\n id: config?.selectedTeam.value === value ? null : value,\n isTeam: true,\n })\n }\n />\n ))\n )}\n </div>\n )}\n </AssignList>\n </Dropdown>\n );\n};\n\nexport default TeamsDropdown;\n"],"names":["AssignDropdownTarget","_ref","_config$selectedTeam","config","_jsxs","className","children","_jsx","Typography","style","weight","selectedTeam","label","Down","size","TeamsDropdown","_config$closeOnSelect","_useTranslation","useTranslation","t","_useState","useState","_useState2","_slicedToArray","searchTerm","setSearchTerm","trimmedSearchTerm","trim","teamSelectOptions","useMemo","_config$availableTeam","availableTeams","filter","_ref2","toLowerCase","includes","Dropdown","closeOnSelect","customTarget","position","targetClassName","onClose","AssignList","Search","handleClearSearchTerm","placeholder","searchPlaceholder","onChange","_ref3","value","target","isLoading","Spinner","isEmpty","map","_ref4","TeamsListItem","teamName","active","onClick","handleChange","id","isTeam"],"mappings":"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"}
|
|
@@ -8,7 +8,7 @@ var Dropdown = require('@bigbinary/neetoui/Dropdown');
|
|
|
8
8
|
var Spinner = require('@bigbinary/neetoui/Spinner');
|
|
9
9
|
var ramda = require('ramda');
|
|
10
10
|
var reactI18next = require('react-i18next');
|
|
11
|
-
var index = require('../index-
|
|
11
|
+
var index = require('../index-B4YBmZV4.js');
|
|
12
12
|
var Down = require('@bigbinary/neeto-icons/Down');
|
|
13
13
|
var Avatar = require('@bigbinary/neetoui/Avatar');
|
|
14
14
|
var Tooltip = require('@bigbinary/neetoui/Tooltip');
|
|
@@ -32,6 +32,7 @@ var AssignDropdownTarget = function AssignDropdownTarget(_ref) {
|
|
|
32
32
|
profileImagePath = _selectedMember$profi === void 0 ? "" : _selectedMember$profi;
|
|
33
33
|
return /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
34
34
|
className: "flex h-10 w-60 cursor-pointer select-none items-center gap-2",
|
|
35
|
+
"data-cy": "assignee-dropdown",
|
|
35
36
|
children: [label !== "--" && /*#__PURE__*/jsxRuntime.jsx(Avatar, {
|
|
36
37
|
className: "flex-shrink-0",
|
|
37
38
|
user: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MembersDropdown.js","sources":["../../app/javascript/src/components/MembersDropdown/AssignDropdownTarget.jsx","../../app/javascript/src/components/MembersDropdown/constants.js","../../app/javascript/src/components/MembersDropdown/utils.js","../../app/javascript/src/components/MembersDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Avatar, Tooltip, Typography } from \"neetoui\";\n\nconst AssignDropdownTarget = ({ selectedMember = {} }) => {\n const { label = \"--\", profileImagePath = \"\" } = selectedMember;\n\n return (\n <div className=\"flex h-10 w-60 cursor-pointer select-none items-center gap-2\">\n {label !== \"--\" && (\n <Avatar\n className=\"flex-shrink-0\"\n user={{ name: label, imageUrl: profileImagePath }}\n />\n )}\n <Tooltip content={label} position=\"top\">\n <Typography className=\"truncate xl:block\" style=\"h5\" weight=\"normal\">\n {label}\n </Typography>\n </Tooltip>\n <Down className=\"flex-shrink-0\" size={16} />\n </div>\n );\n};\n\nexport default memo(AssignDropdownTarget);\n","export const SEARCH_TYPES = {\n MEMBER: \"agent\",\n TEAM: \"group\",\n MEMBER_OR_TEAM: \"agent_or_group\",\n};\n\nexport const TEAM_UNGROUPED = { value: \"ungrouped\", label: \"--\" };\n","import { findBy, isNotEmpty, removeBy } from \"neetocist\";\nimport { includes, toLower, append, pluck, map, any } from \"ramda\";\n\nimport { TEAM_UNGROUPED, SEARCH_TYPES } from \"./constants\";\n\nconst createMembersDropdownOptions = ({\n selectedTeam,\n searchTerm,\n availableTeams,\n onlyMembers = false,\n}) => {\n const tempOptions = [];\n const hasSelectedTeam =\n selectedTeam?.value && selectedTeam.value !== TEAM_UNGROUPED.value;\n\n const filteredTeams = availableTeams.filter(team =>\n isNotEmpty(team.filteredMembers)\n );\n\n const addMembersInTeam = ({ filteredMembers }) =>\n filteredMembers.forEach(member => {\n tempOptions.push({ ...member, type: SEARCH_TYPES.MEMBER });\n });\n\n const containsSearchTerm = includes(toLower(searchTerm));\n\n if (hasSelectedTeam) {\n const selectedTeamData = findBy(\n { value: selectedTeam.value },\n availableTeams\n );\n if (selectedTeamData) addMembersInTeam(selectedTeamData);\n }\n\n if (!hasSelectedTeam) {\n filteredTeams.forEach(team => {\n tempOptions.push({ ...team, type: SEARCH_TYPES.TEAM });\n addMembersInTeam(team);\n });\n }\n\n if (onlyMembers) {\n return removeBy({ type: \"group\" }, tempOptions);\n }\n\n return searchTerm\n ? tempOptions.filter(({ label, filteredMembers = [] }) => {\n const teamAndMembersLabels = map(\n toLower,\n append(label, pluck(\"label\", filteredMembers))\n );\n\n return any(containsSearchTerm, teamAndMembersLabels);\n })\n : tempOptions;\n};\n\nexport { createMembersDropdownOptions };\n","import { Fragment, useMemo, useRef, useState } from \"react\";\n\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Typography, Dropdown, Spinner } from \"neetoui\";\nimport { isEmpty, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/dropdown.scss\";\n\nimport AssignDropdownTarget from \"./AssignDropdownTarget\";\nimport { SEARCH_TYPES } from \"./constants\";\nimport { createMembersDropdownOptions } from \"./utils\";\n\nimport AssignList from \"../Common/AssignList\";\n\nconst MembersDropdown = ({ config }) => {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const dropdownRef = useRef(null);\n\n const { t } = useTranslation();\n\n useOnClickOutside(dropdownRef, () => setIsDropdownOpen(false));\n\n const options = useMemo(\n () =>\n createMembersDropdownOptions({\n searchTerm,\n selectedTeam: config?.selectedTeam,\n availableTeams: config?.availableTeams || [],\n }),\n [config?.selectedTeam, searchTerm, config?.availableTeams]\n );\n\n const handleClick = value => {\n setIsDropdownOpen(false);\n config?.handleUpdate({\n id: config?.selectedMember.value === value ? null : value,\n });\n };\n\n return (\n <div ref={dropdownRef}>\n <Dropdown\n className=\"w-full\"\n closeOnSelect={config?.closeOnSelect ?? true}\n isOpen={isDropdownOpen}\n position=\"bottom-end\"\n ref={dropdownRef}\n targetClassName=\"w-full\"\n customTarget={() => (\n <AssignDropdownTarget selectedMember={config?.selectedMember} />\n )}\n onClick={() => setIsDropdownOpen(not)}\n onClose={() => setSearchTerm(\"\")}\n >\n <AssignList>\n <AssignList.Search\n {...{ searchTerm }}\n handleClearSearchTerm={() => setSearchTerm(\"\")}\n placeholder={config?.searchPlaceholder}\n onChange={({ target: { value } }) => setSearchTerm(value)}\n />\n {config?.isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <div\n className=\"ntm-assign-droplist__list-wrapper flex flex-col px-3\"\n key={searchTerm}\n >\n {options.map(\n ({ label, value, type, profileImagePath }, index) => (\n <Fragment key={index}>\n {type === SEARCH_TYPES.TEAM && (\n <AssignList.TeamsListItem\n active={config?.selectedTeam.id === value}\n teamName={label}\n onClick={() =>\n config?.handleUpdate({\n id:\n config?.selectedTeam.value === value\n ? null\n : value,\n isTeam: true,\n })\n }\n />\n )}\n {type === SEARCH_TYPES.MEMBER && (\n <AssignList.MembersListItem\n active={config?.selectedMember.value === value}\n imageUrl={profileImagePath}\n memberName={label}\n onClick={() => handleClick(value)}\n />\n )}\n </Fragment>\n )\n )}\n {isEmpty(options) && (\n <div className=\"flex w-full items-center justify-center p-2\">\n <Typography\n data-cy=\"ticket-details-member-no-records-message\"\n style=\"body2\"\n >\n {t(\"neetoTeamMembers.helpers.noRecords\")}\n </Typography>\n </div>\n )}\n </div>\n )}\n </AssignList>\n </Dropdown>\n </div>\n );\n};\n\nexport default MembersDropdown;\n"],"names":["AssignDropdownTarget","_ref","_ref$selectedMember","selectedMember","_selectedMember$label","label","_selectedMember$profi","profileImagePath","_jsxs","className","children","_jsx","Avatar","user","name","imageUrl","Tooltip","content","position","Typography","style","weight","Down","size","memo","SEARCH_TYPES","MEMBER","TEAM","MEMBER_OR_TEAM","TEAM_UNGROUPED","value","createMembersDropdownOptions","selectedTeam","searchTerm","availableTeams","_ref$onlyMembers","onlyMembers","tempOptions","hasSelectedTeam","filteredTeams","filter","team","isNotEmpty","filteredMembers","addMembersInTeam","_ref2","forEach","member","push","_objectSpread","type","containsSearchTerm","includes","toLower","selectedTeamData","findBy","removeBy","_ref3","_ref3$filteredMembers","teamAndMembersLabels","map","append","pluck","any","MembersDropdown","_config$closeOnSelect","config","_useState","useState","_useState2","_slicedToArray","isDropdownOpen","setIsDropdownOpen","_useState3","_useState4","setSearchTerm","dropdownRef","useRef","_useTranslation","useTranslation","t","useOnClickOutside","options","useMemo","handleClick","handleUpdate","id","ref","Dropdown","closeOnSelect","isOpen","targetClassName","customTarget","onClick","not","onClose","AssignList","Search","handleClearSearchTerm","placeholder","searchPlaceholder","onChange","target","isLoading","Spinner","index","Fragment","TeamsListItem","active","teamName","isTeam","MembersListItem","memberName","isEmpty"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MembersDropdown.js","sources":["../../app/javascript/src/components/MembersDropdown/AssignDropdownTarget.jsx","../../app/javascript/src/components/MembersDropdown/constants.js","../../app/javascript/src/components/MembersDropdown/utils.js","../../app/javascript/src/components/MembersDropdown/index.jsx"],"sourcesContent":["import { memo } from \"react\";\n\nimport { Down } from \"neetoicons\";\nimport { Avatar, Tooltip, Typography } from \"neetoui\";\n\nconst AssignDropdownTarget = ({ selectedMember = {} }) => {\n const { label = \"--\", profileImagePath = \"\" } = selectedMember;\n\n return (\n <div\n className=\"flex h-10 w-60 cursor-pointer select-none items-center gap-2\"\n data-cy=\"assignee-dropdown\"\n >\n {label !== \"--\" && (\n <Avatar\n className=\"flex-shrink-0\"\n user={{ name: label, imageUrl: profileImagePath }}\n />\n )}\n <Tooltip content={label} position=\"top\">\n <Typography className=\"truncate xl:block\" style=\"h5\" weight=\"normal\">\n {label}\n </Typography>\n </Tooltip>\n <Down className=\"flex-shrink-0\" size={16} />\n </div>\n );\n};\n\nexport default memo(AssignDropdownTarget);\n","export const SEARCH_TYPES = {\n MEMBER: \"agent\",\n TEAM: \"group\",\n MEMBER_OR_TEAM: \"agent_or_group\",\n};\n\nexport const TEAM_UNGROUPED = { value: \"ungrouped\", label: \"--\" };\n","import { findBy, isNotEmpty, removeBy } from \"neetocist\";\nimport { includes, toLower, append, pluck, map, any } from \"ramda\";\n\nimport { TEAM_UNGROUPED, SEARCH_TYPES } from \"./constants\";\n\nconst createMembersDropdownOptions = ({\n selectedTeam,\n searchTerm,\n availableTeams,\n onlyMembers = false,\n}) => {\n const tempOptions = [];\n const hasSelectedTeam =\n selectedTeam?.value && selectedTeam.value !== TEAM_UNGROUPED.value;\n\n const filteredTeams = availableTeams.filter(team =>\n isNotEmpty(team.filteredMembers)\n );\n\n const addMembersInTeam = ({ filteredMembers }) =>\n filteredMembers.forEach(member => {\n tempOptions.push({ ...member, type: SEARCH_TYPES.MEMBER });\n });\n\n const containsSearchTerm = includes(toLower(searchTerm));\n\n if (hasSelectedTeam) {\n const selectedTeamData = findBy(\n { value: selectedTeam.value },\n availableTeams\n );\n if (selectedTeamData) addMembersInTeam(selectedTeamData);\n }\n\n if (!hasSelectedTeam) {\n filteredTeams.forEach(team => {\n tempOptions.push({ ...team, type: SEARCH_TYPES.TEAM });\n addMembersInTeam(team);\n });\n }\n\n if (onlyMembers) {\n return removeBy({ type: \"group\" }, tempOptions);\n }\n\n return searchTerm\n ? tempOptions.filter(({ label, filteredMembers = [] }) => {\n const teamAndMembersLabels = map(\n toLower,\n append(label, pluck(\"label\", filteredMembers))\n );\n\n return any(containsSearchTerm, teamAndMembersLabels);\n })\n : tempOptions;\n};\n\nexport { createMembersDropdownOptions };\n","import { Fragment, useMemo, useRef, useState } from \"react\";\n\nimport { useOnClickOutside } from \"neetocommons/react-utils\";\nimport { Typography, Dropdown, Spinner } from \"neetoui\";\nimport { isEmpty, not } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/dropdown.scss\";\n\nimport AssignDropdownTarget from \"./AssignDropdownTarget\";\nimport { SEARCH_TYPES } from \"./constants\";\nimport { createMembersDropdownOptions } from \"./utils\";\n\nimport AssignList from \"../Common/AssignList\";\n\nconst MembersDropdown = ({ config }) => {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [searchTerm, setSearchTerm] = useState(\"\");\n\n const dropdownRef = useRef(null);\n\n const { t } = useTranslation();\n\n useOnClickOutside(dropdownRef, () => setIsDropdownOpen(false));\n\n const options = useMemo(\n () =>\n createMembersDropdownOptions({\n searchTerm,\n selectedTeam: config?.selectedTeam,\n availableTeams: config?.availableTeams || [],\n }),\n [config?.selectedTeam, searchTerm, config?.availableTeams]\n );\n\n const handleClick = value => {\n setIsDropdownOpen(false);\n config?.handleUpdate({\n id: config?.selectedMember.value === value ? null : value,\n });\n };\n\n return (\n <div ref={dropdownRef}>\n <Dropdown\n className=\"w-full\"\n closeOnSelect={config?.closeOnSelect ?? true}\n isOpen={isDropdownOpen}\n position=\"bottom-end\"\n ref={dropdownRef}\n targetClassName=\"w-full\"\n customTarget={() => (\n <AssignDropdownTarget selectedMember={config?.selectedMember} />\n )}\n onClick={() => setIsDropdownOpen(not)}\n onClose={() => setSearchTerm(\"\")}\n >\n <AssignList>\n <AssignList.Search\n {...{ searchTerm }}\n handleClearSearchTerm={() => setSearchTerm(\"\")}\n placeholder={config?.searchPlaceholder}\n onChange={({ target: { value } }) => setSearchTerm(value)}\n />\n {config?.isLoading ? (\n <div className=\"flex w-full items-center justify-center py-8\">\n <Spinner />\n </div>\n ) : (\n <div\n className=\"ntm-assign-droplist__list-wrapper flex flex-col px-3\"\n key={searchTerm}\n >\n {options.map(\n ({ label, value, type, profileImagePath }, index) => (\n <Fragment key={index}>\n {type === SEARCH_TYPES.TEAM && (\n <AssignList.TeamsListItem\n active={config?.selectedTeam.id === value}\n teamName={label}\n onClick={() =>\n config?.handleUpdate({\n id:\n config?.selectedTeam.value === value\n ? null\n : value,\n isTeam: true,\n })\n }\n />\n )}\n {type === SEARCH_TYPES.MEMBER && (\n <AssignList.MembersListItem\n active={config?.selectedMember.value === value}\n imageUrl={profileImagePath}\n memberName={label}\n onClick={() => handleClick(value)}\n />\n )}\n </Fragment>\n )\n )}\n {isEmpty(options) && (\n <div className=\"flex w-full items-center justify-center p-2\">\n <Typography\n data-cy=\"ticket-details-member-no-records-message\"\n style=\"body2\"\n >\n {t(\"neetoTeamMembers.helpers.noRecords\")}\n </Typography>\n </div>\n )}\n </div>\n )}\n </AssignList>\n </Dropdown>\n </div>\n );\n};\n\nexport default MembersDropdown;\n"],"names":["AssignDropdownTarget","_ref","_ref$selectedMember","selectedMember","_selectedMember$label","label","_selectedMember$profi","profileImagePath","_jsxs","className","children","_jsx","Avatar","user","name","imageUrl","Tooltip","content","position","Typography","style","weight","Down","size","memo","SEARCH_TYPES","MEMBER","TEAM","MEMBER_OR_TEAM","TEAM_UNGROUPED","value","createMembersDropdownOptions","selectedTeam","searchTerm","availableTeams","_ref$onlyMembers","onlyMembers","tempOptions","hasSelectedTeam","filteredTeams","filter","team","isNotEmpty","filteredMembers","addMembersInTeam","_ref2","forEach","member","push","_objectSpread","type","containsSearchTerm","includes","toLower","selectedTeamData","findBy","removeBy","_ref3","_ref3$filteredMembers","teamAndMembersLabels","map","append","pluck","any","MembersDropdown","_config$closeOnSelect","config","_useState","useState","_useState2","_slicedToArray","isDropdownOpen","setIsDropdownOpen","_useState3","_useState4","setSearchTerm","dropdownRef","useRef","_useTranslation","useTranslation","t","useOnClickOutside","options","useMemo","handleClick","handleUpdate","id","ref","Dropdown","closeOnSelect","isOpen","targetClassName","customTarget","onClick","not","onClose","AssignList","Search","handleClearSearchTerm","placeholder","searchPlaceholder","onChange","target","isLoading","Spinner","index","Fragment","TeamsListItem","active","teamName","isTeam","MembersListItem","memberName","isEmpty"],"mappings":"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"}
|