diff --git a/apps/web/src/api/cover-templates.ts b/apps/web/src/api/cover-templates.ts index 87ec268fe..69d2f4d7e 100644 --- a/apps/web/src/api/cover-templates.ts +++ b/apps/web/src/api/cover-templates.ts @@ -3,7 +3,7 @@ * 后端路由: /api/v1/cover-templates */ import apiClient from "./client" -import type { CoverTemplate } from "@/pages/editing-planner/types" +import type { CoverTemplate } from "@/pages/generate/types/cover" export interface CoverTemplateListResponse { items: CoverTemplate[] diff --git a/apps/web/src/api/generation/confirm.ts b/apps/web/src/api/generation/confirm.ts index e559e6e35..863615c10 100755 --- a/apps/web/src/api/generation/confirm.ts +++ b/apps/web/src/api/generation/confirm.ts @@ -7,7 +7,7 @@ export const confirmGeneration = async ( params: ConfirmGenerationRequest, ): Promise => { const response = await apiClient.post( - `/tasks/${taskId}/confirm`, + `/generation/tasks/${taskId}/confirm`, params, ) return response.data diff --git a/apps/web/src/api/template-editor/aiFeatures.ts b/apps/web/src/api/template-editor/aiFeatures.ts index 05ce3526b..ed4727c56 100644 --- a/apps/web/src/api/template-editor/aiFeatures.ts +++ b/apps/web/src/api/template-editor/aiFeatures.ts @@ -24,7 +24,7 @@ export async function generateCover( data: GenerateCoverRequest, ): Promise { const response = await apiClient.post(`/templates/${templateId}/editor/generate-cover`, data, { - timeout: 180000, // 封面生成涉及 MediaKit 抽帧,最长 180 秒 + timeout: 300000, // 封面生成涉及 MediaKit 抽帧,最长 300 秒 }) return response.data } diff --git a/apps/web/src/pages/editing-planner/types/index.ts b/apps/web/src/pages/editing-planner/types/index.ts index ee0f695da..5785a9856 100644 --- a/apps/web/src/pages/editing-planner/types/index.ts +++ b/apps/web/src/pages/editing-planner/types/index.ts @@ -71,9 +71,6 @@ export { TEXT_STICKER_PRESET_LABELS, } from "./sticker" -/* 封面 */ -export { type CoverMode, type CoverConfig, DEFAULT_COVER_CONFIG, type CoverTemplate } from "./cover" - /* 片段数据 */ export { type ClipType, type ClipData } from "./clip" diff --git a/apps/web/src/pages/generate/components/GenerateStepContent.tsx b/apps/web/src/pages/generate/components/GenerateStepContent.tsx index 3d44ffe6a..55efc5175 100644 --- a/apps/web/src/pages/generate/components/GenerateStepContent.tsx +++ b/apps/web/src/pages/generate/components/GenerateStepContent.tsx @@ -7,7 +7,7 @@ import React from "react" import type { EditingTemplate } from "@/api/editing-planner" import type { PresetVoiceItem } from "@/api/voices" import type { VoiceClone } from "@/api/voice-clone" -import type { CoverConfig } from "../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { TitleSettings } from "../types" import type { PreviewItem, PreviewStatus } from "../hooks/useStep4Preview" import Step1TemplateSelect from "../components/Step1TemplateSelect" diff --git a/apps/web/src/pages/generate/components/Step6CoverSettings.tsx b/apps/web/src/pages/generate/components/Step6CoverSettings.tsx index 7ea7d87c3..2a1bd595f 100755 --- a/apps/web/src/pages/generate/components/Step6CoverSettings.tsx +++ b/apps/web/src/pages/generate/components/Step6CoverSettings.tsx @@ -1,6 +1,6 @@ import React from "react" import { Modal, Spin } from "antd" -import type { CoverConfig } from "../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import { useStep6Cover } from "../hooks/useStep6Cover" import Button from "@/components/ui/Button" import CoverSettingsModal from "./cover-settings/CoverSettingsModal" diff --git a/apps/web/src/pages/generate/components/Step7ConfirmGenerate.tsx b/apps/web/src/pages/generate/components/Step7ConfirmGenerate.tsx index 3b5b4a419..84c412098 100755 --- a/apps/web/src/pages/generate/components/Step7ConfirmGenerate.tsx +++ b/apps/web/src/pages/generate/components/Step7ConfirmGenerate.tsx @@ -4,7 +4,7 @@ import React from "react" import type { EditingTemplate } from "@/api/editing-planner" import type { GeneratedVideo } from "@/api/template-editor" -import type { CoverConfig } from "../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { VoiceClone } from "@/api/voice-clone" import type { PresetVoiceItem } from "@/api/voices" import { useStep7Generate } from "../hooks/useStep7Generate" diff --git a/apps/web/src/pages/generate/components/cover-settings/CoverEditorModal.tsx b/apps/web/src/pages/generate/components/cover-settings/CoverEditorModal.tsx index b0ed69175..e4bac6fec 100644 --- a/apps/web/src/pages/generate/components/cover-settings/CoverEditorModal.tsx +++ b/apps/web/src/pages/generate/components/cover-settings/CoverEditorModal.tsx @@ -1,5 +1,5 @@ import React, { useState } from "react" -import type { CoverTemplate } from "../../../editing-planner/types" +import type { CoverTemplate } from "../../types/cover" import Modal from "@/components/ui/Modal" import Button from "@/components/ui/Button" diff --git a/apps/web/src/pages/generate/components/cover-settings/CoverModeSelector.tsx b/apps/web/src/pages/generate/components/cover-settings/CoverModeSelector.tsx index 81f794282..df50a20c8 100755 --- a/apps/web/src/pages/generate/components/cover-settings/CoverModeSelector.tsx +++ b/apps/web/src/pages/generate/components/cover-settings/CoverModeSelector.tsx @@ -1,5 +1,5 @@ import React from "react" -import type { CoverMode } from "../../../editing-planner/types" +import type { CoverMode } from "../../types/cover" interface CoverModeSelectorProps { mode: CoverMode diff --git a/apps/web/src/pages/generate/components/cover-settings/CoverSettingsModal.tsx b/apps/web/src/pages/generate/components/cover-settings/CoverSettingsModal.tsx index 9ca2fa3c6..4359a8f3d 100644 --- a/apps/web/src/pages/generate/components/cover-settings/CoverSettingsModal.tsx +++ b/apps/web/src/pages/generate/components/cover-settings/CoverSettingsModal.tsx @@ -1,5 +1,5 @@ import React from "react" -import type { CoverTemplate } from "../../../editing-planner/types" +import type { CoverTemplate } from "../../types/cover" import Modal from "@/components/ui/Modal" import Button from "@/components/ui/Button" diff --git a/apps/web/src/pages/generate/constants.ts b/apps/web/src/pages/generate/constants.ts index 478523f38..fc93ace66 100644 --- a/apps/web/src/pages/generate/constants.ts +++ b/apps/web/src/pages/generate/constants.ts @@ -2,7 +2,7 @@ * 智能剪辑页面 — 常量定义 */ -import type { CoverConfig } from "../editing-planner/types" +import type { CoverConfig } from "./types/cover" /* ── 克隆声音状态配置 ── */ export const CLONE_STATUS_CONFIG: Record = { diff --git a/apps/web/src/pages/generate/hooks/generate-video/types.ts b/apps/web/src/pages/generate/hooks/generate-video/types.ts index 1c065d69b..0d2e1121a 100755 --- a/apps/web/src/pages/generate/hooks/generate-video/types.ts +++ b/apps/web/src/pages/generate/hooks/generate-video/types.ts @@ -1,5 +1,5 @@ import type { GeneratedVideo, EditPlanConfig } from "@/api/template-editor" -import type { CoverConfig } from "../../../editing-planner/types" +import type { CoverConfig } from "../../types/cover" import type { TitleSettings } from "../../types" /** useGenerateVideo 入参 */ diff --git a/apps/web/src/pages/generate/hooks/useGenerateFormState/index.ts b/apps/web/src/pages/generate/hooks/useGenerateFormState/index.ts index 7367a7ef8..306b3e11f 100755 --- a/apps/web/src/pages/generate/hooks/useGenerateFormState/index.ts +++ b/apps/web/src/pages/generate/hooks/useGenerateFormState/index.ts @@ -6,7 +6,7 @@ import { useState } from "react" import { useSearchParams } from "react-router-dom" import type { GeneratedVideo } from "@/api/template-editor" import type { EditingTemplate } from "@/api/editing-planner" -import type { CoverConfig } from "../../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { PresetVoiceItem } from "@/api/voices" import { DEFAULT_COVER_SETTINGS } from "../../constants" import type { TitleSettings } from "../../types" diff --git a/apps/web/src/pages/generate/hooks/useGenerateFormState/usePlanConfigLoader.ts b/apps/web/src/pages/generate/hooks/useGenerateFormState/usePlanConfigLoader.ts index 457716ac2..c79d95315 100755 --- a/apps/web/src/pages/generate/hooks/useGenerateFormState/usePlanConfigLoader.ts +++ b/apps/web/src/pages/generate/hooks/useGenerateFormState/usePlanConfigLoader.ts @@ -1,5 +1,5 @@ import { useEffect } from "react" -import type { CoverConfig } from "../../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { TitleSettings } from "../../types" import type { TitleConfig } from "@/api/template-editor" import { getEditPlan } from "@/api/template-editor" diff --git a/apps/web/src/pages/generate/hooks/useGenerateFormState/useTitleCoverSync.ts b/apps/web/src/pages/generate/hooks/useGenerateFormState/useTitleCoverSync.ts index af6bdbafa..9fea0cf05 100755 --- a/apps/web/src/pages/generate/hooks/useGenerateFormState/useTitleCoverSync.ts +++ b/apps/web/src/pages/generate/hooks/useGenerateFormState/useTitleCoverSync.ts @@ -1,6 +1,6 @@ import { useEffect } from "react" import type { TitleSettings } from "../../types" -import type { CoverConfig } from "../../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { EditingTemplate } from "@/api/editing-planner" interface UseTitleCoverSyncOptions { diff --git a/apps/web/src/pages/generate/hooks/useStep6Cover.ts b/apps/web/src/pages/generate/hooks/useStep6Cover.ts index e76c5146a..fb8dc957d 100644 --- a/apps/web/src/pages/generate/hooks/useStep6Cover.ts +++ b/apps/web/src/pages/generate/hooks/useStep6Cover.ts @@ -4,7 +4,7 @@ */ import { useCallback, useEffect, useState } from "react" import { message } from "antd" -import type { CoverConfig, CoverTemplate } from "../../editing-planner/types" +import type { CoverConfig, CoverTemplate } from "../types/cover" import { generateCover } from "@/api/template-editor" import { fetchCoverTemplates, diff --git a/apps/web/src/pages/generate/hooks/useStep7Generate.ts b/apps/web/src/pages/generate/hooks/useStep7Generate.ts index a3ef3ff99..44ea08ad2 100644 --- a/apps/web/src/pages/generate/hooks/useStep7Generate.ts +++ b/apps/web/src/pages/generate/hooks/useStep7Generate.ts @@ -6,7 +6,7 @@ import { useMemo } from "react" import { useQuery } from "@tanstack/react-query" import type { EditingTemplate } from "@/api/editing-planner" import type { GeneratedVideo } from "@/api/template-editor" -import type { CoverConfig } from "../../editing-planner/types" +import type { CoverConfig } from "../types/cover" import type { VoiceClone } from "@/api/voice-clone" import type { PresetVoiceItem } from "@/api/voices" import { getAssetsByKind } from "@/api/assets" diff --git a/apps/web/src/pages/editing-planner/types/cover.ts b/apps/web/src/pages/generate/types/cover.ts similarity index 92% rename from apps/web/src/pages/editing-planner/types/cover.ts rename to apps/web/src/pages/generate/types/cover.ts index 7e63beca5..08e10a14b 100644 --- a/apps/web/src/pages/editing-planner/types/cover.ts +++ b/apps/web/src/pages/generate/types/cover.ts @@ -1,5 +1,6 @@ /** - * 封面配置类型 + * 智能剪辑封面类型定义 + * 独立于 editing-planner,仅供 generate 模块使用 */ /** 封面来源模式 */