UNPKG

@keycloakify/keycloak-admin-ui

Version:

<p align="center"> <img src="https://github.com/user-attachments/assets/a6aaebbd-8f59-474d-9827-c282f4527aca"> </p> <p align="center"> <i>Repackaged Keycloak Admin UI</i> <br> <br> <a href="https://github.com/keycloakify/keycloak-adm

46 lines (36 loc) 1.08 kB
/* eslint-disable */ // @ts-nocheck import KeycloakAdminClient from "@keycloak/keycloak-admin-client"; import { createNamedContext, useRequiredContext, } from "../shared/keycloak-ui-shared"; import type Keycloak from "keycloak-js"; import type { Environment } from "./environment"; export type AdminClientProps = { keycloak: Keycloak; adminClient: KeycloakAdminClient; }; export const AdminClientContext = createNamedContext< AdminClientProps | undefined >("AdminClientContext", undefined); export const useAdminClient = () => useRequiredContext(AdminClientContext); export async function initAdminClient( keycloak: Keycloak, environment: Environment, ) { const adminClient = new KeycloakAdminClient(); adminClient.setConfig({ realmName: environment.realm }); adminClient.baseUrl = environment.adminBaseUrl; adminClient.registerTokenProvider({ async getAccessToken() { try { await keycloak.updateToken(5); } catch { await keycloak.login(); } return keycloak.token; }, }); return adminClient; }