fix plumbing, begin to enqueue

This commit is contained in:
Brandon Thomas committed 2025-08-07 22:28:44 -04:00
1 parent c69f9c781c
commit 480cd43e15
5 files changed
+19 -7

No files matched your search

@@ -23,7 +23,7 @@ pub struct Task {
pub id: TaskId,
pub status: TaskStatus,
pub task_type: TaskType,
pub model_type: TaskModelType,
pub model_type: Option<TaskModelType>,
pub provider: GenerationProvider,
pub provider_job_id: Option<String>,
pub frontend_caller: Option<TauriCommandCaller>,
@@ -37,7 +37,7 @@ struct RawTask {
id: String,
task_status: String,
task_type: String,
model_type: String,
model_type: Option<String>,
provider: String,
provider_job_id: Option<String>,
frontend_caller: Option<String>,
@@ -95,8 +95,10 @@ pub async fn list_tasks_by_provider_and_tokens(
.map_err(|err| SqliteTasksError::TaskParseError(err))?,
task_type: TaskType::from_str(&task.task_type)
.map_err(|err| SqliteTasksError::TaskParseError(err))?,
model_type: TaskModelType::from_str(&task.model_type)
.map_err(|err| SqliteTasksError::TaskParseError(err))?,
model_type: task.model_type
.map(|model| TaskModelType::from_str(&model)
.map_err(|err| SqliteTasksError::TaskParseError(err)))
.transpose()?,
provider: GenerationProvider::from_str(&task.provider)
.map_err(|err| SqliteTasksError::TaskParseError(err))?,
provider_job_id: task.provider_job_id,
@@ -98,7 +98,7 @@ impl TaskModelType {
// 3D Object generation models
"hunyuan_3d_2.0" => Ok(Self::Hunyuan3d2_0),
"hunyuan_3d_2.1" => Ok(Self::Hunyuan3d2_1),
_ => Err(format!("invalid task_state: {:?}", job_status)),
_ => Err(format!("invalid task_model_type: {:?}", job_status)),
}
}
@@ -59,7 +59,7 @@ impl TaskStatus {
"cancelled_by_user" => Ok(Self::CancelledByUser),
"cancelled_by_provider" => Ok(Self::CancelledByProvider),
"cancelled_by_us" => Ok(Self::CancelledByUs),
_ => Err(format!("invalid task_state: {:?}", job_status)),
_ => Err(format!("invalid task_status: {:?}", job_status)),
}
}
@@ -38,7 +38,7 @@ impl TaskType {
"video_generation" => Ok(Self::VideoGeneration),
"object_generation" => Ok(Self::ObjectGeneration),
"background_removal" => Ok(Self::BackgroundRemoval),
_ => Err(format!("invalid task_state: {:?}", job_status)),
_ => Err(format!("invalid task_type: {:?}", job_status)),
}
}
@@ -15,6 +15,7 @@ import { setCanvasRenderBitmap } from "../../signals/canvasRenderBitmap";
import { captureStageImageBitmap } from "./hooks/useUpdateSnapshot";
import { ContextMenuContainer } from "./components/ui/ContextMenu";
import { FalBackgroundRemoval } from "@storyteller/tauri-api";
import { EnqueueImageBgRemoval } from "@storyteller/tauri-api";
import { getCreatorIcon, IMAGE_MODELS_BY_LABEL, ModelCreator, ModelInfo } from "@storyteller/model-list";
import { instructiveImageEditModels, ModelCategory, ModelSelector, useModelSelectorStore } from "@storyteller/ui-model-selector";
@@ -385,6 +386,13 @@ const PageDraw = () => {
// ...
// Call API, on success, return a File object parsed from base64.
// ...
const response = await EnqueueImageBgRemoval({
base64_image: image_base64,
});
/*
const response = await FalBackgroundRemoval({
base64_image: image_base64,
});
@@ -407,6 +415,8 @@ const PageDraw = () => {
type: blob.type,
});
return { success: true, file };
*/
return {}
} catch (error) {
console.error("Failed to remove background", error);
return { success: false };