@bigbinary/neeto-team-members-frontend 5.0.62 → 5.0.64
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 +5 -11
- package/dist/ManageMember.js.map +1 -1
- package/dist/{Permissions-LWRAefeb.js → Permissions-BVkx_S_F.js} +2 -2
- package/dist/Permissions-BVkx_S_F.js.map +1 -0
- package/dist/{Permissions-Bz0SmJzH.js → Permissions-DIdoAJlu.js} +2 -2
- package/dist/Permissions-DIdoAJlu.js.map +1 -0
- package/dist/Profile.js +4 -13
- package/dist/Profile.js.map +1 -1
- package/dist/{ProfileImage-BLnx0E90.js → ProfileImage-BjDA-txF.js} +2 -2
- package/dist/ProfileImage-BjDA-txF.js.map +1 -0
- package/dist/{ProfileImage-V240yfTY.js → ProfileImage-Ca02-i_d.js} +2 -2
- package/dist/ProfileImage-Ca02-i_d.js.map +1 -0
- package/dist/cjs/ManageMember.js +5 -11
- package/dist/cjs/ManageMember.js.map +1 -1
- package/dist/cjs/Profile.js +4 -14
- package/dist/cjs/Profile.js.map +1 -1
- package/dist/cjs/v2/Groups.js +1 -1
- package/dist/cjs/v2/Groups.js.map +1 -1
- package/dist/cjs/v2/ManageMember.js +1048 -42
- package/dist/cjs/v2/ManageMember.js.map +1 -1
- package/dist/cjs/v2/MembersDropdown.js +1 -1
- package/dist/cjs/v2/MembersInvite.js +1 -1
- package/dist/cjs/v2/MembersInvite.js.map +1 -1
- package/dist/cjs/v2/Permissions.js +1 -1
- package/dist/cjs/v2/Profile.js +5 -13
- package/dist/cjs/v2/Profile.js.map +1 -1
- package/dist/cjs/v2/Roles.js +1 -1
- package/dist/cjs/v2/TeamMembers.js +21 -20
- package/dist/cjs/v2/TeamMembers.js.map +1 -1
- package/dist/cjs/v2/TeamsDropdown.js +1 -1
- package/dist/cjs/v2/hooks.js +187 -5
- package/dist/cjs/v2/hooks.js.map +1 -1
- package/dist/cjs/v2/index.js +7 -6
- package/dist/cjs/v2/index.js.map +1 -1
- package/dist/{index-BRgcqXVL.js → index-BVrpRWeD.js} +3 -3
- package/dist/index-BVrpRWeD.js.map +1 -0
- package/dist/{index-BMb0DElQ.js → index-CVZHlIdE.js} +3 -3
- package/dist/index-CVZHlIdE.js.map +1 -0
- package/dist/utils-BFRNzhia.js +318 -0
- package/dist/utils-BFRNzhia.js.map +1 -0
- package/dist/utils-DEOuQRcK.js +300 -0
- package/dist/utils-DEOuQRcK.js.map +1 -0
- package/dist/v2/Groups.js +1 -1
- package/dist/v2/Groups.js.map +1 -1
- package/dist/v2/ManageMember.js +1041 -41
- package/dist/v2/ManageMember.js.map +1 -1
- package/dist/v2/MembersDropdown.js +1 -1
- package/dist/v2/MembersInvite.js +1 -1
- package/dist/v2/MembersInvite.js.map +1 -1
- package/dist/v2/Permissions.js +1 -1
- package/dist/v2/Profile.js +6 -14
- package/dist/v2/Profile.js.map +1 -1
- package/dist/v2/Roles.js +1 -1
- package/dist/v2/TeamMembers.js +5 -4
- package/dist/v2/TeamMembers.js.map +1 -1
- package/dist/v2/TeamsDropdown.js +1 -1
- package/dist/v2/hooks.js +184 -5
- package/dist/v2/hooks.js.map +1 -1
- package/dist/v2/index.js +6 -5
- package/dist/v2/index.js.map +1 -1
- package/package.json +5 -5
- package/dist/Permissions-Bz0SmJzH.js.map +0 -1
- package/dist/Permissions-LWRAefeb.js.map +0 -1
- package/dist/ProfileImage-BLnx0E90.js.map +0 -1
- package/dist/ProfileImage-V240yfTY.js.map +0 -1
- package/dist/index-BFScwOib.js +0 -1272
- package/dist/index-BFScwOib.js.map +0 -1
- package/dist/index-BMb0DElQ.js.map +0 -1
- package/dist/index-BRgcqXVL.js.map +0 -1
- package/dist/index-CBt9gCBK.js +0 -1293
- package/dist/index-CBt9gCBK.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ManageMember.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
1
|
+
{"version":3,"file":"ManageMember.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/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 <FormikPhoneNumberInput\n data-cy=\"ntm-edit-member-phonenumber-field\"\n label={t(\"neetoTeamMembers.profile.inputs.label.phonenumber\")}\n name=\"phonenumber\"\n />\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 <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 );\n};\n\nexport default ProfileSettings;\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\n return (\n <Component\n data-testid=\"ntm-manage-members-pane-wrapper\"\n isOpen={manageMemberComponentConfig.isOpen}\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","ManageMember","_config$additionalFie","_manageMemberComponen","config","onComplete","_ref$roles","_ref$componentConfig","componentConfig","isCreationStatusPollingEnabled","setIsCreationStatusPollingEnabled","isViewPermissionGranted","permissions","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","getFilteredRoles","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","window","location","reload","isUpdatingMember","hasRoleChanged","_ref4","submitted","arguments","_useProfileImageUploa","useProfileImageUpload","uploadConfig","folder","customMetadata","uploadImage","isUploading","handleUploadImage","_ref5","_asyncToGenerator","_regeneratorRuntime","mark","_callee","image","result","wrap","_callee$","_context","prev","next","uploadedImageData","abrupt","stop","_x","apply","isProcessing","handleAddMember","_ref6","_callee2","_values$avatar","_yield$handleUploadIm","fileId","filePath","url","_callee2$","_context2","renderPayload","avatar","file","profile","sent","t0","_x2","handleOnSubmit","_ref8","_callee3","_ref7","setSubmitting","_callee3$","_context3","APP_LIST","_x3","_x4","handleBackButton","getTitle","memberLabel","taxonomies","singular","what","renderRolesRadioGroup","RolesRadioGroup","isEdit","renderFormPage","page","_memberShowData$membe","_memberShowData$membe2","_config$additionalFie2","ProfileImage","component","isSheet","classnames","onClose","Header","headerProps","ArrowLeft","Title","Description","FormikForm","formikProps","enableReinitialize","onSubmit","validationSchema","buildValidationSchema","_ref9","_manageMemberComponen2","_manageMemberComponen3","isValid","dirty","ScrollToErrorField","formRef","bodyProps","Alert","Info","Footer","footerProps","FormikActionBlock","cancelButtonProps","isSubmitting","submitButtonProps"],"mappings":"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"}
|
|
@@ -7,7 +7,7 @@ import { ChevronDown } from 'lucide-react';
|
|
|
7
7
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
8
8
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
9
9
|
import { isNotEmpty, findBy, removeBy } from '@bigbinary/neeto-cist';
|
|
10
|
-
import { A as AssignList } from '../index-
|
|
10
|
+
import { A as AssignList } from '../index-CVZHlIdE.js';
|
|
11
11
|
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
12
12
|
|
|
13
13
|
var AssignDropdownTarget$1 = function AssignDropdownTarget(_ref) {
|
package/dist/v2/MembersInvite.js
CHANGED
|
@@ -151,7 +151,7 @@ var MembersInvite = function MembersInvite() {
|
|
|
151
151
|
return /*#__PURE__*/jsx("div", {
|
|
152
152
|
className: "flex min-h-screen w-screen items-center justify-center bg-gray-50 px-4",
|
|
153
153
|
children: /*#__PURE__*/jsxs("div", {
|
|
154
|
-
className: "w-full max-w-md space-y-6 p-6
|
|
154
|
+
className: "w-full max-w-md space-y-6 p-6 shadow-lg",
|
|
155
155
|
children: [/*#__PURE__*/jsxs("div", {
|
|
156
156
|
className: "space-y-2 text-center",
|
|
157
157
|
children: [/*#__PURE__*/jsx(Typography, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MembersInvite.js","sources":["../../app/javascript/src/v2/components/MembersInvite/constants.js","../../app/javascript/src/v2/components/MembersInvite/ErrorPage.jsx","../../app/javascript/src/v2/components/MembersInvite/utils.js","../../app/javascript/src/v2/components/MembersInvite/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .email(t(\"neetoTeamMembers.validations.validEmail_one\"))\n .required(\n t(\"neetoTeamMembers.validations.required\", {\n what: t(\"neetoTeamMembers.common.email\", SINGULAR),\n })\n ),\n});\n\nexport const ERROR = { EXPIRED: 410, INVALID_DOMAIN: 422 };\n\nexport const ROOT_URL = \"/\";\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { Trans } from \"react-i18next\";\n\nimport InviteLinkError from \"assets/images/InviteLinkError\";\n\nconst ErrorPage = withT(\n ({ t, isExpired = false, email = \"\", allowedDomain = \"\" }) => (\n <div className=\"flex h-screen w-screen items-center justify-center bg-gray-50 px-4\">\n <div className=\"flex w-full max-w-2xl flex-col items-center justify-center space-y-4 text-center\">\n <div className=\"mb-4\">\n <InviteLinkError size={64} />\n </div>\n <Typography variant=\"h1\" weight=\"bold\">\n {isExpired\n ? t(\"neetoTeamMembers.alerts.messages.expiredTitle\")\n : t(\"neetoTeamMembers.alerts.messages.domainTitle\")}\n </Typography>\n <Typography color=\"muted\" variant=\"body3\">\n {isExpired ? (\n t(\"neetoTeamMembers.alerts.messages.expiredMessage\")\n ) : (\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoTeamMembers.alerts.messages.domainMessage\"\n values={{ allowedDomain, email }}\n />\n )}\n </Typography>\n </div>\n </div>\n )\n);\nexport default ErrorPage;\n","import { dayjs } from \"neetocommons/v2/utils\";\n\nconst getStartOfDay = date => dayjs(date).startOf(\"day\");\n\nexport const isExpired = date => {\n if (!date) return false;\n\n const today = getStartOfDay();\n const expiryDate = getStartOfDay(date);\n\n return expiryDate.isBefore(today);\n};\n","import { useState } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input as FormikInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { useDisplayErrorPage } from \"neetocommons/v2/react-utils\";\nimport ErrorPageGlobal from \"neetomolecules/v2/ErrorPage\";\nimport PageLoader from \"neetomolecules/v2/PageLoader\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport { QUERY_KEYS } from \"common/constants\";\nimport {\n useShowInviteLink,\n useCreateInvitation,\n} from \"hooks/reactQuery/public/useInvitationsApi\";\n\nimport { ERROR, VALIDATION_SCHEMA, ROOT_URL } from \"./constants\";\nimport ErrorPage from \"./ErrorPage\";\nimport { isExpired } from \"./utils\";\n\nimport { FormikForm, FormikActionBlock } from \"../Common/formik\";\n\nconst MembersInvite = () => {\n const queryClient = useQueryClient();\n const { t } = useTranslation();\n const { inviteId } = useParams();\n const displayErrorPage = useDisplayErrorPage();\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const { data: inviteLink, isLoading } = useShowInviteLink(inviteId);\n\n const handleSuccess = response => {\n if (response?.redirectUrl) {\n window.location.href = response.redirectUrl;\n } else {\n setIsSubmitting(false);\n }\n };\n\n const handleError = () => {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.INVITATION_LINK, inviteId],\n });\n setIsSubmitting(false);\n };\n\n const {\n mutate: createInvitation,\n isError,\n error,\n variables,\n } = useCreateInvitation({ onSuccess: handleSuccess, onError: handleError });\n\n const isInviteExpired =\n isExpired(inviteLink?.expiresAt) ||\n (isError && error?.status === ERROR.EXPIRED);\n\n const isInvalidDomain = isError && error?.status === ERROR.INVALID_DOMAIN;\n\n const handleSubmit = ({ email }) => {\n setIsSubmitting(true);\n\n return createInvitation({ email, inviteToken: inviteId });\n };\n\n if (isLoading || isSubmitting) {\n return (\n <div className=\"h-screen w-screen\">\n <PageLoader />\n </div>\n );\n }\n\n if (isInviteExpired || isInvalidDomain) {\n return (\n <ErrorPage\n allowedDomain={inviteLink?.domain}\n email={variables?.email}\n isExpired={isInviteExpired}\n />\n );\n }\n\n if (displayErrorPage) {\n return <ErrorPageGlobal homeUrl={ROOT_URL} />;\n }\n\n return (\n <div className=\"flex min-h-screen w-screen items-center justify-center bg-gray-50 px-4\">\n <div className=\"w-full max-w-md space-y-6 p-6 neeto-ui-shadow-lg\">\n <div className=\"space-y-2 text-center\">\n <Typography variant=\"h3\">\n {t(\"neetoTeamMembers.helpers.invitationTitle\")}\n </Typography>\n <Typography color=\"muted\" variant=\"body2\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoTeamMembers.helpers.invitationMessage\"\n values={{ organization: globalProps.organization.name }}\n />\n </Typography>\n </div>\n <FormikForm\n formikProps={{\n initialValues: { email: \"\" },\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ isValid, dirty }) => (\n <div className=\"space-y-4\">\n <FormikInput\n required\n label={t(\"neetoTeamMembers.common.email_one\")}\n name=\"email\"\n type=\"email\"\n />\n <FormikActionBlock\n submitButtonProps={{\n label: t(\"neetoTeamMembers.buttons.acceptInvitation\"),\n disabled: !isValid || !dirty,\n }}\n />\n </div>\n )}\n </FormikForm>\n </div>\n </div>\n );\n};\n\nexport default MembersInvite;\n"],"names":["VALIDATION_SCHEMA","yup","object","shape","email","string","t","required","what","SINGULAR","ERROR","EXPIRED","INVALID_DOMAIN","ROOT_URL","ErrorPage","withT","_ref","_ref$isExpired","isExpired","_ref$email","_ref$allowedDomain","allowedDomain","_jsx","className","children","_jsxs","InviteLinkError","size","Typography","variant","weight","color","Trans","components","strong","i18nKey","values","getStartOfDay","date","dayjs","startOf","today","expiryDate","isBefore","MembersInvite","queryClient","useQueryClient","_useTranslation","useTranslation","_useParams","useParams","inviteId","displayErrorPage","useDisplayErrorPage","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useShowInviteLink","useShowInviteLink","inviteLink","data","isLoading","handleSuccess","response","redirectUrl","window","location","href","handleError","invalidateQueries","queryKey","QUERY_KEYS","INVITATION_LINK","_useCreateInvitation","useCreateInvitation","onSuccess","onError","createInvitation","mutate","isError","error","variables","isInviteExpired","expiresAt","status","isInvalidDomain","handleSubmit","inviteToken","PageLoader","domain","ErrorPageGlobal","homeUrl","organization","globalProps","name","FormikForm","formikProps","initialValues","validationSchema","onSubmit","_ref2","isValid","dirty","FormikInput","label","type","FormikActionBlock","submitButtonProps","disabled"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MembersInvite.js","sources":["../../app/javascript/src/v2/components/MembersInvite/constants.js","../../app/javascript/src/v2/components/MembersInvite/ErrorPage.jsx","../../app/javascript/src/v2/components/MembersInvite/utils.js","../../app/javascript/src/v2/components/MembersInvite/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\nimport { SINGULAR } from \"neetocommons/v2/constants\";\nimport * as yup from \"yup\";\n\nexport const VALIDATION_SCHEMA = yup.object().shape({\n email: yup\n .string()\n .email(t(\"neetoTeamMembers.validations.validEmail_one\"))\n .required(\n t(\"neetoTeamMembers.validations.required\", {\n what: t(\"neetoTeamMembers.common.email\", SINGULAR),\n })\n ),\n});\n\nexport const ERROR = { EXPIRED: 410, INVALID_DOMAIN: 422 };\n\nexport const ROOT_URL = \"/\";\n","import { Typography } from \"@bigbinary/neeto-atoms\";\nimport { withT } from \"neetocommons/v2/react-utils\";\nimport { Trans } from \"react-i18next\";\n\nimport InviteLinkError from \"assets/images/InviteLinkError\";\n\nconst ErrorPage = withT(\n ({ t, isExpired = false, email = \"\", allowedDomain = \"\" }) => (\n <div className=\"flex h-screen w-screen items-center justify-center bg-gray-50 px-4\">\n <div className=\"flex w-full max-w-2xl flex-col items-center justify-center space-y-4 text-center\">\n <div className=\"mb-4\">\n <InviteLinkError size={64} />\n </div>\n <Typography variant=\"h1\" weight=\"bold\">\n {isExpired\n ? t(\"neetoTeamMembers.alerts.messages.expiredTitle\")\n : t(\"neetoTeamMembers.alerts.messages.domainTitle\")}\n </Typography>\n <Typography color=\"muted\" variant=\"body3\">\n {isExpired ? (\n t(\"neetoTeamMembers.alerts.messages.expiredMessage\")\n ) : (\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoTeamMembers.alerts.messages.domainMessage\"\n values={{ allowedDomain, email }}\n />\n )}\n </Typography>\n </div>\n </div>\n )\n);\nexport default ErrorPage;\n","import { dayjs } from \"neetocommons/v2/utils\";\n\nconst getStartOfDay = date => dayjs(date).startOf(\"day\");\n\nexport const isExpired = date => {\n if (!date) return false;\n\n const today = getStartOfDay();\n const expiryDate = getStartOfDay(date);\n\n return expiryDate.isBefore(today);\n};\n","import { useState } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Input as FormikInput } from \"@bigbinary/neeto-atoms/formik\";\nimport { useQueryClient } from \"@tanstack/react-query\";\nimport { globalProps } from \"neetocommons/v2/initializers\";\nimport { useDisplayErrorPage } from \"neetocommons/v2/react-utils\";\nimport ErrorPageGlobal from \"neetomolecules/v2/ErrorPage\";\nimport PageLoader from \"neetomolecules/v2/PageLoader\";\nimport { Trans, useTranslation } from \"react-i18next\";\nimport { useParams } from \"react-router-dom\";\n\nimport { QUERY_KEYS } from \"common/constants\";\nimport {\n useShowInviteLink,\n useCreateInvitation,\n} from \"hooks/reactQuery/public/useInvitationsApi\";\n\nimport { ERROR, VALIDATION_SCHEMA, ROOT_URL } from \"./constants\";\nimport ErrorPage from \"./ErrorPage\";\nimport { isExpired } from \"./utils\";\n\nimport { FormikForm, FormikActionBlock } from \"../Common/formik\";\n\nconst MembersInvite = () => {\n const queryClient = useQueryClient();\n const { t } = useTranslation();\n const { inviteId } = useParams();\n const displayErrorPage = useDisplayErrorPage();\n const [isSubmitting, setIsSubmitting] = useState(false);\n\n const { data: inviteLink, isLoading } = useShowInviteLink(inviteId);\n\n const handleSuccess = response => {\n if (response?.redirectUrl) {\n window.location.href = response.redirectUrl;\n } else {\n setIsSubmitting(false);\n }\n };\n\n const handleError = () => {\n queryClient.invalidateQueries({\n queryKey: [QUERY_KEYS.INVITATION_LINK, inviteId],\n });\n setIsSubmitting(false);\n };\n\n const {\n mutate: createInvitation,\n isError,\n error,\n variables,\n } = useCreateInvitation({ onSuccess: handleSuccess, onError: handleError });\n\n const isInviteExpired =\n isExpired(inviteLink?.expiresAt) ||\n (isError && error?.status === ERROR.EXPIRED);\n\n const isInvalidDomain = isError && error?.status === ERROR.INVALID_DOMAIN;\n\n const handleSubmit = ({ email }) => {\n setIsSubmitting(true);\n\n return createInvitation({ email, inviteToken: inviteId });\n };\n\n if (isLoading || isSubmitting) {\n return (\n <div className=\"h-screen w-screen\">\n <PageLoader />\n </div>\n );\n }\n\n if (isInviteExpired || isInvalidDomain) {\n return (\n <ErrorPage\n allowedDomain={inviteLink?.domain}\n email={variables?.email}\n isExpired={isInviteExpired}\n />\n );\n }\n\n if (displayErrorPage) {\n return <ErrorPageGlobal homeUrl={ROOT_URL} />;\n }\n\n return (\n <div className=\"flex min-h-screen w-screen items-center justify-center bg-gray-50 px-4\">\n <div className=\"w-full max-w-md space-y-6 p-6 shadow-lg\">\n <div className=\"space-y-2 text-center\">\n <Typography variant=\"h3\">\n {t(\"neetoTeamMembers.helpers.invitationTitle\")}\n </Typography>\n <Typography color=\"muted\" variant=\"body2\">\n <Trans\n components={{ strong: <strong /> }}\n i18nKey=\"neetoTeamMembers.helpers.invitationMessage\"\n values={{ organization: globalProps.organization.name }}\n />\n </Typography>\n </div>\n <FormikForm\n formikProps={{\n initialValues: { email: \"\" },\n validationSchema: VALIDATION_SCHEMA,\n onSubmit: handleSubmit,\n }}\n >\n {({ isValid, dirty }) => (\n <div className=\"space-y-4\">\n <FormikInput\n required\n label={t(\"neetoTeamMembers.common.email_one\")}\n name=\"email\"\n type=\"email\"\n />\n <FormikActionBlock\n submitButtonProps={{\n label: t(\"neetoTeamMembers.buttons.acceptInvitation\"),\n disabled: !isValid || !dirty,\n }}\n />\n </div>\n )}\n </FormikForm>\n </div>\n </div>\n );\n};\n\nexport default MembersInvite;\n"],"names":["VALIDATION_SCHEMA","yup","object","shape","email","string","t","required","what","SINGULAR","ERROR","EXPIRED","INVALID_DOMAIN","ROOT_URL","ErrorPage","withT","_ref","_ref$isExpired","isExpired","_ref$email","_ref$allowedDomain","allowedDomain","_jsx","className","children","_jsxs","InviteLinkError","size","Typography","variant","weight","color","Trans","components","strong","i18nKey","values","getStartOfDay","date","dayjs","startOf","today","expiryDate","isBefore","MembersInvite","queryClient","useQueryClient","_useTranslation","useTranslation","_useParams","useParams","inviteId","displayErrorPage","useDisplayErrorPage","_useState","useState","_useState2","_slicedToArray","isSubmitting","setIsSubmitting","_useShowInviteLink","useShowInviteLink","inviteLink","data","isLoading","handleSuccess","response","redirectUrl","window","location","href","handleError","invalidateQueries","queryKey","QUERY_KEYS","INVITATION_LINK","_useCreateInvitation","useCreateInvitation","onSuccess","onError","createInvitation","mutate","isError","error","variables","isInviteExpired","expiresAt","status","isInvalidDomain","handleSubmit","inviteToken","PageLoader","domain","ErrorPageGlobal","homeUrl","organization","globalProps","name","FormikForm","formikProps","initialValues","validationSchema","onSubmit","_ref2","isValid","dirty","FormikInput","label","type","FormikActionBlock","submitButtonProps","disabled"],"mappings":"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"}
|
package/dist/v2/Permissions.js
CHANGED
|
@@ -7,7 +7,7 @@ import '@bigbinary/neeto-cist';
|
|
|
7
7
|
import '@bigbinary/neeto-commons-frontend/v2/constants';
|
|
8
8
|
import 'ramda';
|
|
9
9
|
import 'react-i18next';
|
|
10
|
-
export { P as default } from '../Permissions-
|
|
10
|
+
export { P as default } from '../Permissions-DIdoAJlu.js';
|
|
11
11
|
import 'react/jsx-runtime';
|
|
12
12
|
import '../inject-css-C2dztUxs.js';
|
|
13
13
|
//# sourceMappingURL=Permissions.js.map
|
package/dist/v2/Profile.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import _slicedToArray from '@babel/runtime/helpers/slicedToArray';
|
|
2
2
|
import { useRef, useCallback, useEffect, memo, useState } from 'react';
|
|
3
|
-
import { Spinner, Sheet, Label,
|
|
3
|
+
import { Spinner, Sheet, Label, Typography, Avatar, Button } from '@bigbinary/neeto-atoms';
|
|
4
4
|
import MoreDropdown from '@bigbinary/neeto-molecules/v2/MoreDropdown';
|
|
5
5
|
import { useTranslation } from 'react-i18next';
|
|
6
6
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
@@ -18,7 +18,7 @@ import { isNotNil, isNil, is, trim } from 'ramda';
|
|
|
18
18
|
import { toast } from 'sonner';
|
|
19
19
|
import { D as DATE_FORMAT_OPTIONS, T as TIME_FORMAT_OPTIONS } from '../constants-CXdiW8NZ.js';
|
|
20
20
|
import { u as useFetchProfile, a as useUpdateProfileMutation } from '../useProfileApi-Dkt6sE5p.js';
|
|
21
|
-
import { u as useCountries, P as ProfileImage } from '../ProfileImage-
|
|
21
|
+
import { u as useCountries, P as ProfileImage } from '../ProfileImage-Ca02-i_d.js';
|
|
22
22
|
import { t } from 'i18next';
|
|
23
23
|
import { globalProps } from '@bigbinary/neeto-commons-frontend/v2/initializers';
|
|
24
24
|
import * as yup from 'yup';
|
|
@@ -101,13 +101,8 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
101
101
|
countryId = _user$countryId === void 0 ? "" : _user$countryId,
|
|
102
102
|
_user$timeFormat = user.timeFormat,
|
|
103
103
|
timeFormat = _user$timeFormat === void 0 ? TIME_FORMAT_OPTIONS[0].value : _user$timeFormat,
|
|
104
|
-
_user$isOwner = user.isOwner,
|
|
105
|
-
isOwner = _user$isOwner === void 0 ? false : _user$isOwner,
|
|
106
|
-
_user$timezoneChangeE = user.timezoneChangeEnabled,
|
|
107
|
-
timezoneChangeEnabled = _user$timezoneChangeE === void 0 ? true : _user$timezoneChangeE,
|
|
108
104
|
_user$language = user.language,
|
|
109
105
|
language = _user$language === void 0 ? "" : _user$language;
|
|
110
|
-
var isTimezoneFieldDisabled = !isOwner && !timezoneChangeEnabled;
|
|
111
106
|
var setFieldValueRef = useRef(null);
|
|
112
107
|
var _useCountries = useCountries(),
|
|
113
108
|
countryDropdownOptions = _useCountries.countryDropdownOptions,
|
|
@@ -128,11 +123,10 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
128
123
|
onChange: function onChange(_ref2) {
|
|
129
124
|
var main = _ref2.main;
|
|
130
125
|
return setFieldValueRef.current("timeZone", main);
|
|
131
|
-
}
|
|
132
|
-
disabled: isTimezoneFieldDisabled
|
|
126
|
+
}
|
|
133
127
|
});
|
|
134
128
|
}
|
|
135
|
-
}, [timeZone, timeFormat
|
|
129
|
+
}, [timeZone, timeFormat]);
|
|
136
130
|
var initialFormValues = {
|
|
137
131
|
firstName: firstName,
|
|
138
132
|
lastName: lastName,
|
|
@@ -298,11 +292,9 @@ var ChangeProfile = function ChangeProfile(_ref) {
|
|
|
298
292
|
children: " *"
|
|
299
293
|
})]
|
|
300
294
|
}), /*#__PURE__*/jsx("div", {
|
|
295
|
+
className: "w-full grow",
|
|
301
296
|
"data-testid": "ntm-profile-time-zone-select",
|
|
302
|
-
ref: timezoneRef
|
|
303
|
-
className: cn("w-full grow", {
|
|
304
|
-
"pointer-events-none bg-muted": isTimezoneFieldDisabled
|
|
305
|
-
})
|
|
297
|
+
ref: timezoneRef
|
|
306
298
|
}), touched.timeZone && errors.timeZone && /*#__PURE__*/jsx(Typography, {
|
|
307
299
|
color: "destructive",
|
|
308
300
|
variant: "caption",
|