@bigbinary/neeto-team-members-frontend 5.2.11-beta2 → 5.2.12-beta1
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 +14 -0
- package/dist/.ready +1 -1
- package/dist/ManageMember.js +2 -2
- package/dist/Profile.js +40 -13
- package/dist/Profile.js.map +1 -1
- package/dist/{ProfileImage-B76PJRV0.js → ProfileImage-BFPW6Yvu.js} +7 -2
- package/dist/ProfileImage-BFPW6Yvu.js.map +1 -0
- package/dist/{ProfileImage-6GIVcmN7.js → ProfileImage-DYM-kESR.js} +7 -1
- package/dist/ProfileImage-DYM-kESR.js.map +1 -0
- package/dist/TeamMembers.js +2 -2
- package/dist/cjs/ManageMember.js +2 -2
- package/dist/cjs/Profile.js +38 -11
- package/dist/cjs/Profile.js.map +1 -1
- package/dist/cjs/TeamMembers.js +2 -2
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/v2/Profile.js +29 -10
- package/dist/cjs/v2/Profile.js.map +1 -1
- package/dist/{index-CHGsfhlJ.js → index-BUrneUe2.js} +2 -2
- package/dist/{index-CHGsfhlJ.js.map → index-BUrneUe2.js.map} +1 -1
- package/dist/{index-DL2hLXXT.js → index-DF64FSTl.js} +2 -2
- package/dist/{index-DL2hLXXT.js.map → index-DF64FSTl.js.map} +1 -1
- package/dist/index.js +2 -2
- package/dist/v2/Profile.js +30 -11
- package/dist/v2/Profile.js.map +1 -1
- package/package.json +13 -13
- package/types.d.ts +4 -1
- package/dist/ProfileImage-6GIVcmN7.js.map +0 -1
- package/dist/ProfileImage-B76PJRV0.js.map +0 -1
package/dist/cjs/ManageMember.js
CHANGED
|
@@ -21,10 +21,10 @@ require('@bigbinary/neetoui/formik/Form');
|
|
|
21
21
|
require('ramda');
|
|
22
22
|
require('react-i18next');
|
|
23
23
|
require('../index-4wQ9Y7v9.js');
|
|
24
|
-
require('../ProfileImage-
|
|
24
|
+
require('../ProfileImage-DYM-kESR.js');
|
|
25
25
|
require('../useRolesApi-DuL4eCuF.js');
|
|
26
26
|
require('../useTeamsApi-ClWGPxNW.js');
|
|
27
|
-
var ManageMember = require('../index-
|
|
27
|
+
var ManageMember = require('../index-BUrneUe2.js');
|
|
28
28
|
require('../RolesRadioGroup-BRWqAkce.js');
|
|
29
29
|
require('react/jsx-runtime');
|
|
30
30
|
require('@babel/runtime/helpers/toConsumableArray');
|
package/dist/cjs/Profile.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
4
|
var React = require('react');
|
|
5
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
5
6
|
var MenuHorizontal = require('@bigbinary/neeto-icons/MenuHorizontal');
|
|
6
7
|
var Dropdown = require('@bigbinary/neetoui/Dropdown');
|
|
7
8
|
var Pane = require('@bigbinary/neetoui/Pane');
|
|
@@ -12,7 +13,6 @@ var _objectWithoutProperties = require('@babel/runtime/helpers/objectWithoutProp
|
|
|
12
13
|
var _asyncToGenerator = require('@babel/runtime/helpers/asyncToGenerator');
|
|
13
14
|
var _regeneratorRuntime = require('@babel/runtime/regenerator');
|
|
14
15
|
var neetoTimeZones = require('@bigbinary/neeto-time-zones');
|
|
15
|
-
var neetoCist = require('@bigbinary/neeto-cist');
|
|
16
16
|
var constants$1 = require('@bigbinary/neeto-commons-frontend/constants');
|
|
17
17
|
var hooks = require('@bigbinary/neeto-image-uploader-frontend/hooks');
|
|
18
18
|
var PhoneNumber = require('@bigbinary/neeto-molecules/PhoneNumber');
|
|
@@ -26,7 +26,7 @@ var ActionBlock = require('@bigbinary/neetoui/formik/ActionBlock');
|
|
|
26
26
|
var ramda = require('ramda');
|
|
27
27
|
var constants = require('../constants-D_H6M1Pm.js');
|
|
28
28
|
var useProfileApi = require('../useProfileApi-BcuLCyms.js');
|
|
29
|
-
var ProfileImage = require('../ProfileImage-
|
|
29
|
+
var ProfileImage = require('../ProfileImage-DYM-kESR.js');
|
|
30
30
|
var jsxRuntime = require('react/jsx-runtime');
|
|
31
31
|
var withImmutableActions = require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
|
|
32
32
|
var zustand = require('zustand');
|
|
@@ -74,9 +74,18 @@ var _excluded = ["countryId", "countryName"];
|
|
|
74
74
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
75
75
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
76
76
|
var ChangeProfile = function ChangeProfile(_ref) {
|
|
77
|
-
var
|
|
77
|
+
var _ref$focusField = _ref.focusField,
|
|
78
|
+
focusField = _ref$focusField === void 0 ? null : _ref$focusField,
|
|
79
|
+
initialFocusRef = _ref.initialFocusRef,
|
|
80
|
+
onClose = _ref.onClose;
|
|
78
81
|
var _useTranslation = reactI18next.useTranslation(),
|
|
79
82
|
t = _useTranslation.t;
|
|
83
|
+
|
|
84
|
+
// The Pane focuses initialFocusRef after this mounts, which overrides autoFocus.
|
|
85
|
+
React.useLayoutEffect(function () {
|
|
86
|
+
if (!focusField) return;
|
|
87
|
+
initialFocusRef.current = document.getElementById(ramda.prop(focusField, ProfileImage.FOCUSABLE_FIELD_IDS));
|
|
88
|
+
}, [focusField, initialFocusRef]);
|
|
80
89
|
var _useProfileImageUploa = hooks.useProfileImageUpload({
|
|
81
90
|
uploadConfig: {
|
|
82
91
|
folder: "Auth",
|
|
@@ -255,9 +264,10 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
255
264
|
children: [/*#__PURE__*/jsxRuntime.jsx(ProfileImage.ProfileImage, {}), /*#__PURE__*/jsxRuntime.jsxs("div", {
|
|
256
265
|
className: "neeto-ui-border-gray-200 mt-4 w-full space-y-4 border-t pt-4",
|
|
257
266
|
children: [/*#__PURE__*/jsxRuntime.jsx(Input__default.default, {
|
|
258
|
-
autoFocus: true,
|
|
259
267
|
required: true,
|
|
268
|
+
autoFocus: !focusField,
|
|
260
269
|
"data-testid": "profile-first-name-text-field",
|
|
270
|
+
id: ProfileImage.FOCUSABLE_FIELD_IDS.firstName,
|
|
261
271
|
label: t("neetoTeamMembers.profile.inputs.label.firstName"),
|
|
262
272
|
name: "firstName",
|
|
263
273
|
type: "text",
|
|
@@ -265,12 +275,14 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
265
275
|
}), /*#__PURE__*/jsxRuntime.jsx(Input__default.default, {
|
|
266
276
|
required: true,
|
|
267
277
|
"data-testid": "profile-last-name-text-field",
|
|
278
|
+
id: ProfileImage.FOCUSABLE_FIELD_IDS.lastName,
|
|
268
279
|
label: t("neetoTeamMembers.profile.inputs.label.lastName"),
|
|
269
280
|
name: "lastName",
|
|
270
281
|
type: "text",
|
|
271
282
|
placeholder: t("neetoTeamMembers.profile.inputs.placeholder.lastName")
|
|
272
283
|
}), /*#__PURE__*/jsxRuntime.jsx(PhoneNumber.FormikPhoneNumberInput, {
|
|
273
284
|
"data-testid": "profile-phonenumber-text-field",
|
|
285
|
+
id: ProfileImage.FOCUSABLE_FIELD_IDS.phonenumber,
|
|
274
286
|
name: "phonenumber",
|
|
275
287
|
label: t("neetoTeamMembers.profile.inputs.label.phonenumber")
|
|
276
288
|
})]
|
|
@@ -364,28 +376,37 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
364
376
|
var useProfileUpdateStore = zustand.create(withImmutableActions__default.default(function (set) {
|
|
365
377
|
return {
|
|
366
378
|
isOpen: false,
|
|
379
|
+
focusField: null,
|
|
367
380
|
setIsOpen: function setIsOpen(arg) {
|
|
381
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
382
|
+
_ref$focusField = _ref.focusField,
|
|
383
|
+
focusField = _ref$focusField === void 0 ? null : _ref$focusField;
|
|
368
384
|
if (typeof arg === "function") {
|
|
369
385
|
set(function (state) {
|
|
370
386
|
return {
|
|
371
|
-
isOpen: arg(state.isOpen)
|
|
387
|
+
isOpen: arg(state.isOpen),
|
|
388
|
+
focusField: focusField
|
|
372
389
|
};
|
|
373
390
|
});
|
|
374
391
|
} else {
|
|
375
392
|
set({
|
|
376
|
-
isOpen: arg
|
|
393
|
+
isOpen: arg,
|
|
394
|
+
focusField: focusField
|
|
377
395
|
});
|
|
378
396
|
}
|
|
379
397
|
}
|
|
380
398
|
};
|
|
381
399
|
}));
|
|
382
400
|
var useProfileUpdatePaneState = function useProfileUpdatePaneState() {
|
|
383
|
-
return useProfileUpdateStore(function (
|
|
384
|
-
var isOpen =
|
|
385
|
-
setIsOpen =
|
|
401
|
+
return useProfileUpdateStore(function (_ref2) {
|
|
402
|
+
var isOpen = _ref2.isOpen,
|
|
403
|
+
setIsOpen = _ref2.setIsOpen;
|
|
386
404
|
return [isOpen, setIsOpen];
|
|
387
405
|
}, shallow.shallow);
|
|
388
406
|
};
|
|
407
|
+
var useProfileFocusField = function useProfileFocusField() {
|
|
408
|
+
return useProfileUpdateStore(ramda.prop("focusField"));
|
|
409
|
+
};
|
|
389
410
|
|
|
390
411
|
var sanitizeValue = function sanitizeValue(value, defaultValue) {
|
|
391
412
|
return ramda.isNil(value) || ramda.is(String, value) && ramda.trim(value) === "" ? defaultValue : value;
|
|
@@ -645,6 +666,9 @@ var Profile = function Profile() {
|
|
|
645
666
|
_useState2 = _slicedToArray__default.default(_useState, 2),
|
|
646
667
|
isEditMode = _useState2[0],
|
|
647
668
|
setIsEditMode = _useState2[1];
|
|
669
|
+
var focusField = useProfileFocusField();
|
|
670
|
+
var isEditing = isEditMode || neetoCist.isPresent(focusField);
|
|
671
|
+
var initialFocusRef = React.useRef(null);
|
|
648
672
|
var onClose = function onClose() {
|
|
649
673
|
setIsOpen(false);
|
|
650
674
|
setIsEditMode(false);
|
|
@@ -655,6 +679,7 @@ var Profile = function Profile() {
|
|
|
655
679
|
return /*#__PURE__*/jsxRuntime.jsx("div", {
|
|
656
680
|
className: "w-full",
|
|
657
681
|
children: /*#__PURE__*/jsxRuntime.jsxs(Pane__default.default, {
|
|
682
|
+
initialFocusRef: initialFocusRef,
|
|
658
683
|
isOpen: isOpen,
|
|
659
684
|
onClose: onClose,
|
|
660
685
|
className: "neeto-ui-bg-gray-50 max-w-96",
|
|
@@ -666,7 +691,7 @@ var Profile = function Profile() {
|
|
|
666
691
|
style: "h2",
|
|
667
692
|
weight: "semibold",
|
|
668
693
|
children: t("neetoTeamMembers.profile.common.myProfile")
|
|
669
|
-
}), !
|
|
694
|
+
}), !isEditing && /*#__PURE__*/jsxRuntime.jsx(Dropdown__default.default, {
|
|
670
695
|
buttonStyle: "text",
|
|
671
696
|
icon: MenuHorizontal__default.default,
|
|
672
697
|
children: /*#__PURE__*/jsxRuntime.jsxs(Menu, {
|
|
@@ -686,7 +711,9 @@ var Profile = function Profile() {
|
|
|
686
711
|
})
|
|
687
712
|
})]
|
|
688
713
|
})
|
|
689
|
-
}),
|
|
714
|
+
}), isEditing ? /*#__PURE__*/jsxRuntime.jsx(ChangeProfile, {
|
|
715
|
+
focusField: focusField,
|
|
716
|
+
initialFocusRef: initialFocusRef,
|
|
690
717
|
onClose: onClose
|
|
691
718
|
}) : /*#__PURE__*/jsxRuntime.jsx(Preview$1, {})]
|
|
692
719
|
})
|
package/dist/cjs/Profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Profile.js","sources":["../../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 { useCallback, useEffect, useRef } from \"react\";\n\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/constants\";\nimport { useProfileImageUpload } from \"neetoimageuploader\";\nimport { FormikPhoneNumberInput } from \"neetomolecules/PhoneNumber\";\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\";\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 phonenumber = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryName = \"\",\n timeFormat = TIME_FORMAT_OPTIONS[0].value,\n language = \"\",\n } = user;\n\n const setFieldValueRef = useRef(null);\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 => {\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 }) => setFieldValueRef.current(\"timeZone\", main),\n });\n }\n },\n [timeZone, timeFormat]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n phonenumber: phonenumber ?? \"\",\n timeZone,\n dateFormat,\n timeFormat,\n language,\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 // Both stay undefined until the country select is changed.\n const {\n countryId: updatedCountryId,\n countryName: updatedCountryName,\n ...rest\n } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier: updatedCountryId,\n countryName: updatedCountryName,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error.message);\n }\n };\n\n useEffect(() => {\n const country = findBy({ label: countryName }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryName, countryDropdownOptions, handleCountryChange]);\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-testid\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, errors, touched }) => {\n setFieldValueRef.current = setFieldValue;\n\n return (\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-testid=\"profile-first-name-text-field\"\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-testid=\"profile-last-name-text-field\"\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 <FormikPhoneNumberInput\n data-testid=\"profile-phonenumber-text-field\"\n name=\"phonenumber\"\n label={t(\n \"neetoTeamMembers.profile.inputs.label.phonenumber\"\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-testid=\"ntm-profile-country-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.country\")}\n name=\"countryId\"\n options={countryDropdownOptions}\n value={selectedCountryOption}\n onChange={option => {\n const dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields?.dateFormat);\n setFieldValue(\"countryId\", option?.value);\n setFieldValue(\"countryName\", option?.label);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-testid=\"ntm-language-select\"\n name=\"language\"\n options={LANGUAGE_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.language\"\n )}\n onChange={option => {\n setFieldValue(\"language\", option.value);\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <div className=\"space-y-2\">\n <Label required>\n {t(\"neetoTeamMembers.profile.inputs.label.timeZone\")}\n </Label>\n <div\n className=\"w-full grow\"\n data-testid=\"ntm-profile-time-zone-select\"\n ref={timezoneRef}\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-testid=\"ntm-time-format-select\"\n name=\"timeFormat\"\n options={TIME_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.preferredTimeFormat\"\n )}\n onChange={option => {\n setFieldValue(\"timeFormat\", option.value);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-testid=\"ntm-date-format-select\"\n name=\"dateFormat\"\n options={DATE_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.preferredDateFormat\"\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-testid\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"ntm-profile-submit-button\",\n }}\n />\n </Pane.Footer>\n </>\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 } from \"neetocist\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Crown } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Avatar, Button, Pane, Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport { useFetchProfile } from \"hooks/profile/useProfileApi\";\n\nimport { MANAGE_BILLING_PATH } from \"./constants\";\nimport { sanitizeValue } from \"./utils\";\n\nconst Preview = () => {\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 language: sanitizeValue(user.language, \"-\"),\n phonenumber: sanitizeValue(user.phonenumber, \"-\"),\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 language,\n phonenumber,\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 isHour12 = (timeFormat || TIME_FORMAT_OPTIONS[0].value) === \"12h\";\n\n const time = new Intl.DateTimeFormat(\"en-US\", {\n timeZone,\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: isHour12,\n }).format(new Date());\n\n const timeZoneAbbreviation = new Intl.DateTimeFormat(\"en-US\", {\n timeZone,\n timeZoneName: \"short\",\n })\n .formatToParts(new Date())\n .find(part => part.type === \"timeZoneName\")?.value;\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=\"neeto-ui-bg-gray-50 w-full\">\n <div className=\"flex w-full flex-col gap-2\">\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3\">\n <div className=\"flex items-center gap-3\">\n <Avatar size=\"large\" user={{ name, imageUrl: profileImageUrl }} />\n <div className=\"flex flex-col\">\n <Typography\n data-testid=\"profile-full-name-field\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {name}\n </Typography>\n <div className=\"flex items-center gap-1\">\n <Typography\n className=\"neeto-ui-text-gray-600\"\n data-testid=\"profile-email-field\"\n style=\"body3\"\n >\n {email}\n </Typography>\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={email}\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3 divide-y divide-gray-100\">\n <div className=\"flex flex-col gap-1 pb-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.firstName\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-first-name-field\"\n style=\"body2\"\n >\n {firstName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.lastName\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-last-name-field\"\n style=\"body2\"\n >\n {lastName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.profile.inputs.label.phonenumber\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-phonenumber-field\"\n style=\"body2\"\n >\n {phonenumber}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.country\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-country-field\"\n style=\"body2\"\n >\n {countryName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.language\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-language-field\"\n style=\"body2\"\n >\n {_findBy({ value: language }, LANGUAGE_OPTIONS)?.label || \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.timeZone\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-time-zone-field\"\n style=\"body2\"\n >\n {ianaTimezoneToHumanReadable(timeZone)}\n {timeZoneAbbreviation ? ` (${timeZoneAbbreviation})` : \"\"} {time}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.preferredTimeFormat\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-time-format-field\"\n style=\"body2\"\n >\n {_findBy({ value: timeFormat }, TIME_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 pt-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.preferredDateFormat\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-date-format-field\"\n style=\"body2\"\n >\n {_findBy({ value: dateFormat }, DATE_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex flex-col gap-1\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.currentPlan\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-subscription-type\"\n style=\"body2\"\n >\n {t(\"neetoTeamMembers.common.subscriptionType\", {\n subscription,\n })}\n </Typography>\n </div>\n <Button\n className=\"neeto-ui-rounded-full\"\n data-testid=\"profile-upgrade-button\"\n href={MANAGE_BILLING_PATH}\n icon={Crown}\n iconPosition=\"left\"\n label={t(\"neetoTeamMembers.buttons.upgrade\")}\n size=\"small\"\n style=\"primary\"\n />\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 { MANAGE_BILLING_PATH, UPDATE_EMAIL_PATH } from \"./constants\";\nimport useProfileUpdatePaneState from \"./hooks/useProfileUpdatePane\";\nimport Preview from \"./Preview\";\nimport \"./styles.scss\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Profile = () => {\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=\"neeto-ui-bg-gray-50 max-w-96\">\n <Pane.Header className=\"neeto-ui-bg-gray-50\">\n <div className=\"flex justify-between\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n {!isEditMode && (\n <Dropdown buttonStyle=\"text\" icon={MenuHorizontal}>\n <Menu>\n <MenuItem.Button\n data-testid=\"edit-basic-info-menu-button\"\n onClick={enableEditMode}\n >\n {t(\"neetoTeamMembers.buttons.editBasicInfo\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"update-email-menu-button\"\n href={UPDATE_EMAIL_PATH}\n >\n {t(\"neetoTeamMembers.buttons.updateEmail\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"manage-billing-subscriptions-menu-button\"\n href={MANAGE_BILLING_PATH}\n >\n {t(\n \"neetoTeamMembers.buttons.manageBillingAndSubscriptions\"\n )}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n </div>\n </Pane.Header>\n {isEditMode ? <ChangeProfile {...{ onClose }} /> : <Preview />}\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["ChangeProfile","_ref","onClose","_useTranslation","useTranslation","t","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","useFetchProfile","_useFetchProfile$data","data","_useFetchProfile$data2","_useFetchProfile$data3","user","isFetchingUserDetails","isFetching","_user$firstName","firstName","_user$lastName","lastName","_user$phonenumber","phonenumber","_user$dateFormat","dateFormat","DATE_FORMAT_OPTIONS","value","_user$timeZone","timeZone","_user$profileImageUrl","profileImageUrl","_user$countryName","countryName","_user$timeFormat","timeFormat","TIME_FORMAT_OPTIONS","_user$language","language","setFieldValueRef","useRef","_useCountries","useCountries","countryDropdownOptions","selectedCountryOption","isFetchingCountriesList","_useCountries$handleC","handleCountryChange","noop","_useUpdateProfileMuta","useUpdateProfileMutation","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","node","isNotNil","NeetoTimezoneSelector","isTimeFormat24H","className","position","initialValue","onChange","_ref2","main","current","initialFormValues","avatar","imageUrl","file","handleSubmit","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","values","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","updatedCountryName","rest","payload","wrap","_callee$","_context","prev","next","sent","countryId","_objectWithoutProperties","_excluded","_objectSpread","countryIdentifier","id","t0","Toastr","error","message","stop","_x","apply","arguments","useEffect","country","findBy","label","_jsx","children","Spinner","Form","formProps","formikProps","initialValues","validationSchema","PROFILE_VALIDATION_SCHEMA","onSubmit","_ref4","setFieldValue","errors","touched","_jsxs","_Fragment","Pane","Body","ProfileImage","Input","autoFocus","required","name","type","placeholder","FormikPhoneNumberInput","Select","options","option","dependentFields","LANGUAGE_OPTIONS","Label","ref","Typography","lineHeight","style","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","state","useProfileUpdatePaneState","shallow","sanitizeValue","defaultValue","isNil","is","String","trim","Preview","_globalProps$user","_Intl$DateTimeFormat$","_findBy2","_findBy3","_findBy4","sanitizedUser","email","concat","subscription","globalProps","subscriptionPlan","isHour12","time","Intl","DateTimeFormat","hour","minute","hour12","format","Date","timeZoneAbbreviation","timeZoneName","formatToParts","find","part","Avatar","size","weight","CopyToClipboardButton","_findBy","ianaTimezoneToHumanReadable","Button","href","MANAGE_BILLING_PATH","icon","Crown","iconPosition","memo","Menu","Dropdown","MenuItem","Profile","_useProfileUpdatePane","_useProfileUpdatePane2","_slicedToArray","_useState","useState","_useState2","isEditMode","setIsEditMode","enableEditMode","Header","buttonStyle","MenuHorizontal","UPDATE_EMAIL_PATH","usePaneState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Profile.js","sources":["../../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 { useCallback, useEffect, useLayoutEffect, useRef } from \"react\";\n\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/constants\";\nimport { useProfileImageUpload } from \"neetoimageuploader\";\nimport { FormikPhoneNumberInput } from \"neetomolecules/PhoneNumber\";\nimport { Label, Pane, Spinner, Toastr, Typography } from \"neetoui\";\nimport { Input, Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { isNotNil, prop } 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 { FOCUSABLE_FIELD_IDS, PROFILE_VALIDATION_SCHEMA } from \"./constants\";\nimport useCountries from \"./hooks/useCountries\";\nimport ProfileImage from \"./ProfileImage\";\n\nconst ChangeProfile = ({ focusField = null, initialFocusRef, onClose }) => {\n const { t } = useTranslation();\n\n // The Pane focuses initialFocusRef after this mounts, which overrides autoFocus.\n useLayoutEffect(() => {\n if (!focusField) return;\n\n initialFocusRef.current = document.getElementById(\n prop(focusField, FOCUSABLE_FIELD_IDS)\n );\n }, [focusField, initialFocusRef]);\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 phonenumber = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryName = \"\",\n timeFormat = TIME_FORMAT_OPTIONS[0].value,\n language = \"\",\n } = user;\n\n const setFieldValueRef = useRef(null);\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 => {\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 }) => setFieldValueRef.current(\"timeZone\", main),\n });\n }\n },\n [timeZone, timeFormat]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n phonenumber: phonenumber ?? \"\",\n timeZone,\n dateFormat,\n timeFormat,\n language,\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 // Both stay undefined until the country select is changed.\n const {\n countryId: updatedCountryId,\n countryName: updatedCountryName,\n ...rest\n } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier: updatedCountryId,\n countryName: updatedCountryName,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error.message);\n }\n };\n\n useEffect(() => {\n const country = findBy({ label: countryName }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryName, countryDropdownOptions, handleCountryChange]);\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-testid\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, errors, touched }) => {\n setFieldValueRef.current = setFieldValue;\n\n return (\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 required\n autoFocus={!focusField}\n data-testid=\"profile-first-name-text-field\"\n id={FOCUSABLE_FIELD_IDS.firstName}\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-testid=\"profile-last-name-text-field\"\n id={FOCUSABLE_FIELD_IDS.lastName}\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 <FormikPhoneNumberInput\n data-testid=\"profile-phonenumber-text-field\"\n id={FOCUSABLE_FIELD_IDS.phonenumber}\n name=\"phonenumber\"\n label={t(\n \"neetoTeamMembers.profile.inputs.label.phonenumber\"\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-testid=\"ntm-profile-country-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.country\")}\n name=\"countryId\"\n options={countryDropdownOptions}\n value={selectedCountryOption}\n onChange={option => {\n const dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields?.dateFormat);\n setFieldValue(\"countryId\", option?.value);\n setFieldValue(\"countryName\", option?.label);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-testid=\"ntm-language-select\"\n name=\"language\"\n options={LANGUAGE_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.language\"\n )}\n onChange={option => {\n setFieldValue(\"language\", option.value);\n }}\n />\n </div>\n <div className=\"space-y-2\">\n <div className=\"space-y-2\">\n <Label required>\n {t(\"neetoTeamMembers.profile.inputs.label.timeZone\")}\n </Label>\n <div\n className=\"w-full grow\"\n data-testid=\"ntm-profile-time-zone-select\"\n ref={timezoneRef}\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-testid=\"ntm-time-format-select\"\n name=\"timeFormat\"\n options={TIME_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.preferredTimeFormat\"\n )}\n onChange={option => {\n setFieldValue(\"timeFormat\", option.value);\n }}\n />\n <div className=\"space-y-2\">\n <Select\n required\n data-testid=\"ntm-date-format-select\"\n name=\"dateFormat\"\n options={DATE_FORMAT_OPTIONS}\n label={t(\n \"neetoTeamMembers.profile.inputs.label.preferredDateFormat\"\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-testid\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"ntm-profile-submit-button\",\n }}\n />\n </Pane.Footer>\n </>\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 { prop } from \"ramda\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst useProfileUpdateStore = create(\n withImmutableActions(set => ({\n isOpen: false,\n focusField: null,\n\n setIsOpen: (arg, { focusField = null } = {}) => {\n if (typeof arg === \"function\") {\n set(state => ({ isOpen: arg(state.isOpen), focusField }));\n } else {\n set({ isOpen: arg, focusField });\n }\n },\n }))\n);\n\nconst useProfileUpdatePaneState = () =>\n useProfileUpdateStore(\n ({ isOpen, setIsOpen }) => [isOpen, setIsOpen],\n shallow\n );\n\nexport const useProfileFocusField = () =>\n useProfileUpdateStore(prop(\"focusField\"));\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 } from \"neetocist\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Crown } from \"neetoicons\";\nimport CopyToClipboardButton from \"neetomolecules/CopyToClipboardButton\";\nimport { Avatar, Button, Pane, Spinner, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\nimport { useFetchProfile } from \"hooks/profile/useProfileApi\";\n\nimport { MANAGE_BILLING_PATH } from \"./constants\";\nimport { sanitizeValue } from \"./utils\";\n\nconst Preview = () => {\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 language: sanitizeValue(user.language, \"-\"),\n phonenumber: sanitizeValue(user.phonenumber, \"-\"),\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 language,\n phonenumber,\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 isHour12 = (timeFormat || TIME_FORMAT_OPTIONS[0].value) === \"12h\";\n\n const time = new Intl.DateTimeFormat(\"en-US\", {\n timeZone,\n hour: \"2-digit\",\n minute: \"2-digit\",\n hour12: isHour12,\n }).format(new Date());\n\n const timeZoneAbbreviation = new Intl.DateTimeFormat(\"en-US\", {\n timeZone,\n timeZoneName: \"short\",\n })\n .formatToParts(new Date())\n .find(part => part.type === \"timeZoneName\")?.value;\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=\"neeto-ui-bg-gray-50 w-full\">\n <div className=\"flex w-full flex-col gap-2\">\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3\">\n <div className=\"flex items-center gap-3\">\n <Avatar size=\"large\" user={{ name, imageUrl: profileImageUrl }} />\n <div className=\"flex flex-col\">\n <Typography\n data-testid=\"profile-full-name-field\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {name}\n </Typography>\n <div className=\"flex items-center gap-1\">\n <Typography\n className=\"neeto-ui-text-gray-600\"\n data-testid=\"profile-email-field\"\n style=\"body3\"\n >\n {email}\n </Typography>\n <CopyToClipboardButton\n size=\"small\"\n style=\"text\"\n value={email}\n />\n </div>\n </div>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3 divide-y divide-gray-100\">\n <div className=\"flex flex-col gap-1 pb-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.firstName\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-first-name-field\"\n style=\"body2\"\n >\n {firstName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.lastName\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-last-name-field\"\n style=\"body2\"\n >\n {lastName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.profile.inputs.label.phonenumber\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-phonenumber-field\"\n style=\"body2\"\n >\n {phonenumber}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.country\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-country-field\"\n style=\"body2\"\n >\n {countryName}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.language\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-language-field\"\n style=\"body2\"\n >\n {_findBy({ value: language }, LANGUAGE_OPTIONS)?.label || \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.timeZone\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-time-zone-field\"\n style=\"body2\"\n >\n {ianaTimezoneToHumanReadable(timeZone)}\n {timeZoneAbbreviation ? ` (${timeZoneAbbreviation})` : \"\"} {time}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 py-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.preferredTimeFormat\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-time-format-field\"\n style=\"body2\"\n >\n {_findBy({ value: timeFormat }, TIME_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n <div className=\"flex flex-col gap-1 pt-3\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.preferredDateFormat\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-preferred-date-format-field\"\n style=\"body2\"\n >\n {_findBy({ value: dateFormat }, DATE_FORMAT_OPTIONS)?.label ||\n \"-\"}\n </Typography>\n </div>\n </div>\n <div className=\"neeto-ui-bg-white neeto-ui-rounded-md p-3\">\n <div className=\"flex items-center justify-between\">\n <div className=\"flex flex-col gap-1\">\n <Typography\n className=\"neeto-ui-text-gray-500\"\n style=\"body3\"\n weight=\"medium\"\n >\n {t(\"neetoTeamMembers.labels.currentPlan\")}\n </Typography>\n <Typography\n className=\"neeto-ui-text-black profile-preview-value\"\n data-testid=\"profile-subscription-type\"\n style=\"body2\"\n >\n {t(\"neetoTeamMembers.common.subscriptionType\", {\n subscription,\n })}\n </Typography>\n </div>\n <Button\n className=\"neeto-ui-rounded-full\"\n data-testid=\"profile-upgrade-button\"\n href={MANAGE_BILLING_PATH}\n icon={Crown}\n iconPosition=\"left\"\n label={t(\"neetoTeamMembers.buttons.upgrade\")}\n size=\"small\"\n style=\"primary\"\n />\n </div>\n </div>\n </div>\n </Pane.Body>\n );\n};\n\nexport default memo(Preview);\n","import { useRef, useState } from \"react\";\n\nimport { isPresent } from \"neetocist\";\nimport { MenuHorizontal } from \"neetoicons\";\nimport { Dropdown, Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChangeProfile from \"./ChangeProfile\";\nimport { MANAGE_BILLING_PATH, UPDATE_EMAIL_PATH } from \"./constants\";\nimport useProfileUpdatePaneState, {\n useProfileFocusField,\n} from \"./hooks/useProfileUpdatePane\";\nimport Preview from \"./Preview\";\nimport \"./styles.scss\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst Profile = () => {\n const { t } = useTranslation();\n\n const [isOpen, setIsOpen] = useProfileUpdatePaneState();\n const [isEditMode, setIsEditMode] = useState(false);\n const focusField = useProfileFocusField();\n const isEditing = isEditMode || isPresent(focusField);\n const initialFocusRef = useRef(null);\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\n {...{ initialFocusRef, isOpen, onClose }}\n className=\"neeto-ui-bg-gray-50 max-w-96\"\n >\n <Pane.Header className=\"neeto-ui-bg-gray-50\">\n <div className=\"flex justify-between\">\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n {!isEditing && (\n <Dropdown buttonStyle=\"text\" icon={MenuHorizontal}>\n <Menu>\n <MenuItem.Button\n data-testid=\"edit-basic-info-menu-button\"\n onClick={enableEditMode}\n >\n {t(\"neetoTeamMembers.buttons.editBasicInfo\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"update-email-menu-button\"\n href={UPDATE_EMAIL_PATH}\n >\n {t(\"neetoTeamMembers.buttons.updateEmail\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"manage-billing-subscriptions-menu-button\"\n href={MANAGE_BILLING_PATH}\n >\n {t(\n \"neetoTeamMembers.buttons.manageBillingAndSubscriptions\"\n )}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n )}\n </div>\n </Pane.Header>\n {isEditing ? (\n <ChangeProfile {...{ focusField, initialFocusRef, onClose }} />\n ) : (\n <Preview />\n )}\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["ChangeProfile","_ref","_ref$focusField","focusField","initialFocusRef","onClose","_useTranslation","useTranslation","t","useLayoutEffect","current","document","getElementById","prop","FOCUSABLE_FIELD_IDS","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","useFetchProfile","_useFetchProfile$data","data","_useFetchProfile$data2","_useFetchProfile$data3","user","isFetchingUserDetails","isFetching","_user$firstName","firstName","_user$lastName","lastName","_user$phonenumber","phonenumber","_user$dateFormat","dateFormat","DATE_FORMAT_OPTIONS","value","_user$timeZone","timeZone","_user$profileImageUrl","profileImageUrl","_user$countryName","countryName","_user$timeFormat","timeFormat","TIME_FORMAT_OPTIONS","_user$language","language","setFieldValueRef","useRef","_useCountries","useCountries","countryDropdownOptions","selectedCountryOption","isFetchingCountriesList","_useCountries$handleC","handleCountryChange","noop","_useUpdateProfileMuta","useUpdateProfileMutation","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","node","isNotNil","NeetoTimezoneSelector","isTimeFormat24H","className","position","initialValue","onChange","_ref2","main","initialFormValues","avatar","imageUrl","file","handleSubmit","_ref3","_asyncToGenerator","_regeneratorRuntime","mark","_callee","values","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","updatedCountryName","rest","payload","wrap","_callee$","_context","prev","next","sent","countryId","_objectWithoutProperties","_excluded","_objectSpread","countryIdentifier","id","t0","Toastr","error","message","stop","_x","apply","arguments","useEffect","country","findBy","label","_jsx","children","Spinner","Form","formProps","formikProps","initialValues","validationSchema","PROFILE_VALIDATION_SCHEMA","onSubmit","_ref4","setFieldValue","errors","touched","_jsxs","_Fragment","Pane","Body","ProfileImage","Input","required","autoFocus","name","type","placeholder","FormikPhoneNumberInput","Select","options","option","dependentFields","LANGUAGE_OPTIONS","Label","ref","Typography","lineHeight","style","Footer","ActionBlock","isSubmitting","cancelButtonProps","onClick","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","length","undefined","state","useProfileUpdatePaneState","shallow","useProfileFocusField","sanitizeValue","defaultValue","isNil","is","String","trim","Preview","_globalProps$user","_Intl$DateTimeFormat$","_findBy2","_findBy3","_findBy4","sanitizedUser","email","concat","subscription","globalProps","subscriptionPlan","isHour12","time","Intl","DateTimeFormat","hour","minute","hour12","format","Date","timeZoneAbbreviation","timeZoneName","formatToParts","find","part","Avatar","size","weight","CopyToClipboardButton","_findBy","ianaTimezoneToHumanReadable","Button","href","MANAGE_BILLING_PATH","icon","Crown","iconPosition","memo","Menu","Dropdown","MenuItem","Profile","_useProfileUpdatePane","_useProfileUpdatePane2","_slicedToArray","_useState","useState","_useState2","isEditMode","setIsEditMode","isEditing","isPresent","enableEditMode","Header","buttonStyle","MenuHorizontal","UPDATE_EMAIL_PATH","usePaneState"],"mappings":"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"}
|
package/dist/cjs/TeamMembers.js
CHANGED
|
@@ -25,7 +25,7 @@ var useTeamsApi = require('../useTeamsApi-ClWGPxNW.js');
|
|
|
25
25
|
var constants$1 = require('./constants.js');
|
|
26
26
|
var _toConsumableArray = require('@babel/runtime/helpers/toConsumableArray');
|
|
27
27
|
var utils = require('@bigbinary/neeto-filters-frontend/utils');
|
|
28
|
-
var ManageMember = require('../index-
|
|
28
|
+
var ManageMember = require('../index-BUrneUe2.js');
|
|
29
29
|
var injectCss = require('../inject-css-B6qYtOJe.js');
|
|
30
30
|
var neetoCist = require('@bigbinary/neeto-cist');
|
|
31
31
|
var Button = require('@bigbinary/neetoui/Button');
|
|
@@ -58,7 +58,7 @@ require('@bigbinary/neetoui/formik/ActionBlock');
|
|
|
58
58
|
require('@bigbinary/neetoui/formik/Form');
|
|
59
59
|
require('../index-4wQ9Y7v9.js');
|
|
60
60
|
require('formik');
|
|
61
|
-
require('../ProfileImage-
|
|
61
|
+
require('../ProfileImage-DYM-kESR.js');
|
|
62
62
|
require('../useCountriesApi-CjhrbnjK.js');
|
|
63
63
|
require('@bigbinary/neeto-icons/Edit');
|
|
64
64
|
require('@bigbinary/neetoui/Avatar');
|
package/dist/cjs/index.js
CHANGED
|
@@ -7,7 +7,7 @@ var Profile = require('./Profile.js');
|
|
|
7
7
|
var Roles = require('./Roles.js');
|
|
8
8
|
var Permissions = require('../Permissions-B6RRMTKS.js');
|
|
9
9
|
var TeamMembers = require('./TeamMembers.js');
|
|
10
|
-
var ManageMember = require('../index-
|
|
10
|
+
var ManageMember = require('../index-BUrneUe2.js');
|
|
11
11
|
var RolesRadioGroup = require('../RolesRadioGroup-BRWqAkce.js');
|
|
12
12
|
var TeamsAndMembersDropdown = require('./TeamsAndMembersDropdown.js');
|
|
13
13
|
var TeamsDropdown = require('./TeamsDropdown.js');
|
|
@@ -77,7 +77,7 @@ require('@bigbinary/neetoui/Label');
|
|
|
77
77
|
require('@bigbinary/neetoui/Toastr');
|
|
78
78
|
require('../useProfileApi-BcuLCyms.js');
|
|
79
79
|
require('../useCountriesApi-CjhrbnjK.js');
|
|
80
|
-
require('../ProfileImage-
|
|
80
|
+
require('../ProfileImage-DYM-kESR.js');
|
|
81
81
|
require('@bigbinary/neeto-icons/Edit');
|
|
82
82
|
require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
|
|
83
83
|
require('zustand');
|
package/dist/cjs/v2/Profile.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
|
|
4
4
|
var React = require('react');
|
|
5
5
|
var neetoAtoms = require('@bigbinary/neeto-atoms');
|
|
6
|
+
var neetoCist = require('@bigbinary/neeto-cist');
|
|
6
7
|
var MoreDropdown = require('@bigbinary/neeto-molecules/v2/MoreDropdown');
|
|
7
8
|
var reactI18next = require('react-i18next');
|
|
8
9
|
var _defineProperty = require('@babel/runtime/helpers/defineProperty');
|
|
@@ -12,7 +13,6 @@ var _regeneratorRuntime = require('@babel/runtime/regenerator');
|
|
|
12
13
|
var neetoTimeZones = require('@bigbinary/neeto-time-zones');
|
|
13
14
|
var formik = require('@bigbinary/neeto-atoms/formik');
|
|
14
15
|
var Card = require('@bigbinary/neeto-atoms/primitives/Card');
|
|
15
|
-
var neetoCist = require('@bigbinary/neeto-cist');
|
|
16
16
|
var constants$1 = require('@bigbinary/neeto-commons-frontend/v2/constants');
|
|
17
17
|
var hooks = require('@bigbinary/neeto-image-uploader-frontend/v2/hooks');
|
|
18
18
|
var PhoneNumber = require('@bigbinary/neeto-molecules/v2/PhoneNumber');
|
|
@@ -57,9 +57,14 @@ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbol
|
|
|
57
57
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { _defineProperty__default.default(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
58
58
|
var ChangeProfile = function ChangeProfile(_ref) {
|
|
59
59
|
var _findBy$value, _findBy;
|
|
60
|
-
var
|
|
60
|
+
var _ref$focusField = _ref.focusField,
|
|
61
|
+
focusField = _ref$focusField === void 0 ? null : _ref$focusField,
|
|
62
|
+
onClose = _ref.onClose;
|
|
61
63
|
var _useTranslation = reactI18next.useTranslation(),
|
|
62
64
|
t = _useTranslation.t;
|
|
65
|
+
var isFocused = function isFocused(name) {
|
|
66
|
+
return (focusField !== null && focusField !== void 0 ? focusField : "firstName") === name;
|
|
67
|
+
};
|
|
63
68
|
var _useProfileImageUploa = hooks.useProfileImageUpload({
|
|
64
69
|
uploadConfig: {
|
|
65
70
|
folder: "Auth",
|
|
@@ -245,8 +250,8 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
245
250
|
children: /*#__PURE__*/jsxRuntime.jsxs(Card.CardContent, {
|
|
246
251
|
className: "space-y-6",
|
|
247
252
|
children: [/*#__PURE__*/jsxRuntime.jsx(formik.Input, {
|
|
248
|
-
autoFocus: true,
|
|
249
253
|
required: true,
|
|
254
|
+
autoFocus: isFocused("firstName"),
|
|
250
255
|
"data-testid": "profile-first-name-text-field",
|
|
251
256
|
label: t("neetoTeamMembers.profile.inputs.label.firstName"),
|
|
252
257
|
name: "firstName",
|
|
@@ -254,6 +259,7 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
254
259
|
placeholder: t("neetoTeamMembers.profile.inputs.placeholder.firstName")
|
|
255
260
|
}), /*#__PURE__*/jsxRuntime.jsx(formik.Input, {
|
|
256
261
|
required: true,
|
|
262
|
+
autoFocus: isFocused("lastName"),
|
|
257
263
|
"data-testid": "profile-last-name-text-field",
|
|
258
264
|
label: t("neetoTeamMembers.profile.inputs.label.lastName"),
|
|
259
265
|
name: "lastName",
|
|
@@ -265,6 +271,7 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
265
271
|
htmlFor: "profile-phonenumber",
|
|
266
272
|
children: t("neetoTeamMembers.profile.inputs.label.phonenumber")
|
|
267
273
|
}), /*#__PURE__*/jsxRuntime.jsx(PhoneNumber.FormikPhoneNumberInput, {
|
|
274
|
+
autoFocus: isFocused("phonenumber"),
|
|
268
275
|
"data-testid": "profile-phonenumber-text-field",
|
|
269
276
|
id: "profile-phonenumber",
|
|
270
277
|
name: "phonenumber"
|
|
@@ -341,28 +348,37 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
341
348
|
var useProfileUpdateStore = zustand.create(withImmutableActions__default.default(function (set) {
|
|
342
349
|
return {
|
|
343
350
|
isOpen: false,
|
|
351
|
+
focusField: null,
|
|
344
352
|
setIsOpen: function setIsOpen(arg) {
|
|
353
|
+
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
354
|
+
_ref$focusField = _ref.focusField,
|
|
355
|
+
focusField = _ref$focusField === void 0 ? null : _ref$focusField;
|
|
345
356
|
if (typeof arg === "function") {
|
|
346
357
|
set(function (state) {
|
|
347
358
|
return {
|
|
348
|
-
isOpen: arg(state.isOpen)
|
|
359
|
+
isOpen: arg(state.isOpen),
|
|
360
|
+
focusField: focusField
|
|
349
361
|
};
|
|
350
362
|
});
|
|
351
363
|
} else {
|
|
352
364
|
set({
|
|
353
|
-
isOpen: arg
|
|
365
|
+
isOpen: arg,
|
|
366
|
+
focusField: focusField
|
|
354
367
|
});
|
|
355
368
|
}
|
|
356
369
|
}
|
|
357
370
|
};
|
|
358
371
|
}));
|
|
359
372
|
var useProfileUpdatePaneState = function useProfileUpdatePaneState() {
|
|
360
|
-
return useProfileUpdateStore(function (
|
|
361
|
-
var isOpen =
|
|
362
|
-
setIsOpen =
|
|
373
|
+
return useProfileUpdateStore(function (_ref2) {
|
|
374
|
+
var isOpen = _ref2.isOpen,
|
|
375
|
+
setIsOpen = _ref2.setIsOpen;
|
|
363
376
|
return [isOpen, setIsOpen];
|
|
364
377
|
}, shallow.shallow);
|
|
365
378
|
};
|
|
379
|
+
var useProfileFocusField = function useProfileFocusField() {
|
|
380
|
+
return useProfileUpdateStore(ramda.prop("focusField"));
|
|
381
|
+
};
|
|
366
382
|
|
|
367
383
|
var sanitizeValue = function sanitizeValue(value, defaultValue) {
|
|
368
384
|
return ramda.isNil(value) || ramda.is(String, value) && ramda.trim(value) === "" ? defaultValue : value;
|
|
@@ -569,6 +585,8 @@ var Profile = function Profile() {
|
|
|
569
585
|
_useState2 = _slicedToArray__default.default(_useState, 2),
|
|
570
586
|
isEditMode = _useState2[0],
|
|
571
587
|
setIsEditMode = _useState2[1];
|
|
588
|
+
var focusField = useProfileFocusField();
|
|
589
|
+
var isEditing = isEditMode || neetoCist.isPresent(focusField);
|
|
572
590
|
var onClose = function onClose() {
|
|
573
591
|
setIsOpen(false);
|
|
574
592
|
setIsEditMode(false);
|
|
@@ -606,7 +624,7 @@ var Profile = function Profile() {
|
|
|
606
624
|
children: [/*#__PURE__*/jsxRuntime.jsxs(neetoAtoms.Sheet.Header, {
|
|
607
625
|
children: [/*#__PURE__*/jsxRuntime.jsx(neetoAtoms.Sheet.Title, {
|
|
608
626
|
children: t("neetoTeamMembers.profile.common.myProfile")
|
|
609
|
-
}), !
|
|
627
|
+
}), !isEditing && /*#__PURE__*/jsxRuntime.jsx(MoreDropdown__default.default, {
|
|
610
628
|
menuItems: menuItems,
|
|
611
629
|
isVertical: true,
|
|
612
630
|
dropdownProps: {
|
|
@@ -619,7 +637,8 @@ var Profile = function Profile() {
|
|
|
619
637
|
className: "absolute top-3 end-12"
|
|
620
638
|
}
|
|
621
639
|
})]
|
|
622
|
-
}),
|
|
640
|
+
}), isEditing ? /*#__PURE__*/jsxRuntime.jsx(ChangeProfile, {
|
|
641
|
+
focusField: focusField,
|
|
623
642
|
onClose: onClose
|
|
624
643
|
}) : /*#__PURE__*/jsxRuntime.jsx(Preview$1, {})]
|
|
625
644
|
})
|