import keycloak from "@/lib/keycloak"; import { createContext, useContext, useEffect, useState } from "react"; const KeycloakContext = createContext(); let keycloakInitialized = false; export const KeycloakProvider = ({ children }) => { const [initialized, setInitialized] = useState(false); const [authenticated, setAuthenticated] = useState(false); useEffect(() => { if (!keycloakInitialized) { keycloakInitialized = true; keycloak .init({ onLoad: "login-required", checkLoginIframe: false, flow: "implicit", }) .then((auth) => { setAuthenticated(auth); setInitialized(true); }) .catch((err) => {}); } }, []); return ( {children} ); }; export const useKeycloak = () => useContext(KeycloakContext);