From 8208206e5aee3dba89f9792dbe20374df6137626 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Mon, 9 Jun 2025 12:20:05 -0400 Subject: [PATCH] missing --- .../src/lib/enqueue/EnqueueImageTo3dObject.ts | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 frontend/libs/tauri-api/src/lib/enqueue/EnqueueImageTo3dObject.ts diff --git a/frontend/libs/tauri-api/src/lib/enqueue/EnqueueImageTo3dObject.ts b/frontend/libs/tauri-api/src/lib/enqueue/EnqueueImageTo3dObject.ts new file mode 100644 index 0000000000..b75db33848 --- /dev/null +++ b/frontend/libs/tauri-api/src/lib/enqueue/EnqueueImageTo3dObject.ts @@ -0,0 +1,48 @@ +import { invoke } from "@tauri-apps/api/core"; +import { CommandResult } from "../common/CommandStatus"; + +export enum EnqueueImageTo3dObjectErrorType { + /// Caller didn't specify a model + ModelNotSpecified = "model_not_specified", + /// Generic server error + ServerError = "server_error", + /// No Fal API key available + NeedsFalApiKey = "needs_fal_api_key", + /// Fal had an API error + FalError = "fal_error", + /// Need tobe logged into Artcraft + NeedsStorytellerCredentials = "needs_storyteller_credentials", +} + +export interface EnqueueImageTo3dObjectRequest { + image_media_token?: string; + model?: EnqueueImageTo3dObjectModel; +} + +export enum EnqueueImageTo3dObjectModel { + Hunyuan3d2 = "hunyuan_3d_2", +} + +export interface EnqueueImageTo3dObjectError extends CommandResult { + error_type: EnqueueImageTo3dObjectErrorType; + error_message?: string; +} + +export interface EnqueueImageTo3dObjectPayload { +} + +export interface EnqueueImageTo3dObjectSuccess extends CommandResult { + payload: EnqueueImageTo3dObjectPayload; +} + +export type EnqueueImageTo3dObjectResult = EnqueueImageTo3dObjectSuccess | EnqueueImageTo3dObjectError; + +export const EnqueueImageTo3dObject = async (request: EnqueueImageTo3dObjectRequest) : Promise => { + let result = await invoke("enqueue_image_to_3d_object_command", { + request: { + image_media_token: request.image_media_token, + model: request.model, + } + }); + return (result as EnqueueImageTo3dObjectResult); +}