UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

32 lines (31 loc) 1.24 kB
import { a as normalizeLowercaseStringOrEmpty } from "./string-coerce-mnp54Vah.js"; import "./string-coerce-runtime-CEGJWkQ_.js"; //#region extensions/openrouter/models.ts const OPENROUTER_MISTRAL_MODEL_PREFIXES = [ "mistralai/", "mistral/", "mistral-", "codestral-", "devstral-", "ministral-", "mixtral-", "pixtral-", "voxtral-" ]; function normalizeOpenRouterModelId(modelId) { if (typeof modelId !== "string") return; const normalized = normalizeLowercaseStringOrEmpty(modelId); return normalized.startsWith("openrouter/") ? normalized.slice(11) : normalized; } function isOpenRouterMistralModelId(modelId) { const normalized = normalizeOpenRouterModelId(modelId); return Boolean(normalized && OPENROUTER_MISTRAL_MODEL_PREFIXES.some((prefix) => normalized.startsWith(prefix))); } function isOpenRouterDeepSeekV4ModelId(modelId) { const normalized = normalizeOpenRouterModelId(modelId); if (!normalized?.startsWith("deepseek/")) return false; const deepSeekModelId = normalized.slice(9).split(":", 1)[0]; return deepSeekModelId === "deepseek-v4-flash" || deepSeekModelId === "deepseek-v4-pro"; } //#endregion export { isOpenRouterMistralModelId as n, normalizeOpenRouterModelId as r, isOpenRouterDeepSeekV4ModelId as t };