From fe5d5711900a879b8b63264bda3c9c86278c9265 Mon Sep 17 00:00:00 2001 From: Your Name Date: Sat, 11 Apr 2026 19:05:55 +0800 Subject: [PATCH] fix: keep video duration input separators --- .../settings/admin-settings-client.tsx | 21 ++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/app/(admin)/settings/admin-settings-client.tsx b/app/(admin)/settings/admin-settings-client.tsx index 87ce33728..011dc8de4 100644 --- a/app/(admin)/settings/admin-settings-client.tsx +++ b/app/(admin)/settings/admin-settings-client.tsx @@ -398,7 +398,7 @@ function formatVideoDurationOptionsInput(options?: number[]) { function parseVideoDurationOptionsInput(value: string) { return normalizeVideoDurationOptions( String(value || "") - .split(/[,\n,、\s]+/) + .split(/[,\n,、;;|/\\\s]+/) .map((item) => item.trim()) .filter(Boolean) ); @@ -2408,6 +2408,8 @@ export function AdminSettingsClient() { // 🆕 图片生成模型特性配置 imageGenConfig: createDefaultImageGenConfig(), }); + const [videoDurationOptionsInput, setVideoDurationOptionsInput] = + useState(""); const [showModelDialog, setShowModelDialog] = useState(false); const [editingModel, setEditingModel] = useState(null); const [modelAvatarUploading, setModelAvatarUploading] = useState(false); @@ -4987,6 +4989,7 @@ export function AdminSettingsClient() { excludeFromFailover: false, imageGenConfig: createDefaultImageGenConfig(), }); + setVideoDurationOptionsInput(""); setEditingModel(null); }; @@ -11745,12 +11748,14 @@ export function AdminSettingsClient() {
{ + const nextInput = e.target.value; + setVideoDurationOptionsInput(nextInput); const durationOptions = parseVideoDurationOptionsInput( - e.target.value + nextInput ); setModelForm({ ...modelForm, @@ -12163,6 +12168,12 @@ export function AdminSettingsClient() { imageGenConfig: (model as any).imageGenConfig || createDefaultImageGenConfig(), }); + setVideoDurationOptionsInput( + formatVideoDurationOptionsInput( + (model as any).imageGenConfig + ?.videoDurationOptions + ) + ); setEditingModel(model.id); setShowModelDialog(true); }}