feat(canvas): 绘图工具 - 集成 Excalidraw 并支持后台切换默认引擎

This commit is contained in:
ddCat
2026-08-03 14:58:49 +08:00
parent 7fa5d7215a
commit 6058602bf2
28 changed files with 1617 additions and 177 deletions

View File

@@ -3,6 +3,7 @@ import axios from "axios";
import type { ModelChannel } from "@/stores/use-config-store";
import type { CreditLedgerEntry } from "@/services/api/wallet";
import type { GenerationTask, TaskStatus } from "@/services/api/task-center";
import type { CanvasDrawingEngineSetting } from "@/lib/canvas/canvas-drawing-engine";
const api = axios.create({ baseURL: import.meta.env.VITE_CANVAS_BACKEND_URL || "/api", withCredentials: true });
@@ -31,6 +32,7 @@ export type AuthSessionPayload = {
user: LocalUser | null;
systemChannels?: ModelChannel[];
runtimeLimits?: RuntimeLimits;
drawingEngine?: CanvasDrawingEngineSetting;
};
export type RuntimeLimits = {
@@ -431,6 +433,14 @@ export function resetAdminRuntimePolicySetting() {
return request<{ setting: RuntimePolicySetting }>(api.delete("/admin/settings/runtime-policy"));
}
export function getAdminDrawingEngineSetting() {
return request<{ setting: CanvasDrawingEngineSetting }>(api.get("/admin/settings/drawing-engine"));
}
export function updateAdminDrawingEngineSetting(defaultEngine: CanvasDrawingEngineSetting["defaultEngine"]) {
return request<{ setting: CanvasDrawingEngineSetting }>(api.patch("/admin/settings/drawing-engine", { defaultEngine }));
}
export function listAdminApiLogs(params: AdminListParams = {}) {
return request<{ logs: ApiCallLog[]; total: number; page: number; limit: number }>(api.get("/admin/api-logs", { params }));
}