/* eslint-disable */ // @ts-nocheck import { AuthenticationProviderRepresentation } from "@keycloak/keycloak-admin-client/lib/defs/authenticatorConfigRepresentation"; import { createNamedContext, useFetch, useRequiredContext, } from "../../../shared/keycloak-ui-shared"; import { PropsWithChildren, useState } from "react"; import { useAdminClient } from "../../admin-client"; export const AuthenticationProviderContext = createNamedContext< { providers?: AuthenticationProviderRepresentation[] } | undefined >("AuthenticationProviderContext", undefined); export const AuthenticationProviderContextProvider = ({ children, }: PropsWithChildren) => { const { adminClient } = useAdminClient(); const [providers, setProviders] = useState(); useFetch( async () => Promise.all([ adminClient.authenticationManagement.getClientAuthenticatorProviders(), adminClient.authenticationManagement.getFormActionProviders(), adminClient.authenticationManagement.getAuthenticatorProviders(), ]), (providers) => setProviders(providers.flat()), [], ); return ( {children} ); }; export const useAuthenticationProvider = () => useRequiredContext(AuthenticationProviderContext);