@bigbinary/neeto-team-members-frontend 5.0.82 → 5.0.83
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-BtQ4MvqR.js +129 -0
- package/dist/{ProfileImage-Ca02-i_d.js.map → ProfileImage-BtQ4MvqR.js.map} +1 -1
- package/dist/ProfileImage-DcSyb-3Q.js +136 -0
- package/dist/{ProfileImage-BjDA-txF.js.map → ProfileImage-DcSyb-3Q.js.map} +1 -1
- package/dist/Roles.js +1 -1
- package/dist/{RolesRadioGroup-BfcqSCiE.js → RolesRadioGroup-BaPc-NJ8.js} +3 -3
- package/dist/RolesRadioGroup-BaPc-NJ8.js.map +1 -0
- package/dist/{RolesRadioGroup-BusIs5tc.js → RolesRadioGroup-BefORc9L.js} +3 -3
- package/dist/RolesRadioGroup-BefORc9L.js.map +1 -0
- package/dist/{RolesRadioGroup-DsIpgIDf.js → RolesRadioGroup-Y0ye4oSa.js} +3 -3
- package/dist/RolesRadioGroup-Y0ye4oSa.js.map +1 -0
- package/dist/{RolesRadioGroup-CjmVbqPn.js → RolesRadioGroup-cRZea-gs.js} +3 -3
- package/dist/RolesRadioGroup-cRZea-gs.js.map +1 -0
- package/dist/RolesRadioGroup.js +1 -1
- package/dist/TeamMembers.js +2 -2
- package/dist/cjs/ManageMember.js +2 -2
- package/dist/cjs/Profile.js +1 -1
- package/dist/cjs/Roles.js +1 -1
- package/dist/cjs/RolesRadioGroup.js +1 -1
- package/dist/cjs/TeamMembers.js +2 -2
- package/dist/cjs/index.js +2 -2
- package/dist/cjs/v2/ManageMember.js +3 -3
- package/dist/cjs/v2/Profile.js +1 -1
- package/dist/cjs/v2/Roles.js +1 -1
- package/dist/cjs/v2/RolesRadioGroup.js +1 -1
- package/dist/cjs/v2/TeamMembers.js +3 -3
- package/dist/cjs/v2/index.js +3 -3
- package/dist/{index-CmXUF133.js → index-BP-wjjtl.js} +5 -9
- package/dist/index-BP-wjjtl.js.map +1 -0
- package/dist/{index-ClK74Oxj.js → index-BZv1Hchv.js} +2 -2
- package/dist/{index-ClK74Oxj.js.map → index-BZv1Hchv.js.map} +1 -1
- package/dist/{index-DxBrlq4C.js → index-BczNlqPp.js} +2 -2
- package/dist/{index-DxBrlq4C.js.map → index-BczNlqPp.js.map} +1 -1
- package/dist/{index-CLnEhixL.js → index-DqPCteEX.js} +5 -9
- package/dist/index-DqPCteEX.js.map +1 -0
- package/dist/index.js +2 -2
- package/dist/v2/ManageMember.js +3 -3
- package/dist/v2/Profile.js +1 -1
- package/dist/v2/Roles.js +1 -1
- package/dist/v2/RolesRadioGroup.js +1 -1
- package/dist/v2/TeamMembers.js +3 -3
- package/dist/v2/index.js +3 -3
- package/package.json +1 -1
- package/dist/ProfileImage-BjDA-txF.js +0 -136
- package/dist/ProfileImage-Ca02-i_d.js +0 -129
- package/dist/RolesRadioGroup-BfcqSCiE.js.map +0 -1
- package/dist/RolesRadioGroup-BusIs5tc.js.map +0 -1
- package/dist/RolesRadioGroup-CjmVbqPn.js.map +0 -1
- package/dist/RolesRadioGroup-DsIpgIDf.js.map +0 -1
- package/dist/index-CLnEhixL.js.map +0 -1
- package/dist/index-CmXUF133.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RolesRadioGroup-CjmVbqPn.js","sources":["../app/javascript/src/v2/components/TeamMembers/ManageMember/Page/index.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/constants.js","../app/javascript/src/v2/components/TeamMembers/ManageMember/utils.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/RolesRadioGroup.jsx"],"sourcesContent":["const PageWrapper = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nconst Page = ({ className, children, ...otherProps }) => (\n <div {...{ className, ...otherProps }}>{children}</div>\n);\n\nPage.Header = PageWrapper;\nPage.Title = PageWrapper;\nPage.Description = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nexport default Page;\n","import { Dialog, Sheet } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport * as yup from \"yup\";\n\nimport Page from \"./Page\";\n\nexport const FEEDBACK_DURATION_MS = 2500;\n\nexport const NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n lastName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n};\n\nexport const ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t(\"neetoTeamMembers.validations.roleRequired\")),\n};\n\nexport const APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(\n yup.object().shape({\n appName: yup.string(),\n isEnabled: yup.boolean(),\n role: yup\n .string()\n .required(t(\"neetoTeamMembers.validations.roleRequired\")),\n })\n ),\n};\n\nexport const FILTER_INVALID_EMAILS = {\n label: t(\"neetoTeamMembers.validations.filterInvalidEmails\"),\n};\n\nexport const COUNTER_PROPS = {\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4,\n};\n\nexport const DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {},\n};\n\nexport const MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Sheet,\n modal: Dialog,\n page: Page,\n};\n\nexport const FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\",\n INVITE_LINK: \"inviteLink\",\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const NEETO_AUTH_MANAGE_PRODUCT_URL = `${globalProps.organization?.authAppUrl}/admin/admin-panel/general/products`;\n","import { Callout, Typography } from \"@bigbinary/neeto-atoms\";\nimport { t } from \"i18next\";\nimport { notEquals, _findBy, toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { dayjs } from \"neetocommons/v2/utils\";\nimport {\n equals,\n includes,\n isNil,\n isNotNil,\n keys,\n move,\n pick,\n pluck,\n prop,\n} from \"ramda\";\nimport * as yup from \"yup\";\n\nimport { ADMIN_ROLES, ADMIN_ROLE_NAME } from \"common/constants\";\n\nimport {\n NAME_INPUT_VALIDATION_SCHEMA,\n ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n APP_ROLES_SCHEMA,\n} from \"./constants\";\n\nconst MemberLimitExceededMessage = () => (\n <Callout className=\"mt-2 text-left\" variant=\"warning\">\n <div className=\"space-y-3\">\n <Typography variant=\"body3\">\n {t(\"neetoTeamMembers.validations.memberLimitExceededV2.first\")}\n </Typography>\n <Typography variant=\"body3\">\n {t(\"neetoTeamMembers.validations.memberLimitExceededV2.second\")}\n </Typography>\n <Typography variant=\"body3\">\n {t(\"neetoTeamMembers.validations.memberLimitExceededV2.third\")}\n </Typography>\n </div>\n </Callout>\n);\n\nconst getProductName = activeAppRoles =>\n activeAppRoles?.[0]?.appName\n ? t(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName,\n })\n : globalProps.appName;\n\nconst getActiveRole = (activeAppRoles, role) =>\n activeAppRoles?.[0]?.activeRole || role;\n\nconst getDefaultRole = (roles, currentAppRole, appName) => {\n if (appName === globalProps.appName?.substring(5)) {\n return currentAppRole;\n }\n\n const condition = isAdminRole(currentAppRole);\n\n const role = _findBy({ name: condition }, roles);\n\n return role ? role.name : roles[0].name;\n};\n\nconst generateAppsRolesInitialValue = (globalRoles, currentAppRole) => {\n if (!globalRoles) return [];\n\n const appNames = Object.keys(globalRoles);\n const currentApp = globalProps.appName?.substring(5);\n const currentAppNameIndex = appNames.indexOf(currentApp);\n const appNamesSorted = move(currentAppNameIndex, 0, appNames);\n\n return appNamesSorted.map(appName => ({\n appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName,\n }));\n};\n\nexport const isAdminRole = role =>\n includes(role, ADMIN_ROLES)\n ? equals(ADMIN_ROLE_NAME)\n : notEquals(ADMIN_ROLE_NAME);\n\nexport const renderInitialValues = ({\n additionalFieldsInitialValues = {},\n globalRoles,\n memberShowData,\n roles,\n selectedMember,\n}) => {\n if (isNotNil(selectedMember)) {\n const keysToPick = [\n \"firstName\",\n \"lastName\",\n \"role\",\n ...keys(additionalFieldsInitialValues),\n ];\n\n return {\n ...additionalFieldsInitialValues,\n ...pick(keysToPick, selectedMember),\n emails: [{ ...toLabelAndValue(selectedMember.email), valid: true }],\n timeZone: selectedMember.timeZone || \"\",\n dateFormat: selectedMember.dateFormat || \"\",\n timeFormat: selectedMember.timeFormat || \"\",\n countryId:\n memberShowData?.member?.countryIdentifier ||\n selectedMember.countryIdentifier ||\n \"\",\n language: selectedMember.language || \"\",\n phonenumber: selectedMember.phonenumber || \"\",\n avatar: {\n imageUrl: selectedMember.profileImageUrl || \"\",\n file: null,\n },\n };\n }\n\n return {\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: roles[1]?.name ?? \"\",\n appRoles: generateAppsRolesInitialValue(globalRoles, roles[1]?.name),\n ...additionalFieldsInitialValues,\n };\n};\n\nexport const renderPayload = (\n { appRoles, emails, firstName, lastName, role, ...otherValues },\n selectedMember = null,\n initialValues = {}\n) => {\n if (selectedMember) {\n const {\n timeZone,\n dateFormat,\n timeFormat,\n countryId,\n language,\n phonenumber,\n avatar,\n ...rest\n } = otherValues;\n\n const payload = {\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value,\n ...rest,\n };\n\n const profileFields = {\n timeZone,\n dateFormat,\n timeFormat,\n countryIdentifier: countryId,\n language,\n phonenumber,\n };\n\n // Compare each field against its initial form value, not `selectedMember`.\n // The payload key `countryIdentifier` maps to form field `countryId`\n // (seeded from the show endpoint's `country_id`, a different\n // representation than the list's `country_identifier`); aligning the\n // baseline stops an untouched country being logged as a phantom audit\n // change (#1746).\n const initialProfile = {\n ...initialValues,\n countryIdentifier: initialValues.countryId,\n };\n\n const profile = Object.fromEntries(\n Object.entries(profileFields).filter(\n ([key, value]) => value !== (initialProfile[key] ?? \"\")\n )\n );\n\n if (Object.keys(profile).length > 0 || avatar?.file) {\n payload.profile = profile;\n }\n\n return payload;\n }\n\n return {\n user: {\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles,\n ...otherValues,\n },\n };\n};\n\nexport const getSingleInvitationTranslationProps = ({\n activeAppRoles,\n role,\n selectedEmail,\n}) => ({\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role),\n});\n\nexport const buildValidationSchema = ({\n selectedMember,\n memberLimit,\n activeUsersCount,\n}) =>\n yup.object().shape({\n ...NAME_INPUT_VALIDATION_SCHEMA,\n ...ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n ...APP_ROLES_SCHEMA,\n emails: yup\n .array()\n .min(1, t(\"neetoTeamMembers.validations.minOneEmail\"))\n .test(\n \"are-all-emails-valid\",\n ({ value }) =>\n t(\"neetoTeamMembers.validations.validEmail\", { count: value.length }),\n emails => emails.every(prop(\"valid\"))\n )\n .test(\n \"is-emails-length-within-available-members-capacity\",\n <MemberLimitExceededMessage />,\n emails =>\n isNotNil(selectedMember) ||\n isNil(memberLimit) ||\n emails.length <= memberLimit - activeUsersCount\n )\n .nullable(),\n });\n\nexport const getInviteURL = inviteToken =>\n `${window.location.origin}/invite-link/${inviteToken}`;\n\nexport const remainingExpiryDays = expiryDate => {\n const today = dayjs().startOf(\"day\");\n const expiry = dayjs(expiryDate).startOf(\"day\");\n\n return expiry.diff(today, \"day\");\n};\n\nexport const neetoAuthManageProductUrl = `${globalProps.organization?.authAppUrl}/settings/general/products`;\n","import { Button, Label } from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { _findBy, slugify } from \"neetocist\";\nimport { SINGULAR, PLURAL } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { identical } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isAdminRole } from \"./utils\";\n\nimport { FormikRadioGroup } from \"../../Common/formik\";\n\nconst RolesRadioGroup = ({\n config,\n globalRoles,\n isEdit,\n role = \"\",\n roles = [],\n}) => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const setDefaultSelection = currentRole => {\n const condition = isAdminRole(currentRole);\n values.appRoles?.forEach(({ appName, activeRole }, index) => {\n if (appName === globalProps.appName?.substring(5)) {\n setFieldValue(`appRoles[${index}].activeRole`, currentRole);\n\n return;\n }\n\n if (condition(activeRole)) return;\n const matchingRole = _findBy({ name: condition }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(`appRoles[${index}].activeRole`, matchingRole.name);\n }\n });\n };\n\n return (\n <div className=\"space-y-2\">\n <div className=\"flex w-full items-center justify-between\">\n <Label>\n {t(\"neetoTeamMembers.common.role\", SINGULAR)}\n <span className=\"text-destructive\"> *</span>\n </Label>\n <Button asChild variant=\"link\">\n <a href={config.pathToRolesPage}>\n {t(\"neetoTeamMembers.labels.manageRole\", PLURAL)}\n </a>\n </Button>\n </div>\n <FormikRadioGroup\n stacked\n className=\"w-full grow-0\"\n data-testid=\"ntm-manage-member-roles-group\"\n name=\"role\"\n onChange={({ target: { value } }) => {\n setFieldValue(\"role\", value);\n if (!isEdit) setDefaultSelection(value);\n }}\n >\n {roles.map(({ id, name }) => (\n <label\n className=\"w-full cursor-pointer py-1 first:pt-0\"\n htmlFor={slugify(name)}\n key={id}\n >\n <FormikRadioGroup.Item\n data-testid=\"ntm-manage-member-roles-button\"\n defaultChecked={identical(name, role)}\n id={slugify(name)}\n label={name}\n value={name}\n />\n </label>\n ))}\n </FormikRadioGroup>\n </div>\n );\n};\n\nexport default RolesRadioGroup;\n"],"names":["PageWrapper","_ref","className","children","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Page","_ref2","_excluded2","Header","Title","Description","Body","Footer","FEEDBACK_DURATION_MS","NAME_INPUT_VALIDATION_SCHEMA","firstName","yup","string","trim","t","strict","lastName","ROLES_RADIO_GROUP_VALIDATION_SCHEMA","role","required","APP_ROLES_SCHEMA","appsRoles","array","of","object","shape","appName","isEnabled","FILTER_INVALID_EMAILS","label","COUNTER_PROPS","PLURAL","startsFrom","DEFAULT_COMPONENT_CONFIG","type","isOpen","headerProps","bodyProps","footerProps","MEMBERS_FORM_COMPONENT_MAPPER","pane","Sheet","modal","Dialog","page","FORM_PAGES","MAIN","APP_LIST","CONFIRMATION","INVITE_LINK","EMAIL_REGEX","RegExp","NEETO_AUTH_MANAGE_PRODUCT_URL","concat","_globalProps$organiza","globalProps","organization","authAppUrl","MemberLimitExceededMessage","Callout","variant","_jsxs","Typography","getProductName","activeAppRoles","_activeAppRoles$","product","getActiveRole","_activeAppRoles$2","activeRole","getDefaultRole","roles","currentAppRole","_globalProps$appName","substring","condition","isAdminRole","_findBy","name","generateAppsRolesInitialValue","globalRoles","_globalProps$appName2","appNames","Object","keys","currentApp","currentAppNameIndex","indexOf","appNamesSorted","move","map","isPrimary","includes","ADMIN_ROLES","equals","ADMIN_ROLE_NAME","notEquals","renderInitialValues","_roles$1$name","_roles$","_roles$2","_ref$additionalFields","additionalFieldsInitialValues","memberShowData","selectedMember","isNotNil","_memberShowData$membe","keysToPick","_toConsumableArray","pick","emails","toLabelAndValue","email","valid","timeZone","dateFormat","timeFormat","countryId","member","countryIdentifier","language","phonenumber","avatar","imageUrl","profileImageUrl","file","appRoles","renderPayload","otherValues","arguments","length","undefined","initialValues","rest","payload","active","organizationRole","value","profileFields","initialProfile","profile","fromEntries","entries","filter","_ref3","_initialProfile$key","_ref4","_slicedToArray","key","user","pluck","getSingleInvitationTranslationProps","_ref5","selectedEmail","count","buildValidationSchema","_ref6","memberLimit","activeUsersCount","min","test","_ref7","every","prop","isNil","nullable","getInviteURL","inviteToken","window","location","origin","remainingExpiryDays","expiryDate","today","dayjs","startOf","expiry","diff","RolesRadioGroup","config","isEdit","_ref$role","_ref$roles","_useTranslation","useTranslation","_useFormikContext","useFormikContext","values","setFieldValue","setDefaultSelection","currentRole","_values$appRoles","forEach","index","matchingRole","Label","SINGULAR","Button","asChild","href","pathToRolesPage","FormikRadioGroup","stacked","onChange","target","id","htmlFor","slugify","Item","defaultChecked","identical"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"RolesRadioGroup-DsIpgIDf.js","sources":["../app/javascript/src/components/TeamMembers/ManageMember/Page/index.jsx","../app/javascript/src/components/TeamMembers/ManageMember/constants.js","../app/javascript/src/components/TeamMembers/ManageMember/utils.jsx","../app/javascript/src/components/TeamMembers/ManageMember/RolesRadioGroup.jsx"],"sourcesContent":["const PageWrapper = ({ className, children, ...otherProps }) => (\n <div className={className} {...otherProps}>\n {children}\n </div>\n);\n\nconst Page = ({ className, children, ...otherProps }) => (\n <div className={className} {...otherProps}>\n {children}\n </div>\n);\n\nPage.Header = PageWrapper;\nPage.Body = PageWrapper;\nPage.Footer = PageWrapper;\n\nexport default Page;\n","import { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Pane, Modal } from \"neetoui\";\nimport * as yup from \"yup\";\n\nimport Page from \"./Page\";\n\nexport const NAME_INPUT_VALIDATION_SCHEMA = {\n firstName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n lastName: yup\n .string()\n .trim(t(\"neetoTeamMembers.validations.removeSpaces\"))\n .strict(true),\n};\n\nexport const ROLES_RADIO_GROUP_VALIDATION_SCHEMA = {\n role: yup.string().required(t(\"neetoTeamMembers.validations.roleRequired\")),\n};\n\nexport const APP_ROLES_SCHEMA = {\n appsRoles: yup.array().of(\n yup.object().shape({\n appName: yup.string(),\n isEnabled: yup.boolean(),\n role: yup\n .string()\n .required(t(\"neetoTeamMembers.validations.roleRequired\")),\n })\n ),\n};\n\nexport const FILTER_INVALID_EMAILS = {\n label: t(\"neetoTeamMembers.validations.filterInvalidEmails\"),\n};\n\nexport const COUNTER_PROPS = {\n label: t(\"neetoTeamMembers.common.email\", PLURAL),\n startsFrom: 4,\n};\n\nexport const DEFAULT_COMPONENT_CONFIG = {\n type: \"pane\",\n isOpen: false,\n className: \"\",\n headerProps: {},\n bodyProps: {},\n footerProps: {},\n};\n\nexport const MEMBERS_FORM_COMPONENT_MAPPER = {\n pane: Pane,\n modal: Modal,\n page: Page,\n};\n\nexport const FORM_PAGES = {\n MAIN: \"main\",\n APP_LIST: \"appList\",\n CONFIRMATION: \"confirmation\",\n INVITE_LINK: \"inviteLink\",\n};\n\nexport const EMAIL_REGEX = new RegExp(\n \"^[A-Z0-9._%+-]+@[A-Z0-9.-]+\\\\.[A-Z]{2,}$\",\n \"i\"\n);\n\nexport const NEETO_AUTH_MANAGE_PRODUCT_URL = `${globalProps.organization?.authAppUrl}/admin/admin-panel/general/products`;\n","import { t } from \"i18next\";\nimport { notEquals, _findBy, toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { dayjs } from \"neetocommons/utils\";\nimport { Button } from \"neetoui\";\nimport {\n equals,\n includes,\n isNil,\n isNotNil,\n keys,\n move,\n pick,\n pluck,\n prop,\n} from \"ramda\";\nimport { Trans } from \"react-i18next\";\nimport * as yup from \"yup\";\n\nimport { ADMIN_ROLES, ADMIN_ROLE_NAME } from \"common/constants\";\n\nimport {\n NAME_INPUT_VALIDATION_SCHEMA,\n ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n APP_ROLES_SCHEMA,\n} from \"./constants\";\n\nconst getProductName = activeAppRoles =>\n activeAppRoles?.[0]?.appName\n ? t(\"neetoTeamMembers.labels.neeto_\", {\n product: activeAppRoles[0].appName,\n })\n : globalProps.appName;\n\nconst getActiveRole = (activeAppRoles, role) =>\n activeAppRoles?.[0]?.activeRole || role;\n\nconst getDefaultRole = (roles, currentAppRole, appName) => {\n if (appName === globalProps.appName?.substring(5)) {\n return currentAppRole;\n }\n\n const condition = isAdminRole(currentAppRole);\n\n const role = _findBy({ name: condition }, roles);\n\n return role ? role.name : roles[0].name;\n};\n\nconst generateAppsRolesInitialValue = (globalRoles, currentAppRole) => {\n if (!globalRoles) return [];\n\n const appNames = Object.keys(globalRoles);\n const currentApp = globalProps.appName?.substring(5);\n const currentAppNameIndex = appNames.indexOf(currentApp);\n const appNamesSorted = move(currentAppNameIndex, 0, appNames);\n\n return appNamesSorted.map(appName => ({\n appName,\n activeRole: getDefaultRole(globalRoles[appName], currentAppRole, appName),\n isEnabled: true,\n isPrimary: currentApp === appName,\n }));\n};\n\nexport const isAdminRole = role =>\n includes(role, ADMIN_ROLES)\n ? equals(ADMIN_ROLE_NAME)\n : notEquals(ADMIN_ROLE_NAME);\n\nexport const renderInitialValues = ({\n additionalFieldsInitialValues = {},\n globalRoles,\n memberShowData,\n roles,\n selectedMember,\n}) => {\n if (isNotNil(selectedMember)) {\n const keysToPick = [\n \"firstName\",\n \"lastName\",\n \"role\",\n ...keys(additionalFieldsInitialValues),\n ];\n\n return {\n ...additionalFieldsInitialValues,\n ...pick(keysToPick, selectedMember),\n emails: [{ ...toLabelAndValue(selectedMember.email), valid: true }],\n timeZone: selectedMember.timeZone || \"\",\n dateFormat: selectedMember.dateFormat || \"\",\n timeFormat: selectedMember.timeFormat || \"\",\n countryId:\n memberShowData?.member?.countryIdentifier ||\n selectedMember.countryIdentifier ||\n \"\",\n language: selectedMember.language || \"\",\n phonenumber: selectedMember.phonenumber || \"\",\n avatar: {\n imageUrl: selectedMember.profileImageUrl || \"\",\n file: null,\n },\n };\n }\n\n return {\n firstName: \"\",\n lastName: \"\",\n emails: [],\n role: roles[1]?.name ?? \"\",\n appRoles: generateAppsRolesInitialValue(globalRoles, roles[1]?.name),\n ...additionalFieldsInitialValues,\n };\n};\n\nexport const renderPayload = (\n { appRoles, emails, firstName, lastName, role, ...otherValues },\n selectedMember = null\n) => {\n if (selectedMember) {\n const {\n timeZone,\n dateFormat,\n timeFormat,\n countryId,\n language,\n phonenumber,\n avatar,\n ...rest\n } = otherValues;\n\n const payload = {\n active: true,\n firstName: firstName.trim(),\n lastName: lastName.trim(),\n organizationRole: role,\n email: emails[0].value,\n ...rest,\n };\n\n const profileFields = {\n timeZone,\n dateFormat,\n timeFormat,\n countryIdentifier: countryId,\n language,\n phonenumber,\n };\n\n const profile = Object.fromEntries(\n Object.entries(profileFields).filter(([, v]) => v)\n );\n\n if (Object.keys(profile).length > 0 || avatar?.file) {\n payload.profile = profile;\n }\n\n return payload;\n }\n\n return {\n user: {\n emails: pluck(\"value\", emails),\n organizationRole: role,\n appRoles,\n ...otherValues,\n },\n };\n};\n\nexport const getSingleInvitationTranslationProps = ({\n activeAppRoles,\n role,\n selectedEmail,\n}) => ({\n count: selectedEmail.length,\n emails: selectedEmail,\n product: getProductName(activeAppRoles),\n role: getActiveRole(activeAppRoles, role),\n});\n\nexport const buildValidationSchema = ({\n selectedMember,\n memberLimit,\n activeUsersCount,\n}) =>\n yup.object().shape({\n ...NAME_INPUT_VALIDATION_SCHEMA,\n ...ROLES_RADIO_GROUP_VALIDATION_SCHEMA,\n ...APP_ROLES_SCHEMA,\n emails: yup\n .array()\n .min(1, t(\"neetoTeamMembers.validations.minOneEmail\"))\n .test(\n \"are-all-emails-valid\",\n ({ value }) =>\n t(\"neetoTeamMembers.validations.validEmail\", { count: value.length }),\n emails => emails.every(prop(\"valid\"))\n )\n .test(\n \"is-emails-length-within-available-members-capacity\",\n <Trans\n i18nKey=\"neetoTeamMembers.validations.memberLimitExceeded\"\n values={{ limit: memberLimit }}\n components={{\n emailTo: <Button href=\"mailto:support@neeto.com\" style=\"link\" />,\n }}\n />,\n emails =>\n isNotNil(selectedMember) ||\n isNil(memberLimit) ||\n emails.length <= memberLimit - activeUsersCount\n )\n .nullable(),\n });\n\nexport const getInviteURL = inviteToken =>\n `${window.location.origin}/invite-link/${inviteToken}`;\n\nexport const remainingExpiryDays = expiryDate => {\n const today = dayjs().startOf(\"day\");\n const expiry = dayjs(expiryDate).startOf(\"day\");\n\n return expiry.diff(today, \"day\");\n};\n\nexport const neetoAuthManageProductUrl = `${globalProps.organization?.authAppUrl}/settings/general/products`;\n","import { useFormikContext } from \"formik\";\nimport { _findBy, slugify } from \"neetocist\";\nimport { SINGULAR, PLURAL } from \"neetocommons/constants\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Button, Label } from \"neetoui\";\nimport { Radio } from \"neetoui/formik\";\nimport { identical } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/roles-radio-group.css\";\n\nimport { isAdminRole } from \"./utils\";\n\nconst RolesRadioGroup = ({\n config,\n globalRoles,\n isEdit,\n role = \"\",\n roles = [],\n}) => {\n const { t } = useTranslation();\n\n const { values, setFieldValue } = useFormikContext();\n\n const setDefaultSelection = currentRole => {\n const condition = isAdminRole(currentRole);\n values.appRoles?.forEach(({ appName, activeRole }, index) => {\n if (appName === globalProps.appName?.substring(5)) {\n setFieldValue(`appRoles[${index}].activeRole`, currentRole);\n\n return;\n }\n\n if (condition(activeRole)) return;\n const matchingRole = _findBy({ name: condition }, globalRoles[appName]);\n if (matchingRole) {\n setFieldValue(`appRoles[${index}].activeRole`, matchingRole.name);\n }\n });\n };\n\n return (\n <Radio\n stacked\n className=\"ntm-members-radio-group grow-0\"\n data-testid=\"ntm-manage-member-roles-group\"\n labelProps={{ className: \"neeto-ui-radio__label w-full\" }}\n name=\"role\"\n label={\n <span className=\"flex w-full items-center justify-between\">\n <Label required> {t(\"neetoTeamMembers.common.role\", SINGULAR)}</Label>\n <Button\n label={t(\"neetoTeamMembers.labels.manageRole\", PLURAL)}\n style=\"link\"\n to={config.pathToRolesPage}\n />\n </span>\n }\n onChange={({ target: { value } }) => {\n setFieldValue(\"role\", value);\n !isEdit && setDefaultSelection(value);\n }}\n >\n {roles.map(({ id, name }) => (\n <label\n className=\"ntm-members-form-radio-item__wrapper\"\n htmlFor={slugify(name)}\n key={id}\n >\n <Radio.Item\n className=\"ntm-members-form-radio-item__label\"\n data-testid=\"ntm-manage-member-roles-button\"\n defaultChecked={identical(name, role)}\n id={slugify(name)}\n label={name}\n name=\"role\"\n value={name}\n />\n </label>\n ))}\n </Radio>\n );\n};\n\nexport default RolesRadioGroup;\n"],"names":["PageWrapper","_ref","className","children","otherProps","_objectWithoutProperties","_excluded","_jsx","_objectSpread","Page","_ref2","_excluded2","Header","Body","Footer","NAME_INPUT_VALIDATION_SCHEMA","firstName","yup","string","trim","t","strict","lastName","ROLES_RADIO_GROUP_VALIDATION_SCHEMA","role","required","APP_ROLES_SCHEMA","appsRoles","array","of","object","shape","appName","isEnabled","FILTER_INVALID_EMAILS","label","COUNTER_PROPS","PLURAL","startsFrom","DEFAULT_COMPONENT_CONFIG","type","isOpen","headerProps","bodyProps","footerProps","MEMBERS_FORM_COMPONENT_MAPPER","pane","Pane","modal","Modal","page","FORM_PAGES","MAIN","APP_LIST","CONFIRMATION","INVITE_LINK","EMAIL_REGEX","RegExp","NEETO_AUTH_MANAGE_PRODUCT_URL","concat","_globalProps$organiza","globalProps","organization","authAppUrl","getProductName","activeAppRoles","_activeAppRoles$","product","getActiveRole","_activeAppRoles$2","activeRole","getDefaultRole","roles","currentAppRole","_globalProps$appName","substring","condition","isAdminRole","_findBy","name","generateAppsRolesInitialValue","globalRoles","_globalProps$appName2","appNames","Object","keys","currentApp","currentAppNameIndex","indexOf","appNamesSorted","move","map","isPrimary","includes","ADMIN_ROLES","equals","ADMIN_ROLE_NAME","notEquals","renderInitialValues","_roles$1$name","_roles$","_roles$2","_ref$additionalFields","additionalFieldsInitialValues","memberShowData","selectedMember","isNotNil","_memberShowData$membe","keysToPick","_toConsumableArray","pick","emails","toLabelAndValue","email","valid","timeZone","dateFormat","timeFormat","countryId","member","countryIdentifier","language","phonenumber","avatar","imageUrl","profileImageUrl","file","appRoles","renderPayload","otherValues","arguments","length","undefined","rest","payload","active","organizationRole","value","profileFields","profile","fromEntries","entries","filter","_ref3","_ref4","_slicedToArray","v","user","pluck","getSingleInvitationTranslationProps","_ref5","selectedEmail","count","buildValidationSchema","_ref6","memberLimit","activeUsersCount","min","test","_ref7","every","prop","Trans","i18nKey","values","limit","components","emailTo","Button","href","style","isNil","nullable","getInviteURL","inviteToken","window","location","origin","remainingExpiryDays","expiryDate","today","dayjs","startOf","expiry","diff","RolesRadioGroup","config","isEdit","_ref$role","_ref$roles","_useTranslation","useTranslation","_useFormikContext","useFormikContext","setFieldValue","setDefaultSelection","currentRole","_values$appRoles","forEach","index","matchingRole","Radio","stacked","labelProps","_jsxs","Label","SINGULAR","to","pathToRolesPage","onChange","target","id","htmlFor","slugify","Item","defaultChecked","identical"],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index-CLnEhixL.js","sources":["../app/javascript/src/v2/components/Common/formik/Switch.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/AppList.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/Confirmation.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/InviteLink.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/MultipleEmailInput.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/NameInputs.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/ProfileSettings.jsx","../app/javascript/src/v2/components/TeamMembers/utils.jsx","../app/javascript/src/v2/components/TeamMembers/ManageMember/index.jsx"],"sourcesContent":["import { Label, Switch, cn } from \"@bigbinary/neeto-atoms\";\nimport { useField } from \"formik\";\n\nconst FormikSwitch = ({\n name,\n label,\n className,\n checked: checkedProp,\n disabled,\n onChange: onChangeProp,\n ...rest\n}) => {\n const [field, , helpers] = useField(name);\n const isChecked = checkedProp !== undefined ? checkedProp : field.value;\n\n return (\n <div className={cn(\"flex items-center gap-2\", className)}>\n <Switch\n {...{ disabled }}\n checked={isChecked}\n id={name}\n onCheckedChange={val => {\n helpers.setValue(val);\n onChangeProp?.({ target: { checked: val } });\n }}\n {...rest}\n />\n {label && <Label htmlFor={name}>{label}</Label>}\n </div>\n );\n};\n\nexport default FormikSwitch;\n","import { useEffect, useState } from \"react\";\n\nimport {\n Button,\n Checkbox,\n Label,\n Tooltip,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { toLabelAndValue } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { pluck, not } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { NEETO_AUTH_MANAGE_PRODUCT_URL } from \"./constants\";\n\nimport { FormikSelect, FormikSwitch } from \"../../Common/formik\";\n\nconst AppList = ({ globalRoles, savedStateRef }) => {\n const { t } = useTranslation();\n const [isAppListEnabled, setIsAppListEnabled] = useState(\n savedStateRef.current.isAppListEnabled\n );\n\n const {\n values: { emails = [], appRoles = [] },\n setFieldValue,\n } = useFormikContext();\n\n const selectedEmail = pluck(\"value\", emails);\n const isManageProductsLinkEnabled =\n globalProps.user?.isOwner && Object.keys(globalRoles).length >= 3;\n\n useEffect(() => {\n if (savedStateRef.current.isAppListEnabled !== isAppListEnabled) {\n appRoles?.forEach((appRole, index) => {\n if (appRole?.appName === globalProps.appName?.substring(5)) {\n setFieldValue(`appRoles[${index}].isEnabled`, true);\n\n return;\n }\n\n setFieldValue(`appRoles[${index}].isEnabled`, isAppListEnabled);\n });\n }\n savedStateRef.current.isAppListEnabled = isAppListEnabled;\n }, [isAppListEnabled]); // eslint-disable-line react-hooks/exhaustive-deps\n\n const buildRoleOptions = roles =>\n roles.map(role => toLabelAndValue(role.name));\n\n return (\n <div className=\"flex flex-col gap-6\">\n <div className=\"w-full space-y-3\">\n <div className=\"flex items-start gap-2\">\n <Checkbox\n checked={isAppListEnabled}\n data-testid=\"ntm-manage-members-app-list-checkbox\"\n id=\"app-list-toggle\"\n onCheckedChange={() => setIsAppListEnabled(not)}\n />\n <Label className=\"leading-relaxed\" htmlFor=\"app-list-toggle\">\n <Typography className=\"leading-relaxed\" variant=\"body3\">\n <Trans\n i18nKey=\"neetoTeamMembers.helpers.addMembersToNeetoProducts\"\n values={{ emails: selectedEmail }}\n />\n </Typography>\n </Label>\n </div>\n {isManageProductsLinkEnabled && (\n <Typography variant=\"body3\">\n <Trans\n i18nKey=\"neetoTeamMembers.helpers.manageProducts\"\n components={{\n button: (\n <Button asChild variant=\"link\">\n <a href={NEETO_AUTH_MANAGE_PRODUCT_URL}>manage</a>\n </Button>\n ),\n }}\n />\n </Typography>\n )}\n </div>\n <div className=\"w-full\">\n {appRoles.map(({ appName, isEnabled }, index) => {\n const isCurrentApp = appName === globalProps.appName?.substring(5);\n const isAppRoleSelectionChecked = isCurrentApp || isEnabled;\n\n return (\n <div\n className=\"flex w-full items-center justify-between py-2\"\n key={appName}\n >\n <Tooltip\n content={\n isCurrentApp\n ? t(\"neetoTeamMembers.tooltips.hostAppIsRequired\")\n : null\n }\n >\n <span>\n <FormikSwitch\n checked={isAppRoleSelectionChecked}\n disabled={isCurrentApp}\n name={`appsRoles[${index}].isEnabled`}\n label={t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName,\n })}\n onChange={({ target }) => {\n setFieldValue(\n `appRoles[${index}].isEnabled`,\n target.checked\n );\n }}\n />\n </span>\n </Tooltip>\n <Tooltip\n content={\n isCurrentApp\n ? t(\"neetoTeamMembers.tooltips.goBackToChangeRole\")\n : null\n }\n >\n <span className=\"w-1/2 max-w-[250px]\">\n <FormikSelect\n isDisabled={isCurrentApp || !isEnabled}\n name={`appRoles[${index}].activeRole`}\n options={buildRoleOptions(globalRoles[appName])}\n />\n </span>\n </Tooltip>\n </div>\n );\n })}\n </div>\n </div>\n );\n};\n\nexport default AppList;\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Card, CardContent } from \"@bigbinary/neeto-atoms/primitives/Card\";\nimport { useFormikContext } from \"formik\";\nimport { Mail } from \"lucide-react\";\nimport { filterBy } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { pluck } from \"ramda\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { getSingleInvitationTranslationProps } from \"./utils\";\n\nconst Confirmation = () => {\n const { t } = useTranslation();\n const {\n values: { emails, role, appRoles },\n } = useFormikContext();\n\n const selectedEmail = pluck(\"value\", emails);\n const activeAppRoles = filterBy({ isEnabled: true }, appRoles);\n const isMultipleProduct = activeAppRoles.length > 1;\n\n return (\n <>\n <Card className=\"w-full shrink-0 bg-muted/40 ring-0\" size=\"sm\">\n <CardContent className=\"flex items-start gap-3\">\n <div className=\"bg-primary/10 mt-0.5 flex size-9 shrink-0 items-center justify-center rounded-full\">\n <Mail className=\"size-4 text-primary\" />\n </div>\n <Typography\n className=\"min-w-0 flex-1 leading-relaxed\"\n variant=\"body3\"\n >\n {isMultipleProduct ? (\n <Trans\n i18nKey=\"neetoTeamMembers.helpers.multipleProductInvitation\"\n values={{\n count: selectedEmail.length,\n emails: selectedEmail,\n orgName: globalProps.organization?.name,\n }}\n />\n ) : (\n <Trans\n i18nKey=\"neetoTeamMembers.helpers.singleProductInvitation\"\n values={getSingleInvitationTranslationProps({\n activeAppRoles,\n role,\n selectedEmail,\n })}\n />\n )}\n </Typography>\n </CardContent>\n </Card>\n {isMultipleProduct && (\n <Card className=\"w-full shrink-0 ring-0\" size=\"sm\">\n <CardContent className=\"overflow-hidden rounded-md border border-border p-0\">\n <table className=\"w-full border-collapse\">\n <thead className=\"bg-muted/40\">\n <tr>\n <th className=\"px-3 py-2 text-start text-xs font-medium uppercase tracking-wide text-muted-foreground\">\n {t(\"neetoTeamMembers.common.productName\")}\n </th>\n <th className=\"px-3 py-2 text-start text-xs font-medium uppercase tracking-wide text-muted-foreground\">\n {t(\"neetoTeamMembers.common.role\", SINGULAR)}\n </th>\n </tr>\n </thead>\n <tbody className=\"divide-y divide-border\">\n {activeAppRoles.map(({ appName, activeRole }) => (\n <tr key={appName}>\n <td className=\"px-3 py-2\">\n <Typography variant=\"body3\">\n {t(\"neetoTeamMembers.labels.neeto_\", {\n product: appName,\n })}\n </Typography>\n </td>\n <td className=\"px-3 py-2\">\n <Typography variant=\"body3\">{activeRole}</Typography>\n </td>\n </tr>\n ))}\n </tbody>\n </table>\n </CardContent>\n </Card>\n )}\n </>\n );\n};\n\nexport default Confirmation;\n","import { useEffect, useRef, useState } from \"react\";\n\nimport {\n Button,\n DropdownMenu,\n Spinner,\n Typography,\n} from \"@bigbinary/neeto-atoms\";\nimport { useFormikContext } from \"formik\";\nimport { Check, EllipsisVertical } from \"lucide-react\";\nimport { findBy } from \"neetocist\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport CopyToClipboardButton from \"neetomolecules/v2/CopyToClipboardButton\";\nimport { isEmpty } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport {\n useFetchInviteLinks,\n useCreateInviteLinks,\n useRegenerateInviteLink,\n} from \"hooks/reactQuery/useInviteLinksApi\";\n\nimport { FEEDBACK_DURATION_MS } from \"./constants\";\nimport { getInviteURL, remainingExpiryDays } from \"./utils\";\n\nconst InviteLink = ({ t, roles }) => {\n const { mutate: createInviteLink, isPending: isCreateLinkPending } =\n useCreateInviteLinks();\n\n const { mutate: regenerateLink } = useRegenerateInviteLink();\n\n const { data: { inviteLinks = [] } = {}, isLoading: isFetchLinkLoading } =\n useFetchInviteLinks();\n\n const { values } = useFormikContext();\n\n const [feedbackMessage, setFeedbackMessage] = useState(\"\");\n const feedbackTimerRef = useRef();\n\n const showFeedback = message => {\n setFeedbackMessage(message);\n clearTimeout(feedbackTimerRef.current);\n feedbackTimerRef.current = setTimeout(\n () => setFeedbackMessage(\"\"),\n FEEDBACK_DURATION_MS\n );\n };\n\n useEffect(() => () => clearTimeout(feedbackTimerRef.current), []);\n\n const isInviteLinkEmpty = !isFetchLinkLoading && isEmpty(inviteLinks);\n\n const handleRegenerate = () => {\n const { id: roleId } = findBy({ name: values.role }, roles);\n if (isEmpty(inviteLinks)) {\n createInviteLink(\n { organizationRoleId: roleId },\n {\n onSuccess: () =>\n showFeedback(\n t(\"neetoTeamMembers.alerts.success.inviteLinkGenerated\")\n ),\n }\n );\n\n return;\n }\n\n regenerateLink(\n {\n inviteLinkId: inviteLinks[0].id,\n payload: { organizationRoleId: roleId },\n },\n {\n onSuccess: () =>\n showFeedback(\n t(\"neetoTeamMembers.alerts.success.inviteLinkRegenerated\")\n ),\n }\n );\n };\n\n if (isFetchLinkLoading || isCreateLinkPending) {\n return (\n <div className=\"flex w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <div className=\"w-full space-y-2\">\n <div className=\"flex items-center gap-2 pt-1\">\n <div className=\"relative flex min-w-0 grow items-center truncate rounded-md border border-border bg-muted/50 leading-none\">\n {isInviteLinkEmpty ? (\n <div className=\"relative min-w-0 grow truncate p-2 leading-none\" />\n ) : (\n <Button\n asChild\n className=\"relative block h-auto min-w-0 shrink grow truncate p-2 font-normal leading-none no-underline hover:underline\"\n variant=\"link\"\n >\n <a\n href={getInviteURL(inviteLinks?.[0]?.token)}\n rel=\"noopener noreferrer\"\n target=\"_blank\"\n >\n {getInviteURL(inviteLinks?.[0]?.token)}\n </a>\n </Button>\n )}\n {isInviteLinkEmpty ? (\n <Button className=\"rounded-s-none\" onClick={handleRegenerate}>\n {t(\"neetoTeamMembers.buttons.generateLink\")}\n </Button>\n ) : (\n <CopyToClipboardButton\n className=\"rounded-s-none border-s\"\n value={getInviteURL(inviteLinks?.[0]?.token)}\n variant=\"ghost\"\n />\n )}\n </div>\n {!isInviteLinkEmpty && (\n <DropdownMenu\n customTarget={\n <Button\n aria-label={t(\"neetoTeamMembers.buttons.regenerateLink\")}\n className=\"shrink-0\"\n icon={EllipsisVertical}\n size=\"icon\"\n variant=\"ghost\"\n />\n }\n >\n <DropdownMenu.Menu>\n <DropdownMenu.MenuItem onClick={handleRegenerate}>\n {t(\"neetoTeamMembers.buttons.regenerateLink\")}\n </DropdownMenu.MenuItem>\n </DropdownMenu.Menu>\n </DropdownMenu>\n )}\n </div>\n {feedbackMessage && (\n <div\n aria-live=\"polite\"\n className=\"flex w-fit items-center gap-1.5 rounded-md bg-success-solid px-2 py-1 text-success-solid-foreground animate-in fade-in slide-in-from-top-1 duration-200\"\n >\n <Check className=\"size-3.5 shrink-0\" />\n <Typography color=\"inherit\" variant=\"caption\" weight=\"medium\">\n {feedbackMessage}\n </Typography>\n </div>\n )}\n <div>\n {!isInviteLinkEmpty && (\n <Typography className=\"leading-relaxed\" color=\"muted\" variant=\"body3\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoTeamMembers.alerts.messages.inviteLink\"\n values={{\n expiryDays: remainingExpiryDays(inviteLinks?.[0]?.expiresAt),\n role: inviteLinks?.[0]?.organizationRole?.name,\n inviteLimit: inviteLinks?.[0]?.inviteLimit,\n appName: globalProps.appName,\n emailDomain: inviteLinks?.[0]?.domain,\n }}\n />\n </Typography>\n )}\n </div>\n </div>\n );\n};\nexport default withT(InviteLink);\n","import { Button, Label, Typography } from \"@bigbinary/neeto-atoms\";\nimport {\n Input as FormikInput,\n MultiEmailInput as FormikMultiEmailInput,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport { useFormikContext } from \"formik\";\nimport { PLURAL, SINGULAR } from \"neetocommons/v2/constants\";\nimport { head } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { isNeetoAuthApp } from \"src/utils\";\n\nimport {\n COUNTER_PROPS,\n EMAIL_REGEX,\n FILTER_INVALID_EMAILS,\n FORM_PAGES,\n} from \"./constants\";\n\nconst MultipleEmailInput = ({\n emails = [],\n innerRef,\n selectedMember = null,\n setCurrentPage,\n}) => {\n const isInviteLinkFeatureEnabled = !isNeetoAuthApp();\n const { t } = useTranslation();\n const { setFieldValue } = useFormikContext();\n\n const handleInputChange = event => {\n const email = event.target.value;\n const emailList = [\n { label: email, value: email, valid: EMAIL_REGEX.test(email) },\n ];\n setFieldValue(\"emails\", emailList);\n };\n\n return (\n <div className=\"w-full\">\n {selectedMember ? (\n <FormikInput\n data-testid=\"ntm-manage-member-email-input\"\n name=\"emails\"\n type=\"email\"\n value={head(emails)?.value}\n label={\n <span className=\"flex w-full justify-between\">\n <Typography variant=\"body3\">\n {t(\"neetoTeamMembers.common.email\", SINGULAR)}\n </Typography>\n </span>\n }\n onChange={handleInputChange}\n />\n ) : (\n <div>\n <div className=\"flex items-center justify-between pb-2\">\n <Label>\n {t(\"neetoTeamMembers.common.email\", PLURAL)}\n <span className=\"text-destructive\"> *</span>\n </Label>\n {isInviteLinkFeatureEnabled && (\n <Button\n variant=\"link\"\n onClick={() => setCurrentPage(FORM_PAGES.INVITE_LINK)}\n >\n {t(\"neetoTeamMembers.buttons.inviteLink\")}\n </Button>\n )}\n </div>\n <FormikMultiEmailInput\n required\n counter={COUNTER_PROPS}\n data-testid=\"ntm-manage-member-email-input\"\n filterInvalidEmails={FILTER_INVALID_EMAILS}\n helpText={t(\"neetoTeamMembers.helpers.enterMultipleEmails\")}\n label=\"\"\n name=\"emails\"\n placeholder={t(\"neetoTeamMembers.placeholders.email\")}\n ref={innerRef}\n />\n </div>\n )}\n </div>\n );\n};\n\nexport default MultipleEmailInput;\n","import { Input as FormikInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { withT } from \"neetocommons/v2/react-utils\";\n\nconst NameInputs = withT(({ t, innerRef }) => (\n <div className=\"flex w-full gap-4\">\n <FormikInput\n data-testid=\"ntm-edit-member-first-name-text-field\"\n label={t(\"neetoTeamMembers.labels.firstName\")}\n name=\"firstName\"\n ref={innerRef}\n />\n <FormikInput\n data-testid=\"ntm-edit-member-last-name-text-field\"\n label={t(\"neetoTeamMembers.labels.lastName\")}\n name=\"lastName\"\n />\n </div>\n));\n\nexport default NameInputs;\n","import { useCallback, useEffect, useRef } from \"react\";\n\nimport { Label } from \"@bigbinary/neeto-atoms\";\nimport { NeetoTimezoneSelector } from \"@bigbinary/neeto-time-zones\";\nimport { findBy } from \"neetocist\";\nimport { LANGUAGE_OPTIONS } from \"neetocommons/v2/constants\";\nimport { FormikPhoneNumberInput } from \"neetomolecules/v2/PhoneNumber\";\nimport { isNotNil } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { DATE_FORMAT_OPTIONS, TIME_FORMAT_OPTIONS } from \"common/constants\";\n// eslint-disable-next-line import/extensions\nimport \"v2/stylesheets/timezone-selector.css\";\n\nimport { FormikSelect } from \"../../Common/formik\";\nimport useCountries from \"../../Profile/hooks/useCountries\";\n\nconst ProfileSettings = ({ member, setFieldValue }) => {\n const { t } = useTranslation();\n\n const setFieldValueRef = useRef(setFieldValue);\n\n useEffect(() => {\n setFieldValueRef.current = setFieldValue;\n }, [setFieldValue]);\n\n const {\n countryDropdownOptions,\n isFetchingCountriesList,\n handleCountryChange,\n } = useCountries();\n\n const timezoneContainerRef = useCallback(\n node => {\n if (isNotNil(node)) {\n new NeetoTimezoneSelector(node, {\n isTimeFormat24H: member.timeFormat === \"24h\",\n className: \"w-full z-10\",\n position: \"bottom\",\n initialValue: member.timeZone,\n onChange: ({ main }) => setFieldValueRef.current(\"timeZone\", main),\n });\n }\n },\n [member.timeZone, member.timeFormat]\n );\n\n useEffect(() => {\n const country = findBy(\n { value: member.countryIdentifier },\n countryDropdownOptions\n );\n if (country) handleCountryChange(country);\n }, [member.countryIdentifier, countryDropdownOptions, handleCountryChange]);\n\n return (\n <div className=\"w-full space-y-6\" data-cy=\"ntm-profile-settings\">\n <div className=\"space-y-2\">\n <Label>{t(\"neetoTeamMembers.profile.inputs.label.phonenumber\")}</Label>\n <FormikPhoneNumberInput\n data-cy=\"ntm-edit-member-phonenumber-field\"\n name=\"phonenumber\"\n />\n </div>\n <FormikSelect\n data-cy=\"ntm-edit-member-country-select\"\n isLoading={isFetchingCountriesList}\n label={t(\"neetoTeamMembers.profile.inputs.label.country\")}\n name=\"countryId\"\n options={countryDropdownOptions}\n onChange={value => {\n const option = countryDropdownOptions.find(o => o.value === value);\n const dependentFields = handleCountryChange(option);\n setFieldValue(\"dateFormat\", dependentFields?.dateFormat);\n }}\n />\n <FormikSelect\n data-cy=\"ntm-edit-member-language-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.language\")}\n name=\"language\"\n options={LANGUAGE_OPTIONS}\n />\n <div className=\"space-y-2\">\n <Label>{t(\"neetoTeamMembers.profile.inputs.label.timeZone\")}</Label>\n <div\n className=\"w-full grow\"\n data-cy=\"ntm-edit-member-timezone-select\"\n ref={timezoneContainerRef}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2\">\n <FormikSelect\n data-cy=\"ntm-edit-member-time-format-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.preferredTimeFormat\")}\n name=\"timeFormat\"\n options={TIME_FORMAT_OPTIONS}\n />\n <FormikSelect\n data-cy=\"ntm-edit-member-date-format-select\"\n label={t(\"neetoTeamMembers.profile.inputs.label.preferredDateFormat\")}\n name=\"dateFormat\"\n options={DATE_FORMAT_OPTIONS}\n />\n </div>\n </div>\n );\n};\n\nexport default ProfileSettings;\n","import { Avatar, Typography } from \"@bigbinary/neeto-atoms\";\nimport { DropdownMenuItem } from \"@bigbinary/neeto-atoms/primitives\";\nimport i18next from \"i18next\";\nimport { Users } from \"lucide-react\";\nimport { isNotEmpty, toLabelAndValue } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport { taxonomies } from \"neetocommons/v2/initializers\";\nimport { buildUrl, getQueryParams, hyphenize } from \"neetocommons/v2/utils\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { assoc, curry, filter, identical, mergeLeft, not } from \"ramda\";\nimport { Trans } from \"react-i18next\";\n\nimport { DEFAULT_RADIX } from \"./constants\";\n\nconst renderNameColumn = ({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n tableData,\n}) => {\n const { displayName: name, profileImageUrl: imageUrl } = tableData;\n\n return (\n <div className=\"flex w-full justify-between gap-3\">\n {/* min-w-0 on both boxes is what lets the name shrink: a flex item\n defaults to min-width:auto, and overflow-wrap does not reduce a word's\n min-content contribution. Without it a display name that is an email\n address is one unbreakable token that holds the box at its full\n intrinsic width, so it spills over the row menu and the next column. */}\n <div className=\"flex min-w-0 items-center gap-2\">\n <Avatar className=\"size-8\" user={{ name, imageUrl }} />\n <Typography\n className=\"min-w-0 whitespace-normal\"\n data-testid={`ntm-member-name-${hyphenize(name)}`}\n variant=\"body3\"\n >\n {name}\n </Typography>\n </div>\n {renderDropdownButton({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n tableData,\n })}\n </div>\n );\n};\n\nconst renderDropdownButton = ({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n tableData,\n}) => (\n <MoreDropdown\n isDisabled={not(config.permissions.update)}\n dropdownButtonProps={{\n \"data-testid\": \"ntm-members-table-row-dropdown-button\",\n tooltipProps: {\n content: i18next.t(\n \"neetoTeamMembers.tooltips.noPermissionToEditMembers\"\n ),\n disabled: config.permissions.update,\n position: \"top\",\n },\n }}\n menuTopChildren={\n <>\n <DropdownMenuItem\n className=\"cursor-pointer\"\n data-testid=\"ntm-edit-member-button\"\n onClick={() => handleUpdateRole(tableData)}\n >\n {i18next.t(\"neetoTeamMembers.common.edit\")}\n </DropdownMenuItem>\n {config?.table?.dropdownProps?.(tableData)}\n <DropdownMenuItem\n className=\"cursor-pointer\"\n data-testid=\"ntm-deactivate-member-button\"\n onClick={() => handleUpdateStatus(tableData)}\n >\n {i18next.t(\"neetoTeamMembers.common.remove\")}\n </DropdownMenuItem>\n </>\n }\n />\n);\n\nconst getDefaultAlertTitle = ({ member }) =>\n member?.active\n ? i18next.t(\"neetoTeamMembers.common.remove_\", {\n what: taxonomies.member.singular,\n })\n : i18next.t(\"neetoTeamMembers.common.activate_\", {\n what: taxonomies.member.singular,\n });\n\nconst getDefaultAlertMessage = ({ member }) => (\n <Trans\n i18nKey=\"neetoTeamMembers.alerts.messages.removeMember\"\n values={{ ...SINGULAR, person: member?.displayName }}\n />\n);\n\nconst getDefaultColumns = ({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n otherColumns,\n isSize,\n}) => [\n {\n accessorKey: \"name\",\n id: \"name\",\n size: 300,\n enablePinning: isNotEmpty(otherColumns) && !isSize(\"mobile\"),\n cell: ({ row }) =>\n renderNameColumn({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n tableData: row.original,\n }),\n enableSorting: true,\n header: i18next.t(\"neetoTeamMembers.common.name\"),\n enableHiding: false,\n },\n {\n accessorKey: \"email\",\n id: \"email\",\n enableSorting: true,\n size: 350,\n header: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR),\n },\n {\n accessorKey: \"role\",\n id: \"role\",\n enableSorting: true,\n size: 200,\n header: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR),\n },\n];\n\nconst removeExcludedRole = curry(\n (excludedRoles, role) => !excludedRoles?.includes(role?.name)\n);\n\nexport const getColumnData = ({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n isSize,\n}) => {\n const otherColumns = config?.otherColumns ?? [];\n const defaultColumns = getDefaultColumns({\n config,\n handleUpdateRole,\n handleUpdateStatus,\n otherColumns,\n isSize,\n });\n\n const columns = defaultColumns.map(column => {\n const otherColumn = otherColumns.find(col =>\n identical(col.accessorKey || col.id, column.accessorKey || column.id)\n );\n\n return otherColumn || column;\n });\n\n otherColumns.forEach(otherColumn => {\n const key = otherColumn.accessorKey || otherColumn.id;\n const exists = columns.find(col =>\n identical(col.accessorKey || col.id, key)\n );\n if (!exists) columns.push(otherColumn);\n });\n\n return columns;\n};\n\nexport const renderUpdateAlert = (field, props) => {\n const { config, member } = props;\n\n if (config?.alert?.[field]) {\n return config.alert?.[field]({\n active: member?.active,\n id: member?.id,\n name: member?.displayName,\n });\n }\n\n return field === \"title\"\n ? getDefaultAlertTitle(props)\n : getDefaultAlertMessage(props);\n};\n\nexport const handlePageChange = (setFilters, history) => (page, pageSize) => {\n const searchParams = getQueryParams({ toCamelCase: false });\n history.replace(\n buildUrl(\n window.location.pathname,\n mergeLeft({ page, page_size: pageSize }, searchParams)\n )\n );\n setFilters(mergeLeft({ page, pageSize }));\n};\n\nexport const renderPaginationProps = size => ({\n pageSize: parseInt(size, DEFAULT_RADIX),\n});\n\nexport const defaultNeetoFiltersColumns = () => [\n {\n key: \"email\",\n label: i18next.t(\"neetoTeamMembers.common.email\", SINGULAR),\n model: \"User\",\n node: \"email\",\n showRuleSelector: true,\n type: \"text\",\n },\n {\n key: \"name\",\n label: i18next.t(\"neetoTeamMembers.common.name\"),\n model: \"User\",\n node: \"first_name,last_name\",\n type: \"text\",\n values: \"\",\n },\n {\n key: \"role\",\n label: i18next.t(\"neetoTeamMembers.common.role\", SINGULAR),\n model: \"OrganizationRole\",\n node: \"organization_role.name\",\n type: \"multi_option\",\n values: [],\n },\n];\n\nexport const buildFilterColumns = ({\n options: { emails = [], organizationRoles = [] },\n emailConfig: { setSearchTerm, isLoading },\n}) => {\n const columnValues = {\n email: emails.map(toLabelAndValue),\n role: organizationRoles.map(toLabelAndValue),\n };\n\n return defaultNeetoFiltersColumns().map(column => {\n const values = columnValues[column.key];\n if (column.key === \"role\") return assoc(\"values\", values, column);\n\n const emailConfig = {\n values,\n isLoading,\n onInputChange: setSearchTerm,\n };\n\n return mergeLeft(emailConfig, column);\n });\n};\n\nexport const getFilteredRoles = (roles = [], config = {}) =>\n filter(removeExcludedRole(config?.excludedRoles), roles);\n\nexport const generateNoDataContent = ({ buttonProps }) => {\n const { disabled, onClick } = buttonProps;\n\n const noDataTitle = i18next.t(\"neetoTeamMembers.common.memberEmptyTitle\", {\n what: taxonomies.member.plural,\n });\n\n const noDataDescription = i18next.t(\n \"neetoTeamMembers.common.memberEmptyDescription\",\n { what: taxonomies.member.plural }\n );\n\n const noDataButtonProps = {\n \"data-testid\": \"ntm-add-member-button\",\n disabled,\n label: i18next.t(\"neetoTeamMembers.common.addNew_\", {\n what: taxonomies.member.singular,\n }),\n onClick,\n };\n\n return {\n noDataTitle,\n noDataDescription,\n noDataIcon: Users,\n noDataButtonProps,\n };\n};\n","import { useRef, useState, useEffect } from \"react\";\n\nimport { Alert, Button, Spinner, cn } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { ArrowLeft, Info } from \"lucide-react\";\nimport { globalProps, taxonomies } from \"neetocommons/v2/initializers\";\nimport { showThumbsUpToastr } from \"neetocommons/v2/utils\";\nimport { useProfileImageUpload } from \"neetoimageuploader/v2\";\nimport { reverse, isEmpty, groupBy, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\nimport { toast } from \"sonner\";\n\nimport { useFetchGlobalRoles, useFetchRoles } from \"hooks/roles/useRolesApi\";\nimport {\n useFetchMember,\n useFetchMembers,\n useCreateMember,\n useUpdateMember,\n useMembersCreationStatus,\n refetchMembers,\n} from \"hooks/teams/useTeamsApi\";\n\nimport AppList from \"./AppList\";\nimport Confirmation from \"./Confirmation\";\nimport {\n DEFAULT_COMPONENT_CONFIG,\n MEMBERS_FORM_COMPONENT_MAPPER,\n FORM_PAGES,\n} from \"./constants\";\nimport InviteLink from \"./InviteLink\";\nimport MultipleEmailInput from \"./MultipleEmailInput\";\nimport NameInputs from \"./NameInputs\";\nimport ProfileSettings from \"./ProfileSettings\";\nimport RolesRadioGroup from \"./RolesRadioGroup\";\nimport {\n buildValidationSchema,\n renderInitialValues,\n renderPayload,\n} from \"./utils\";\n\nimport { FormikForm, FormikActionBlock } from \"../../Common/formik\";\nimport ScrollToErrorField from \"../../Common/ScrollToErrorField\";\nimport ProfileImage from \"../../Profile/ProfileImage\";\nimport { getFilteredRoles } from \"../utils\";\n\nconst ManageMember = ({\n config,\n onComplete,\n roles = [],\n selectedMember = null,\n componentConfig = {},\n}) => {\n const { t } = useTranslation();\n\n const [isCreationStatusPollingEnabled, setIsCreationStatusPollingEnabled] =\n useState(false);\n\n const isViewPermissionGranted = config.permissions.view;\n const isNotDevelopment = globalProps.railsEnv !== \"development\";\n\n const { data: team } = useFetchMembers({ enabled: isViewPermissionGranted });\n\n const isManageMemberOpen = !!componentConfig.isOpen;\n\n const { data: memberShowData, isLoading: isMemberDetailLoading } =\n useFetchMember(selectedMember?.id, {\n enabled: !!selectedMember && isManageMemberOpen,\n });\n\n const [currentPage, setCurrentPage] = useState(FORM_PAGES.MAIN);\n const formReference = useRef(null);\n const inputReference = useRef(null);\n const appListSavedStateReference = useRef({ isAppListEnabled: true });\n const shouldSkipAppListPage = useRef(false);\n const formikValues = useRef(null);\n\n const manageMemberComponentConfig = {\n ...DEFAULT_COMPONENT_CONFIG,\n initialFocusRef: inputReference,\n ...componentConfig,\n };\n\n const Component =\n MEMBERS_FORM_COMPONENT_MAPPER[manageMemberComponentConfig.type || \"pane\"];\n\n const haveToFetchRoles = isEmpty(roles) && isViewPermissionGranted;\n\n const isEditForm = !!selectedMember;\n const isLastPage = currentPage === FORM_PAGES.CONFIRMATION || isEditForm;\n\n const { data: rolesList = roles, isLoading: isRolesLoading } = useFetchRoles({\n select: response => reverse(response.organizationRoles ?? []),\n enabled: haveToFetchRoles,\n });\n\n const { data: globalRoles = {}, isLoading: isGlobalRolesLoading } =\n useFetchGlobalRoles({\n select: response => groupBy(prop(\"appName\"), response ?? []),\n enabled: isNotDevelopment && !selectedMember && isViewPermissionGranted,\n });\n\n const filteredRoles = getFilteredRoles(rolesList, config);\n\n const initialFormValues = renderInitialValues({\n additionalFieldsInitialValues: config.additionalFields?.initialValues,\n globalRoles,\n memberShowData,\n roles: filteredRoles,\n selectedMember,\n });\n\n const {\n data: { jobId } = {},\n mutate: createMember,\n isPending: isCreatingMember,\n } = useCreateMember({\n onSuccess: () => setIsCreationStatusPollingEnabled(true),\n });\n\n const refetchInterval = query => {\n const { isCompleted } = query.state.data || {};\n\n if (isCompleted) {\n setIsCreationStatusPollingEnabled(false);\n\n return false;\n }\n\n return 2000;\n };\n\n const { data: creationStatus } = useMembersCreationStatus(jobId, {\n refetchInterval,\n enabled: isCreationStatusPollingEnabled && !!jobId,\n });\n\n useEffect(() => {\n const { isCompleted, isSuccessful, users, error } = creationStatus || {};\n\n if (!isCompleted) return;\n handleClose();\n config?.createMember?.onSuccess?.callback({ users });\n\n if (isSuccessful) {\n showThumbsUpToastr();\n } else {\n toast.error(error);\n }\n\n refetchMembers();\n }, [creationStatus]);\n\n const { mutate: updateMember, isPending: isUpdatingMember } = useUpdateMember(\n {\n onSuccess: () => {\n handleClose(true);\n config?.updateMember?.onSuccess?.callback();\n if (selectedMember?.id === globalProps.user?.id) {\n window.location.reload();\n }\n },\n }\n );\n\n const hasRoleChanged = ({ submitted, values }) =>\n submitted && values?.role !== selectedMember?.role;\n\n const handleClose = (submitted = false) => {\n onComplete({\n submitted: hasRoleChanged({ submitted, values: formikValues.current }),\n });\n setCurrentPage(FORM_PAGES.MAIN);\n appListSavedStateReference.current = { isAppListEnabled: true };\n setIsCreationStatusPollingEnabled(false);\n };\n\n const { uploadImage, isUploading } = useProfileImageUpload({\n uploadConfig: {\n folder: \"Auth\",\n customMetadata: { appName: \"neetoAuth\" },\n },\n });\n\n const handleUploadImage = async image => {\n let result;\n await uploadImage(image, uploadedImageData => {\n result = uploadedImageData;\n });\n\n return result;\n };\n\n const isProcessing =\n isCreatingMember ||\n isUpdatingMember ||\n isUploading ||\n isRolesLoading ||\n isGlobalRolesLoading ||\n isMemberDetailLoading;\n\n const handleAddMember = async values => {\n if (selectedMember) {\n const payload = renderPayload(values, selectedMember, initialFormValues);\n\n if (values.avatar?.file) {\n if (!payload.profile) payload.profile = {};\n\n if (values.avatar.file === \"_destroy\") {\n payload.profile.avatar = {\n fileId: \"_destroy\",\n filePath: \"\",\n url: \"\",\n };\n } else {\n try {\n const { fileId, filePath, url } = await handleUploadImage(\n values.avatar.file\n );\n payload.profile.avatar = { fileId, filePath, url };\n } catch (error) {\n toast.error(error.message);\n\n return;\n }\n }\n }\n\n updateMember({ id: selectedMember.id, payload });\n } else {\n createMember(renderPayload(values));\n }\n };\n\n const handleOnSubmit = async (values, { setSubmitting }) => {\n shouldSkipAppListPage.current = isEmpty(values.appRoles);\n\n if (isLastPage) {\n await handleAddMember(values);\n } else if (\n currentPage === FORM_PAGES.APP_LIST ||\n shouldSkipAppListPage.current\n ) {\n setCurrentPage(FORM_PAGES.CONFIRMATION);\n setSubmitting(false);\n } else if (currentPage === FORM_PAGES.MAIN) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n setSubmitting(false);\n }\n };\n\n const handleBackButton = () => {\n if (\n currentPage === FORM_PAGES.APP_LIST ||\n shouldSkipAppListPage.current ||\n currentPage === FORM_PAGES.INVITE_LINK\n ) {\n setCurrentPage(FORM_PAGES.MAIN);\n } else if (currentPage === FORM_PAGES.CONFIRMATION) {\n setCurrentPage(FORM_PAGES.APP_LIST);\n }\n };\n\n const getTitle = () => {\n const memberLabel = taxonomies.member.singular;\n\n if (selectedMember) {\n return t(\"neetoTeamMembers.common.edit_\", { what: memberLabel });\n }\n\n return currentPage === FORM_PAGES.INVITE_LINK\n ? t(\"neetoTeamMembers.common.inviteViaLink\")\n : t(\"neetoTeamMembers.common.addNew_\", { what: memberLabel });\n };\n\n const renderRolesRadioGroup = role => (\n <div className=\"w-full pt-2\">\n <RolesRadioGroup\n {...{ config, globalRoles, role }}\n isEdit={!!selectedMember}\n roles={filteredRoles}\n />\n </div>\n );\n\n const renderFormPage = (page, emails, role, setFieldValue) => {\n switch (page) {\n case FORM_PAGES.MAIN:\n return (\n <>\n {selectedMember && <ProfileImage />}\n {selectedMember && <NameInputs innerRef={inputReference} />}\n <MultipleEmailInput\n {...{ emails, selectedMember, setCurrentPage }}\n innerRef={inputReference}\n />\n {selectedMember && (\n <ProfileSettings\n {...{ setFieldValue }}\n member={{\n ...selectedMember,\n countryIdentifier:\n memberShowData?.member?.countryIdentifier ??\n selectedMember.countryIdentifier,\n }}\n />\n )}\n {renderRolesRadioGroup(role)}\n {config.additionalFields?.component}\n </>\n );\n case FORM_PAGES.APP_LIST:\n return (\n <AppList\n {...{ globalRoles }}\n savedStateRef={appListSavedStateReference}\n />\n );\n case FORM_PAGES.CONFIRMATION:\n return <Confirmation />;\n case FORM_PAGES.INVITE_LINK:\n return (\n <>\n <InviteLink roles={filteredRoles} />\n {renderRolesRadioGroup(role)}\n </>\n );\n default:\n return null;\n }\n };\n\n const isSheet = manageMemberComponentConfig.type !== \"modal\";\n const isPane = (manageMemberComponentConfig.type || \"pane\") === \"pane\";\n\n return (\n <Component\n data-testid=\"ntm-manage-members-pane-wrapper\"\n isOpen={manageMemberComponentConfig.isOpen}\n {...(isPane ? { size: \"large\" } : {})}\n className={classnames(\n \"ntm-timezone-shadcn-overrides\",\n manageMemberComponentConfig.className\n )}\n onClose={() => handleClose(false)}\n >\n <Component.Header\n {...(isSheet ? manageMemberComponentConfig.headerProps : {})}\n className={cn(\n isSheet &&\n currentPage !== FORM_PAGES.MAIN &&\n \"flex flex-row items-center gap-2\",\n isSheet && manageMemberComponentConfig.headerProps?.className\n )}\n >\n {isSheet && currentPage !== FORM_PAGES.MAIN && (\n <Button\n aria-label={t(\"neetoTeamMembers.buttons.back\")}\n icon={ArrowLeft}\n size=\"icon-sm\"\n variant=\"ghost\"\n onClick={handleBackButton}\n />\n )}\n <div>\n <Component.Title data-testid=\"ntm-manage-members-pane-header\">\n {getTitle()}\n </Component.Title>\n {selectedMember && Component.Description && (\n <Component.Description>\n {t(\"neetoTeamMembers.helpers.editPaneSubtitle\")}\n </Component.Description>\n )}\n </div>\n </Component.Header>\n <FormikForm\n ref={formReference}\n className={classnames({\n \"flex flex-1 flex-col overflow-hidden\": isSheet,\n })}\n formikProps={{\n enableReinitialize: true,\n initialValues: initialFormValues,\n onSubmit: handleOnSubmit,\n validationSchema: buildValidationSchema({\n selectedMember,\n ...team,\n }),\n }}\n >\n {({ values, isValid, dirty, setFieldValue }) => {\n const { emails, role } = values;\n formikValues.current = values;\n\n return (\n <>\n <ScrollToErrorField formRef={formReference} />\n <div\n {...(isSheet ? manageMemberComponentConfig.bodyProps : {})}\n className={cn(\n isSheet\n ? \"w-full flex-1 space-y-6 overflow-y-auto px-6 pb-4\"\n : \"w-full space-y-6 pb-4\",\n isSheet && manageMemberComponentConfig.bodyProps?.className\n )}\n >\n {}\n {/* eslint-disable-next-line @bigbinary/neeto/no-conditional-overlays */}\n {isSheet && isCreationStatusPollingEnabled && (\n <Alert>\n <Info className=\"size-4\" />\n <Alert.Title className=\"flex items-center gap-2\">\n <Spinner />\n {t(\"neetoTeamMembers.helpers.memberCreationStatus\", {\n count: emails.length,\n })}\n </Alert.Title>\n </Alert>\n )}\n {renderFormPage(currentPage, emails, role, setFieldValue)}\n </div>\n {currentPage !== FORM_PAGES.INVITE_LINK && (\n <Component.Footer\n {...(isSheet ? manageMemberComponentConfig.footerProps : {})}\n className={cn(\n \"flex gap-2\",\n isSheet &&\n manageMemberComponentConfig.footerProps?.className\n )}\n >\n <FormikActionBlock\n cancelButtonProps={{\n \"data-testid\": \"ntm-manage-member-cancel-button\",\n onClick: () => handleClose(false),\n }}\n isSubmitting={\n isProcessing || isCreationStatusPollingEnabled\n }\n submitButtonProps={{\n \"data-testid\": isLastPage\n ? \"ntm-manage-member-submit-button\"\n : \"ntm-manage-member-continue-button\",\n label: isLastPage\n ? t(\"neetoTeamMembers.buttons.saveChanges\")\n : t(\"neetoTeamMembers.buttons.continue\"),\n disabled:\n !isValid ||\n isProcessing ||\n !dirty ||\n isCreationStatusPollingEnabled,\n }}\n />\n </Component.Footer>\n )}\n </>\n );\n }}\n </FormikForm>\n </Component>\n );\n};\n\nexport default ManageMember;\n"],"names":["FormikSwitch","_ref","name","label","className","checkedProp","checked","disabled","onChangeProp","onChange","rest","_objectWithoutProperties","_excluded","_useField","useField","_useField2","_slicedToArray","field","helpers","isChecked","undefined","value","_jsxs","cn","children","_jsx","Switch","_objectSpread","id","onCheckedChange","val","setValue","target","Label","htmlFor","AppList","_globalProps$user","globalRoles","savedStateRef","_useTranslation","useTranslation","t","_useState","useState","current","isAppListEnabled","_useState2","setIsAppListEnabled","_useFormikContext","useFormikContext","_useFormikContext$val","values","_useFormikContext$val2","emails","_useFormikContext$val3","appRoles","setFieldValue","selectedEmail","pluck","isManageProductsLinkEnabled","globalProps","user","isOwner","Object","keys","length","useEffect","forEach","appRole","index","_globalProps$appName","appName","substring","concat","buildRoleOptions","roles","map","role","toLabelAndValue","Checkbox","not","Typography","variant","Trans","i18nKey","components","button","Button","asChild","href","NEETO_AUTH_MANAGE_PRODUCT_URL","_ref2","_globalProps$appName2","isEnabled","isCurrentApp","isAppRoleSelectionChecked","Tooltip","content","product","_ref3","FormikSelect","isDisabled","options","Confirmation","_globalProps$organiza","activeAppRoles","filterBy","isMultipleProduct","_Fragment","Card","size","CardContent","Mail","count","orgName","organization","getSingleInvitationTranslationProps","SINGULAR","activeRole","InviteLink","_inviteLinks$","_inviteLinks$2","_inviteLinks$3","_inviteLinks$4","_inviteLinks$5","_inviteLinks$6","_inviteLinks$7","_useCreateInviteLinks","useCreateInviteLinks","createInviteLink","mutate","isCreateLinkPending","isPending","_useRegenerateInviteL","useRegenerateInviteLink","regenerateLink","_useFetchInviteLinks","useFetchInviteLinks","_useFetchInviteLinks$","data","_useFetchInviteLinks$2","_useFetchInviteLinks$3","inviteLinks","isFetchLinkLoading","isLoading","feedbackMessage","setFeedbackMessage","feedbackTimerRef","useRef","showFeedback","message","clearTimeout","setTimeout","FEEDBACK_DURATION_MS","isInviteLinkEmpty","isEmpty","handleRegenerate","_findBy","findBy","roleId","organizationRoleId","onSuccess","inviteLinkId","payload","Spinner","getInviteURL","token","rel","onClick","CopyToClipboardButton","DropdownMenu","customTarget","icon","EllipsisVertical","Menu","MenuItem","Check","color","weight","strong","expiryDays","remainingExpiryDays","expiresAt","organizationRole","inviteLimit","emailDomain","domain","withT","MultipleEmailInput","_head","_ref$emails","innerRef","_ref$selectedMember","selectedMember","setCurrentPage","isInviteLinkFeatureEnabled","isNeetoAuthApp","handleInputChange","event","email","emailList","valid","EMAIL_REGEX","test","FormikInput","type","head","PLURAL","FORM_PAGES","INVITE_LINK","FormikMultiEmailInput","required","counter","COUNTER_PROPS","filterInvalidEmails","FILTER_INVALID_EMAILS","helpText","placeholder","ref","NameInputs","ProfileSettings","member","setFieldValueRef","_useCountries","useCountries","countryDropdownOptions","isFetchingCountriesList","handleCountryChange","timezoneContainerRef","useCallback","node","isNotNil","NeetoTimezoneSelector","isTimeFormat24H","timeFormat","position","initialValue","timeZone","main","country","countryIdentifier","FormikPhoneNumberInput","option","find","o","dependentFields","dateFormat","LANGUAGE_OPTIONS","TIME_FORMAT_OPTIONS","DATE_FORMAT_OPTIONS","renderNameColumn","config","handleUpdateRole","handleUpdateStatus","tableData","displayName","imageUrl","profileImageUrl","Avatar","hyphenize","renderDropdownButton","_config$table","_config$table$dropdow","MoreDropdown","permissions","update","dropdownButtonProps","tooltipProps","i18next","menuTopChildren","DropdownMenuItem","table","dropdownProps","call","getDefaultAlertTitle","active","what","taxonomies","singular","getDefaultAlertMessage","_ref4","person","getDefaultColumns","_ref5","otherColumns","isSize","accessorKey","enablePinning","isNotEmpty","cell","_ref6","row","original","enableSorting","header","enableHiding","removeExcludedRole","curry","excludedRoles","includes","getColumnData","_ref7","_config$otherColumns","defaultColumns","columns","column","otherColumn","col","identical","key","exists","push","renderUpdateAlert","props","_config$alert","alert","_config$alert2","handlePageChange","setFilters","history","page","pageSize","searchParams","getQueryParams","toCamelCase","replace","buildUrl","window","location","pathname","mergeLeft","page_size","getFilteredRoles","arguments","filter","generateNoDataContent","_ref9","buttonProps","noDataTitle","plural","noDataDescription","noDataButtonProps","noDataIcon","Users","ManageMember","_config$additionalFie","_manageMemberComponen","onComplete","_ref$roles","_ref$componentConfig","componentConfig","isCreationStatusPollingEnabled","setIsCreationStatusPollingEnabled","isViewPermissionGranted","view","isNotDevelopment","railsEnv","_useFetchMembers","useFetchMembers","enabled","team","isManageMemberOpen","isOpen","_useFetchMember","useFetchMember","memberShowData","isMemberDetailLoading","_useState3","MAIN","_useState4","currentPage","formReference","inputReference","appListSavedStateReference","shouldSkipAppListPage","formikValues","manageMemberComponentConfig","DEFAULT_COMPONENT_CONFIG","initialFocusRef","Component","MEMBERS_FORM_COMPONENT_MAPPER","haveToFetchRoles","isEditForm","isLastPage","CONFIRMATION","_useFetchRoles","useFetchRoles","select","response","_response$organizatio","reverse","organizationRoles","_useFetchRoles$data","rolesList","isRolesLoading","_useFetchGlobalRoles","useFetchGlobalRoles","groupBy","prop","_useFetchGlobalRoles$","isGlobalRolesLoading","filteredRoles","initialFormValues","renderInitialValues","additionalFieldsInitialValues","additionalFields","initialValues","_useCreateMember","useCreateMember","_useCreateMember$data","_useCreateMember$data2","jobId","createMember","isCreatingMember","refetchInterval","query","state","isCompleted","_useMembersCreationSt","useMembersCreationStatus","creationStatus","_config$createMember","isSuccessful","users","error","handleClose","callback","showThumbsUpToastr","toast","refetchMembers","_useUpdateMember","useUpdateMember","_config$updateMember","updateMember","reload","isUpdatingMember","hasRoleChanged","submitted","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","uploadImage","isUploading","handleUploadImage","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","result","wrap","_callee$","_context","prev","next","uploadedImageData","abrupt","stop","_x","apply","isProcessing","handleAddMember","_callee2","_values$avatar","_yield$handleUploadIm","fileId","filePath","url","_callee2$","_context2","renderPayload","avatar","file","profile","sent","t0","_x2","handleOnSubmit","_ref8","_callee3","setSubmitting","_callee3$","_context3","APP_LIST","_x3","_x4","handleBackButton","getTitle","memberLabel","renderRolesRadioGroup","RolesRadioGroup","isEdit","renderFormPage","_memberShowData$membe","_memberShowData$membe2","_config$additionalFie2","ProfileImage","component","isSheet","isPane","classnames","onClose","Header","headerProps","ArrowLeft","Title","Description","FormikForm","formikProps","enableReinitialize","onSubmit","validationSchema","buildValidationSchema","_manageMemberComponen2","_manageMemberComponen3","isValid","dirty","ScrollToErrorField","formRef","bodyProps","Alert","Info","Footer","footerProps","FormikActionBlock","cancelButtonProps","isSubmitting","submitButtonProps"],"mappings":"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"}
|