openclaw
Version:
Multi-channel AI gateway with extensible messaging integrations
30 lines (29 loc) • 1.3 kB
JavaScript
import { r as trimToUndefined } from "./credential-planner-DAMjVc9j.js";
import "./credentials-CXbS4PS0.js";
import { n as resolveConfiguredSecretInputWithFallback } from "./resolve-configured-secret-input-string-B8zlpQOU.js";
//#region src/gateway/auth-token-resolution.ts
/** Resolves gateway.auth.token with configurable env fallback and SecretRef diagnostics. */
async function resolveGatewayAuthToken(params) {
const explicitToken = trimToUndefined(params.explicitToken);
if (explicitToken) return {
token: explicitToken,
source: "explicit",
secretRefConfigured: false
};
const resolved = await resolveConfiguredSecretInputWithFallback({
config: params.cfg,
env: params.env,
value: params.cfg.gateway?.auth?.token,
path: "gateway.auth.token",
unresolvedReasonStyle: params.unresolvedReasonStyle,
...params.envFallback !== "never" ? { readFallback: () => params.env.OPENCLAW_GATEWAY_TOKEN } : {}
});
return {
...resolved.value ? { token: resolved.value } : {},
...resolved.source ? { source: resolved.source === "fallback" ? "env" : resolved.source } : {},
secretRefConfigured: resolved.secretRefConfigured,
...resolved.unresolvedRefReason ? { unresolvedRefReason: resolved.unresolvedRefReason } : {}
};
}
//#endregion
export { resolveGatewayAuthToken as t };