UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

30 lines (29 loc) 1.13 kB
import { c as normalizeOptionalString } from "./string-coerce-mnp54Vah.js"; import { t as getActivePluginChannelRegistryFromState } from "./runtime-channel-state-D79Ax0is.js"; //#region src/channels/plugins/registry-loaded-read.ts /** * Hot-path loaded channel plugin reader. * * Reads active runtime channel state without materializing the full registry view. */ function coerceLoadedChannelPlugin(plugin) { const id = normalizeOptionalString(plugin?.id) ?? ""; if (!plugin || !id) return; if (!plugin.meta || typeof plugin.meta !== "object") plugin.meta = {}; return plugin; } /** * Reads one loaded channel plugin directly from active runtime state. */ function getLoadedChannelPluginForRead(id) { const resolvedId = normalizeOptionalString(id) ?? ""; if (!resolvedId) return; const registry = getActivePluginChannelRegistryFromState(); if (!registry || !Array.isArray(registry.channels)) return; for (const entry of registry.channels) { const plugin = coerceLoadedChannelPlugin(entry?.plugin); if (plugin && plugin.id === resolvedId) return plugin; } } //#endregion export { getLoadedChannelPluginForRead as t };