{"version":3,"file":"Groups-ggcw-_aR.js","sources":["../../src/groups/Groups.tsx"],"sourcesContent":["import {\r\n Checkbox,\r\n DataList,\r\n DataListCell,\r\n DataListItem,\r\n DataListItemCells,\r\n DataListItemRow,\r\n} from \"@patternfly/react-core\";\r\nimport { useState } from \"react\";\r\nimport { useTranslation } from \"react-i18next\";\r\nimport { getGroups } from \"../api/methods\";\r\nimport { Group } from \"../api/representations\";\r\nimport { Page } from \"../components/page/Page\";\r\nimport { useEnvironment } from \"../root/KeycloakContext\";\r\nimport { usePromise } from \"../utils/usePromise\";\r\n\r\nexport const Groups = () => {\r\n const { t } = useTranslation();\r\n const context = useEnvironment();\r\n\r\n const [groups, setGroups] = useState([]);\r\n const [directMembership, setDirectMembership] = useState(false);\r\n\r\n usePromise(\r\n (signal) => getGroups({ signal, context }),\r\n (groups) => {\r\n if (!directMembership) {\r\n groups.forEach((el) =>\r\n getParents(\r\n el,\r\n groups,\r\n groups.map(({ path }) => path),\r\n ),\r\n );\r\n }\r\n setGroups(groups);\r\n },\r\n [directMembership],\r\n );\r\n\r\n const getParents = (el: Group, groups: Group[], groupsPaths: string[]) => {\r\n const parentPath = el.path.slice(0, el.path.lastIndexOf(\"/\"));\r\n if (parentPath && !groupsPaths.includes(parentPath)) {\r\n el = {\r\n name: parentPath.slice(parentPath.lastIndexOf(\"/\") + 1),\r\n path: parentPath,\r\n };\r\n groups.push(el);\r\n groupsPaths.push(parentPath);\r\n\r\n getParents(el, groups, groupsPaths);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n setDirectMembership(checked)}\r\n />\r\n ,\r\n ]}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {t(\"name\")}\r\n ,\r\n \r\n {t(\"path\")}\r\n ,\r\n \r\n {t(\"directMembership\")}\r\n ,\r\n ]}\r\n />\r\n \r\n \r\n {groups.map((group, appIndex) => (\r\n \r\n \r\n \r\n {group.name}\r\n ,\r\n \r\n {group.path}\r\n ,\r\n \r\n \r\n ,\r\n ]}\r\n />\r\n \r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Groups;\r\n"],"names":["Groups","t","useTranslation","context","useEnvironment","groups","setGroups","useState","directMembership","setDirectMembership","usePromise","signal","getGroups","el","getParents","path","groupsPaths","parentPath","Page","jsxs","DataList","jsx","DataListItem","DataListItemRow","DataListItemCells","DataListCell","Checkbox","_event","checked","group","appIndex"],"mappings":"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"}