UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

64 lines (63 loc) 3.04 kB
import { n as normalizeAccountId, t as DEFAULT_ACCOUNT_ID } from "./account-id-Df9e41E6.js"; import { t as getMatrixScopedEnvVarNames } from "./env-vars-Gd1yKtzb.js"; //#region extensions/matrix/src/matrix/client/env-auth.ts function cleanEnv(value) { return typeof value === "string" ? value.trim() : ""; } function resolveGlobalMatrixEnvConfig(env) { return { homeserver: cleanEnv(env.MATRIX_HOMESERVER), userId: cleanEnv(env.MATRIX_USER_ID), accessToken: cleanEnv(env.MATRIX_ACCESS_TOKEN) || void 0, password: cleanEnv(env.MATRIX_PASSWORD) || void 0, deviceId: cleanEnv(env.MATRIX_DEVICE_ID) || void 0, deviceName: cleanEnv(env.MATRIX_DEVICE_NAME) || void 0 }; } function hasReadyMatrixEnvAuth(config) { const homeserver = cleanEnv(config.homeserver); const userId = cleanEnv(config.userId); const accessToken = cleanEnv(config.accessToken); const password = cleanEnv(config.password); return Boolean(homeserver && (accessToken || userId && password)); } function resolveScopedMatrixEnvConfig(accountId, env = process.env) { const keys = getMatrixScopedEnvVarNames(accountId); return { homeserver: cleanEnv(env[keys.homeserver]), userId: cleanEnv(env[keys.userId]), accessToken: cleanEnv(env[keys.accessToken]) || void 0, password: cleanEnv(env[keys.password]) || void 0, deviceId: cleanEnv(env[keys.deviceId]) || void 0, deviceName: cleanEnv(env[keys.deviceName]) || void 0 }; } function resolveMatrixEnvAuthReadiness(accountId, env = process.env) { const normalizedAccountId = normalizeAccountId(accountId); const scoped = resolveScopedMatrixEnvConfig(normalizedAccountId, env); const scopedReady = hasReadyMatrixEnvAuth(scoped); if (normalizedAccountId !== "default") { const keys = getMatrixScopedEnvVarNames(normalizedAccountId); return { ready: scopedReady, homeserver: scoped.homeserver || void 0, userId: scoped.userId || void 0, sourceHint: `${keys.homeserver} (+ auth vars)`, missingMessage: `Set per-account env vars for "${normalizedAccountId}" (for example ${keys.homeserver} + ${keys.accessToken} or ${keys.userId} + ${keys.password}).` }; } const defaultScoped = resolveScopedMatrixEnvConfig(DEFAULT_ACCOUNT_ID, env); const global = resolveGlobalMatrixEnvConfig(env); const defaultScopedReady = hasReadyMatrixEnvAuth(defaultScoped); const globalReady = hasReadyMatrixEnvAuth(global); const defaultKeys = getMatrixScopedEnvVarNames(DEFAULT_ACCOUNT_ID); return { ready: defaultScopedReady || globalReady, homeserver: defaultScoped.homeserver || global.homeserver || void 0, userId: defaultScoped.userId || global.userId || void 0, sourceHint: "MATRIX_* or MATRIX_DEFAULT_*", missingMessage: `Set Matrix env vars for the default account (for example MATRIX_HOMESERVER + MATRIX_ACCESS_TOKEN, MATRIX_USER_ID + MATRIX_PASSWORD, or ${defaultKeys.homeserver} + ${defaultKeys.accessToken}).` }; } //#endregion export { resolveScopedMatrixEnvConfig as i, resolveGlobalMatrixEnvConfig as n, resolveMatrixEnvAuthReadiness as r, hasReadyMatrixEnvAuth as t };