@bigbinary/neeto-team-members-frontend 5.1.1-beta1 → 5.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.ready +1 -1
- package/dist/ManageMember.js +2 -2
- package/dist/Profile.js +1 -1
- package/dist/{ProfileImage-DSnU8nqZ.js → ProfileImage-BXsTglvo.js} +8 -18
- package/dist/ProfileImage-BXsTglvo.js.map +1 -0
- package/dist/{ProfileImage-D1kCXp4a.js → ProfileImage-DbLwreG6.js} +9 -19
- package/dist/ProfileImage-DbLwreG6.js.map +1 -0
- package/dist/TeamMembers.js +2 -2
- package/dist/cjs/ManageMember.js +2 -2
- package/dist/cjs/Profile.js +1 -1
- package/dist/cjs/TeamMembers.js +2 -2
- package/dist/cjs/index.js +2 -2
- package/dist/{index-BcPx2-z8.js → index-BpVod2uP.js} +2 -2
- package/dist/{index-BcPx2-z8.js.map → index-BpVod2uP.js.map} +1 -1
- package/dist/{index-D8lgteE5.js → index-D_6vJd6A.js} +2 -2
- package/dist/{index-D8lgteE5.js.map → index-D_6vJd6A.js.map} +1 -1
- package/dist/index.js +2 -2
- package/package.json +1 -1
- package/dist/ProfileImage-D1kCXp4a.js.map +0 -1
- package/dist/ProfileImage-DSnU8nqZ.js.map +0 -1
package/dist/.ready
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
Built at 2026-09-24T13:
|
|
1
|
+
Built at 2026-09-24T13:09:50.263Z
|
package/dist/ManageMember.js
CHANGED
|
@@ -19,10 +19,10 @@ import '@bigbinary/neetoui/formik/Form';
|
|
|
19
19
|
import 'ramda';
|
|
20
20
|
import 'react-i18next';
|
|
21
21
|
import './index-BISwUwuE.js';
|
|
22
|
-
import './ProfileImage-
|
|
22
|
+
import './ProfileImage-DbLwreG6.js';
|
|
23
23
|
import './useRolesApi-93OoRU1s.js';
|
|
24
24
|
import './useTeamsApi-CGY9oJqn.js';
|
|
25
|
-
export { M as default } from './index-
|
|
25
|
+
export { M as default } from './index-BpVod2uP.js';
|
|
26
26
|
import './RolesRadioGroup-BefORc9L.js';
|
|
27
27
|
import 'react/jsx-runtime';
|
|
28
28
|
import '@babel/runtime/helpers/toConsumableArray';
|
package/dist/Profile.js
CHANGED
|
@@ -24,7 +24,7 @@ import ActionBlock from '@bigbinary/neetoui/formik/ActionBlock';
|
|
|
24
24
|
import { isNotNil, isNil, is, trim } from 'ramda';
|
|
25
25
|
import { D as DATE_FORMAT_OPTIONS, T as TIME_FORMAT_OPTIONS } from './constants-CXdiW8NZ.js';
|
|
26
26
|
import { u as useFetchProfile, a as useUpdateProfileMutation } from './useProfileApi-Dkt6sE5p.js';
|
|
27
|
-
import { u as useCountries, P as PROFILE_VALIDATION_SCHEMA, a as ProfileImage, M as MANAGE_BILLING_PATH, U as UPDATE_EMAIL_PATH } from './ProfileImage-
|
|
27
|
+
import { u as useCountries, P as PROFILE_VALIDATION_SCHEMA, a as ProfileImage, M as MANAGE_BILLING_PATH, U as UPDATE_EMAIL_PATH } from './ProfileImage-DbLwreG6.js';
|
|
28
28
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
29
29
|
import withImmutableActions from '@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions';
|
|
30
30
|
import { create } from 'zustand';
|
|
@@ -104,7 +104,6 @@ var ProfileImage = function ProfileImage() {
|
|
|
104
104
|
var _useTranslation = reactI18next.useTranslation(),
|
|
105
105
|
t = _useTranslation.t;
|
|
106
106
|
var fileInputRef = React.useRef(null);
|
|
107
|
-
var blobUrlRef = React.useRef(null);
|
|
108
107
|
var _useField = formik.useField("avatar"),
|
|
109
108
|
_useField2 = _slicedToArray__default.default(_useField, 3),
|
|
110
109
|
field = _useField2[0];
|
|
@@ -114,11 +113,6 @@ var ProfileImage = function ProfileImage() {
|
|
|
114
113
|
var avatarDetails = {
|
|
115
114
|
imageUrl: field.value.imageUrl
|
|
116
115
|
};
|
|
117
|
-
React.useEffect(function () {
|
|
118
|
-
return function () {
|
|
119
|
-
if (blobUrlRef.current) URL.revokeObjectURL(blobUrlRef.current);
|
|
120
|
-
};
|
|
121
|
-
}, []);
|
|
122
116
|
var onProfileImageChange = function onProfileImageChange(event) {
|
|
123
117
|
var imageFile = event.target.files[0];
|
|
124
118
|
var validationError = validateProfileImage(imageFile);
|
|
@@ -126,10 +120,8 @@ var ProfileImage = function ProfileImage() {
|
|
|
126
120
|
Toastr__default.default.error(validationError);
|
|
127
121
|
return validationError;
|
|
128
122
|
}
|
|
129
|
-
if (blobUrlRef.current) URL.revokeObjectURL(blobUrlRef.current);
|
|
130
|
-
blobUrlRef.current = URL.createObjectURL(imageFile);
|
|
131
123
|
return setValue({
|
|
132
|
-
imageUrl:
|
|
124
|
+
imageUrl: URL.createObjectURL(imageFile),
|
|
133
125
|
file: imageFile
|
|
134
126
|
});
|
|
135
127
|
};
|
|
@@ -138,11 +130,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
138
130
|
return (_fileInputRef$current = fileInputRef.current) === null || _fileInputRef$current === void 0 ? void 0 : _fileInputRef$current.click();
|
|
139
131
|
};
|
|
140
132
|
var handleRemoveImage = function handleRemoveImage() {
|
|
141
|
-
|
|
142
|
-
URL.revokeObjectURL(blobUrlRef.current);
|
|
143
|
-
blobUrlRef.current = null;
|
|
144
|
-
}
|
|
145
|
-
setValue({
|
|
133
|
+
return setValue({
|
|
146
134
|
imageUrl: "",
|
|
147
135
|
file: "_destroy"
|
|
148
136
|
});
|
|
@@ -165,7 +153,9 @@ var ProfileImage = function ProfileImage() {
|
|
|
165
153
|
className: "relative shrink-0",
|
|
166
154
|
children: [/*#__PURE__*/jsxRuntime.jsx("div", {
|
|
167
155
|
className: "absolute bottom-0 end-0 z-10",
|
|
168
|
-
children: /*#__PURE__*/jsxRuntime.jsx(Dropdown__default.default
|
|
156
|
+
children: /*#__PURE__*/jsxRuntime.jsx(Dropdown__default.default
|
|
157
|
+
// eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes
|
|
158
|
+
, {
|
|
169
159
|
buttonProps: {
|
|
170
160
|
className: "rounded-full"
|
|
171
161
|
},
|
|
@@ -192,7 +182,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
192
182
|
className: "flex flex-col items-center",
|
|
193
183
|
children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default.default, {
|
|
194
184
|
className: "neeto-ui-text-gray-600 text-center",
|
|
195
|
-
style: "
|
|
185
|
+
style: "body3",
|
|
196
186
|
children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
|
|
197
187
|
i18nKey: "neetoTeamMembers.profile.avatar.profilePictureUploadMessage",
|
|
198
188
|
values: {
|
|
@@ -201,7 +191,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
201
191
|
})
|
|
202
192
|
}), /*#__PURE__*/jsxRuntime.jsx("input", {
|
|
203
193
|
hidden: true,
|
|
204
|
-
accept:
|
|
194
|
+
accept: "image/*",
|
|
205
195
|
"data-testid": "profile-image-upload-file-field",
|
|
206
196
|
id: "uploadProfileImage",
|
|
207
197
|
name: "profile_image_path",
|
|
@@ -218,4 +208,4 @@ exports.PROFILE_VALIDATION_SCHEMA = PROFILE_VALIDATION_SCHEMA;
|
|
|
218
208
|
exports.ProfileImage = ProfileImage;
|
|
219
209
|
exports.UPDATE_EMAIL_PATH = UPDATE_EMAIL_PATH;
|
|
220
210
|
exports.useCountries = useCountries;
|
|
221
|
-
//# sourceMappingURL=ProfileImage-
|
|
211
|
+
//# sourceMappingURL=ProfileImage-BXsTglvo.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImage-BXsTglvo.js","sources":["../app/javascript/src/components/Profile/constants.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { validation as phoneNumberValidation } from \"neetomolecules/PhoneNumber\";\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 phonenumber: phoneNumberValidation(\n t(\"neetoTeamMembers.profile.form.invalidPhoneNumber\")\n ).nullable(),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const UPDATE_EMAIL_PATH = \"/auth/email/edit\";\nexport const MANAGE_BILLING_PATH = \"/auth/billing/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 { useCallback, 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 = useCallback(\n countryOption => {\n setSelectedCountryOption(countryOption ?? null);\n\n const selectedCountry = findById(countryOption?.value, countries);\n\n return { dateFormat: selectedCountry?.dateFormat };\n },\n [countries]\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 shrink-0\">\n <div className=\"absolute bottom-0 end-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-testid=\"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-testid=\"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-testid=\"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"],"names":["PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","phonenumber","phoneNumberValidation","nullable","dateFormat","UPDATE_EMAIL_PATH","MANAGE_BILLING_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","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","id","countryDropdownOptions","useMemo","map","handleCountryChange","useCallback","countryOption","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"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
|
-
import { useState, useMemo, useCallback, useRef
|
|
2
|
+
import { useState, useMemo, useCallback, useRef } from 'react';
|
|
3
3
|
import { findById } from '@bigbinary/neeto-cist';
|
|
4
4
|
import { u as useFetchCountries } from './useCountriesApi-DK00167T.js';
|
|
5
5
|
import { useField } from 'formik';
|
|
@@ -74,7 +74,6 @@ var ProfileImage = function ProfileImage() {
|
|
|
74
74
|
var _useTranslation = useTranslation(),
|
|
75
75
|
t = _useTranslation.t;
|
|
76
76
|
var fileInputRef = useRef(null);
|
|
77
|
-
var blobUrlRef = useRef(null);
|
|
78
77
|
var _useField = useField("avatar"),
|
|
79
78
|
_useField2 = _slicedToArray(_useField, 3),
|
|
80
79
|
field = _useField2[0];
|
|
@@ -84,11 +83,6 @@ var ProfileImage = function ProfileImage() {
|
|
|
84
83
|
var avatarDetails = {
|
|
85
84
|
imageUrl: field.value.imageUrl
|
|
86
85
|
};
|
|
87
|
-
useEffect(function () {
|
|
88
|
-
return function () {
|
|
89
|
-
if (blobUrlRef.current) URL.revokeObjectURL(blobUrlRef.current);
|
|
90
|
-
};
|
|
91
|
-
}, []);
|
|
92
86
|
var onProfileImageChange = function onProfileImageChange(event) {
|
|
93
87
|
var imageFile = event.target.files[0];
|
|
94
88
|
var validationError = validateProfileImage(imageFile);
|
|
@@ -96,10 +90,8 @@ var ProfileImage = function ProfileImage() {
|
|
|
96
90
|
Toastr.error(validationError);
|
|
97
91
|
return validationError;
|
|
98
92
|
}
|
|
99
|
-
if (blobUrlRef.current) URL.revokeObjectURL(blobUrlRef.current);
|
|
100
|
-
blobUrlRef.current = URL.createObjectURL(imageFile);
|
|
101
93
|
return setValue({
|
|
102
|
-
imageUrl:
|
|
94
|
+
imageUrl: URL.createObjectURL(imageFile),
|
|
103
95
|
file: imageFile
|
|
104
96
|
});
|
|
105
97
|
};
|
|
@@ -108,11 +100,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
108
100
|
return (_fileInputRef$current = fileInputRef.current) === null || _fileInputRef$current === void 0 ? void 0 : _fileInputRef$current.click();
|
|
109
101
|
};
|
|
110
102
|
var handleRemoveImage = function handleRemoveImage() {
|
|
111
|
-
|
|
112
|
-
URL.revokeObjectURL(blobUrlRef.current);
|
|
113
|
-
blobUrlRef.current = null;
|
|
114
|
-
}
|
|
115
|
-
setValue({
|
|
103
|
+
return setValue({
|
|
116
104
|
imageUrl: "",
|
|
117
105
|
file: "_destroy"
|
|
118
106
|
});
|
|
@@ -135,7 +123,9 @@ var ProfileImage = function ProfileImage() {
|
|
|
135
123
|
className: "relative shrink-0",
|
|
136
124
|
children: [/*#__PURE__*/jsx("div", {
|
|
137
125
|
className: "absolute bottom-0 end-0 z-10",
|
|
138
|
-
children: /*#__PURE__*/jsx(Dropdown
|
|
126
|
+
children: /*#__PURE__*/jsx(Dropdown
|
|
127
|
+
// eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes
|
|
128
|
+
, {
|
|
139
129
|
buttonProps: {
|
|
140
130
|
className: "rounded-full"
|
|
141
131
|
},
|
|
@@ -162,7 +152,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
162
152
|
className: "flex flex-col items-center",
|
|
163
153
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
164
154
|
className: "neeto-ui-text-gray-600 text-center",
|
|
165
|
-
style: "
|
|
155
|
+
style: "body3",
|
|
166
156
|
children: /*#__PURE__*/jsx(Trans, {
|
|
167
157
|
i18nKey: "neetoTeamMembers.profile.avatar.profilePictureUploadMessage",
|
|
168
158
|
values: {
|
|
@@ -171,7 +161,7 @@ var ProfileImage = function ProfileImage() {
|
|
|
171
161
|
})
|
|
172
162
|
}), /*#__PURE__*/jsx("input", {
|
|
173
163
|
hidden: true,
|
|
174
|
-
accept:
|
|
164
|
+
accept: "image/*",
|
|
175
165
|
"data-testid": "profile-image-upload-file-field",
|
|
176
166
|
id: "uploadProfileImage",
|
|
177
167
|
name: "profile_image_path",
|
|
@@ -184,4 +174,4 @@ var ProfileImage = function ProfileImage() {
|
|
|
184
174
|
};
|
|
185
175
|
|
|
186
176
|
export { MANAGE_BILLING_PATH as M, PROFILE_VALIDATION_SCHEMA as P, UPDATE_EMAIL_PATH as U, ProfileImage as a, useCountries as u };
|
|
187
|
-
//# sourceMappingURL=ProfileImage-
|
|
177
|
+
//# sourceMappingURL=ProfileImage-DbLwreG6.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ProfileImage-DbLwreG6.js","sources":["../app/javascript/src/components/Profile/constants.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { validation as phoneNumberValidation } from \"neetomolecules/PhoneNumber\";\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 phonenumber: phoneNumberValidation(\n t(\"neetoTeamMembers.profile.form.invalidPhoneNumber\")\n ).nullable(),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const UPDATE_EMAIL_PATH = \"/auth/email/edit\";\nexport const MANAGE_BILLING_PATH = \"/auth/billing/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 { useCallback, 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 = useCallback(\n countryOption => {\n setSelectedCountryOption(countryOption ?? null);\n\n const selectedCountry = findById(countryOption?.value, countries);\n\n return { dateFormat: selectedCountry?.dateFormat };\n },\n [countries]\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 shrink-0\">\n <div className=\"absolute bottom-0 end-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-testid=\"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-testid=\"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-testid=\"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"],"names":["PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","phonenumber","phoneNumberValidation","nullable","dateFormat","UPDATE_EMAIL_PATH","MANAGE_BILLING_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","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","id","countryDropdownOptions","useMemo","map","handleCountryChange","useCallback","countryOption","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"],"mappings":"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"}
|
package/dist/TeamMembers.js
CHANGED
|
@@ -23,7 +23,7 @@ import { b as useFetchFilterOptions, c as useBulkUpdateMembers, d as useExportMe
|
|
|
23
23
|
import { TABLE_KEYS, EVENTS } from './constants.js';
|
|
24
24
|
import _toConsumableArray from '@babel/runtime/helpers/toConsumableArray';
|
|
25
25
|
import { buildFiltersFromURL } from '@bigbinary/neeto-filters-frontend/utils';
|
|
26
|
-
import { d as defaultNeetoFiltersColumns, D as DEFAULT_FILTER_VALUES, b as buildFilterColumns, a as DEFAULT_IS_OPEN_VALUES, c as DEFAULT_SELECTED_ROWS, h as handlePageChange, g as getFilteredRoles, e as getColumnData, f as generateNoDataContent, r as renderPaginationProps, i as DEFAULT_RADIX, M as ManageMember, j as renderUpdateAlert } from './index-
|
|
26
|
+
import { d as defaultNeetoFiltersColumns, D as DEFAULT_FILTER_VALUES, b as buildFilterColumns, a as DEFAULT_IS_OPEN_VALUES, c as DEFAULT_SELECTED_ROWS, h as handlePageChange, g as getFilteredRoles, e as getColumnData, f as generateNoDataContent, r as renderPaginationProps, i as DEFAULT_RADIX, M as ManageMember, j as renderUpdateAlert } from './index-BpVod2uP.js';
|
|
27
27
|
import { n } from './inject-css-C2dztUxs.js';
|
|
28
28
|
import { noop, isNotEmpty, hyphenate, findBy } from '@bigbinary/neeto-cist';
|
|
29
29
|
import Button from '@bigbinary/neetoui/Button';
|
|
@@ -56,7 +56,7 @@ import '@bigbinary/neetoui/formik/ActionBlock';
|
|
|
56
56
|
import '@bigbinary/neetoui/formik/Form';
|
|
57
57
|
import './index-BISwUwuE.js';
|
|
58
58
|
import 'formik';
|
|
59
|
-
import './ProfileImage-
|
|
59
|
+
import './ProfileImage-DbLwreG6.js';
|
|
60
60
|
import './useCountriesApi-DK00167T.js';
|
|
61
61
|
import '@bigbinary/neeto-icons/Edit';
|
|
62
62
|
import '@bigbinary/neetoui/Avatar';
|
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-BXsTglvo.js');
|
|
25
25
|
require('../useRolesApi-DuL4eCuF.js');
|
|
26
26
|
require('../useTeamsApi-ClWGPxNW.js');
|
|
27
|
-
var ManageMember = require('../index-
|
|
27
|
+
var ManageMember = require('../index-D_6vJd6A.js');
|
|
28
28
|
require('../RolesRadioGroup-Y0ye4oSa.js');
|
|
29
29
|
require('react/jsx-runtime');
|
|
30
30
|
require('@babel/runtime/helpers/toConsumableArray');
|
package/dist/cjs/Profile.js
CHANGED
|
@@ -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-BXsTglvo.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');
|
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-D_6vJd6A.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-BXsTglvo.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-D_6vJd6A.js');
|
|
11
11
|
var RolesRadioGroup = require('../RolesRadioGroup-Y0ye4oSa.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-BXsTglvo.js');
|
|
81
81
|
require('@bigbinary/neeto-icons/Edit');
|
|
82
82
|
require('@bigbinary/neeto-commons-frontend/react-utils/withImmutableActions');
|
|
83
83
|
require('zustand');
|
|
@@ -19,7 +19,7 @@ import Form from '@bigbinary/neetoui/formik/Form';
|
|
|
19
19
|
import { clamp, curry, filter, identical, mergeLeft, assoc, not, pluck, isEmpty, head, reverse, groupBy, prop } from 'ramda';
|
|
20
20
|
import { Trans, useTranslation } from 'react-i18next';
|
|
21
21
|
import { S as ScrollToErrorField } from './index-BISwUwuE.js';
|
|
22
|
-
import { u as useCountries, a as ProfileImage } from './ProfileImage-
|
|
22
|
+
import { u as useCountries, a as ProfileImage } from './ProfileImage-DbLwreG6.js';
|
|
23
23
|
import { u as useFetchRoles, a as useFetchGlobalRoles } from './useRolesApi-93OoRU1s.js';
|
|
24
24
|
import { u as useFetchMembers, f as useFetchMember, g as useCreateMember, h as useMembersCreationStatus, r as refetchMembers, e as useUpdateMember } from './useTeamsApi-CGY9oJqn.js';
|
|
25
25
|
import { n } from './inject-css-C2dztUxs.js';
|
|
@@ -1284,4 +1284,4 @@ var ManageMember = function ManageMember(_ref) {
|
|
|
1284
1284
|
};
|
|
1285
1285
|
|
|
1286
1286
|
export { DEFAULT_FILTER_VALUES as D, ManageMember as M, DEFAULT_IS_OPEN_VALUES as a, buildFilterColumns as b, DEFAULT_SELECTED_ROWS as c, defaultNeetoFiltersColumns as d, getColumnData as e, generateNoDataContent as f, getFilteredRoles as g, handlePageChange as h, DEFAULT_RADIX as i, renderUpdateAlert as j, renderPaginationProps as r };
|
|
1287
|
-
//# sourceMappingURL=index-
|
|
1287
|
+
//# sourceMappingURL=index-BpVod2uP.js.map
|