feat(platform): 开源发布 - 初始化 Open AI Canvas

This commit is contained in:
ddCat committed 2026-07-22 14:29:10 +08:00
commit aea35896eb
365 files changed
+66410

No files matched your search

@@ -0,0 +1,22 @@
import type { CanvasGenerationBatch, CanvasGenerationBatchStatus } from "@/types/canvas";
const TASK_CAPACITY_MESSAGE = "同时排队或运行的任务最多 5 个";
export function isGenerationTaskCapacityError(error: unknown) {
return error instanceof Error && error.message.includes(TASK_CAPACITY_MESSAGE);
}
export function isGenerationCostUncertainError(error: unknown) {
const message = error instanceof Error ? error.message : String(error || "");
return /(?:^|\D)524(?:\D|$)|费用状态不确定|扣费状态不确定|可能已经产生费用/i.test(message);
}
export function generationBatchStatus(batch: CanvasGenerationBatch): CanvasGenerationBatchStatus {
const statuses = batch.items.map((item) => item.status);
if (statuses.length > 0 && statuses.every((status) => status === "succeeded")) return "completed";
if (statuses.some((status) => status === "waiting" || status === "submitting" || status === "queued" || status === "running")) {
return statuses.some((status) => status !== "waiting") ? "running" : "queued";
}
if (statuses.some((status) => status === "failed")) return "partial_failed";
return "cancelled";
}