Files
OmniRoute/test_target_format.ts
T
diegosouzapw 5ad687c6d8 fix(ui/ci): use ProviderIcon for Provider header breadcrumbs and add permissions to electron-release.yml (#745, #761)
- Use ProviderIcon for internal .png paths solving SVG provider 404 images (#745).
- Add id-token: write and packages: write permissions to .github/workflows/electron-release.yml to fix permissions denied failure when calling the reusable workflow npm-publish.yml (#761).
- Fix tests and ESM resolution for autoUpdate.ts override logic.
2026-03-30 07:38:30 -03:00

37 lines
1.1 KiB
TypeScript

import { getTargetFormat } from "./open-sse/services/provider.ts";
import { parseModelFromRequest, resolveProviderAndModel } from "./open-sse/handlers/chatCore.ts"; // Since they're in chatCore directly?
import { getProviderConfig } from "./open-sse/services/provider.ts";
const body = { model: "codex/gpt-5.3-codex-xhigh" };
const parsedModel = body.model;
function resolveProviderAndModel(rawModel, providerFromPath = "") {
let provider = providerFromPath;
let model = rawModel;
let resolvedAlias = null;
if (rawModel && rawModel.includes("/")) {
const parts = rawModel.split("/");
provider = parts[0];
model = parts.slice(1).join("/");
}
return { provider, model, resolvedAlias: null };
}
const { provider, model, resolvedAlias } = resolveProviderAndModel(parsedModel, "");
const effectiveModel = resolvedAlias || model;
const config = getProviderConfig(provider);
const modelTargetFormat = config?.models?.find((m) => m.id === effectiveModel)?.targetFormat;
const targetFormat = modelTargetFormat || getTargetFormat(provider);
console.log({
provider,
model,
resolvedAlias,
effectiveModel,
modelTargetFormat,
targetFormat,
});