@bigbinary/neeto-team-members-frontend 5.0.29 → 5.0.31
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/ActionBlock-C9Iy0jGZ.js +53 -0
- package/dist/ActionBlock-C9Iy0jGZ.js.map +1 -0
- package/dist/ActionBlock-jgw1N-As.js +46 -0
- package/dist/ActionBlock-jgw1N-As.js.map +1 -0
- package/dist/Groups.js +1 -0
- package/dist/Groups.js.map +1 -1
- package/dist/InviteLinkError-AphtWLhe.js +63 -0
- package/dist/InviteLinkError-AphtWLhe.js.map +1 -0
- package/dist/InviteLinkError-C6OLGrD0.js +41 -0
- package/dist/InviteLinkError-C6OLGrD0.js.map +1 -0
- package/dist/ManageMember.js +1 -0
- package/dist/ManageMember.js.map +1 -1
- package/dist/MembersInvite.js +1 -38
- package/dist/MembersInvite.js.map +1 -1
- package/dist/Permissions-3L2jJkiY.js +233 -0
- package/dist/Permissions-3L2jJkiY.js.map +1 -0
- package/dist/Permissions-CpmpfRk1.js +244 -0
- package/dist/Permissions-CpmpfRk1.js.map +1 -0
- package/dist/Roles.js +3 -1398
- package/dist/Roles.js.map +1 -1
- package/dist/RolesRadioGroup-fBmS68cW.js +393 -0
- package/dist/RolesRadioGroup-fBmS68cW.js.map +1 -0
- package/dist/RolesRadioGroup-tSNC-Wtu.js +352 -0
- package/dist/RolesRadioGroup-tSNC-Wtu.js.map +1 -0
- package/dist/Select-CshPoN2b.js +119 -0
- package/dist/Select-CshPoN2b.js.map +1 -0
- package/dist/Select-DZ56UG-l.js +109 -0
- package/dist/Select-DZ56UG-l.js.map +1 -0
- package/dist/TeamMembers.js +1 -0
- package/dist/TeamMembers.js.map +1 -1
- package/dist/cjs/Groups.js +1 -0
- package/dist/cjs/Groups.js.map +1 -1
- package/dist/cjs/ManageMember.js +1 -0
- package/dist/cjs/ManageMember.js.map +1 -1
- package/dist/cjs/MembersInvite.js +2 -39
- package/dist/cjs/MembersInvite.js.map +1 -1
- package/dist/cjs/Roles.js +6 -1402
- package/dist/cjs/Roles.js.map +1 -1
- package/dist/cjs/TeamMembers.js +1 -0
- package/dist/cjs/TeamMembers.js.map +1 -1
- package/dist/cjs/index.js +3 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/utils.js +3 -512
- package/dist/cjs/utils.js.map +1 -1
- package/dist/cjs/v2/Groups.js +781 -0
- package/dist/cjs/v2/Groups.js.map +1 -0
- package/dist/cjs/v2/ManageMember.js +49 -0
- package/dist/cjs/v2/ManageMember.js.map +1 -0
- package/dist/cjs/v2/MembersDropdown.js +200 -0
- package/dist/cjs/v2/MembersDropdown.js.map +1 -0
- package/dist/cjs/v2/MembersInvite.js +270 -0
- package/dist/cjs/v2/MembersInvite.js.map +1 -0
- package/dist/cjs/v2/Permissions.js +19 -0
- package/dist/cjs/v2/Permissions.js.map +1 -0
- package/dist/cjs/v2/Profile.js +686 -0
- package/dist/cjs/v2/Profile.js.map +1 -0
- package/dist/cjs/v2/Roles.js +1258 -0
- package/dist/cjs/v2/Roles.js.map +1 -0
- package/dist/cjs/v2/RolesRadioGroup.js +26 -0
- package/dist/cjs/v2/RolesRadioGroup.js.map +1 -0
- package/dist/cjs/v2/TeamMembers.js +947 -0
- package/dist/cjs/v2/TeamMembers.js.map +1 -0
- package/dist/cjs/v2/TeamsAndMembersDropdown.js +438 -0
- package/dist/cjs/v2/TeamsAndMembersDropdown.js.map +1 -0
- package/dist/cjs/v2/TeamsDropdown.js +112 -0
- package/dist/cjs/v2/TeamsDropdown.js.map +1 -0
- package/dist/cjs/v2/constants.js +28 -0
- package/dist/cjs/v2/constants.js.map +1 -0
- package/dist/cjs/v2/hooks.js +33 -0
- package/dist/cjs/v2/hooks.js.map +1 -0
- package/dist/cjs/v2/utils.js +34 -0
- package/dist/cjs/v2/utils.js.map +1 -0
- package/dist/constants-B1L6arSR.js +49 -0
- package/dist/constants-B1L6arSR.js.map +1 -0
- package/dist/constants-CMNbKvoF.js +61 -0
- package/dist/constants-CMNbKvoF.js.map +1 -0
- package/dist/index-BkEJugj1.js +184 -0
- package/dist/index-BkEJugj1.js.map +1 -0
- package/dist/index-C6ph58Vg.js +169 -0
- package/dist/index-C6ph58Vg.js.map +1 -0
- package/dist/index-DFIYLo4H.js +1334 -0
- package/dist/index-DFIYLo4H.js.map +1 -0
- package/dist/index-DXwn-_HJ.js +1309 -0
- package/dist/index-DXwn-_HJ.js.map +1 -0
- package/dist/index-DeYRFiJy.js +119 -0
- package/dist/index-DeYRFiJy.js.map +1 -0
- package/dist/index-DqqXniGT.js +126 -0
- package/dist/index-DqqXniGT.js.map +1 -0
- package/dist/index-Dus0cbgo.js +1407 -0
- package/dist/index-Dus0cbgo.js.map +1 -0
- package/dist/index-ureO6U2w.js +1401 -0
- package/dist/index-ureO6U2w.js.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/pluralize-BoSEafiC.js +514 -0
- package/dist/pluralize-BoSEafiC.js.map +1 -0
- package/dist/pluralize-CFlSRsRn.js +516 -0
- package/dist/pluralize-CFlSRsRn.js.map +1 -0
- package/dist/queryClient-B-JFya8X.js +16 -0
- package/dist/queryClient-B-JFya8X.js.map +1 -0
- package/dist/queryClient-BncpekSV.js +14 -0
- package/dist/queryClient-BncpekSV.js.map +1 -0
- package/dist/useCountries-CQdvJz0R.js +249 -0
- package/dist/useCountries-CQdvJz0R.js.map +1 -0
- package/dist/useCountries-DePOPtue.js +235 -0
- package/dist/useCountries-DePOPtue.js.map +1 -0
- package/dist/useTeamsApi-CWp4G7JZ.js +179 -0
- package/dist/useTeamsApi-CWp4G7JZ.js.map +1 -0
- package/dist/useTeamsApi-Ch5sHR2_.js +197 -0
- package/dist/useTeamsApi-Ch5sHR2_.js.map +1 -0
- package/dist/utils.js +2 -511
- package/dist/utils.js.map +1 -1
- package/dist/v2/Groups.js +749 -0
- package/dist/v2/Groups.js.map +1 -0
- package/dist/v2/ManageMember.js +43 -0
- package/dist/v2/ManageMember.js.map +1 -0
- package/dist/v2/MembersDropdown.js +193 -0
- package/dist/v2/MembersDropdown.js.map +1 -0
- package/dist/v2/MembersInvite.js +242 -0
- package/dist/v2/MembersInvite.js.map +1 -0
- package/dist/v2/Permissions.js +13 -0
- package/dist/v2/Permissions.js.map +1 -0
- package/dist/v2/Profile.js +656 -0
- package/dist/v2/Profile.js.map +1 -0
- package/dist/v2/Roles.js +1242 -0
- package/dist/v2/Roles.js.map +1 -0
- package/dist/v2/RolesRadioGroup.js +20 -0
- package/dist/v2/RolesRadioGroup.js.map +1 -0
- package/dist/v2/TeamMembers.js +936 -0
- package/dist/v2/TeamMembers.js.map +1 -0
- package/dist/v2/TeamsAndMembersDropdown.js +430 -0
- package/dist/v2/TeamsAndMembersDropdown.js.map +1 -0
- package/dist/v2/TeamsDropdown.js +106 -0
- package/dist/v2/TeamsDropdown.js.map +1 -0
- package/dist/v2/constants.js +21 -0
- package/dist/v2/constants.js.map +1 -0
- package/dist/v2/hooks.js +29 -0
- package/dist/v2/hooks.js.map +1 -0
- package/dist/v2/utils.js +30 -0
- package/dist/v2/utils.js.map +1 -0
- package/dist/withReactQuery-CSuiy5RK.js +20 -0
- package/dist/withReactQuery-CSuiy5RK.js.map +1 -0
- package/dist/withReactQuery-DvSkXhEx.js +26 -0
- package/dist/withReactQuery-DvSkXhEx.js.map +1 -0
- package/package.json +25 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Roles.js","sources":["../../app/javascript/src/components/v2/apis/permissions.js","../../app/javascript/src/components/v2/hooks/roles/usePermissionsApi.js","../../app/javascript/src/components/v2/Roles/Header/utils.js","../../app/javascript/src/components/v2/Roles/AddRoleButton.jsx","../../app/javascript/src/components/v2/Roles/Header/index.jsx","../../app/javascript/src/components/v2/Roles/constants.js","../../app/javascript/src/components/v2/Roles/ManageRoles.jsx","../../app/javascript/src/components/v2/Roles/Table/constants.js","../../app/javascript/src/components/v2/Roles/Table/utils.js","../../app/javascript/src/components/v2/Roles/Table/Row.jsx","../../app/javascript/src/components/v2/common/utils.js","../../app/javascript/src/components/v2/Roles/Table/Sidebar/utils.jsx","../../app/javascript/src/components/v2/Roles/Table/TableHeader.jsx","../../app/javascript/src/components/v2/Roles/Delete.jsx","../../app/javascript/src/components/v2/Roles/Table/Columns.jsx","../../app/javascript/src/components/v2/Roles/Table/Sidebar/ToggleDropdown.jsx","../../app/javascript/src/components/v2/Roles/Table/Sidebar/index.jsx","../../app/javascript/src/components/v2/Roles/Table/useRowHeightSync.js","../../app/javascript/src/components/v2/Roles/Table/index.jsx","../../app/javascript/src/components/v2/Roles/index.jsx"],"sourcesContent":["// eslint-disable-next-line @bigbinary/neeto/no-axios-import-outside-apis\nimport axios from \"axios\";\n\nimport { BASE_URL } from \"v2/common/constants\";\n\nconst fetch = () => axios.get(`${BASE_URL}/permissions`);\n\nconst permissionsApi = { fetch };\n\nexport default permissionsApi;\n","import { useQuery } from \"@tanstack/react-query\";\n\nimport permissionsApi from \"v2/apis/permissions\";\nimport { QUERY_KEYS } from \"v2/common/constants\";\n\nconst useFetchPermissions = (options = {}) =>\n useQuery({\n queryKey: [QUERY_KEYS.PERMISSIONS],\n queryFn: permissionsApi.fetch,\n select: response => response?.permissions,\n ...options,\n });\n\nexport { useFetchPermissions };\n","import { t } from \"i18next\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { taxonomies } from \"neetocommons/initializers\";\n\nexport const renderSearchProps = () => ({\n \"data-testid\": \"ntm-search-roles-input\",\n placeholder: t(\"neetoTeamMembers.placeholders.searchRole\", PLURAL),\n});\n\nexport const renderBreadcrumbs = breadcrumbs =>\n breadcrumbs ?? [{ text: taxonomies.member.plural, link: \"/members\" }];\n","import { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { useTranslation } from \"react-i18next\";\n\nconst AddRoleButton = ({ config, onClick }) => {\n const { t } = useTranslation();\n\n const isCreatePermissionGranted = config.permissions.create;\n\n return (\n <Tooltip\n position=\"bottom\"\n content={\n !isCreatePermissionGranted\n ? t(\"neetoTeamMembers.tooltips.noPermissionToAddRole\")\n : null\n }\n >\n <span>\n <Button\n {...{ onClick }}\n data-testid=\"ntm-add-role-button\"\n disabled={!isCreatePermissionGranted}\n >\n {t(\"neetoTeamMembers.labels.addNewRole\")}\n </Button>\n </span>\n </Tooltip>\n );\n};\n\nexport default AddRoleButton;\n","import { Button, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport { isNotEmpty } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport NeetoHeader from \"neetomolecules/v2/Header\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { renderBreadcrumbs, renderSearchProps } from \"./utils\";\n\nimport AddRoleButton from \"../AddRoleButton\";\n\nconst Header = ({\n config,\n handleReset,\n handleSubmit,\n isDirty = false,\n setIsNewRolePaneOpen,\n roles,\n}) => {\n const { t } = useTranslation();\n\n const isUpdatePermissionGranted = config.permissions.update;\n\n return (\n <NeetoHeader\n breadcrumbs={renderBreadcrumbs(config?.header?.breadcrumbs)}\n className=\"ntm-roles-header\"\n searchProps={isNotEmpty(roles) ? renderSearchProps() : null}\n title={t(\"neetoTeamMembers.common.role\", PLURAL)}\n titleHelpPopoverProps={config?.header?.titleHelpPopoverProps ?? {}}\n actionBlock={\n isDirty ? (\n <div className=\"flex items-center gap-2\">\n <Tooltip\n position=\"bottom\"\n content={\n !isUpdatePermissionGranted\n ? t(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\")\n : null\n }\n >\n <span>\n <Button\n data-testid=\"ntm-role-submission-button\"\n disabled={!isUpdatePermissionGranted}\n type=\"submit\"\n onClick={handleSubmit}\n >\n {t(\"neetoTeamMembers.buttons.saveChanges\")}\n </Button>\n </span>\n </Tooltip>\n <Button\n data-testid=\"ntm-role-reset-button\"\n type=\"reset\"\n variant=\"ghost\"\n onClick={handleReset}\n >\n {t(\"neetoTeamMembers.buttons.reset\")}\n </Button>\n </div>\n ) : (\n <AddRoleButton\n {...{ config }}\n onClick={() => setIsNewRolePaneOpen(true)}\n />\n )\n }\n />\n );\n};\n\nexport default Header;\n","import { t } from \"i18next\";\nimport { string, object } from \"yup\";\n\nexport const ROLE_NAME_MAX_LENGTH = 40;\n\nexport const ROLE_DESCRIPTION_MAX_LENGTH = 255;\n\nexport const ADD_ROLE_FORM_VALIDATION_SCHEMA = object({\n name: string()\n .trim()\n .max(\n ROLE_NAME_MAX_LENGTH,\n // @ts-ignore\n t(\"neetoTeamMembers.validations.nameLimitExceeded\", {\n limit: ROLE_NAME_MAX_LENGTH,\n })\n )\n // @ts-ignore\n .required(t(\"neetoTeamMembers.validations.enterRoleName\")),\n description: string()\n .nullable()\n .trim()\n .max(\n ROLE_DESCRIPTION_MAX_LENGTH,\n // @ts-ignore\n t(\"neetoTeamMembers.validations.descriptionLimitExceeded\", {\n limit: ROLE_DESCRIPTION_MAX_LENGTH,\n })\n ),\n});\n\nexport const ADD_ROLE_FORM_INITIAL_VALUES = {\n name: \"\",\n description: \"\",\n permissionIds: [],\n};\n\nexport const ROLE_FORMIK_PROPS = {\n validationSchema: ADD_ROLE_FORM_VALIDATION_SCHEMA,\n};\n","import { useEffect, useRef } from \"react\";\n\nimport { Sheet } from \"@bigbinary/neeto-atoms\";\nimport {\n Input as FormikInput,\n Textarea as FormikTextarea,\n} from \"@bigbinary/neeto-atoms/formik\";\nimport { hyphenate, isPresent } from \"neetocist\";\nimport { useTranslation } from \"react-i18next\";\n\nimport { ADMIN_ROLES } from \"v2/common/constants\";\nimport { FormikActionBlock, FormikForm } from \"v2/common/formik\";\nimport ScrollToErrorField from \"v2/common/ScrollToErrorField\";\nimport { useCreateRole, useUpdateRole } from \"v2/hooks/roles/useRolesApi\";\n\nimport {\n ADD_ROLE_FORM_INITIAL_VALUES,\n ROLE_DESCRIPTION_MAX_LENGTH,\n ROLE_FORMIK_PROPS,\n ROLE_NAME_MAX_LENGTH,\n} from \"./constants\";\nimport Permissions from \"./Permissions\";\n\nconst ManageRoles = ({\n config,\n isOpen = false,\n onClose,\n permissions = [],\n selectedRole = {},\n scrollTo = null,\n}) => {\n const { t } = useTranslation();\n const formReference = useRef(null);\n const inputReference = useRef(null);\n const lastScrollKeyRef = useRef(null);\n const { mutate: createRole, isPending: isCreatingRole } = useCreateRole({\n onSuccess: onClose,\n });\n\n const { mutate: updateRole, isPending: isUpdatingRole } = useUpdateRole({\n onSuccess: onClose,\n });\n const isEdit = isPresent(selectedRole);\n const isSubmitting = isCreatingRole || isUpdatingRole;\n\n const handleSubmit = formValues => {\n const payload = {\n organizationRole: {\n ...formValues,\n name: formValues.name.trim(),\n description: formValues.description.trim(),\n },\n };\n\n isEdit ? updateRole({ payload, id: selectedRole.id }) : createRole(payload);\n };\n\n const initialValues = isEdit\n ? {\n ...selectedRole,\n permissionIds: selectedRole.permissionIds?.sort(),\n description: selectedRole.description || \"\",\n }\n : ADD_ROLE_FORM_INITIAL_VALUES;\n\n const formikProps = {\n ...ROLE_FORMIK_PROPS,\n initialValues,\n onSubmit: handleSubmit,\n };\n\n const isReadOnly = selectedRole.kind === \"system\";\n const isDisabled = ADMIN_ROLES.includes(selectedRole.name) && isReadOnly;\n\n useEffect(() => {\n const activeClassName = \"ntm-roles-permission-category-card--active\";\n const blinkClassName = \"ntm-roles-permission__card--blink\";\n\n const getScrollableParent = node => {\n let current = node?.parentElement;\n while (current) {\n const style = getComputedStyle(current);\n const overflowY = style.overflowY;\n const isScrollable =\n (overflowY === \"auto\" || overflowY === \"scroll\") &&\n current.scrollHeight > current.clientHeight;\n if (isScrollable) return current;\n current = current.parentElement;\n }\n\n return document.scrollingElement || document.documentElement;\n };\n\n if (!isOpen) {\n lastScrollKeyRef.current = null;\n document\n .querySelectorAll(`.${activeClassName}`)\n .forEach(node => node.classList.remove(activeClassName));\n\n document\n .querySelectorAll(`.${blinkClassName}`)\n .forEach(node => node.classList.remove(blinkClassName));\n\n return () => {};\n }\n\n if (!scrollTo) return () => {};\n\n const key = `${selectedRole?.id ?? \"new\"}:${scrollTo.type}:${\n scrollTo.permissionId ?? scrollTo.category ?? \"\"\n }`;\n if (lastScrollKeyRef.current === key) return () => {};\n lastScrollKeyRef.current = key;\n\n let timeoutId;\n let highlightTimeoutId;\n let blinkTimeoutId;\n let scrollEndTimeoutId;\n let attempts = 0;\n let highlightedCard = null;\n let blinkedPermissionCard = null;\n\n const attemptScroll = () => {\n attempts += 1;\n const elementId =\n scrollTo.type === \"permission\"\n ? `ntm-role-permission-${scrollTo.permissionId}`\n : `ntm-role-permission-category-${hyphenate(scrollTo.category || \"\")}`;\n\n const el = document.getElementById(elementId);\n if (el) {\n el.scrollIntoView({ behavior: \"smooth\", block: \"center\" });\n\n const categoryCard =\n scrollTo.type === \"permission\"\n ? el.closest(\".ntm-roles-permission-category-card\")\n : el.querySelector(\".ntm-roles-permission-category-card\");\n\n const scrollContainer = getScrollableParent(el);\n\n const startHighlight = () => {\n if (!categoryCard) return;\n\n document\n .querySelectorAll(`.${activeClassName}`)\n .forEach(node => node.classList.remove(activeClassName));\n\n categoryCard.classList.add(activeClassName);\n highlightedCard = categoryCard;\n\n clearTimeout(highlightTimeoutId);\n highlightTimeoutId = setTimeout(() => {\n categoryCard.classList.remove(activeClassName);\n }, 3000);\n };\n\n if (scrollTo.type === \"permission\") {\n const animationDurationMs = 600;\n const animationIterations = 3;\n const totalDurationMs =\n animationDurationMs * animationIterations + 100;\n\n const startBlink = () => {\n document\n .querySelectorAll(`.${blinkClassName}`)\n .forEach(node => node.classList.remove(blinkClassName));\n\n el.classList.remove(blinkClassName);\n // Restart animation if the class was already present\n void el.offsetWidth;\n el.classList.add(blinkClassName);\n blinkedPermissionCard = el;\n\n clearTimeout(blinkTimeoutId);\n blinkTimeoutId = setTimeout(() => {\n el.classList.remove(blinkClassName);\n }, totalDurationMs);\n };\n\n // Start animation only after scroll settles (or after a max wait).\n let started = false;\n const maxWaitTimeoutId = setTimeout(() => {\n if (started) return;\n started = true;\n startHighlight();\n startBlink();\n scrollContainer.removeEventListener(\"scroll\", scheduleStart);\n }, 1200);\n\n const scheduleStart = () => {\n clearTimeout(scrollEndTimeoutId);\n scrollEndTimeoutId = setTimeout(() => {\n if (started) return;\n started = true;\n startHighlight();\n startBlink();\n scrollContainer.removeEventListener(\"scroll\", scheduleStart);\n clearTimeout(maxWaitTimeoutId);\n }, 150);\n };\n\n scrollContainer.addEventListener(\"scroll\", scheduleStart, {\n passive: true,\n });\n scheduleStart();\n } else {\n // Highlight should also start only after scroll settles.\n let started = false;\n const maxWaitTimeoutId = setTimeout(() => {\n if (started) return;\n started = true;\n startHighlight();\n scrollContainer.removeEventListener(\"scroll\", scheduleStart);\n }, 1200);\n\n const scheduleStart = () => {\n clearTimeout(scrollEndTimeoutId);\n scrollEndTimeoutId = setTimeout(() => {\n if (started) return;\n started = true;\n startHighlight();\n scrollContainer.removeEventListener(\"scroll\", scheduleStart);\n clearTimeout(maxWaitTimeoutId);\n }, 150);\n };\n\n scrollContainer.addEventListener(\"scroll\", scheduleStart, {\n passive: true,\n });\n scheduleStart();\n }\n\n return;\n }\n\n // Sheet content can mount after open animation; retry briefly.\n if (attempts < 5) timeoutId = setTimeout(attemptScroll, 100);\n };\n\n timeoutId = setTimeout(attemptScroll, 0);\n\n return () => {\n clearTimeout(timeoutId);\n clearTimeout(highlightTimeoutId);\n clearTimeout(blinkTimeoutId);\n clearTimeout(scrollEndTimeoutId);\n highlightedCard?.classList.remove(activeClassName);\n blinkedPermissionCard?.classList.remove(blinkClassName);\n };\n }, [isOpen, scrollTo, selectedRole?.id]);\n\n return (\n <Sheet {...{ isOpen, onClose }} size=\"large\">\n <Sheet.Header>\n <Sheet.Title data-testid=\"ntm-add-role-title\">\n {isEdit\n ? t(\"neetoTeamMembers.labels.editRole\")\n : t(\"neetoTeamMembers.labels.addNewRole\")}\n </Sheet.Title>\n </Sheet.Header>\n <FormikForm\n {...{ formikProps }}\n className=\"flex min-h-0 flex-1 flex-col\"\n ref={formReference}\n >\n {({ dirty }) => (\n <>\n <ScrollToErrorField formRef={formReference} />\n <Sheet.Body>\n <div className=\"mb-6 w-full space-y-6\">\n <div className=\"space-y-4\">\n <FormikInput\n required\n data-testid=\"ntm-add-role-name-text-field\"\n label={t(\"neetoTeamMembers.common.name\")}\n maxLength={ROLE_NAME_MAX_LENGTH}\n name=\"name\"\n placeholder={t(\"neetoTeamMembers.placeholders.enterName\")}\n readOnly={isReadOnly}\n ref={!isEdit ? inputReference : undefined}\n />\n <FormikTextarea\n data-testid=\"ntm-add-role-description-text-field\"\n label={t(\"neetoTeamMembers.common.description\")}\n maxLength={ROLE_DESCRIPTION_MAX_LENGTH}\n name=\"description\"\n readOnly={isDisabled}\n placeholder={t(\n \"neetoTeamMembers.placeholders.enterDescription\"\n )}\n />\n </div>\n <Permissions\n {...{ isDisabled, permissions }}\n permissionRelationConfig={config?.permissionRelation ?? {}}\n />\n </div>\n </Sheet.Body>\n <Sheet.Footer>\n <FormikActionBlock\n {...{ isSubmitting }}\n className=\"flex gap-2\"\n cancelButtonProps={{\n \"data-testid\": \"ntm-add-role-cancel-button\",\n onClick: onClose,\n }}\n submitButtonProps={{\n \"data-testid\": \"ntm-add-role-submit-button\",\n disabled: isSubmitting || isDisabled || !dirty,\n }}\n />\n </Sheet.Footer>\n </>\n )}\n </FormikForm>\n </Sheet>\n );\n};\n\nexport default ManageRoles;\n","export const DEFAULT_MANAGE_ROLE_VALUES = {\n isDelete: false,\n isEdit: false,\n selectedRole: {},\n scrollTo: null,\n};\n\nexport const MENU_ITEMS = { EDIT: \"edit\", DELETE: \"delete\" };\n\nexport const SIDEBAR_CELL_SELECTOR = \".ntm-roles-table-sidebar__list-item-cell\";\n\nexport const COLUMN_ROW_SELECTOR =\n \".ntm-roles-table__rows > div[data-testid], .ntm-roles-table__empty-row\";\n","import { t } from \"i18next\";\nimport { _findBy } from \"neetocist\";\nimport { not } from \"ramda\";\n\nimport { MENU_ITEMS } from \"./constants\";\n\nconst deepClone = object => {\n if (!object || true === object) {\n //this also handles boolean as true and false\n return object;\n }\n const objectType = typeof object;\n if (\"number\" === objectType || \"string\" === objectType) {\n // add your immutables here\n return object;\n }\n\n let result = null;\n if (Array.isArray(object)) {\n result = [];\n } else if (!object.constructor) {\n result = {};\n } else {\n result = new object.constructor();\n }\n\n if (object instanceof Map) {\n for (const key of object.keys()) {\n result.set(key, deepClone(object.get(key)));\n }\n }\n\n Object.keys(object).forEach(key => {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n result[key] = deepClone(object[key]);\n }\n });\n\n return result;\n};\n\nexport const renderRolesTooltipContent = roleName =>\n Object.is(roleName, \"Admin\") || Object.is(roleName, \"Owner\")\n ? t(\"neetoTeamMembers.tooltips.adminMustHaveAccess\", { roleName })\n : t(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\");\n\nexport const removeDuplicates = array => [...new Set(array)];\n\nexport const updatePermissionVisibility = (categoryName, permissions) => {\n const category = permissions.get(categoryName);\n const isPermissionVisible = category.get(\"isPermissionVisible\");\n category.set(\"isPermissionVisible\", !isPermissionVisible);\n\n return new Map(permissions.set(categoryName, category));\n};\n\nexport const filterPermissionsBySearch = (searchTerm, permissionGroups) => {\n const newValue = deepClone(permissionGroups);\n newValue.forEach(value => {\n const permissions = value.get(\"permissions\");\n\n const filteredPermissions = permissions.filter(permission =>\n permission?.description\n ?.toLowerCase()\n ?.trim()\n ?.includes(searchTerm.toLowerCase().trim())\n );\n value.set(\"permissions\", filteredPermissions);\n });\n\n return newValue;\n};\n\nexport const getMenuItems = ({\n isDeletePermissionGranted,\n isUpdatePermissionGranted,\n role,\n setManageRole,\n isSystemRole,\n}) => [\n {\n key: MENU_ITEMS.EDIT,\n className: \"ntm-dropdown__button\",\n \"data-testid\": \"ntm-roles-table-edit-role-button\",\n isDisabled: not(isUpdatePermissionGranted),\n size: \"small\",\n tooltipProps: {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToEditRoles\"),\n disabled: isUpdatePermissionGranted,\n position: \"left\",\n },\n label: t(\"neetoTeamMembers.common.edit\"),\n onClick: () =>\n setManageRole({ isEdit: true, selectedRole: role, scrollTo: null }),\n },\n {\n key: MENU_ITEMS.DELETE,\n className: \"ntm-dropdown__button\",\n \"data-testid\": \"ntm-roles-table-delete-role-button\",\n isDisabled: not(isDeletePermissionGranted),\n size: \"small\",\n isVisible: not(isSystemRole),\n tooltipProps: {\n content: t(\"neetoTeamMembers.tooltips.noPermissionToRemoveRoles\"),\n disabled: isDeletePermissionGranted,\n position: \"left\",\n },\n label: t(\"neetoTeamMembers.common.delete\"),\n onClick: () =>\n setManageRole({ isDelete: true, selectedRole: role, scrollTo: null }),\n },\n];\n\nexport const getRowClientHeight = permission => {\n const sidebarItems = Array.from(\n document.querySelectorAll(\n \".ntm-roles-table-sidebar__list-item:not(.ntm-roles-table-sidebar__list-item--highlighted)\"\n )\n );\n\n const sidebarItem = _findBy(\n { dataset: { name: permission?.description } },\n sidebarItems\n );\n\n return sidebarItem?.clientHeight;\n};\n","import { Checkbox, Tooltip } from \"@bigbinary/neeto-atoms\";\nimport classnames from \"classnames\";\nimport { noop, hyphenate } from \"neetocist\";\nimport { __, identical, includes, map, prop } from \"ramda\";\n\nimport { renderRolesTooltipContent } from \"./utils\";\n\nconst Row = ({\n allPermissionsOfCategory = null,\n category = \"\",\n config,\n permission = null,\n roles,\n setManageRole = noop,\n}) => {\n const isUpdatePermissionGranted = config.permissions.update;\n\n const permissions = allPermissionsOfCategory?.get(\"permissions\") || [];\n const allPermissionIdsOfCategory = map(prop(\"id\"), permissions);\n\n const handleSubmit = role => {\n const scrollTo = permission?.id\n ? { type: \"permission\", permissionId: permission.id }\n : { type: \"category\", category };\n\n setManageRole({ isEdit: true, selectedRole: role, scrollTo });\n };\n\n const isCheckboxChecked = role =>\n !allPermissionsOfCategory\n ? includes(permission?.id, role.permissionIds)\n : allPermissionIdsOfCategory.every(includes(__, role.permissionIds));\n\n return (\n <div\n className={classnames(\"ntm-roles-table__row\", {\n \"ntm-roles-table__row--highlighted\": !!allPermissionsOfCategory,\n })}\n >\n {roles.map(role => (\n <div\n className=\"ntm-roles-table__cell\"\n data-testid={`${hyphenate(role.name)}-role-cell`}\n key={role.id}\n >\n <Tooltip\n position=\"top\"\n content={\n !(\n isUpdatePermissionGranted &&\n !identical(role.name, \"Admin\") &&\n !identical(role.name, \"Owner\")\n )\n ? renderRolesTooltipContent(role.name)\n : null\n }\n >\n <div className=\"absolute z-10 m-auto size-4\">\n <Checkbox\n checked={isCheckboxChecked(role)}\n className=\"ntm-roles-table-cell__checkbox z-10\"\n data-testid=\"ntm-roles-table-permission-checkbox\"\n disabled={\n identical(role.name, \"Admin\") ||\n identical(role.name, \"Owner\") ||\n !isUpdatePermissionGranted\n }\n onCheckedChange={() => handleSubmit(role)}\n />\n </div>\n </Tooltip>\n </div>\n ))}\n </div>\n );\n};\n\nexport default Row;\n","export const isOverflown = ({\n clientWidth,\n clientHeight,\n scrollWidth,\n scrollHeight,\n}) => scrollHeight > clientHeight || scrollWidth > clientWidth;\n\nexport const getScrollBarWidth = () => {\n const innerElement = document.createElement(\"p\");\n innerElement.classList.add(\"ntm-scrollbar__inner\");\n\n const outerElement = document.createElement(\"div\");\n outerElement.classList.add(\"ntm-scrollbar__outer\");\n\n outerElement.appendChild(innerElement);\n document.body.appendChild(outerElement);\n\n const w1 = innerElement.offsetWidth;\n outerElement.style.overflow = \"scroll\";\n let w2 = innerElement.offsetWidth;\n if (w1 === w2) w2 = outerElement.clientWidth;\n\n document.body.removeChild(outerElement);\n\n return w1 - w2;\n};\n","import { Fragment } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { Info } from \"lucide-react\";\nimport HelpPopover from \"neetomolecules/v2/HelpPopover\";\nimport { pluck } from \"ramda\";\n\nimport { getScrollBarWidth } from \"v2/common/utils\";\n\nimport { ROLES_TABLE_CELL_HEIGHT_VARIABLE } from \"./constants\";\n\nconst getCurrentTableCellHeight = () =>\n parseInt(\n getComputedStyle(document.documentElement).getPropertyValue(\n ROLES_TABLE_CELL_HEIGHT_VARIABLE\n ),\n 10\n );\n\nexport const renderDescription = (\n permissions,\n filteredPermissions,\n permissionTooltip = {}\n) =>\n permissions?.map(({ id, name, description, children }) => {\n const tooltipContent = permissionTooltip[name];\n\n return (\n <Fragment key={id}>\n {filteredPermissions.includes(id) && (\n <div\n className=\"ntm-roles-table-sidebar__list-item flex min-h-[var(--ntm-roles-table-cell-height)] flex-row items-center gap-1 whitespace-normal break-words\"\n data-name={description}\n >\n <Typography\n className=\"text-[0.9375rem] font-medium leading-normal\"\n data-testid=\"ntm-permission-category-description\"\n >\n {description}\n </Typography>\n {tooltipContent && (\n <HelpPopover\n description={tooltipContent}\n icon={Info}\n size=\"default\"\n />\n )}\n </div>\n )}\n <div className=\"ntm-roles-table-sidebar__sub-blocks relative pl-6\">\n {renderDescription(children, filteredPermissions, permissionTooltip)}\n </div>\n </Fragment>\n );\n });\n\nexport const getSearchWrapperStyle = () => {\n const scrollBarWidth = getScrollBarWidth();\n\n document.documentElement.style.setProperty(\n \"--ntm-roles-table-default-scroll\",\n `${scrollBarWidth}px`\n );\n\n return { marginBottom: `${scrollBarWidth}px` };\n};\n\nexport const assignRolesTableCellHeight = () => {\n const sidebarItems = [\n ...document.getElementsByClassName(\"ntm-roles-table-sidebar__list-item\"),\n ];\n const clientHeights = pluck(\"clientHeight\", sidebarItems);\n const maxClientHeight = Math.max(...clientHeights);\n const currentTableCellHeight = getCurrentTableCellHeight();\n\n if (maxClientHeight > currentTableCellHeight) {\n document.documentElement.style.setProperty(\n ROLES_TABLE_CELL_HEIGHT_VARIABLE,\n `${maxClientHeight}px`\n );\n }\n};\n\nexport const getFilteredCategories = filteredGroupPermissions =>\n Array.from(filteredGroupPermissions?.keys() || []).filter(category => {\n const groupedPermissions = filteredGroupPermissions.get(category);\n const permissions = groupedPermissions.get(\"permissions\") || [];\n\n return permissions.length > 0;\n });\n","import { useEffect, useCallback, useRef, memo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { ScrollSyncPane } from \"@bigbinary/react-scroll-sync\";\nimport MoreDropdown from \"neetomolecules/v2/MoreDropdown\";\nimport { identical } from \"ramda\";\n\nimport { ADMIN_ROLES } from \"v2/common/constants\";\nimport { isOverflown } from \"v2/common/utils\";\n\nimport { getMenuItems } from \"./utils\";\n\nconst TableHeader = ({ config, roles, setManageRole, setIsScrollPresent }) => {\n const isUpdatePermissionGranted = config.permissions.update;\n const isDeletePermissionGranted = config.permissions.delete;\n\n const scrollSyncElement = useRef(null);\n\n const getOverflowStatus = useCallback(() => {\n if (!scrollSyncElement.current) return;\n\n const headerElement = scrollSyncElement.current.node;\n const isScrollBarPresent = isOverflown(headerElement);\n setIsScrollPresent(isScrollBarPresent);\n }, [setIsScrollPresent]);\n\n useEffect(() => {\n addEventListener(\"resize\", getOverflowStatus);\n\n return () => removeEventListener(\"resize\", getOverflowStatus);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(getOverflowStatus, [getOverflowStatus, scrollSyncElement, roles]);\n\n return (\n <ScrollSyncPane group=\"horizontal\" ref={scrollSyncElement}>\n <div\n className=\"ntm-roles-table__header\"\n data-testid=\"ntm-roles-table-header\"\n >\n {roles?.map((role, index) => {\n const isSystemRole = identical(\"system\", role.kind);\n const isAdminRole = ADMIN_ROLES.includes(role.name) && isSystemRole;\n\n return (\n <div className=\"ntm-roles-table__cell\" key={`ntm-roles-${index}`}>\n <div\n className=\"flex w-full items-center justify-between overflow-hidden\"\n data-testid=\"ntm-roles-table-role-header\"\n >\n <Typography\n className=\"w-full overflow-hidden text-ellipsis whitespace-nowrap text-center text-sm font-semibold leading-normal\"\n data-testid=\"ntm-roles-table-header-role-title\"\n >\n {role.name}\n </Typography>\n {!isAdminRole && (\n <MoreDropdown\n dropdownProps={{ autoWidth: true }}\n dropdownButtonProps={{\n className: \"m-0.5 shrink-0\",\n \"data-testid\":\n \"ntm-roles-table-header-role-dropdown-button\",\n }}\n menuItems={getMenuItems({\n isDeletePermissionGranted,\n isUpdatePermissionGranted,\n role,\n setManageRole,\n isSystemRole,\n })}\n />\n )}\n </div>\n </div>\n );\n })}\n </div>\n </ScrollSyncPane>\n );\n};\n\nexport default memo(TableHeader);\n","import { Alert } from \"@bigbinary/neeto-atoms\";\nimport { Trans, useTranslation } from \"react-i18next\";\n\nimport { useDestroyRole } from \"v2/hooks/roles/useRolesApi\";\n\nconst Delete = ({ isOpen, onClose, selectedRole, roles }) => {\n const { t } = useTranslation();\n const { mutate: deleteRole, isPending: isDeleting } = useDestroyRole({\n onSuccess: onClose,\n });\n\n const handleDelete = () => {\n const { id } = selectedRole;\n const payload = { newRoleId: roles.find(role => role.id !== id)?.id };\n deleteRole({ id, payload });\n };\n\n return (\n <Alert\n {...{ isOpen, onClose }}\n cancelButtonLabel={t(\"neetoTeamMembers.buttons.cancel\")}\n isSubmitting={isDeleting}\n submitButtonLabel={t(\"neetoTeamMembers.buttons.delete\")}\n title={t(\"neetoTeamMembers.labels.deleteRole\")}\n message={\n <Trans\n i18nKey=\"neetoTeamMembers.alerts.messages.deletingRole\"\n values={{ name: selectedRole?.name }}\n />\n }\n onSubmit={handleDelete}\n />\n );\n};\n\nexport default Delete;\n","import { useState, useMemo } from \"react\";\n\nimport { ScrollSyncPane } from \"@bigbinary/react-scroll-sync\";\nimport { hyphenate } from \"neetocist\";\n\nimport { DEFAULT_MANAGE_ROLE_VALUES } from \"./constants\";\nimport Row from \"./Row\";\nimport { getFilteredCategories } from \"./Sidebar/utils\";\nimport TableHeader from \"./TableHeader\";\n\nimport Delete from \"../Delete\";\nimport ManageRoles from \"../ManageRoles\";\n\nconst Columns = ({\n config,\n filteredGroupPermissions,\n filteredRoles,\n permissions,\n roles,\n setIsScrollPresent,\n}) => {\n const [manageRole, setManageRole] = useState(DEFAULT_MANAGE_ROLE_VALUES);\n\n const categories = useMemo(\n () => getFilteredCategories(filteredGroupPermissions),\n [filteredGroupPermissions]\n );\n\n const onClose = () => setManageRole(DEFAULT_MANAGE_ROLE_VALUES);\n\n return (\n <div className=\"ntm-roles-table__columns\">\n <TableHeader\n {...{ config, setIsScrollPresent, setManageRole }}\n roles={filteredRoles}\n />\n <ScrollSyncPane group={[\"horizontal\", \"vertical\"]}>\n <div className=\"ntm-roles-table__rows\">\n {categories.length === 0 ? (\n <div className=\"ntm-roles-table__empty-row\">\n <div className=\"ntm-roles-table__row\">\n <div className=\"ntm-roles-table__cell\">\n <div> </div>\n </div>\n </div>\n </div>\n ) : (\n categories.map((category, index) => {\n const groupedPermissions = filteredGroupPermissions.get(category);\n\n const isPermissionVisible = groupedPermissions.get(\n \"isPermissionVisible\"\n );\n const permissions = groupedPermissions.get(\"permissions\");\n\n return (\n <div\n data-testid={`${hyphenate(category)}-permission-card`}\n key={index}\n >\n <Row\n {...{ category, config, setManageRole }}\n allPermissionsOfCategory={groupedPermissions}\n roles={filteredRoles}\n />\n {isPermissionVisible &&\n permissions.map(permission => (\n <Row\n {...{ config, permission, setManageRole }}\n data-testid={`${hyphenate(permission)}-permission-row`}\n key={permission.id}\n roles={filteredRoles}\n />\n ))}\n </div>\n );\n })\n )}\n </div>\n </ScrollSyncPane>\n <ManageRoles\n {...{ config, onClose, permissions }}\n isOpen={manageRole.isEdit}\n scrollTo={manageRole.scrollTo}\n selectedRole={manageRole.selectedRole}\n />\n <Delete\n {...{ onClose, roles }}\n isOpen={manageRole.isDelete}\n selectedRole={manageRole.selectedRole}\n />\n </div>\n );\n};\n\nexport default Columns;\n","import { ChevronDown, ChevronUp } from \"lucide-react\";\n\nconst ToggleDropdown = ({ isVisible }) =>\n isVisible ? (\n <ChevronUp\n className=\"ntm-roles-table-sidebar__drop-down-button cursor-pointer text-muted-foreground\"\n data-testid=\"ntm-permission-category-hide-button\"\n size={16}\n strokeWidth={2}\n />\n ) : (\n <ChevronDown\n className=\"ntm-roles-table-sidebar__drop-down-button cursor-pointer text-muted-foreground\"\n data-testid=\"ntm-permission-category-show-button\"\n size={16}\n strokeWidth={2}\n />\n );\n\nexport default ToggleDropdown;\n","import { useMemo } from \"react\";\n\nimport { Typography } from \"@bigbinary/neeto-atoms\";\nimport { ScrollSyncPane } from \"@bigbinary/react-scroll-sync\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport Search from \"neetomolecules/v2/Search\";\nimport { groupBy, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport ToggleDropdown from \"./ToggleDropdown\";\nimport {\n getSearchWrapperStyle,\n renderDescription,\n getFilteredCategories,\n} from \"./utils\";\n\nimport { getChildrenRemovedFromRoot } from \"../../utils\";\n\nconst Sidebar = ({\n filteredGroupPermissions,\n toggleDropdown,\n isScrollPresent,\n permissions = [],\n permissionRelationConfig = {},\n permissionTooltip = {},\n}) => {\n const { t } = useTranslation();\n\n const categories = useMemo(\n () => getFilteredCategories(filteredGroupPermissions),\n [filteredGroupPermissions]\n );\n\n const searchWrapperStyle = isScrollPresent ? getSearchWrapperStyle() : {};\n\n const permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n\n const groupedPermissionsWithChildren = useMemo(() => {\n const childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions,\n permissionsNameMap,\n permissionRelationConfig,\n });\n\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]); // eslint-disable-line react-hooks/exhaustive-deps\n\n return (\n <div className=\"ntm-roles-table__sidebar\">\n <div\n className=\"ntm-roles-table-sidebar__search\"\n style={searchWrapperStyle}\n >\n <Search\n enableUrlSync\n data-testid=\"ntm-search-permissions-input\"\n searchParamName=\"permission_search_term\"\n placeholder={t(\n \"neetoTeamMembers.placeholders.searchPermission\",\n PLURAL\n )}\n />\n </div>\n <ScrollSyncPane group=\"vertical\">\n <div className=\"ntm-roles-table-sidebar__list\">\n {categories.length === 0 ? (\n <div className=\"ntm-roles-table-sidebar__list-item-cell\">\n <div className=\"ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted\">\n <Typography\n className=\"text-sm font-semibold leading-normal\"\n data-testid=\"ntm-empty-category-row\"\n >\n {t(\"neetoTeamMembers.labels.permissionsNotFound\")}\n </Typography>\n </div>\n </div>\n ) : (\n categories.map((category, index) => {\n const groupedPermissions = filteredGroupPermissions.get(category);\n\n const isPermissionVisible = groupedPermissions.get(\n \"isPermissionVisible\"\n );\n\n return (\n <div\n className=\"ntm-roles-table-sidebar__list-item-cell\"\n key={index}\n >\n <div\n className=\"ntm-roles-table-sidebar__list-item ntm-roles-table-sidebar__list-item--highlighted flex cursor-pointer items-center justify-between border-t border-border bg-muted px-6 py-2.5\"\n onClick={() => toggleDropdown(category)}\n >\n <Typography\n className=\"text-sm font-semibold leading-normal\"\n data-testid=\"ntm-permission-category-title\"\n >\n {category}\n </Typography>\n <ToggleDropdown isVisible={isPermissionVisible} />\n </div>\n {isPermissionVisible && (\n <div className=\"ntm-roles-table-sidebar__list-item-spacing-handler ms-3 px-6\">\n {renderDescription(\n groupedPermissionsWithChildren[category],\n pluck(\n \"id\",\n filteredGroupPermissions\n .get(category)\n .get(\"permissions\") || []\n ),\n permissionTooltip\n )}\n </div>\n )}\n </div>\n );\n })\n )}\n </div>\n </ScrollSyncPane>\n </div>\n );\n};\n\nexport default Sidebar;\n","import { useCallback, useEffect } from \"react\";\n\nimport { SIDEBAR_CELL_SELECTOR, COLUMN_ROW_SELECTOR } from \"./constants\";\n\nconst syncRowHeights = () => {\n const sidebarCells = document.querySelectorAll(SIDEBAR_CELL_SELECTOR);\n const columnRows = document.querySelectorAll(COLUMN_ROW_SELECTOR);\n\n const count = Math.min(sidebarCells.length, columnRows.length);\n\n for (let i = 0; i < count; i++) {\n // Reset heights so we can measure natural size\n sidebarCells[i].style.height = \"auto\";\n\n const sidebarChildren = sidebarCells[i].children;\n for (let j = 0; j < sidebarChildren.length; j++) {\n sidebarChildren[j].style.height = \"auto\";\n }\n\n const columnChildren = columnRows[i].children;\n for (let j = 0; j < columnChildren.length; j++) {\n const cells = columnChildren[j].querySelectorAll(\n \".ntm-roles-table__cell\"\n );\n\n cells.forEach(cell => {\n cell.style.height = \"auto\";\n });\n }\n }\n\n // Force reflow before measuring\n\n document.body.offsetHeight;\n\n for (let i = 0; i < count; i++) {\n // For each row group (category header + its permission rows),\n // sync the sidebar cell block with the column row block.\n const sidebarBlock = sidebarCells[i];\n const columnBlock = columnRows[i];\n\n // Sync the category header row (first child of each block)\n const sidebarHeader = sidebarBlock.querySelector(\n \".ntm-roles-table-sidebar__list-item--highlighted\"\n );\n\n const columnHeader = columnBlock.querySelector(\n \".ntm-roles-table__row--highlighted\"\n );\n\n if (sidebarHeader && columnHeader) {\n const columnHeaderCells = columnHeader.querySelectorAll(\n \".ntm-roles-table__cell\"\n );\n const sidebarH = sidebarHeader.getBoundingClientRect().height;\n const columnH = columnHeaderCells[0]?.getBoundingClientRect().height || 0;\n const maxH = Math.max(sidebarH, columnH);\n\n sidebarHeader.style.height = `${maxH}px`;\n columnHeaderCells.forEach(cell => {\n cell.style.height = `${maxH}px`;\n });\n }\n\n // Sync individual permission rows\n const sidebarItems = sidebarBlock.querySelectorAll(\n \".ntm-roles-table-sidebar__list-item:not(.ntm-roles-table-sidebar__list-item--highlighted)\"\n );\n\n const columnPermRows = columnBlock.querySelectorAll(\n \".ntm-roles-table__row:not(.ntm-roles-table__row--highlighted)\"\n );\n\n const permCount = Math.min(sidebarItems.length, columnPermRows.length);\n for (let j = 0; j < permCount; j++) {\n const sidebarH = sidebarItems[j].getBoundingClientRect().height;\n const columnCells = columnPermRows[j].querySelectorAll(\n \".ntm-roles-table__cell\"\n );\n const columnH = columnCells[0]?.getBoundingClientRect().height || 0;\n const maxH = Math.max(sidebarH, columnH);\n\n sidebarItems[j].style.height = `${maxH}px`;\n columnCells.forEach(cell => {\n cell.style.height = `${maxH}px`;\n });\n }\n }\n};\n\nconst useRowHeightSync = filteredGroupPermissions => {\n const sync = useCallback(() => {\n requestAnimationFrame(syncRowHeights);\n }, []);\n\n useEffect(() => {\n sync();\n }, [filteredGroupPermissions, sync]);\n\n useEffect(() => {\n const observer = new ResizeObserver(sync);\n const container = document.querySelector(\".ntm-roles-table__container\");\n if (container) observer.observe(container);\n\n window.addEventListener(\"resize\", sync);\n\n return () => {\n observer.disconnect();\n window.removeEventListener(\"resize\", sync);\n };\n }, [sync]);\n};\n\nexport default useRowHeightSync;\n","import { useEffect, useState } from \"react\";\n\nimport { Button, Empty } from \"@bigbinary/neeto-atoms\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { useQueryParams } from \"neetocommons/react-utils\";\nimport { isEmpty } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport Columns from \"./Columns\";\nimport Sidebar from \"./Sidebar\";\nimport useRowHeightSync from \"./useRowHeightSync\";\nimport { filterPermissionsBySearch, updatePermissionVisibility } from \"./utils\";\n\nimport Delete from \"../Delete\";\nimport ManageRoles from \"../ManageRoles\";\n\nconst Table = ({\n config,\n filteredRoles,\n roles,\n permissionGroups,\n permissions,\n setModifiedRoles,\n setIsNewRolePaneOpen,\n}) => {\n const { t } = useTranslation();\n const { permissionSearchTerm = \"\" } = useQueryParams();\n\n const isCreatePermissionGranted = config.permissions.create;\n\n const [filteredGroupPermissions, setFilteredGroupPermissions] =\n useState(permissionGroups);\n const [isScrollPresent, setIsScrollPresent] = useState(false);\n\n const [selectedRole, setSelectedRole] = useState(undefined);\n const [isDeleteAlertOpen, setIsDeleteAlertOpen] = useState(false);\n const [isEditPaneOpen, setIsEditPaneOpen] = useState(false);\n\n const toggleDropdown = category => {\n const permissions = updatePermissionVisibility(\n category,\n filteredGroupPermissions\n );\n setFilteredGroupPermissions(permissions);\n };\n\n useRowHeightSync(filteredGroupPermissions);\n\n useEffect(() => {\n const newValue = filterPermissionsBySearch(\n permissionSearchTerm,\n permissionGroups\n );\n setFilteredGroupPermissions(newValue);\n }, [permissionGroups, permissionSearchTerm]);\n\n return (\n <>\n <div className=\"ntm-roles-table__wrapper\">\n <div className=\"ntm-roles-table__container\">\n {isEmpty(filteredRoles) ? (\n <div className=\"flex h-full w-full items-center justify-center\">\n <Empty title={t(\"neetoTeamMembers.labels.roleNotFound\", PLURAL)}>\n <Button\n data-testid=\"ntm-add-role-button\"\n disabled={!isCreatePermissionGranted}\n onClick={() => setIsNewRolePaneOpen(true)}\n >\n {t(\"neetoTeamMembers.labels.addNewRole\")}\n </Button>\n </Empty>\n </div>\n ) : (\n <>\n <Sidebar\n {...{\n filteredGroupPermissions,\n isScrollPresent,\n permissions,\n toggleDropdown,\n }}\n permissionRelationConfig={config?.permissionRelation ?? {}}\n permissionTooltip={config?.permissionTooltip ?? {}}\n />\n <Columns\n {...{\n config,\n filteredGroupPermissions,\n filteredRoles,\n permissions,\n roles,\n setIsScrollPresent,\n setModifiedRoles,\n }}\n />\n </>\n )}\n </div>\n </div>\n <ManageRoles\n {...{ config, permissions, selectedRole }}\n isOpen={isEditPaneOpen}\n onClose={() => {\n setSelectedRole(undefined);\n setIsEditPaneOpen(false);\n }}\n />\n <Delete\n {...{ roles, selectedRole }}\n isOpen={isDeleteAlertOpen}\n onClose={() => {\n setSelectedRole(undefined);\n setIsDeleteAlertOpen(false);\n }}\n />\n </>\n );\n};\n\nexport default Table;\n","import { useEffect, useState } from \"react\";\n\nimport { Spinner } from \"@bigbinary/neeto-atoms\";\nimport { ScrollSync } from \"@bigbinary/react-scroll-sync\";\nimport i18next from \"i18next\";\nimport { isNotEmpty } from \"neetocist\";\nimport { PLURAL } from \"neetocommons/constants\";\nimport { useQueryParams, withTitle } from \"neetocommons/react-utils\";\nimport Container from \"neetomolecules/v2/Container\";\nimport { filter, includes } from \"ramda\";\n\nimport withReactQuery from \"v2/common/withReactQuery\";\nimport { useFetchPermissions } from \"v2/hooks/roles/usePermissionsApi\";\nimport { useBulkUpdateRoles, useFetchRoles } from \"v2/hooks/roles/useRolesApi\";\n\nimport Header from \"./Header\";\nimport ManageRoles from \"./ManageRoles\";\nimport Table from \"./Table\";\nimport {\n getModifiedPermissions,\n getPermissionGroups,\n sortPermissionsBySequence,\n} from \"./utils\";\n\nimport \"../styles/roles.css\";\n\nconst Roles = ({ config }) => {\n const isViewPermissionGranted = config.permissions.view;\n const isUpdatePermissionGranted = config.permissions.update;\n\n const [modifiedRoles, setModifiedRoles] = useState([]);\n const [isNewRolePaneOpen, setIsNewRolePaneOpen] = useState(false);\n const {\n data: roles = [],\n isLoading: isRolesLoading,\n status,\n } = useFetchRoles({ enabled: isViewPermissionGranted });\n\n const { searchTerm = \"\" } = useQueryParams();\n\n const { data: permissionData, isLoading: isPermissionsLoading } =\n useFetchPermissions({ enabled: isViewPermissionGranted });\n\n const { mutate: bulkUpdate } = useBulkUpdateRoles({\n enabled: isUpdatePermissionGranted,\n });\n\n const permissions = sortPermissionsBySequence(permissionData);\n const permissionGroups = getPermissionGroups(permissions);\n\n const filteredRoles = filter(\n ({ name }) =>\n includes(searchTerm.toLowerCase().trim(), name.toLowerCase().trim()),\n isNotEmpty(modifiedRoles) ? modifiedRoles : roles\n );\n\n const handleSubmit = () => {\n const updatedRoles = getModifiedPermissions(roles, modifiedRoles);\n bulkUpdate({ organizationRoles: { updatedRoles } });\n };\n\n const handleReset = () => setModifiedRoles(roles);\n\n useEffect(() => {\n if (status !== \"success\") return;\n setModifiedRoles(roles);\n }, [roles, status]);\n\n if (isRolesLoading || isPermissionsLoading) {\n return (\n <div className=\"flex h-full min-h-screen w-full items-center justify-center\">\n <Spinner />\n </div>\n );\n }\n\n return (\n <>\n <ScrollSync>\n <Container isHeaderFixed>\n <Header\n {...{\n config,\n handleReset,\n handleSubmit,\n roles,\n setIsNewRolePaneOpen,\n }}\n />\n <Table\n {...{\n config,\n filteredRoles,\n permissionGroups,\n permissions,\n roles,\n setIsNewRolePaneOpen,\n setModifiedRoles,\n }}\n />\n </Container>\n </ScrollSync>\n <ManageRoles\n {...{ config, permissions }}\n isOpen={isNewRolePaneOpen}\n onClose={() => setIsNewRolePaneOpen(false)}\n />\n </>\n );\n};\n\nexport default withTitle(\n withReactQuery(Roles),\n i18next.t(\"neetoTeamMembers.common.role\", PLURAL)\n);\n"],"names":["fetch","axios","get","concat","BASE_URL","permissionsApi","useFetchPermissions","options","arguments","length","undefined","useQuery","_objectSpread","queryKey","QUERY_KEYS","PERMISSIONS","queryFn","select","response","permissions","renderSearchProps","placeholder","t","PLURAL","renderBreadcrumbs","breadcrumbs","text","taxonomies","member","plural","link","AddRoleButton","_ref","config","onClick","_useTranslation","useTranslation","isCreatePermissionGranted","create","_jsx","Tooltip","position","content","children","Button","disabled","Header","_config$header","_config$header$titleH","_config$header2","handleReset","handleSubmit","_ref$isDirty","isDirty","setIsNewRolePaneOpen","roles","isUpdatePermissionGranted","update","NeetoHeader","header","className","searchProps","isNotEmpty","title","titleHelpPopoverProps","actionBlock","_jsxs","type","variant","ROLE_NAME_MAX_LENGTH","ROLE_DESCRIPTION_MAX_LENGTH","ADD_ROLE_FORM_VALIDATION_SCHEMA","object","name","string","trim","max","limit","required","description","nullable","ADD_ROLE_FORM_INITIAL_VALUES","permissionIds","ROLE_FORMIK_PROPS","validationSchema","ManageRoles","_selectedRole$permiss","_ref$isOpen","isOpen","onClose","_ref$permissions","_ref$selectedRole","selectedRole","_ref$scrollTo","scrollTo","formReference","useRef","inputReference","lastScrollKeyRef","_useCreateRole","useCreateRole","onSuccess","createRole","mutate","isCreatingRole","isPending","_useUpdateRole","useUpdateRole","updateRole","isUpdatingRole","isEdit","isPresent","isSubmitting","formValues","payload","organizationRole","id","initialValues","sort","formikProps","onSubmit","isReadOnly","kind","isDisabled","ADMIN_ROLES","includes","useEffect","_selectedRole$id","_ref2","_scrollTo$permissionI","activeClassName","blinkClassName","getScrollableParent","node","current","parentElement","style","getComputedStyle","overflowY","isScrollable","scrollHeight","clientHeight","document","scrollingElement","documentElement","querySelectorAll","forEach","classList","remove","key","permissionId","category","timeoutId","highlightTimeoutId","blinkTimeoutId","scrollEndTimeoutId","attempts","highlightedCard","blinkedPermissionCard","attemptScroll","elementId","hyphenate","el","getElementById","scrollIntoView","behavior","block","categoryCard","closest","querySelector","scrollContainer","startHighlight","add","clearTimeout","setTimeout","animationDurationMs","animationIterations","totalDurationMs","startBlink","offsetWidth","started","maxWaitTimeoutId","removeEventListener","scheduleStart","addEventListener","passive","_highlightedCard","_blinkedPermissionCar","Sheet","size","Title","FormikForm","ref","_ref3","_config$permissionRel","dirty","_Fragment","ScrollToErrorField","formRef","Body","FormikInput","label","maxLength","readOnly","FormikTextarea","Permissions","permissionRelationConfig","permissionRelation","Footer","FormikActionBlock","cancelButtonProps","submitButtonProps","DEFAULT_MANAGE_ROLE_VALUES","isDelete","MENU_ITEMS","EDIT","DELETE","SIDEBAR_CELL_SELECTOR","COLUMN_ROW_SELECTOR","deepClone","objectType","_typeof","result","Array","isArray","constructor","Map","_iterator","_createForOfIteratorHelper","keys","_step","s","n","done","value","set","err","e","f","Object","prototype","hasOwnProperty","call","renderRolesTooltipContent","roleName","is","updatePermissionVisibility","categoryName","isPermissionVisible","filterPermissionsBySearch","searchTerm","permissionGroups","newValue","filteredPermissions","filter","permission","_permission$descripti","toLowerCase","getMenuItems","isDeletePermissionGranted","role","setManageRole","isSystemRole","not","tooltipProps","isVisible","Row","_ref$allPermissionsOf","allPermissionsOfCategory","_ref$category","_ref$permission","_ref$setManageRole","noop","allPermissionIdsOfCategory","map","prop","isCheckboxChecked","every","__","classnames","identical","Checkbox","checked","onCheckedChange","isOverflown","clientWidth","scrollWidth","getScrollBarWidth","innerElement","createElement","outerElement","appendChild","body","w1","overflow","w2","removeChild","renderDescription","permissionTooltip","tooltipContent","Fragment","Typography","HelpPopover","icon","Info","getSearchWrapperStyle","scrollBarWidth","setProperty","marginBottom","getFilteredCategories","filteredGroupPermissions","from","groupedPermissions","TableHeader","setIsScrollPresent","scrollSyncElement","getOverflowStatus","useCallback","headerElement","isScrollBarPresent","ScrollSyncPane","group","index","isAdminRole","MoreDropdown","dropdownProps","autoWidth","dropdownButtonProps","menuItems","memo","Delete","_useDestroyRole","useDestroyRole","deleteRole","isDeleting","handleDelete","_roles$find","newRoleId","find","Alert","cancelButtonLabel","submitButtonLabel","message","Trans","i18nKey","values","Columns","filteredRoles","_useState","useState","_useState2","_slicedToArray","manageRole","categories","useMemo","_createElement","ToggleDropdown","ChevronUp","strokeWidth","ChevronDown","Sidebar","toggleDropdown","isScrollPresent","_ref$permissionRelati","_ref$permissionToolti","searchWrapperStyle","permissionsNameMap","groupBy","groupedPermissionsWithChildren","childrenRemovedFromRoot","getChildrenRemovedFromRoot","Search","enableUrlSync","searchParamName","pluck","syncRowHeights","sidebarCells","columnRows","count","Math","min","i","height","sidebarChildren","j","columnChildren","cells","cell","offsetHeight","_loop","sidebarBlock","columnBlock","sidebarHeader","columnHeader","_columnHeaderCells$","columnHeaderCells","sidebarH","getBoundingClientRect","columnH","maxH","sidebarItems","columnPermRows","permCount","_loop2","_columnCells$","columnCells","useRowHeightSync","sync","requestAnimationFrame","observer","ResizeObserver","container","observe","window","disconnect","Table","_config$permissionToo","setModifiedRoles","_useQueryParams","useQueryParams","_useQueryParams$permi","permissionSearchTerm","setFilteredGroupPermissions","_useState3","_useState4","_useState5","_useState6","setSelectedRole","_useState7","_useState8","isDeleteAlertOpen","setIsDeleteAlertOpen","_useState9","_useState10","isEditPaneOpen","setIsEditPaneOpen","isEmpty","Empty","Roles","isViewPermissionGranted","view","modifiedRoles","isNewRolePaneOpen","_useFetchRoles","useFetchRoles","enabled","_useFetchRoles$data","data","isRolesLoading","isLoading","status","_useQueryParams$searc","_useFetchPermissions","permissionData","isPermissionsLoading","_useBulkUpdateRoles","useBulkUpdateRoles","bulkUpdate","sortPermissionsBySequence","getPermissionGroups","updatedRoles","getModifiedPermissions","organizationRoles","Spinner","ScrollSync","Container","isHeaderFixed","withTitle","withReactQuery","i18next"],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import '@bigbinary/neeto-atoms';
|
|
2
|
+
import 'formik';
|
|
3
|
+
import '@bigbinary/neeto-cist';
|
|
4
|
+
import '@bigbinary/neeto-commons-frontend/constants';
|
|
5
|
+
import '@bigbinary/neeto-commons-frontend/initializers';
|
|
6
|
+
import 'ramda';
|
|
7
|
+
import 'react-i18next';
|
|
8
|
+
import '@babel/runtime/helpers/defineProperty';
|
|
9
|
+
import '@babel/runtime/helpers/objectWithoutProperties';
|
|
10
|
+
import 'react/jsx-runtime';
|
|
11
|
+
import '../Select-DZ56UG-l.js';
|
|
12
|
+
import '@babel/runtime/helpers/slicedToArray';
|
|
13
|
+
export { R as default } from '../RolesRadioGroup-tSNC-Wtu.js';
|
|
14
|
+
import 'react';
|
|
15
|
+
import '@babel/runtime/helpers/toConsumableArray';
|
|
16
|
+
import 'i18next';
|
|
17
|
+
import '@bigbinary/neeto-commons-frontend/utils';
|
|
18
|
+
import 'yup';
|
|
19
|
+
import '../constants-B1L6arSR.js';
|
|
20
|
+
//# sourceMappingURL=RolesRadioGroup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RolesRadioGroup.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;"}
|