From 99cd4ac72549288da273bad84a16cb2550138e60 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Sat, 5 Jul 2025 21:46:01 -0400 Subject: [PATCH] request via artcraft works --- .../promptbox/src/lib/PromptBox2D.tsx | 36 ++++++++++++------- frontend/libs/tauri-api/src/index.ts | 1 + 2 files changed, 24 insertions(+), 13 deletions(-) diff --git a/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx b/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx index e2b2e7c459..5cf75d451e 100644 --- a/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx +++ b/frontend/libs/components/promptbox/src/lib/PromptBox2D.tsx @@ -37,6 +37,8 @@ import { CheckSoraSession, SoraSessionState, waitForSoraLogin, + EnqueueContextualEditImage, + EnqueueContextualEditImageModel, } from "@storyteller/tauri-api"; import { showActionReminder } from "@storyteller/ui-action-reminder-modal"; @@ -264,13 +266,14 @@ export const PromptBox2D = ({ }; const handleTauriEnqueue = async () => { - // Check if the Sora session is valid - const soraSession = await CheckSoraSession(); - if (soraSession.state !== SoraSessionState.Valid) { - setIsEnqueueing(false); - await handleSoraLoginReminder(); - return; - } + // NB(bt): This needs to move to an error handler. + // // Check if the Sora session is valid + // const soraSession = await CheckSoraSession(); + // if (soraSession.state !== SoraSessionState.Valid) { + // setIsEnqueueing(false); + // await handleSoraLoginReminder(); + // return; + // } const api = new PromptsApi(); let image = getCanvasRenderBitmap(); @@ -318,15 +321,22 @@ export const PromptBox2D = ({ //console.log("Generate response:", generateResponse); //toast.success("Please wait while we process your image."); - const aspectRatio = getCurrentSoraRemixAspectRatio(); + // TODO: Add context tokens + // maybe_additional_images: referenceImages.map((image) => image.mediaToken), + const imageMediaTokens = [ + snapshotMediaToken.data + ]; - const generateResponse = await SoraImageRemix({ - snapshot_media_token: snapshotMediaToken.data, + // TODO: Aspect ratio + // const aspectRatio = getCurrentSoraRemixAspectRatio(); + + const generateResponse = await EnqueueContextualEditImage({ + model: EnqueueContextualEditImageModel.GptImage1, + image_media_tokens: imageMediaTokens, disable_system_prompt: !useSystemPrompt, prompt: prompt, - maybe_additional_images: referenceImages.map((image) => image.mediaToken), - maybe_number_of_samples: 1, - aspect_ratio: aspectRatio, + image_count: 1, + //aspect_ratio: aspectRatio, }); console.log("generateResponse", generateResponse); diff --git a/frontend/libs/tauri-api/src/index.ts b/frontend/libs/tauri-api/src/index.ts index 65a0bdb3a5..3154258e2d 100644 --- a/frontend/libs/tauri-api/src/index.ts +++ b/frontend/libs/tauri-api/src/index.ts @@ -1,4 +1,5 @@ export * from "./lib/common/CommandStatus.js"; +export * from "./lib/enqueue/EnqueueContextualEditImage.js"; export * from "./lib/enqueue/EnqueueImageTo3dObject.js"; export * from "./lib/enqueue/EnqueueTextToImage.js"; export * from "./lib/enqueue/EnqueueImageToVideo.js";