UNPKG

@keycloakify/keycloak-admin-ui

Version:
32 lines 2.29 kB
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime"; import { useTranslation } from "react-i18next"; import { PageSection, Tab, TabTitleText } from "@patternfly/react-core"; import { ViewHeader } from "../components/view-header/ViewHeader"; import { useRealm } from "../context/realm-context/RealmContext"; import helpUrls from "../help-urls"; import { PermissionsTab } from "../components/permission-tab/PermissionTab"; import { UserDataTable } from "../components/users/UserDataTable"; import { toUsers } from "../user/routes/Users"; import { RoutableTabs, useRoutableTab, } from "../components/routable-tabs/RoutableTabs"; import useIsFeatureEnabled, { Feature } from "../utils/useIsFeatureEnabled"; import "./user-section.css"; import { useAccess } from "../context/access/Access"; export default function UsersSection() { const { t } = useTranslation(); const { realm: realmName } = useRealm(); const { hasAccess } = useAccess(); const isFeatureEnabled = useIsFeatureEnabled(); const canViewPermissions = isFeatureEnabled(Feature.AdminFineGrainedAuthz) && hasAccess("manage-authorization", "manage-users", "manage-clients"); const useTab = (tab) => useRoutableTab(toUsers({ realm: realmName, tab, })); const listTab = useTab("list"); const permissionsTab = useTab("permissions"); return (_jsxs(_Fragment, { children: [_jsx(ViewHeader, { titleKey: "titleUsers", subKey: "usersExplain", helpUrl: helpUrls.usersUrl, divider: false }), _jsx(PageSection, { "data-testid": "users-page", variant: "light", className: "pf-v5-u-p-0", children: _jsxs(RoutableTabs, { "data-testid": "user-tabs", defaultLocation: toUsers({ realm: realmName, tab: "list", }), isBox: true, mountOnEnter: true, children: [_jsx(Tab, { id: "list", "data-testid": "listTab", title: _jsx(TabTitleText, { children: t("userList") }), ...listTab, children: _jsx(UserDataTable, {}) }), canViewPermissions && (_jsx(Tab, { id: "permissions", "data-testid": "permissionsTab", title: _jsx(TabTitleText, { children: t("permissions") }), ...permissionsTab, children: _jsx(PermissionsTab, { type: "users" }) }))] }) })] })); } //# sourceMappingURL=UsersSection.js.map