/* eslint-disable */ // @ts-nocheck import type { ServerInfoRepresentation } from "@keycloak/keycloak-admin-client/lib/defs/serverInfoRepesentation"; import { createNamedContext, KeycloakSpinner, useFetch, useRequiredContext, } from "../../../shared/keycloak-ui-shared"; import { PropsWithChildren, useState } from "react"; import { useAdminClient } from "../../admin-client"; import { sortProviders } from "../../util"; export const ServerInfoContext = createNamedContext< ServerInfoRepresentation | undefined >("ServerInfoContext", undefined); export const useServerInfo = () => useRequiredContext(ServerInfoContext); export const useLoginProviders = () => sortProviders(useServerInfo().providers!["login-protocol"].providers); export const ServerInfoProvider = ({ children }: PropsWithChildren) => { const { adminClient } = useAdminClient(); const [serverInfo, setServerInfo] = useState(); useFetch(() => adminClient.serverInfo.find(), setServerInfo, []); if (!serverInfo) { return ; } return ( {children} ); };