6c14170b94
CI/CD Pipeline / Check if frontend-only change (push) Has been skipped
CI/CD Pipeline / Frontend Lint (push) Has been skipped
CI/CD Pipeline / PR Build API Image (push) Has been skipped
CI/CD Pipeline / PR Build Web Image (push) Has been skipped
CI/CD Pipeline / PR Build Worker Image (push) Has been skipped
CI/CD Pipeline / Validate - Migration (alembic) (push) Successful in 1m57s
CI/CD Pipeline / Validate - Type Check (mypy) (push) Successful in 2m21s
CI/CD Pipeline / Build Staging Worker Image (push) Successful in 2m21s
CI/CD Pipeline / Frontend Unit Tests (push) Successful in 3m8s
CI/CD Pipeline / Build Staging Web Image (push) Successful in 4m12s
CI/CD Pipeline / Validate - Code Quality (push) Successful in 5m39s
CI/CD Pipeline / Integration Tests (push) Successful in 2m22s
CI/CD Pipeline / Unit Tests (push) Failing after 9m19s
CI/CD Pipeline / Build Production Web Image (push) Has been skipped
CI/CD Pipeline / Build Production API Image (push) Has been skipped
CI/CD Pipeline / CI Gate (push) Has been skipped
CI/CD Pipeline / Build Production Worker Image (push) Has been skipped
CI/CD Pipeline / Deploy Production (push) Has been skipped
CI/CD Pipeline / Production Browser E2E (push) Has been skipped
CI/CD Pipeline / Build Staging API Image (push) Successful in 11m26s
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (push) Successful in 49s
CI/CD Pipeline / ACR Image Cleanup (push) Successful in 41s
CI/CD Pipeline / Staging E2E Tests (push) Successful in 47s
CI/CD Pipeline / Staging API Integration Tests (push) Successful in 2m49s
CI/CD Pipeline / Canary Release to Production (push) Has been skipped
31 lines
825 B
TypeScript
31 lines
825 B
TypeScript
/**
|
|
* AI 推荐 + 封面生成 API
|
|
*/
|
|
import apiClient from "../client"
|
|
import type {
|
|
AIRecommendRequest,
|
|
AIRecommendResponse,
|
|
GenerateCoverRequest,
|
|
GenerateCoverResponse,
|
|
} from "./types"
|
|
|
|
/** AI 推荐片段方案 */
|
|
export async function aiRecommendClips(
|
|
templateId: string,
|
|
data: AIRecommendRequest,
|
|
): Promise<AIRecommendResponse> {
|
|
const response = await apiClient.post(`/templates/${templateId}/editor/ai-recommend`, data)
|
|
return response.data
|
|
}
|
|
|
|
/** AI 生成封面 */
|
|
export async function generateCover(
|
|
templateId: string,
|
|
data: GenerateCoverRequest,
|
|
): Promise<GenerateCoverResponse> {
|
|
const response = await apiClient.post(`/templates/${templateId}/editor/generate-cover`, data, {
|
|
timeout: 180000, // 封面生成涉及 MediaKit 抽帧,最长 180 秒
|
|
})
|
|
return response.data
|
|
}
|