UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

33 lines (32 loc) 1.47 kB
import { s as normalizeOptionalLowercaseString } from "./string-coerce-mnp54Vah.js"; import { n as resolveChannelApprovalCapability } from "./plugins-t2ejWcVy.js"; //#region src/channels/plugins/native-approval-prompt.ts /** * Native approval prompt capability helpers. * * Detects loaded or known channels that can render approval prompts natively. */ const NATIVE_APPROVAL_PROMPT_RUNTIME_CAPABILITY = "nativeApprovals"; const NATIVE_APPROVAL_PROMPT_RUNTIME_CAPABILITY_NORMALIZED = "nativeapprovals"; const KNOWN_NATIVE_APPROVAL_PROMPT_CHANNELS = new Set([ "discord", "googlechat", "matrix", "qqbot", "slack", "telegram", "signal" ]); function channelPluginHasNativeApprovalPromptUi(plugin) { const capability = resolveChannelApprovalCapability(plugin); return Boolean(capability?.native || capability?.nativeRuntime); } function isKnownNativeApprovalPromptChannel(channel) { const normalized = normalizeOptionalLowercaseString(channel); return Boolean(normalized && KNOWN_NATIVE_APPROVAL_PROMPT_CHANNELS.has(normalized)); } function hasNativeApprovalPromptRuntimeCapability(capabilities) { return Boolean(capabilities?.some((capability) => normalizeOptionalLowercaseString(capability) === NATIVE_APPROVAL_PROMPT_RUNTIME_CAPABILITY_NORMALIZED)); } //#endregion export { isKnownNativeApprovalPromptChannel as i, channelPluginHasNativeApprovalPromptUi as n, hasNativeApprovalPromptRuntimeCapability as r, NATIVE_APPROVAL_PROMPT_RUNTIME_CAPABILITY as t };