9router / open-sse /executors /xiaomi-tokenplan.js
2api
feat: configurable stream stall timeout + per-provider UI
88c4c60
Raw
History Blame Contribute Delete
755 Bytes
import { DefaultExecutor } from "./default.js";
import { resolveXiaomiTokenplanBaseUrl } from "../config/providers.js";
import { getModelTargetFormat } from "../config/providerModels.js";
import { FORMATS } from "../translator/formats.js";
export class XiaomiTokenplanExecutor extends DefaultExecutor {
constructor() {
super("xiaomi-tokenplan");
}
// Claude-native aliases route to the Anthropic-compatible messages endpoint
buildUrl(model, stream, urlIndex = 0, credentials = null) {
const baseUrl = resolveXiaomiTokenplanBaseUrl(credentials);
if (getModelTargetFormat(model, model) === FORMATS.CLAUDE) {
return `${baseUrl.replace(/\/v1\/?$/, "/anthropic/v1")}/messages`;
}
return `${baseUrl}/chat/completions`;
}
}