UNPKG

@keycloakify/keycloak-admin-ui

Version:
20 lines (15 loc) 736 B
import UserRepresentation from "@keycloak/keycloak-admin-client/lib/defs/userRepresentation"; import { useFetch } from "@keycloakify/keycloak-admin-ui/ui-shared"; import { useState } from "react"; import { useAdminClient } from "@keycloakify/keycloak-admin-ui/admin-client"; import { useWhoAmI } from "@keycloakify/keycloak-admin-ui/context/whoami/WhoAmI"; export function useCurrentUser() { const { adminClient } = useAdminClient(); const { whoAmI } = useWhoAmI(); const [currentUser, setCurrentUser] = useState<UserRepresentation>(); const userId = whoAmI.getUserId(); useFetch(() => adminClient.users.findOne({ id: userId }), setCurrentUser, [ userId, ]); return { ...currentUser, realm: whoAmI.getRealm() }; }