e9d4885f7a
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 18s
CI/CD Pipeline / Validate - Type Check (mypy) (pull_request) Successful in 58s
CI/CD Pipeline / Frontend Lint (pull_request) Failing after 18s
CI/CD Pipeline / Validate - Migration (alembic) (pull_request) Successful in 53s
CI/CD Pipeline / Validate - Code Quality (pull_request) Successful in 3m51s
CI/CD Pipeline / PR Build API Image (pull_request) Successful in 2m27s
CI/CD Pipeline / PR Build Web Image (pull_request) Failing after 2m25s
Preview Deploy / Deploy Preview Environment (pull_request) Failing after 33s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 1m16s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 3m35s
AI Code Review / AI Code Review (pull_request) Successful in 4m16s
CI/CD Pipeline / PR Build Worker Image (pull_request) Successful in 8m17s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Failing after 30s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 5m26s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m18s
CI/CD Pipeline / Production Browser E2E (pull_request) Has been cancelled
CI/CD Pipeline / ACR Image Cleanup (pull_request) Failing after 1310h22m18s
CI/CD Pipeline / Staging E2E Tests (pull_request) Failing after 1310h22m22s
CI/CD Pipeline / Deploy Production (pull_request) Failing after 1310h22m24s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Failing after 1310h44m5s
CI/CD Pipeline / Build Production Web Image (pull_request) Failing after 1310h44m7s
CI/CD Pipeline / Build Production API Image (pull_request) Failing after 1310h44m9s
CI/CD Pipeline / Build Staging Worker Image (pull_request) Failing after 1310h58m30s
CI/CD Pipeline / Build Staging Web Image (pull_request) Failing after 1310h58m32s
CI/CD Pipeline / Build Staging API Image (pull_request) Failing after 1310h58m34s
CI/CD Pipeline / Build Production Worker Image (pull_request) Failing after 1311h16m32s
CI/CD Pipeline / Staging API Integration Tests (pull_request) Failing after 1310h54m45s
将 3036 行的 GeneratePage.tsx 按 Phase 1 计划拆分: 新增文件: - constants.ts — 12组常量(STEPS/TITLE_PRESETS/AI标题模板/智能匹配理由/渐变色/图标等) - types.ts — TitleSettings/SmartMatchResult/AiTitleResult 等类型定义 - components/GenerateHeader.tsx — 页头组件 - components/GenerateStepsBar.tsx — 步骤条组件 - components/GenerateResultPanel.tsx — 右侧生成结果面板 GeneratePage.tsx 从 3036 行 → 2682 行(-354行) 纯结构重构,业务逻辑零改动
41 lines
948 B
TypeScript
41 lines
948 B
TypeScript
/**
|
||
* 智能剪辑页头组件
|
||
*/
|
||
import React from "react"
|
||
import { ThunderboltOutlined } from "@ant-design/icons"
|
||
|
||
interface GenerateHeaderProps {
|
||
/** 是否来自模板草稿(URL 带 edit_plan_id) */
|
||
fromEditPlan?: boolean
|
||
}
|
||
|
||
const GenerateHeader: React.FC<GenerateHeaderProps> = ({ fromEditPlan }) => {
|
||
return (
|
||
<div className="xx-generate-head">
|
||
<div>
|
||
<h2>
|
||
<ThunderboltOutlined style={{ marginRight: 8 }} />
|
||
智能剪辑
|
||
</h2>
|
||
<p>快速生成短视频,支持多种风格和素材组合</p>
|
||
</div>
|
||
{fromEditPlan && (
|
||
<span
|
||
style={{
|
||
background: "#dbeafe",
|
||
color: "#1d4ed8",
|
||
fontSize: 12,
|
||
padding: "4px 10px",
|
||
borderRadius: 999,
|
||
fontWeight: 600,
|
||
}}
|
||
>
|
||
🎬 来自模板草稿
|
||
</span>
|
||
)}
|
||
</div>
|
||
)
|
||
}
|
||
|
||
export default GenerateHeader
|