/* eslint-disable */ // @ts-nocheck import IdentityProviderRepresentation from "@keycloak/keycloak-admin-client/lib/defs/identityProviderRepresentation"; import { ExpandableSection } from "../../../shared/@patternfly/react-core"; import { useState } from "react"; import { useFormContext, useWatch } from "react-hook-form"; import { useTranslation } from "react-i18next"; import { SelectControl, TextControl } from "../../../shared/keycloak-ui-shared"; import { DefaultSwitchControl } from "../../components/SwitchControl"; import { JwksSettings } from "./JwksSettings"; import "./discovery-settings.css"; const PKCE_METHODS = ["plain", "S256"] as const; type DiscoverySettingsProps = { readOnly: boolean; isOIDC: boolean; }; const Fields = ({ readOnly, isOIDC }: DiscoverySettingsProps) => { const { t } = useTranslation(); const { control } = useFormContext(); const validateSignature = useWatch({ control, name: "config.validateSignature", }); const isPkceEnabled = useWatch({ control, name: "config.pkceEnabled", }); const jwtAuthorizationGrantEnabled = useWatch({ control, name: "config.jwtAuthorizationGrantEnabled", }); const supportsClientAssertions = useWatch({ control, name: "config.supportsClientAssertions", }); return (
{isOIDC && ( )} {isOIDC && ( )} {isOIDC && ( <> {(validateSignature === "true" || jwtAuthorizationGrantEnabled === "true" || supportsClientAssertions == "true") && ( )} )} {isPkceEnabled === "true" && ( ({ key: option, value: t(option), }))} /> )}
); }; export const DiscoverySettings = ({ readOnly, isOIDC, }: DiscoverySettingsProps) => { const { t } = useTranslation(); const [isExpanded, setIsExpanded] = useState(false); return ( <> {readOnly && ( setIsExpanded(!isExpanded)} isExpanded={isExpanded} > )} {!readOnly && } ); };