@bigbinary/neeto-team-members-frontend 4.4.0 → 4.4.2
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/app/javascript/src/translations/en.json +1 -1
- package/dist/Groups.js +6 -10
- package/dist/Groups.js.map +1 -1
- package/dist/ManageMember.js +1 -1
- package/dist/MembersDropdown.js +4 -2
- package/dist/MembersDropdown.js.map +1 -1
- package/dist/Profile.js +4 -4
- package/dist/Profile.js.map +1 -1
- package/dist/Roles.js +37 -41
- package/dist/Roles.js.map +1 -1
- package/dist/TeamMembers.js +4 -4
- package/dist/TeamMembers.js.map +1 -1
- package/dist/TeamsDropdown.js +1 -1
- package/dist/cjs/Groups.js +6 -11
- package/dist/cjs/Groups.js.map +1 -1
- package/dist/cjs/ManageMember.js +1 -1
- package/dist/cjs/MembersDropdown.js +4 -2
- package/dist/cjs/MembersDropdown.js.map +1 -1
- package/dist/cjs/Profile.js +5 -6
- package/dist/cjs/Profile.js.map +1 -1
- package/dist/cjs/Roles.js +35 -39
- package/dist/cjs/Roles.js.map +1 -1
- package/dist/cjs/TeamMembers.js +5 -5
- package/dist/cjs/TeamMembers.js.map +1 -1
- package/dist/cjs/TeamsDropdown.js +1 -1
- package/dist/cjs/index.js +2 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/{index-5503a79f.js → index-753ce55b.js} +13 -9
- package/dist/index-753ce55b.js.map +1 -0
- package/dist/{index-7b978a0f.js → index-971becfe.js} +5 -3
- package/dist/index-971becfe.js.map +1 -0
- package/dist/{index-98835f14.js → index-dc7f5532.js} +5 -3
- package/dist/index-dc7f5532.js.map +1 -0
- package/dist/{index-2c3bcd38.js → index-fc3b88e2.js} +13 -9
- package/dist/index-fc3b88e2.js.map +1 -0
- package/dist/index.js +2 -3
- package/dist/index.js.map +1 -1
- package/package.json +10 -10
- package/dist/index-2c3bcd38.js.map +0 -1
- package/dist/index-5503a79f.js.map +0 -1
- package/dist/index-7b978a0f.js.map +0 -1
- package/dist/index-98835f14.js.map +0 -1
package/dist/Profile.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Profile.js","sources":["../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../app/javascript/src/apis/profile.js","../app/javascript/src/hooks/profile/useProfileApi.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx","../app/javascript/src/components/Profile/ChangeProfile.jsx","../app/javascript/src/components/Profile/hooks/useProfileUpdatePane.js","../app/javascript/src/components/Profile/index.jsx"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchProfile = options =>\n useQuery({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nconst useUpdateProfileMutation = options =>\n useMutationWithInvalidation(profileApi.updateUser, {\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]],\n ...options,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useFetchProfile, useUpdateProfileMutation };\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i,\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 /^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n };\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useField } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Delete } from \"neetoicons\";\nimport { Avatar, Label, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n IMAGE_DELETE_BUTTON_SIZE,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\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 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-8 flex flex-row justify-start\">\n <div className=\"flex-shrink-0\">\n {isPresent(avatarDetails?.imageUrl) && (\n <div className=\"relative z-10\">\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full absolute right-0 top-0 cursor-pointer p-0.5\"\n data-cy=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n <Delete size={IMAGE_DELETE_BUTTON_SIZE} />\n </div>\n </div>\n )}\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"ml-4 flex flex-col\">\n <Label className=\"neeto-ui-text-black mb-1 font-medium\">\n {t(\"neetoTeamMembers.profile.avatar.profilePicture\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-700 mb-2\" style=\"body3\">\n <Trans\n components={{ code: <code /> }}\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <div\n className=\"neeto-ui-file-upload flex flex-row \"\n data-cy=\"profile-image-upload-container\"\n >\n <label\n className=\"neeto-ui-btn--style-secondary neeto-ui-btn m-0 mr-3 \"\n data-cy=\"profile-image-upload-label\"\n htmlFor=\"uploadProfileImage\"\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </label>\n <input\n hidden\n accept=\"image/*\"\n data-cy=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n","import { useCallback, useEffect } from \"react\";\n\nimport { useProfileImageUpload } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { ExternalLink } from \"neetoicons\";\nimport Container from \"neetomolecules/Container\";\nimport PageLoader from \"neetomolecules/PageLoader\";\nimport {\n Button,\n Callout,\n Label,\n Pane,\n Radio,\n Toastr,\n Typography,\n} from \"neetoui\";\nimport { Input, Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS } from \"common/constants\";\nimport {\n useUpdateProfileMutation,\n useFetchProfile,\n} from \"hooks/profile/useProfileApi\";\n\nimport { MY_PROFILE_PATH, PROFILE_VALIDATION_SCHEMA } from \"./constants\";\nimport useCountries from \"./hooks/useCountries\";\nimport ProfileImage from \"./ProfileImage\";\nimport \"./styles.scss\";\n\nconst ChangeProfile = ({ onClose }) => {\n const { t } = useTranslation();\n\n const { uploadImage, isUploading } = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: { appName: \"neetoAuth\" },\n },\n });\n\n const handleUploadImage = image =>\n new Promise(resolve => {\n uploadImage(image, uploadedImageData => {\n resolve(uploadedImageData);\n });\n });\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const {\n firstName = \"\",\n lastName = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryId = \"\",\n } = user;\n\n const {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList,\n handleCountryChange = noop,\n } = useCountries();\n\n const { mutate: updateProfile, isPending: isUpdatingProfile } =\n useUpdateProfileMutation();\n\n const timezoneRef = useCallback(\n ({ node, setFieldValue }) => {\n if (isNotNil(node)) {\n new NeetoTimezoneSelector(node, {\n className: \"w-full z-10\",\n position: \"bottom\",\n initialValue: timeZone,\n onChange: ({ utc }) => setFieldValue(\"timeZone\", utc[0]),\n });\n }\n },\n [timeZone]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n timeZone,\n dateFormat,\n avatar: { imageUrl: profileImageUrl, file: null },\n };\n\n const handleSubmit = async values => {\n try {\n let avatar = {};\n\n if (values.avatar.file === \"_destroy\") {\n avatar = { fileId: \"_destroy\", filePath: \"\", url: \"\" };\n } else if (values.avatar.file) {\n const { fileId, filePath, url } = await handleUploadImage(\n values.avatar.file\n );\n avatar = { fileId, filePath, url };\n }\n\n const { countryId: updatedCountryId, ...rest } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier:\n updatedCountryId !== countryId ? updatedCountryId : undefined,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n useEffect(() => {\n const country = findBy({ value: countryId }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryId, countryDropdownOptions]);\n\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return (\n <Container>\n <PageLoader />\n </Container>\n );\n }\n\n return (\n <Form\n formProps={{ \"data-cy\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, values, errors, touched }) => (\n <>\n <Pane.Body className=\"w-full\">\n <div className=\"w-full space-y-6 pb-6\">\n <ProfileImage />\n <div className=\"grid grid-cols-2 gap-4\">\n <Input\n autoFocus\n required\n data-cy=\"profile-first-name-text-field\"\n data-test-id=\"ntm-profile-first-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.firstName\")}\n name=\"firstName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.firstName\"\n )}\n />\n <Input\n required\n data-cy=\"profile-last-name-text-field\"\n data-test-id=\"ntm-profile-last-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.lastName\")}\n name=\"lastName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.lastName\"\n )}\n />\n </div>\n <Select\n required\n data-cy=\"ntm-profile-country-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.selectCountry\")}\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 }}\n />\n <div className=\"space-y-2\">\n <div>\n <Label required className=\"mb-2\">\n {t(\"neetoTeamMembers.profile.inputs.label.selectTimeZone\")}\n </Label>\n <div\n className=\"w-full flex-grow\"\n data-cy=\"ntm-profile-time-zone-select\"\n ref={node => timezoneRef({ node, setFieldValue })}\n />\n </div>\n {touched.timeZone && errors.timeZone && (\n <Typography>{errors.timeZone}</Typography>\n )}\n </div>\n <div>\n <Label required>\n {t(\"neetoTeamMembers.profile.inputs.label.dateFormat\")}\n </Label>\n <Radio className=\"mt-2 space-x-4\">\n {DATE_FORMAT_OPTIONS.map(({ label, value }) => (\n <Radio.Item\n {...{ label, value }}\n checked={values.dateFormat === value}\n data-cy=\"ntm-profile-date-format-radio\"\n key={value}\n name=\"dateFormat\"\n onChange={event =>\n setFieldValue(\"dateFormat\", event.target.value)\n }\n />\n ))}\n </Radio>\n </div>\n </div>\n <Callout className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 mt-8 flex w-full items-center\">\n <Typography style=\"body2\">\n {t(\"neetoTeamMembers.profile.common.toUpdateProfile\")}\n </Typography>\n <Button\n data-cy=\"ntm-visit-auth-button\"\n data-test-id=\"ntm-visit-auth-button\"\n href={MY_PROFILE_PATH}\n icon={ExternalLink}\n label={t(\"neetoTeamMembers.profile.common.neetoAuth\")}\n style=\"link\"\n target=\"_blank\"\n />\n </Callout>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isUpdatingProfile || isUploading}\n cancelButtonProps={{\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </Form>\n );\n};\n\nexport default ChangeProfile;\n","/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nimport withImmutableActions from \"neetocommons/react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst useProfileUpdateStore = create(\n withImmutableActions(set => ({\n isOpen: false,\n\n setIsOpen: arg => {\n if (typeof arg === \"function\") {\n set(state => ({ isOpen: arg(state.isOpen) }));\n } else {\n set({ isOpen: arg });\n }\n },\n }))\n);\n\nconst useProfileUpdatePaneState = () =>\n useProfileUpdateStore(\n ({ isOpen, setIsOpen }) => [isOpen, setIsOpen],\n shallow\n );\n\nexport default useProfileUpdatePaneState;\n","import { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChangeProfile from \"components/Profile/ChangeProfile\";\n\nimport useProfileUpdatePaneState from \"./hooks/useProfileUpdatePane\";\n\nconst Profile = () => {\n const [isOpen, setIsOpen] = useProfileUpdatePaneState();\n const { t } = useTranslation();\n\n const onClose = () => setIsOpen(false);\n\n return (\n <div className=\"w-full\">\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n </Pane.Header>\n <ChangeProfile {...{ onClose }} />\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["require$$0","fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","useFetchProfile","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","USER_PROFILE","queryFn","staleTime","DEFAULT_STALE_TIME","useUpdateProfileMutation","useMutationWithInvalidation","keysToInvalidate","onSuccess","window","location","reload","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","IMAGE_DELETE_BUTTON_SIZE","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","useFetchCountries","COUNTRIES_LIST","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","ProfileImage","_useTranslation","useTranslation","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleRemoveImage","type","size","includes","_jsxs","className","children","isPresent","_jsx","onClick","Delete","Avatar","user","Label","Typography","style","Trans","components","code","i18nKey","values","limit","htmlFor","hidden","accept","onChange","ChangeProfile","onClose","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","_useFetchProfile$data","_useFetchProfile$data2","_useFetchProfile$data3","isFetchingUserDetails","isFetching","_user$firstName","_user$lastName","_user$dateFormat","DATE_FORMAT_OPTIONS","_user$timeZone","timeZone","_user$profileImageUrl","profileImageUrl","_user$countryId","countryId","_useCountries","_useCountries$handleC","noop","_useUpdateProfileMuta","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","_ref2","node","setFieldValue","isNotNil","NeetoTimezoneSelector","position","initialValue","_ref3","utc","initialFormValues","avatar","handleSubmit","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","rest","wrap","_callee$","_context","prev","next","sent","_objectWithoutProperties","_excluded","countryIdentifier","undefined","t0","stop","_x","apply","arguments","useEffect","findBy","Container","PageLoader","Form","formProps","formikProps","initialValues","validationSchema","onSubmit","_ref5","errors","touched","_Fragment","Pane","Body","Input","autoFocus","placeholder","Select","option","ref","Radio","_ref6","_createElement","Item","checked","key","Callout","Button","href","icon","ExternalLink","Footer","ActionBlock","isSubmitting","cancelButtonProps","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","state","useProfileUpdatePaneState","shallow","Profile","_useProfileUpdatePane","_useProfileUpdatePane2","Header","weight","usePaneState"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Profile.js","sources":["../node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js","../node_modules/@babel/runtime/helpers/typeof.js","../node_modules/@babel/runtime/helpers/regeneratorRuntime.js","../node_modules/@babel/runtime/regenerator/index.js","../app/javascript/src/apis/profile.js","../app/javascript/src/hooks/profile/useProfileApi.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx","../app/javascript/src/components/Profile/ChangeProfile.jsx","../app/javascript/src/components/Profile/hooks/useProfileUpdatePane.js","../app/javascript/src/components/Profile/index.jsx"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n _next(undefined);\n });\n };\n}","function _typeof(o) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (o) {\n return typeof o;\n } : function (o) {\n return o && \"function\" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? \"symbol\" : typeof o;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(o);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _regeneratorRuntime() {\n \"use strict\"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */\n module.exports = _regeneratorRuntime = function _regeneratorRuntime() {\n return e;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;\n var t,\n e = {},\n r = Object.prototype,\n n = r.hasOwnProperty,\n o = Object.defineProperty || function (t, e, r) {\n t[e] = r.value;\n },\n i = \"function\" == typeof Symbol ? Symbol : {},\n a = i.iterator || \"@@iterator\",\n c = i.asyncIterator || \"@@asyncIterator\",\n u = i.toStringTag || \"@@toStringTag\";\n function define(t, e, r) {\n return Object.defineProperty(t, e, {\n value: r,\n enumerable: !0,\n configurable: !0,\n writable: !0\n }), t[e];\n }\n try {\n define({}, \"\");\n } catch (t) {\n define = function define(t, e, r) {\n return t[e] = r;\n };\n }\n function wrap(t, e, r, n) {\n var i = e && e.prototype instanceof Generator ? e : Generator,\n a = Object.create(i.prototype),\n c = new Context(n || []);\n return o(a, \"_invoke\", {\n value: makeInvokeMethod(t, r, c)\n }), a;\n }\n function tryCatch(t, e, r) {\n try {\n return {\n type: \"normal\",\n arg: t.call(e, r)\n };\n } catch (t) {\n return {\n type: \"throw\",\n arg: t\n };\n }\n }\n e.wrap = wrap;\n var h = \"suspendedStart\",\n l = \"suspendedYield\",\n f = \"executing\",\n s = \"completed\",\n y = {};\n function Generator() {}\n function GeneratorFunction() {}\n function GeneratorFunctionPrototype() {}\n var p = {};\n define(p, a, function () {\n return this;\n });\n var d = Object.getPrototypeOf,\n v = d && d(d(values([])));\n v && v !== r && n.call(v, a) && (p = v);\n var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p);\n function defineIteratorMethods(t) {\n [\"next\", \"throw\", \"return\"].forEach(function (e) {\n define(t, e, function (t) {\n return this._invoke(e, t);\n });\n });\n }\n function AsyncIterator(t, e) {\n function invoke(r, o, i, a) {\n var c = tryCatch(t[r], t, o);\n if (\"throw\" !== c.type) {\n var u = c.arg,\n h = u.value;\n return h && \"object\" == _typeof(h) && n.call(h, \"__await\") ? e.resolve(h.__await).then(function (t) {\n invoke(\"next\", t, i, a);\n }, function (t) {\n invoke(\"throw\", t, i, a);\n }) : e.resolve(h).then(function (t) {\n u.value = t, i(u);\n }, function (t) {\n return invoke(\"throw\", t, i, a);\n });\n }\n a(c.arg);\n }\n var r;\n o(this, \"_invoke\", {\n value: function value(t, n) {\n function callInvokeWithMethodAndArg() {\n return new e(function (e, r) {\n invoke(t, n, e, r);\n });\n }\n return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg();\n }\n });\n }\n function makeInvokeMethod(e, r, n) {\n var o = h;\n return function (i, a) {\n if (o === f) throw new Error(\"Generator is already running\");\n if (o === s) {\n if (\"throw\" === i) throw a;\n return {\n value: t,\n done: !0\n };\n }\n for (n.method = i, n.arg = a;;) {\n var c = n.delegate;\n if (c) {\n var u = maybeInvokeDelegate(c, n);\n if (u) {\n if (u === y) continue;\n return u;\n }\n }\n if (\"next\" === n.method) n.sent = n._sent = n.arg;else if (\"throw\" === n.method) {\n if (o === h) throw o = s, n.arg;\n n.dispatchException(n.arg);\n } else \"return\" === n.method && n.abrupt(\"return\", n.arg);\n o = f;\n var p = tryCatch(e, r, n);\n if (\"normal\" === p.type) {\n if (o = n.done ? s : l, p.arg === y) continue;\n return {\n value: p.arg,\n done: n.done\n };\n }\n \"throw\" === p.type && (o = s, n.method = \"throw\", n.arg = p.arg);\n }\n };\n }\n function maybeInvokeDelegate(e, r) {\n var n = r.method,\n o = e.iterator[n];\n if (o === t) return r.delegate = null, \"throw\" === n && e.iterator[\"return\"] && (r.method = \"return\", r.arg = t, maybeInvokeDelegate(e, r), \"throw\" === r.method) || \"return\" !== n && (r.method = \"throw\", r.arg = new TypeError(\"The iterator does not provide a '\" + n + \"' method\")), y;\n var i = tryCatch(o, e.iterator, r.arg);\n if (\"throw\" === i.type) return r.method = \"throw\", r.arg = i.arg, r.delegate = null, y;\n var a = i.arg;\n return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, \"return\" !== r.method && (r.method = \"next\", r.arg = t), r.delegate = null, y) : a : (r.method = \"throw\", r.arg = new TypeError(\"iterator result is not an object\"), r.delegate = null, y);\n }\n function pushTryEntry(t) {\n var e = {\n tryLoc: t[0]\n };\n 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e);\n }\n function resetTryEntry(t) {\n var e = t.completion || {};\n e.type = \"normal\", delete e.arg, t.completion = e;\n }\n function Context(t) {\n this.tryEntries = [{\n tryLoc: \"root\"\n }], t.forEach(pushTryEntry, this), this.reset(!0);\n }\n function values(e) {\n if (e || \"\" === e) {\n var r = e[a];\n if (r) return r.call(e);\n if (\"function\" == typeof e.next) return e;\n if (!isNaN(e.length)) {\n var o = -1,\n i = function next() {\n for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next;\n return next.value = t, next.done = !0, next;\n };\n return i.next = i;\n }\n }\n throw new TypeError(_typeof(e) + \" is not iterable\");\n }\n return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, \"constructor\", {\n value: GeneratorFunctionPrototype,\n configurable: !0\n }), o(GeneratorFunctionPrototype, \"constructor\", {\n value: GeneratorFunction,\n configurable: !0\n }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, \"GeneratorFunction\"), e.isGeneratorFunction = function (t) {\n var e = \"function\" == typeof t && t.constructor;\n return !!e && (e === GeneratorFunction || \"GeneratorFunction\" === (e.displayName || e.name));\n }, e.mark = function (t) {\n return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, \"GeneratorFunction\")), t.prototype = Object.create(g), t;\n }, e.awrap = function (t) {\n return {\n __await: t\n };\n }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () {\n return this;\n }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) {\n void 0 === i && (i = Promise);\n var a = new AsyncIterator(wrap(t, r, n, o), i);\n return e.isGeneratorFunction(r) ? a : a.next().then(function (t) {\n return t.done ? t.value : a.next();\n });\n }, defineIteratorMethods(g), define(g, u, \"Generator\"), define(g, a, function () {\n return this;\n }), define(g, \"toString\", function () {\n return \"[object Generator]\";\n }), e.keys = function (t) {\n var e = Object(t),\n r = [];\n for (var n in e) r.push(n);\n return r.reverse(), function next() {\n for (; r.length;) {\n var t = r.pop();\n if (t in e) return next.value = t, next.done = !1, next;\n }\n return next.done = !0, next;\n };\n }, e.values = values, Context.prototype = {\n constructor: Context,\n reset: function reset(e) {\n if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = \"next\", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) \"t\" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t);\n },\n stop: function stop() {\n this.done = !0;\n var t = this.tryEntries[0].completion;\n if (\"throw\" === t.type) throw t.arg;\n return this.rval;\n },\n dispatchException: function dispatchException(e) {\n if (this.done) throw e;\n var r = this;\n function handle(n, o) {\n return a.type = \"throw\", a.arg = e, r.next = n, o && (r.method = \"next\", r.arg = t), !!o;\n }\n for (var o = this.tryEntries.length - 1; o >= 0; --o) {\n var i = this.tryEntries[o],\n a = i.completion;\n if (\"root\" === i.tryLoc) return handle(\"end\");\n if (i.tryLoc <= this.prev) {\n var c = n.call(i, \"catchLoc\"),\n u = n.call(i, \"finallyLoc\");\n if (c && u) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n } else if (c) {\n if (this.prev < i.catchLoc) return handle(i.catchLoc, !0);\n } else {\n if (!u) throw new Error(\"try statement without catch or finally\");\n if (this.prev < i.finallyLoc) return handle(i.finallyLoc);\n }\n }\n }\n },\n abrupt: function abrupt(t, e) {\n for (var r = this.tryEntries.length - 1; r >= 0; --r) {\n var o = this.tryEntries[r];\n if (o.tryLoc <= this.prev && n.call(o, \"finallyLoc\") && this.prev < o.finallyLoc) {\n var i = o;\n break;\n }\n }\n i && (\"break\" === t || \"continue\" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null);\n var a = i ? i.completion : {};\n return a.type = t, a.arg = e, i ? (this.method = \"next\", this.next = i.finallyLoc, y) : this.complete(a);\n },\n complete: function complete(t, e) {\n if (\"throw\" === t.type) throw t.arg;\n return \"break\" === t.type || \"continue\" === t.type ? this.next = t.arg : \"return\" === t.type ? (this.rval = this.arg = t.arg, this.method = \"return\", this.next = \"end\") : \"normal\" === t.type && e && (this.next = e), y;\n },\n finish: function finish(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y;\n }\n },\n \"catch\": function _catch(t) {\n for (var e = this.tryEntries.length - 1; e >= 0; --e) {\n var r = this.tryEntries[e];\n if (r.tryLoc === t) {\n var n = r.completion;\n if (\"throw\" === n.type) {\n var o = n.arg;\n resetTryEntry(r);\n }\n return o;\n }\n }\n throw new Error(\"illegal catch attempt\");\n },\n delegateYield: function delegateYield(e, r, n) {\n return this.delegate = {\n iterator: values(e),\n resultName: r,\n nextLoc: n\n }, \"next\" === this.method && (this.arg = t), y;\n }\n }, e;\n}\nmodule.exports = _regeneratorRuntime, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","// TODO(Babel 8): Remove this file.\n\nvar runtime = require(\"../helpers/regeneratorRuntime\")();\nmodule.exports = runtime;\n\n// Copied from https://github.com/facebook/regenerator/blob/main/packages/runtime/runtime.js#L736=\ntry {\n regeneratorRuntime = runtime;\n} catch (accidentalStrictMode) {\n if (typeof globalThis === \"object\") {\n globalThis.regeneratorRuntime = runtime;\n } else {\n Function(\"r\", \"regeneratorRuntime = r\")(runtime);\n }\n}\n","import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\nimport { useMutationWithInvalidation } from \"neetocommons/react-utils\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchProfile = options =>\n useQuery({\n queryKey: [QUERY_KEYS.USER_PROFILE],\n queryFn: profileApi.fetchUserDetails,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nconst useUpdateProfileMutation = options =>\n useMutationWithInvalidation(profileApi.updateUser, {\n keysToInvalidate: [[QUERY_KEYS.USER_PROFILE]],\n ...options,\n onSuccess: () => window.location.reload(),\n });\n\nexport { useFetchProfile, useUpdateProfileMutation };\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i,\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 /^[a-zA-Z0-9 ,'-áéíóúÁÉÍÓÚ]+$/i,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n };\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useField } from \"formik\";\nimport { isPresent } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Delete } from \"neetoicons\";\nimport { Avatar, Label, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n IMAGE_DELETE_BUTTON_SIZE,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\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 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-8 flex flex-row justify-start\">\n <div className=\"flex-shrink-0\">\n {isPresent(avatarDetails?.imageUrl) && (\n <div className=\"relative z-10\">\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full absolute right-0 top-0 cursor-pointer p-0.5\"\n data-cy=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n <Delete size={IMAGE_DELETE_BUTTON_SIZE} />\n </div>\n </div>\n )}\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"ml-4 flex flex-col\">\n <Label className=\"neeto-ui-text-black mb-1 font-medium\">\n {t(\"neetoTeamMembers.profile.avatar.profilePicture\")}\n </Label>\n <Typography className=\"neeto-ui-text-gray-700 mb-2\" style=\"body3\">\n <Trans\n components={{ code: <code /> }}\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <div\n className=\"neeto-ui-file-upload flex flex-row \"\n data-cy=\"profile-image-upload-container\"\n >\n <label\n className=\"neeto-ui-btn--style-secondary neeto-ui-btn m-0 mr-3 \"\n data-cy=\"profile-image-upload-label\"\n htmlFor=\"uploadProfileImage\"\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </label>\n <input\n hidden\n accept=\"image/*\"\n data-cy=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n","import { useCallback, useEffect } from \"react\";\n\nimport { useProfileImageUpload } from \"@bigbinary/neeto-image-uploader-frontend\";\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy, noop } from \"neetocist\";\nimport { ExternalLink } from \"neetoicons\";\nimport {\n Button,\n Callout,\n Label,\n Pane,\n Radio,\n Spinner,\n Toastr,\n Typography,\n} from \"neetoui\";\nimport { Input, Select, Form, ActionBlock } from \"neetoui/formik\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS } from \"common/constants\";\nimport {\n useUpdateProfileMutation,\n useFetchProfile,\n} from \"hooks/profile/useProfileApi\";\n\nimport { MY_PROFILE_PATH, PROFILE_VALIDATION_SCHEMA } from \"./constants\";\nimport useCountries from \"./hooks/useCountries\";\nimport ProfileImage from \"./ProfileImage\";\nimport \"./styles.scss\";\n\nconst ChangeProfile = ({ onClose }) => {\n const { t } = useTranslation();\n\n const { uploadImage, isUploading } = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: { appName: \"neetoAuth\" },\n },\n });\n\n const handleUploadImage = image =>\n new Promise(resolve => {\n uploadImage(image, uploadedImageData => {\n resolve(uploadedImageData);\n });\n });\n\n const { data: { user = {} } = {}, isFetching: isFetchingUserDetails } =\n useFetchProfile();\n\n const {\n firstName = \"\",\n lastName = \"\",\n dateFormat = DATE_FORMAT_OPTIONS[0].value,\n timeZone = \"\",\n profileImageUrl = \"\",\n countryId = \"\",\n } = user;\n\n const {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList,\n handleCountryChange = noop,\n } = useCountries();\n\n const { mutate: updateProfile, isPending: isUpdatingProfile } =\n useUpdateProfileMutation();\n\n const timezoneRef = useCallback(\n ({ node, setFieldValue }) => {\n if (isNotNil(node)) {\n new NeetoTimezoneSelector(node, {\n className: \"w-full z-10\",\n position: \"bottom\",\n initialValue: timeZone,\n onChange: ({ utc }) => setFieldValue(\"timeZone\", utc[0]),\n });\n }\n },\n [timeZone]\n );\n\n const initialFormValues = {\n firstName,\n lastName,\n timeZone,\n dateFormat,\n avatar: { imageUrl: profileImageUrl, file: null },\n };\n\n const handleSubmit = async values => {\n try {\n let avatar = {};\n\n if (values.avatar.file === \"_destroy\") {\n avatar = { fileId: \"_destroy\", filePath: \"\", url: \"\" };\n } else if (values.avatar.file) {\n const { fileId, filePath, url } = await handleUploadImage(\n values.avatar.file\n );\n avatar = { fileId, filePath, url };\n }\n\n const { countryId: updatedCountryId, ...rest } = values;\n\n const payload = {\n ...rest,\n avatar,\n countryIdentifier:\n updatedCountryId !== countryId ? updatedCountryId : undefined,\n };\n\n updateProfile({ id: user.id, payload });\n } catch (error) {\n Toastr.error(error);\n }\n };\n\n useEffect(() => {\n const country = findBy({ value: countryId }, countryDropdownOptions);\n if (country) {\n handleCountryChange(country);\n }\n }, [countryId, countryDropdownOptions]);\n\n if (isUpdatingProfile || isFetchingCountriesList || isFetchingUserDetails) {\n return (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <Form\n formProps={{ \"data-cy\": \"ntm-profile-form\" }}\n formikProps={{\n initialValues: initialFormValues,\n validationSchema: PROFILE_VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ setFieldValue, values, errors, touched }) => (\n <>\n <Pane.Body className=\"w-full\">\n <div className=\"w-full space-y-6 pb-6\">\n <ProfileImage />\n <div className=\"grid grid-cols-2 gap-4\">\n <Input\n autoFocus\n required\n data-cy=\"profile-first-name-text-field\"\n data-test-id=\"ntm-profile-first-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.firstName\")}\n name=\"firstName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.firstName\"\n )}\n />\n <Input\n required\n data-cy=\"profile-last-name-text-field\"\n data-test-id=\"ntm-profile-last-name\"\n label={t(\"neetoTeamMembers.profile.inputs.label.lastName\")}\n name=\"lastName\"\n type=\"text\"\n placeholder={t(\n \"neetoTeamMembers.profile.inputs.placeholder.lastName\"\n )}\n />\n </div>\n <Select\n required\n data-cy=\"ntm-profile-country-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.selectCountry\")}\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 }}\n />\n <div className=\"space-y-2\">\n <div>\n <Label required className=\"mb-2\">\n {t(\"neetoTeamMembers.profile.inputs.label.selectTimeZone\")}\n </Label>\n <div\n className=\"w-full flex-grow\"\n data-cy=\"ntm-profile-time-zone-select\"\n ref={node => timezoneRef({ node, setFieldValue })}\n />\n </div>\n {touched.timeZone && errors.timeZone && (\n <Typography>{errors.timeZone}</Typography>\n )}\n </div>\n <div>\n <Label required>\n {t(\"neetoTeamMembers.profile.inputs.label.dateFormat\")}\n </Label>\n <Radio className=\"mt-2 space-x-4\">\n {DATE_FORMAT_OPTIONS.map(({ label, value }) => (\n <Radio.Item\n {...{ label, value }}\n checked={values.dateFormat === value}\n data-cy=\"ntm-profile-date-format-radio\"\n key={value}\n name=\"dateFormat\"\n onChange={event =>\n setFieldValue(\"dateFormat\", event.target.value)\n }\n />\n ))}\n </Radio>\n </div>\n </div>\n <Callout className=\"neeto-ui-bg-gray-100 neeto-ui-border-gray-300 mt-8 flex w-full items-center\">\n <Typography style=\"body2\">\n {t(\"neetoTeamMembers.profile.common.toUpdateProfile\")}\n </Typography>\n <Button\n data-cy=\"ntm-visit-auth-button\"\n data-test-id=\"ntm-visit-auth-button\"\n href={MY_PROFILE_PATH}\n icon={ExternalLink}\n label={t(\"neetoTeamMembers.profile.common.neetoAuth\")}\n style=\"link\"\n target=\"_blank\"\n />\n </Callout>\n </Pane.Body>\n <Pane.Footer>\n <ActionBlock\n isSubmitting={isUpdatingProfile || isUploading}\n cancelButtonProps={{\n \"data-test-id\": \"ntm-profile-cancel-button\",\n \"data-cy\": \"ntm-profile-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-cy\": \"ntm-profile-submit-button\",\n \"data-test-id\": \"ntm-profile-save-changes-button\",\n }}\n />\n </Pane.Footer>\n </>\n )}\n </Form>\n );\n};\n\nexport default ChangeProfile;\n","/* eslint-disable @bigbinary/neeto/ensure-zustand-stores-are-type-annotated */\nimport withImmutableActions from \"neetocommons/react-utils/withImmutableActions\";\nimport { create } from \"zustand\";\nimport { shallow } from \"zustand/shallow\";\n\nconst useProfileUpdateStore = create(\n withImmutableActions(set => ({\n isOpen: false,\n\n setIsOpen: arg => {\n if (typeof arg === \"function\") {\n set(state => ({ isOpen: arg(state.isOpen) }));\n } else {\n set({ isOpen: arg });\n }\n },\n }))\n);\n\nconst useProfileUpdatePaneState = () =>\n useProfileUpdateStore(\n ({ isOpen, setIsOpen }) => [isOpen, setIsOpen],\n shallow\n );\n\nexport default useProfileUpdatePaneState;\n","import { Pane, Typography } from \"neetoui\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ChangeProfile from \"components/Profile/ChangeProfile\";\n\nimport useProfileUpdatePaneState from \"./hooks/useProfileUpdatePane\";\n\nconst Profile = () => {\n const [isOpen, setIsOpen] = useProfileUpdatePaneState();\n const { t } = useTranslation();\n\n const onClose = () => setIsOpen(false);\n\n return (\n <div className=\"w-full\">\n <Pane {...{ isOpen, onClose }}>\n <Pane.Header>\n <Typography style=\"h2\" weight=\"semibold\">\n {t(\"neetoTeamMembers.profile.common.myProfile\")}\n </Typography>\n </Pane.Header>\n <ChangeProfile {...{ onClose }} />\n </Pane>\n </div>\n );\n};\n\nexport default {\n Pane: Profile,\n usePaneState: useProfileUpdatePaneState,\n};\n"],"names":["require$$0","fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","useFetchProfile","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","USER_PROFILE","queryFn","staleTime","DEFAULT_STALE_TIME","useUpdateProfileMutation","useMutationWithInvalidation","keysToInvalidate","onSuccess","window","location","reload","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","IMAGE_DELETE_BUTTON_SIZE","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","useFetchCountries","COUNTRIES_LIST","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","ProfileImage","_useTranslation","useTranslation","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleRemoveImage","type","size","includes","_jsxs","className","children","isPresent","_jsx","onClick","Delete","Avatar","user","Label","Typography","style","Trans","components","code","i18nKey","values","limit","htmlFor","hidden","accept","onChange","ChangeProfile","onClose","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","appName","uploadImage","isUploading","handleUploadImage","image","Promise","resolve","uploadedImageData","_useFetchProfile","_useFetchProfile$data","_useFetchProfile$data2","_useFetchProfile$data3","isFetchingUserDetails","isFetching","_user$firstName","_user$lastName","_user$dateFormat","DATE_FORMAT_OPTIONS","_user$timeZone","timeZone","_user$profileImageUrl","profileImageUrl","_user$countryId","countryId","_useCountries","_useCountries$handleC","noop","_useUpdateProfileMuta","updateProfile","mutate","isUpdatingProfile","isPending","timezoneRef","useCallback","_ref2","node","setFieldValue","isNotNil","NeetoTimezoneSelector","position","initialValue","_ref3","utc","initialFormValues","avatar","handleSubmit","_ref4","_asyncToGenerator","_regeneratorRuntime","mark","_callee","_yield$handleUploadIm","fileId","filePath","url","updatedCountryId","rest","wrap","_callee$","_context","prev","next","sent","_objectWithoutProperties","_excluded","countryIdentifier","undefined","t0","stop","_x","apply","arguments","useEffect","findBy","Spinner","Form","formProps","formikProps","initialValues","validationSchema","onSubmit","_ref5","errors","touched","_Fragment","Pane","Body","Input","autoFocus","placeholder","Select","option","ref","Radio","_ref6","_createElement","Item","checked","key","Callout","Button","href","icon","ExternalLink","Footer","ActionBlock","isSubmitting","cancelButtonProps","submitButtonProps","useProfileUpdateStore","create","withImmutableActions","set","isOpen","setIsOpen","arg","state","useProfileUpdatePaneState","shallow","Profile","_useProfileUpdatePane","_useProfileUpdatePane2","Header","weight","usePaneState"],"mappings":"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"}
|
package/dist/Roles.js
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { _ as _slicedToArray } from './slicedToArray-6674c4b8.js';
|
|
2
|
-
import require$$0, { useRef, memo, useCallback, useEffect, useState, Fragment as Fragment$1, useMemo } from 'react';
|
|
2
|
+
import require$$0, { useRef, memo, useCallback, useEffect, useState, createElement, Fragment as Fragment$1, useMemo } from 'react';
|
|
3
3
|
import i18next, { t } from 'i18next';
|
|
4
|
-
import { isNotEmpty, isPresent, _findBy,
|
|
4
|
+
import { isNotEmpty, isPresent, _findBy, noop } from '@bigbinary/neeto-cist';
|
|
5
5
|
import { PLURAL } from '@bigbinary/neeto-commons-frontend/constants';
|
|
6
6
|
import { withTitle, useQueryParams } from '@bigbinary/neeto-commons-frontend/react-utils';
|
|
7
7
|
import Container from '@bigbinary/neeto-molecules/Container';
|
|
8
|
-
import
|
|
9
|
-
import { not, map, prop, identical,
|
|
8
|
+
import Spinner from '@bigbinary/neetoui/Spinner';
|
|
9
|
+
import { not, map, prop, identical, includes, __, groupBy, pluck, isEmpty, filter } from 'ramda';
|
|
10
10
|
import { c as commonjsGlobal } from './_commonjsHelpers-1789f0cf.js';
|
|
11
11
|
import { w as withReactQuery } from './withReactQuery-e3d0bd1f.js';
|
|
12
12
|
import { _ as _defineProperty, a as _typeof } from './defineProperty-b85f2e0f.js';
|
|
@@ -30,7 +30,6 @@ import Textarea from '@bigbinary/neetoui/formik/Textarea';
|
|
|
30
30
|
import { object, string } from 'yup';
|
|
31
31
|
import { P as Permissions, g as getChildrenRemovedFromRoot, s as sortPermissionsBySequence, a as getPermissionGroups, b as getModifiedPermissions } from './Permissions-1b52172b.js';
|
|
32
32
|
import NoData from '@bigbinary/neetoui/NoData';
|
|
33
|
-
import { _ as _toConsumableArray } from './toConsumableArray-0e395868.js';
|
|
34
33
|
import classnames from 'classnames';
|
|
35
34
|
import Checkbox from '@bigbinary/neetoui/Checkbox';
|
|
36
35
|
import MoreDropdown from '@bigbinary/neeto-molecules/MoreDropdown';
|
|
@@ -42,6 +41,7 @@ import Up from '@bigbinary/neeto-icons/Up';
|
|
|
42
41
|
import './unsupportedIterableToArray-7c7192e5.js';
|
|
43
42
|
import './queryClient-71ecdd08.js';
|
|
44
43
|
import './objectWithoutProperties-a0edb288.js';
|
|
44
|
+
import './toConsumableArray-0e395868.js';
|
|
45
45
|
import 'formik';
|
|
46
46
|
|
|
47
47
|
var dist = {exports: {}};
|
|
@@ -1720,10 +1720,9 @@ var deepClone = function deepClone(object) {
|
|
|
1720
1720
|
return result;
|
|
1721
1721
|
};
|
|
1722
1722
|
var renderRolesTooltipContent = function renderRolesTooltipContent(roleName) {
|
|
1723
|
-
return Object.is(roleName, "Admin")
|
|
1724
|
-
|
|
1725
|
-
|
|
1726
|
-
return _toConsumableArray(new Set(array));
|
|
1723
|
+
return Object.is(roleName, "Admin") || Object.is(roleName, "Owner") ? t("neetoTeamMembers.tooltips.adminMustHaveAccess", {
|
|
1724
|
+
roleName: roleName
|
|
1725
|
+
}) : t("neetoTeamMembers.tooltips.noPermissionToEditRoles");
|
|
1727
1726
|
};
|
|
1728
1727
|
var updatePermissionVisibility = function updatePermissionVisibility(categoryName, permissions) {
|
|
1729
1728
|
var category = permissions.get(categoryName);
|
|
@@ -1805,18 +1804,16 @@ var Row = function Row(_ref) {
|
|
|
1805
1804
|
_ref$permission = _ref.permission,
|
|
1806
1805
|
permission = _ref$permission === void 0 ? null : _ref$permission,
|
|
1807
1806
|
roles = _ref.roles,
|
|
1808
|
-
|
|
1807
|
+
_ref$setManageRole = _ref.setManageRole,
|
|
1808
|
+
setManageRole = _ref$setManageRole === void 0 ? noop : _ref$setManageRole;
|
|
1809
1809
|
var isUpdatePermissionGranted = config.permissions.update;
|
|
1810
1810
|
var permissions = (allPermissionsOfCategory === null || allPermissionsOfCategory === void 0 ? void 0 : allPermissionsOfCategory.get("permissions")) || [];
|
|
1811
1811
|
var allPermissionIdsOfCategory = map(prop("id"), permissions);
|
|
1812
|
-
var handleSubmit = function handleSubmit(role
|
|
1813
|
-
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
1817
|
-
});
|
|
1818
|
-
}, role);
|
|
1819
|
-
setModifiedRoles(replaceById(role.id, modifiedRole));
|
|
1812
|
+
var handleSubmit = function handleSubmit(role) {
|
|
1813
|
+
setManageRole({
|
|
1814
|
+
isEdit: true,
|
|
1815
|
+
selectedRole: role
|
|
1816
|
+
});
|
|
1820
1817
|
};
|
|
1821
1818
|
var isCheckboxChecked = function isCheckboxChecked(role) {
|
|
1822
1819
|
return !allPermissionsOfCategory ? includes(permission === null || permission === void 0 ? void 0 : permission.id, role.permissionIds) : allPermissionIdsOfCategory.every(includes(__, role.permissionIds));
|
|
@@ -1834,17 +1831,16 @@ var Row = function Row(_ref) {
|
|
|
1834
1831
|
children: /*#__PURE__*/jsx(Tooltip, {
|
|
1835
1832
|
content: renderRolesTooltipContent(role.name),
|
|
1836
1833
|
position: "top",
|
|
1837
|
-
disabled: isUpdatePermissionGranted && !identical(role.name, "Admin"),
|
|
1834
|
+
disabled: isUpdatePermissionGranted && !identical(role.name, "Admin") && !identical(role.name, "Owner"),
|
|
1838
1835
|
children: /*#__PURE__*/jsx("div", {
|
|
1839
1836
|
className: "ntm-roles-table-cell__checkbox-wrapper",
|
|
1840
1837
|
children: /*#__PURE__*/jsx(Checkbox, {
|
|
1841
|
-
disabled: true,
|
|
1842
1838
|
checked: isCheckboxChecked(role),
|
|
1843
1839
|
className: "ntm-roles-table-cell__checkbox",
|
|
1844
1840
|
"data-cy": "ntm-roles-table-permission-checkbox",
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
return handleSubmit(role
|
|
1841
|
+
disabled: identical(role.name, "Admin") || identical(role.name, "Owner"),
|
|
1842
|
+
onChange: function onChange() {
|
|
1843
|
+
return handleSubmit(role);
|
|
1848
1844
|
}
|
|
1849
1845
|
})
|
|
1850
1846
|
})
|
|
@@ -1991,7 +1987,6 @@ var Columns = function Columns(_ref) {
|
|
|
1991
1987
|
filteredRoles = _ref.filteredRoles,
|
|
1992
1988
|
permissions = _ref.permissions,
|
|
1993
1989
|
roles = _ref.roles,
|
|
1994
|
-
setModifiedRoles = _ref.setModifiedRoles,
|
|
1995
1990
|
setIsScrollPresent = _ref.setIsScrollPresent;
|
|
1996
1991
|
var _useState = useState(DEFAULT_MANAGE_ROLE_VALUES),
|
|
1997
1992
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -2005,9 +2000,9 @@ var Columns = function Columns(_ref) {
|
|
|
2005
2000
|
className: "ntm-roles-table__columns",
|
|
2006
2001
|
children: [/*#__PURE__*/jsx(TableHeader$1, {
|
|
2007
2002
|
config: config,
|
|
2008
|
-
roles: filteredRoles,
|
|
2009
2003
|
setIsScrollPresent: setIsScrollPresent,
|
|
2010
|
-
setManageRole: setManageRole
|
|
2004
|
+
setManageRole: setManageRole,
|
|
2005
|
+
roles: filteredRoles
|
|
2011
2006
|
}), /*#__PURE__*/jsx(distExports.ScrollSyncPane, {
|
|
2012
2007
|
group: ["horizontal", "vertical"],
|
|
2013
2008
|
children: /*#__PURE__*/jsx("div", {
|
|
@@ -2018,32 +2013,33 @@ var Columns = function Columns(_ref) {
|
|
|
2018
2013
|
var permissions = groupedPermissions.get("permissions");
|
|
2019
2014
|
return /*#__PURE__*/jsxs("div", {
|
|
2020
2015
|
children: [/*#__PURE__*/jsx(Row, {
|
|
2021
|
-
allPermissionsOfCategory: groupedPermissions,
|
|
2022
2016
|
config: config,
|
|
2023
|
-
|
|
2024
|
-
|
|
2017
|
+
setManageRole: setManageRole,
|
|
2018
|
+
allPermissionsOfCategory: groupedPermissions,
|
|
2019
|
+
roles: filteredRoles
|
|
2025
2020
|
}), isPermissionVisible && permissions.map(function (permission) {
|
|
2026
|
-
return /*#__PURE__*/
|
|
2021
|
+
return /*#__PURE__*/createElement(Row, {
|
|
2027
2022
|
config: config,
|
|
2028
2023
|
permission: permission,
|
|
2029
|
-
|
|
2030
|
-
|
|
2031
|
-
|
|
2024
|
+
setManageRole: setManageRole,
|
|
2025
|
+
key: permission.id,
|
|
2026
|
+
roles: filteredRoles
|
|
2027
|
+
});
|
|
2032
2028
|
})]
|
|
2033
2029
|
}, index);
|
|
2034
2030
|
})
|
|
2035
2031
|
})
|
|
2036
2032
|
}), /*#__PURE__*/jsx(ManageRoles, {
|
|
2037
2033
|
config: config,
|
|
2038
|
-
|
|
2034
|
+
onClose: onClose,
|
|
2039
2035
|
permissions: permissions,
|
|
2040
|
-
|
|
2041
|
-
|
|
2036
|
+
isOpen: manageRole.isEdit,
|
|
2037
|
+
selectedRole: manageRole.selectedRole
|
|
2042
2038
|
}), /*#__PURE__*/jsx(Delete, {
|
|
2043
|
-
|
|
2039
|
+
onClose: onClose,
|
|
2044
2040
|
roles: roles,
|
|
2045
|
-
|
|
2046
|
-
|
|
2041
|
+
isOpen: manageRole.isDelete,
|
|
2042
|
+
selectedRole: manageRole.selectedRole
|
|
2047
2043
|
})]
|
|
2048
2044
|
});
|
|
2049
2045
|
};
|
|
@@ -2323,8 +2319,8 @@ var Roles = function Roles(_ref) {
|
|
|
2323
2319
|
}, [roles, status]);
|
|
2324
2320
|
if (isRolesLoading || isPermissionsLoading) {
|
|
2325
2321
|
return /*#__PURE__*/jsx("div", {
|
|
2326
|
-
className: "
|
|
2327
|
-
children: /*#__PURE__*/jsx(
|
|
2322
|
+
className: "flex h-full w-full items-center justify-center",
|
|
2323
|
+
children: /*#__PURE__*/jsx(Spinner, {})
|
|
2328
2324
|
});
|
|
2329
2325
|
}
|
|
2330
2326
|
return /*#__PURE__*/jsxs(Fragment, {
|