Skip to main content
Glama
context.js1.13 kB
// src/jsx/dom/context.ts import { DOM_ERROR_HANDLER } from "../constants.js"; import { globalContexts } from "../context.js"; import { setInternalTagFlag } from "./utils.js"; var createContextProviderFunction = (values) => ({ value, children }) => { if (!children) { return void 0; } const props = { children: [ { tag: setInternalTagFlag(() => { values.push(value); }), props: {} } ] }; if (Array.isArray(children)) { props.children.push(...children.flat()); } else { props.children.push(children); } props.children.push({ tag: setInternalTagFlag(() => { values.pop(); }), props: {} }); const res = { tag: "", props, type: "" }; res[DOM_ERROR_HANDLER] = (err) => { values.pop(); throw err; }; return res; }; var createContext = (defaultValue) => { const values = [defaultValue]; const context = createContextProviderFunction(values); context.values = values; context.Provider = context; globalContexts.push(context); return context; }; export { createContext, createContextProviderFunction };

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/Valerio357/bet-mcp'

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