UNPKG

@keycloakify/keycloak-admin-ui

Version:
33 lines 2.44 kB
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime"; import { useFetch } from "../../ui-shared"; import { Tab, Tabs, TabTitleText } from "@patternfly/react-core"; import { useState } from "react"; import { useTranslation } from "react-i18next"; import { useAdminClient } from "../../admin-client"; import { KeycloakSpinner } from "../../ui-shared"; import { useRealm } from "../../context/realm-context/RealmContext"; import { CibaPolicy } from "../../authentication/policies/CibaPolicy"; import { OtpPolicy } from "../../authentication/policies/OtpPolicy"; import { PasswordPolicy } from "../../authentication/policies/PasswordPolicy"; import { WebauthnPolicy } from "../../authentication/policies/WebauthnPolicy"; export const Policies = () => { const { adminClient } = useAdminClient(); const { t } = useTranslation(); const [subTab, setSubTab] = useState(1); const { realm: realmName } = useRealm(); const [realm, setRealm] = useState(); useFetch(async () => { const realm = await adminClient.realms.findOne({ realm: realmName }); if (!realm) { throw new Error(t("notFound")); } return realm; }, (realm) => { setRealm(realm); }, []); if (!realm) { return _jsx(KeycloakSpinner, {}); } return (_jsxs(Tabs, { activeKey: subTab, onSelect: (_, key) => setSubTab(key), mountOnEnter: true, unmountOnExit: true, children: [_jsx(Tab, { id: "passwordPolicy", eventKey: 1, title: _jsx(TabTitleText, { children: t("passwordPolicy") }), children: _jsx(PasswordPolicy, { realm: realm, realmUpdated: setRealm }) }), _jsx(Tab, { id: "otpPolicy", eventKey: 2, title: _jsx(TabTitleText, { children: t("otpPolicy") }), children: _jsx(OtpPolicy, { realm: realm, realmUpdated: setRealm }) }), _jsx(Tab, { id: "webauthnPolicy", eventKey: 3, title: _jsx(TabTitleText, { children: t("webauthnPolicy") }), children: _jsx(WebauthnPolicy, { realm: realm, realmUpdated: setRealm }) }), _jsx(Tab, { id: "webauthnPasswordlessPolicy", eventKey: 4, title: _jsx(TabTitleText, { children: t("webauthnPasswordlessPolicy") }), children: _jsx(WebauthnPolicy, { realm: realm, realmUpdated: setRealm, isPasswordLess: true }) }), _jsx(Tab, { "data-testid": "tab-ciba-policy", eventKey: 5, title: _jsx(TabTitleText, { children: t("cibaPolicy") }), children: _jsx(CibaPolicy, { realm: realm, realmUpdated: setRealm }) })] })); }; //# sourceMappingURL=Policies.js.map