视频提词优化管理后台配置

This commit is contained in:
2026-06-22 14:39:00 +08:00
parent f62dd8bf67
commit 73567b4143
16 changed files with 1983 additions and 92 deletions
+88
View File
@@ -581,3 +581,91 @@ export interface AdminShotSegmentQueryParams {
page?: number;
pageSize?: number;
}
// ── Video Prompt Schema Config (Admin) ─────────────────────
export type VideoPromptSchemaNodeType = 'object' | 'array' | 'string' | 'number' | 'boolean' | 'flow';
export interface VideoPromptSchemaNode {
key: string;
label: string;
type: VideoPromptSchemaNodeType | string;
enabled: boolean;
editable: boolean;
maxLength?: number;
value?: any;
children?: VideoPromptSchemaNode[];
contentKey?: string;
contentAliases?: string[];
itemFields?: VideoPromptFlowItemField[];
}
export interface VideoPromptFlowItemField {
key: string;
label: string;
enabled: boolean;
editable: boolean;
maxLength?: number;
value?: any;
}
export interface VideoPromptTimePlanSegment {
stage: string;
description: string;
}
export interface VideoPromptTimePlanRule {
minDuration: number;
maxDuration: number;
ratios: number[];
segments: VideoPromptTimePlanSegment[];
}
export interface VideoPromptSchemaConfigData {
version: string;
enabled: boolean;
sections: VideoPromptSchemaNode[];
timePlanRules: VideoPromptTimePlanRule[];
}
export interface VideoPromptSchemaConfigOut {
id?: string | null;
key: string;
description?: string | null;
isEnabled: boolean;
usingDefault: boolean;
data: VideoPromptSchemaConfigData;
defaultData: VideoPromptSchemaConfigData;
createdAt?: string | null;
updatedAt?: string | null;
}
export interface VideoPromptSchemaConfigSavePayload {
is_enabled: boolean;
data: any;
}
export interface VideoPromptSchemaExportOut {
version: string;
key: string;
isEnabled: boolean;
data: VideoPromptSchemaConfigData;
}
export interface VideoPromptSchemaPreviewPayload {
is_enabled: boolean;
data: any;
duration: number;
aspect_ratio: string;
resolution: string;
frame_rate: string;
supported_durations?: number[];
supported_ratios?: string[];
supported_resolutions?: string[];
}
export interface VideoPromptSchemaPreviewOut {
schemaConfigSnapshot: Record<string, any>;
runtimeSchema: Record<string, any>;
timePlan: Record<string, any>[];
}