diff --git a/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx b/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx index d1938df561..3752439a9c 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx @@ -267,7 +267,7 @@ export const PromptBox2D = ({ const handleGenerate = async () => { const busy = Boolean(isEnqueueing ?? internalEnqueueing); if (busy || isDisabled || !prompt.trim()) return; - if (prompt.length > maxLen) { + if (isFinite(maxLen) && prompt.length > maxLen) { toast.error( `Prompt exceeds the ${maxLen} character limit for this model`, ); @@ -427,9 +427,9 @@ export const PromptBox2D = ({ onBlur={() => {}} /> maxLen ? "text-red-500" : "text-base-fg/40"}`} + className={`absolute -bottom-1 right-0 text-[10px] tabular-nums ${isFinite(maxLen) && prompt.length > maxLen ? "text-red-500" : "text-base-fg/40"}`} > - {prompt.length} / {maxLen} + {prompt.length} / {isFinite(maxLen) ? maxLen : "∞"} diff --git a/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx b/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx index fd3f11f1ae..413478c03e 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx @@ -269,7 +269,7 @@ export const PromptBox3D = ({ const maxLen = selectedImageModel?.maxPromptLength ?? 1000; const handleEnqueue = async () => { - if (prompt.length > maxLen) { + if (isFinite(maxLen) && prompt.length > maxLen) { toast.error(`Prompt exceeds the ${maxLen} character limit for this model`); return; } @@ -632,8 +632,8 @@ export const PromptBox3D = ({ isPromptBoxFocused.value = false; }} /> - maxLen ? "text-red-500" : "text-base-fg/40"}`}> - {prompt.length} / {maxLen} + maxLen ? "text-red-500" : "text-base-fg/40"}`}> + {prompt.length} / {isFinite(maxLen) ? maxLen : "∞"} diff --git a/frontend/libs/components/promptbox/src/lib/PromptBoxEdit.tsx b/frontend/libs/components/promptbox/src/lib/PromptBoxEdit.tsx index 4233298a77..47e7664c2f 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBoxEdit.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBoxEdit.tsx @@ -262,7 +262,7 @@ export const PromptBoxEdit = ({ const handleGenerate = async () => { const busy = Boolean(isEnqueueing ?? internalEnqueueing); if (busy || isDisabled || !prompt.trim()) return; - if (prompt.length > maxLen) { + if (isFinite(maxLen) && prompt.length > maxLen) { toast.error( `Prompt exceeds the ${maxLen} character limit for this model`, ); @@ -439,9 +439,9 @@ export const PromptBoxEdit = ({ onBlur={() => setIsFocused(false)} /> maxLen ? "text-red-500" : "text-white/40"}`} + className={`absolute -bottom-1 right-0 text-[10px] tabular-nums ${isFinite(maxLen) && prompt.length > maxLen ? "text-red-500" : "text-white/40"}`} > - {prompt.length} / {maxLen} + {prompt.length} / {isFinite(maxLen) ? maxLen : "∞"} diff --git a/frontend/libs/components/promptbox/src/lib/PromptBoxImage.tsx b/frontend/libs/components/promptbox/src/lib/PromptBoxImage.tsx index 58104bd2e0..aba3e1caf0 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBoxImage.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBoxImage.tsx @@ -263,7 +263,7 @@ export const PromptBoxImage = ({ console.warn("Cannot generate image: prompt is empty"); return; } - if (prompt.length > maxLen) { + if (isFinite(maxLen) && prompt.length > maxLen) { toast.error( `Prompt exceeds the ${maxLen} character limit for this model`, ); @@ -493,9 +493,9 @@ export const PromptBoxImage = ({ onBlur={() => setIsFocused(false)} /> maxLen ? "text-red-500" : "text-base-fg/40"}`} + className={`absolute -bottom-1 right-0 text-[10px] tabular-nums ${isFinite(maxLen) && prompt.length > maxLen ? "text-red-500" : "text-base-fg/40"}`} > - {prompt.length} / {maxLen} + {prompt.length} / {isFinite(maxLen) ? maxLen : "∞"} diff --git a/frontend/libs/components/promptbox/src/lib/PromptBoxVideo.tsx b/frontend/libs/components/promptbox/src/lib/PromptBoxVideo.tsx index 49198def56..28be90f6b7 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBoxVideo.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBoxVideo.tsx @@ -591,7 +591,7 @@ export const PromptBoxVideo = ({ toast.error("Please enter a prompt to generate video"); return; } - if (prompt.length > maxLen) { + if (isFinite(maxLen) && prompt.length > maxLen) { toast.error( `Prompt exceeds the ${maxLen} character limit for this model`, ); @@ -933,9 +933,9 @@ export const PromptBoxVideo = ({ /> )} maxLen ? "text-red-500" : "text-base-fg/40"}`} + className={`absolute -bottom-1 right-0 text-[10px] tabular-nums ${isFinite(maxLen) && prompt.length > maxLen ? "text-red-500" : "text-base-fg/40"}`} > - {prompt.length} / {maxLen} + {prompt.length} / {isFinite(maxLen) ? maxLen : "∞"} diff --git a/frontend/libs/model-list/src/lib/lists/ImageModels.ts b/frontend/libs/model-list/src/lib/lists/ImageModels.ts index c8b0bdb900..7d9bf8b02a 100644 --- a/frontend/libs/model-list/src/lib/lists/ImageModels.ts +++ b/frontend/libs/model-list/src/lib/lists/ImageModels.ts @@ -182,7 +182,7 @@ export const IMAGE_MODELS: ImageModel[] = [ canTextToImage: true, tags: [ModelTag.InstructiveEdit], progressBarTime: 25000, - maxPromptLength: 2500, + maxPromptLength: Infinity, // canChangeResolution: true, canChangeAspectRatio: true, defaultAspectRatio: CommonAspectRatio.Square, @@ -217,7 +217,7 @@ export const IMAGE_MODELS: ImageModel[] = [ canTextToImage: true, tags: [ModelTag.InstructiveEdit], progressBarTime: 25000, - maxPromptLength: 2500, + maxPromptLength: Infinity, canChangeResolution: true, canChangeAspectRatio: true, defaultAspectRatio: CommonAspectRatio.Square, @@ -257,7 +257,7 @@ export const IMAGE_MODELS: ImageModel[] = [ canTextToImage: true, tags: [ModelTag.InstructiveEdit], progressBarTime: 25000, - maxPromptLength: 2500, + maxPromptLength: Infinity, canChangeResolution: true, canChangeAspectRatio: true, defaultAspectRatio: CommonAspectRatio.Square, diff --git a/frontend/libs/model-list/src/lib/lists/VideoModels.ts b/frontend/libs/model-list/src/lib/lists/VideoModels.ts index 7c120abcc5..26ef4c8259 100644 --- a/frontend/libs/model-list/src/lib/lists/VideoModels.ts +++ b/frontend/libs/model-list/src/lib/lists/VideoModels.ts @@ -309,7 +309,7 @@ export const VIDEO_MODELS: VideoModel[] = [ defaultResolution: "720p", supportsSystemPrompt: false, progressBarTime: 900000, // ~15 minutes - maxPromptLength: 3000, + maxPromptLength: Infinity, }), new VideoModel({ id: "sora_2",