diff --git a/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx b/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx index 9257caeafd..8722323cc1 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBox3D.tsx @@ -46,9 +46,10 @@ import { } from "@storyteller/tauri-api"; import { usePrompt3DStore } from "./promptStore"; import { gtagEvent } from "@storyteller/google-analytics"; -import { ImageModel } from "@storyteller/model-list"; +import { CommonAspectRatio, ImageModel } from "@storyteller/model-list"; import { GenerationProvider } from "@storyteller/api-enums"; import { ImagePromptRow } from "./ImagePromptRow"; +import { AspectRatioPicker } from "./common/AspectRatioPicker"; interface PromptBox3DProps { cameras: Signal; @@ -156,6 +157,9 @@ export const PromptBox3D = ({ (selectedImageModel?.canUseImagePrompt && referenceImages.length > 0) || false; + // New aspect ratio state will begin to phase out old aspect ratio + const [commonAspectRatio, setCommonAspectRatio] = useState(undefined); + useEffect(() => { if (textareaRef.current) { textareaRef.current.style.height = "auto"; @@ -384,6 +388,10 @@ export const PromptBox3D = ({ if (!!selectedProvider) { request.provider = selectedProvider; } + + if (selectedImageModel?.supportsNewAspectRatio()) { + request.common_aspect_ratio = commonAspectRatio; + } const generateResponse = await EnqueueEditImage(request); @@ -594,7 +602,14 @@ export const PromptBox3D = ({
- {selectedImageModel?.canChangeAspectRatio && ( + {selectedImageModel?.supportsNewAspectRatio() && ( + + )} + {selectedImageModel?.canChangeAspectRatio && !selectedImageModel?.supportsNewAspectRatio() && (