15bd55d3a9
Add proxy routes for stable-diffusion.cpp's /sdapi/v1/txt2img, /sdapi/v1/img2img, and /sdapi/v1/loras endpoints. POST endpoints use proxyInferenceHandler (model in JSON body), GET /loras uses proxyGETModelHandler (model in query param). Update the image playground with a dual-mode UI supporting both OpenAI and SDAPI backends. In SDAPI mode, loras are fetched first to prime the server-side cache, and all txt2img parameters are exposed (negative prompt, steps, cfg_scale, seed, batch_size, clip_skip, sampler, scheduler, lora selection with multipliers). - Add 3 sdapi route registrations in proxymanager.go - Add sdApi.ts client with generateSdImage and fetchSdLoras - Add SDAPI types (SdApiTxt2ImgRequest, SdApiResponse, etc.) - Add /sdapi to vite dev proxy config - Add backend tests for sdapi routing - Support batch image display in gallery grid https://claude.ai/code/session_0186MGX6NXdHVBTv2KH45fqn --------- Co-authored-by: Claude <noreply@anthropic.com>
39 lines
1000 B
TypeScript
39 lines
1000 B
TypeScript
import { defineConfig } from "vite";
|
|
import { svelte } from "@sveltejs/vite-plugin-svelte";
|
|
import tailwindcss from "@tailwindcss/vite";
|
|
import { compression } from "vite-plugin-compression2";
|
|
|
|
// https://vite.dev/config/
|
|
export default defineConfig({
|
|
plugins: [
|
|
svelte(),
|
|
tailwindcss(),
|
|
compression({
|
|
algorithm: "gzip",
|
|
exclude: [/\.(br)$/, /\.(gz)$/],
|
|
threshold: 1024,
|
|
}),
|
|
compression({
|
|
algorithm: "brotliCompress",
|
|
exclude: [/\.(br)$/, /\.(gz)$/],
|
|
threshold: 1024,
|
|
filename: "[path][base].br",
|
|
}),
|
|
],
|
|
base: "/ui/",
|
|
build: {
|
|
outDir: "../proxy/ui_dist",
|
|
assetsDir: "assets",
|
|
},
|
|
server: {
|
|
proxy: {
|
|
"/api": "http://localhost:8080", // Proxy API calls to Go backend during development
|
|
"/logs": "http://localhost:8080",
|
|
"/upstream": "http://localhost:8080",
|
|
"/unload": "http://localhost:8080",
|
|
"/v1": "http://localhost:8080",
|
|
"/sdapi": "http://localhost:8080",
|
|
},
|
|
},
|
|
});
|