完成视频复刻和优化

This commit is contained in:
Azmat@qq.com
2026-08-27 11:54:47 +08:00
parent c25060c6c6
commit 51620bf25b
46 changed files with 2575 additions and 663 deletions
+4 -4
View File
@@ -11,7 +11,7 @@ import {
import type { BillingSummary, Product, Project } from "../types";
import type { NavigateFn, Page } from "./route-config";
import { ConfirmModal } from "../components/overlays";
import { isQuickCreateBusy } from "../quick-create-lock";
import { hasQuickCreateSuffix, isQuickCreateBusy } from "../quick-create-lock";
type DashTab = "all" | "wip" | "done";
type EntryTone = "primary" | "subtle";
@@ -31,7 +31,7 @@ const CREATE_GROUPS: Array<{
label: "从商品开始",
hint: "围绕商品卖点生成完整带货内容",
cards: [
{ title: "极速成片", desc: "上传商品图片,自动完成整条视频", tone: "primary", page: "quickCreate", icon: "wand" },
{ title: "一键成片", desc: "上传商品图片,自动完成整条视频", tone: "primary", page: "quickCreate", icon: "wand" },
{ title: "专业创作", desc: "控制脚本、资产、故事板与生成", tone: "primary", page: "projectWizard", icon: "folder" },
],
},
@@ -78,12 +78,12 @@ function dashStageLabel(project: Project): string {
function isQuickCreateProject(project: Project) {
if (project.quick_create) return true;
if (project.metadata?.quick_create) return true;
return / · 极速成片$/.test(project.name || "");
return hasQuickCreateSuffix(project.name);
}
function dashCardMeta(project: Project, productTitle: string): string {
const shots = project.video_segment_count ?? project.video_segments?.length ?? 0;
const mode = isQuickCreateBusy(project) ? "极速成片生成中" : isQuickCreateProject(project) ? "极速成片" : "专业创作";
const mode = isQuickCreateBusy(project) ? "一键成片生成中" : isQuickCreateProject(project) ? "一键成片" : "专业创作";
return [mode, productTitle, shots ? `${shots}` : null].filter(Boolean).join(" / ");
}