Files
9router/open-sse/handlers/imageProviders/index.js
luulam b1d368d960 feat: xAI image generate/edit, API key import, and per-provider timeouts
- Add dedicated xAI image adapter with generate + edit (multi-image) via
  /v1/images/generations and /v1/images/edits, plus aspect_ratio/resolution UI
- Support importing existing API keys and exposing connection api-key routes
- Add global/per-provider connect timeout overrides from settings
- Keep unrelated provider UX improvements on this branch; no Grok quota tracking
2026-07-13 16:52:22 +07:00

45 lines
1.2 KiB
JavaScript

// Image provider adapter registry
import createOpenAIAdapter from "./openai.js";
import gemini from "./gemini.js";
import codex from "./codex.js";
import sdwebui from "./sdwebui.js";
import comfyui from "./comfyui.js";
import huggingface from "./huggingface.js";
import nanobanana from "./nanobanana.js";
import falAi from "./falAi.js";
import stabilityAi from "./stabilityAi.js";
import blackForestLabs from "./blackForestLabs.js";
import runwayml from "./runwayml.js";
import cloudflareAi from "./cloudflareAi.js";
import antigravity from "./antigravity.js";
import xai from "./xai.js";
const ADAPTERS = {
openai: createOpenAIAdapter("openai"),
minimax: createOpenAIAdapter("minimax"),
openrouter: createOpenAIAdapter("openrouter"),
recraft: createOpenAIAdapter("recraft"),
"vercel-ai-gateway": createOpenAIAdapter("vercel-ai-gateway"),
xai,
gemini,
codex,
sdwebui,
comfyui,
huggingface,
nanobanana,
antigravity,
"fal-ai": falAi,
"stability-ai": stabilityAi,
"black-forest-labs": blackForestLabs,
runwayml,
"cloudflare-ai": cloudflareAi,
};
export function getImageAdapter(provider) {
return ADAPTERS[provider] || null;
}
export function isImageProvider(provider) {
return provider in ADAPTERS;
}