UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

41 lines (40 loc) • 1.87 kB
import { l as normalizeOptionalString } from "./string-coerce-1VuiLaaR.mjs"; import "./session-key-DY3MOX4N.mjs"; import { n as normalizeAccountId } from "./account-id-ifCOO7_9.mjs"; import { n as normalizeMessageChannel } from "./message-channel-core-D9WI2Y8r.mjs"; import { t as isDeliverableMessageChannel } from "./message-channel-normalize-JIxBUi40.mjs"; import "./message-channel-AvA3r_Xp.mjs"; //#region src/cli/message-secret-scope.ts function resolveScopedChannelCandidate(value) { if (typeof value !== "string") return; const normalized = normalizeMessageChannel(value); if (!normalized || !isDeliverableMessageChannel(normalized)) return; return normalized; } function resolveChannelFromTargetValue(target) { const trimmed = normalizeOptionalString(target); if (!trimmed) return; const separator = trimmed.indexOf(":"); if (separator <= 0) return; return resolveScopedChannelCandidate(trimmed.slice(0, separator)); } function resolveChannelFromTargets(targets) { if (!Array.isArray(targets)) return; const channels = new Set(targets.map(resolveChannelFromTargetValue).filter((channel) => channel !== void 0)); return channels.size === 1 ? [...channels][0] : void 0; } function resolveScopedAccountId(value) { const trimmed = normalizeOptionalString(value); if (!trimmed) return; return normalizeAccountId(trimmed); } function resolveMessageSecretScope(params) { const channel = resolveScopedChannelCandidate(params.channel) ?? resolveChannelFromTargetValue(params.target) ?? resolveChannelFromTargets(params.targets) ?? resolveScopedChannelCandidate(params.fallbackChannel); const accountId = resolveScopedAccountId(params.accountId) ?? resolveScopedAccountId(params.fallbackAccountId ?? void 0); return { ...channel ? { channel } : {}, ...accountId ? { accountId } : {} }; } //#endregion export { resolveMessageSecretScope as t };