UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

21 lines (20 loc) 1.26 kB
import { a as asOptionalRecord } from "./record-coerce-DItp3I4t.js"; import { l as normalizePluginsConfig } from "./config-state-BkU1frVq.js"; //#region src/plugin-sdk/plugin-config-runtime.ts /** Requires an already-resolved runtime config at plugin runtime boundaries. */ function requireRuntimeConfig(config, context) { if (config) return config; throw new Error(`${context} requires a resolved runtime config. Load and resolve config at the command or gateway boundary, then pass cfg through the runtime path.`); } /** Reads a plugin's object-shaped `plugins.entries[id].config` block from resolved config. */ function resolvePluginConfigObject(config, pluginId) { const pluginConfig = normalizePluginsConfig(config?.plugins).entries[pluginId]?.config; return asOptionalRecord(pluginConfig); } /** Resolves live plugin config through a loader, falling back to startup config when unavailable. */ function resolveLivePluginConfigObject(runtimeConfigLoader, pluginId, startupPluginConfig) { if (typeof runtimeConfigLoader !== "function") return startupPluginConfig; return resolvePluginConfigObject(runtimeConfigLoader(), pluginId); } //#endregion export { resolveLivePluginConfigObject as n, resolvePluginConfigObject as r, requireRuntimeConfig as t };