UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

25 lines (24 loc) 1.34 kB
import { t as createSubsystemLogger } from "./subsystem-Dy2tqXOS.js"; import { a as getActivePluginChannelRegistry, g as getPluginRegistrationContext, x as requireActivePluginChannelRegistry } from "./runtime-BL4wZfTq.js"; //#region src/plugins/session-discussion-registry.ts const log = createSubsystemLogger("plugins/session-discussion"); function registerSessionDiscussionProvider(provider) { const context = getPluginRegistrationContext(); const registry = context?.registry ?? requireActivePluginChannelRegistry(); const pluginId = context?.pluginId ?? provider.id; const existing = registry.sessionDiscussionProviders.get(pluginId); if (existing) log.warn(`replacing session discussion provider ${existing.provider.id} with ${provider.id}`); else { const selected = registry.sessionDiscussionProviders.values().next().value; if (selected) log.warn(`session discussion provider ${provider.id} registered alongside ${selected.provider.id}; retaining ${selected.provider.id} as the default`); } registry.sessionDiscussionProviders.set(pluginId, { pluginId, provider }); } function getSessionDiscussionProvider() { return getActivePluginChannelRegistry()?.sessionDiscussionProviders.values().next().value?.provider; } //#endregion export { registerSessionDiscussionProvider as n, getSessionDiscussionProvider as t };