Skip to main content
Glama
use-openai-global.ts•882 B
import { useSyncExternalStore } from "react"; import { SET_GLOBALS_EVENT_TYPE, SetGlobalsEvent, type OpenAiGlobals, } from "./types"; export function useOpenAiGlobal<K extends keyof OpenAiGlobals>( key: K ): OpenAiGlobals[K] | null { return useSyncExternalStore( (onChange) => { if (typeof window === "undefined") { return () => {}; } const handleSetGlobal = (event: SetGlobalsEvent) => { const value = event.detail.globals[key]; if (value === undefined) { return; } onChange(); }; window.addEventListener(SET_GLOBALS_EVENT_TYPE, handleSetGlobal, { passive: true, }); return () => { window.removeEventListener(SET_GLOBALS_EVENT_TYPE, handleSetGlobal); }; }, () => window.openai?.[key] ?? null, () => window.openai?.[key] ?? null ); }

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/GeneralJerel/ChessMCP'

If you have feedback or need assistance with the MCP directory API, please join our Discord server