diff --git a/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_draft_request.rs b/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_draft_request.rs index 79c2f5c427..25e5d4dc0e 100644 --- a/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_draft_request.rs +++ b/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_draft_request.rs @@ -1,6 +1,5 @@ use crate::client::router_client::RouterClient; use crate::errors::artcraft_router_error::ArtcraftRouterError; -use crate::errors::client_error::{ClientError, ClientType}; use crate::generate::generate_video::video_generation_cost_estimate::VideoGenerationCostEstimate; use crate::generate::generate_video_v2::providers::kinovi::seedance_2p0::draft_request::KinoviSeedance2p0DraftRequest; use crate::generate::generate_video_v2::providers::kinovi::seedance_2p0::ready_request::KinoviSeedance2p0ReadyRequest; @@ -12,13 +11,16 @@ pub enum VideoGenerationDraftRequest { } impl VideoGenerationDraftRequest { - + + /// Return a cost estimate to fulfill the request. pub fn estimate_cost(&self) -> Result { match self { VideoGenerationDraftRequest::KinoviSeedance2p0(draft) => Ok(draft.estimate_cost()), } } - + + /// Finalize the draft request before generation + /// This may involve uploading media to the provider. pub async fn finalize(self, client: &RouterClient) -> Result { match self { VideoGenerationDraftRequest::KinoviSeedance2p0(draft) => { diff --git a/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_request.rs b/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_request.rs index c796b3c56c..9ac5549d88 100644 --- a/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_request.rs +++ b/crates/api_clients/artcraft/artcraft_router/src/generate/generate_video_v2/video_generation_request.rs @@ -9,6 +9,8 @@ pub enum VideoGenerationRequest { } impl VideoGenerationRequest { + /// Send the video generation request + /// If successful, returns the job IDs. pub async fn send_request(&self, client: &RouterClient) -> Result { match self { VideoGenerationRequest::KinoviSeedance2p0(request) => {