@keycloakify/keycloak-admin-ui
Version:
Repackaged Keycloak Admin UI
22 lines • 1.78 kB
JavaScript
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
import { Button, Dropdown, DropdownItem, DropdownList, MenuToggle, ToolbarItem, } from "@patternfly/react-core";
import { EllipsisVIcon } from "@patternfly/react-icons";
import { useTranslation } from "react-i18next";
import { useAccess } from "../../context/access/Access";
import useToggle from "../../utils/useToggle";
import { useSubGroups } from "../../groups/SubGroupsContext";
export const GroupToolbar = ({ toggleCreate, toggleDelete, kebabDisabled, }) => {
var _a, _b;
const { t } = useTranslation();
const { currentGroup } = useSubGroups();
const { hasAccess } = useAccess();
const isManager = hasAccess("manage-users") || ((_b = (_a = currentGroup()) === null || _a === void 0 ? void 0 : _a.access) === null || _b === void 0 ? void 0 : _b.manage);
const [openKebab, toggleKebab] = useToggle();
if (!isManager)
return _jsx("div", {});
return (_jsxs(_Fragment, { children: [_jsx(ToolbarItem, { children: _jsx(Button, { "data-testid": "openCreateGroupModal", variant: "primary", onClick: toggleCreate, children: t("createGroup") }) }), _jsx(ToolbarItem, { children: _jsx(Dropdown, { onOpenChange: toggleKebab, toggle: (ref) => (_jsx(MenuToggle, { ref: ref, isExpanded: openKebab, onClick: toggleKebab, isDisabled: kebabDisabled, variant: "plain", "aria-label": "Actions", children: _jsx(EllipsisVIcon, {}) })), isOpen: openKebab, children: _jsx(DropdownList, { children: _jsx(DropdownItem, { component: "button", onClick: () => {
toggleDelete();
toggleKebab();
}, children: t("delete") }, "action") }) }) })] }));
};
//# sourceMappingURL=GroupToolbar.js.map