Compare commits

...
Author SHA1 Message Date
Brandon Thomas cbfb432971 rename 2026-05-09 19:39:53 -04:00
Brandon Thomas fea122e35c rename webhook module 2026-05-09 17:52:58 -04:00
Brandon Thomas f6c23f7621 new trait 2026-05-09 17:49:07 -04:00
Brandon Thomas 39d2945e5e remove unused code 2026-05-09 16:49:31 -04:00
189 changed files with 208 additions and 307 deletions
+1 -2
View File
@@ -2,7 +2,6 @@
pub mod creds;
pub mod error;
pub mod model;
pub mod requests;
pub mod utils;
pub mod webhook_api;
pub mod webhook_payload;
@@ -1,42 +0,0 @@
use crate::creds::fal_api_key::FalApiKey;
use crate::model::fal_endpoint::FalEndpoint;
use crate::model::fal_request_id::FalRequestId;
use crate::requests::api::queue::Queue;
use crate::requests::api::queue_response::QueueResponse;
use errors::AnyhowResult;
use reqwest::Client;
use serde::de::DeserializeOwned;
#[derive(Clone, Debug)]
pub struct EnqueuedRequest {
pub fal_endpoint: FalEndpoint,
pub request_id: FalRequestId,
pub response_url: String,
pub status_url: String,
pub cancel_url: String,
}
impl EnqueuedRequest {
pub fn from_queue_response<R: DeserializeOwned>(queue: &Queue<R>) -> AnyhowResult<Self> {
let endpoint = FalEndpoint::from_queue_response(queue);
Ok(Self {
fal_endpoint: endpoint.clone(),
request_id: FalRequestId(queue.payload.request_id.clone()),
response_url: queue.payload.response_url.clone(),
status_url: queue.payload.status_url.clone(),
cancel_url: queue.payload.cancel_url.clone(),
})
}
pub fn to_queue_response<R: DeserializeOwned>(&self, api_key: &FalApiKey) -> AnyhowResult<Queue<R>> {
let client = Client::new();
let endpoint = self.fal_endpoint.url();
let payload = QueueResponse {
request_id: self.request_id.0.clone(),
response_url: self.response_url.clone(),
status_url: self.status_url.clone(),
cancel_url: self.cancel_url.clone(),
};
Ok(Queue::new(client, endpoint, api_key.0.clone(), payload))
}
}
@@ -1,46 +0,0 @@
use crate::requests::api::queue::Queue;
use serde::de::DeserializeOwned;
// TODO(bt,2025-05-26): A macro to define these + tests.
const FLUX_PRO_ULTRA_TEXT_TO_IMAGE: &str = "fal-ai/flux-pro/v1.1-ultra";
const HUNYUAN_3D_2_BASE: &str = "fal-ai/hunyuan3d/v2";
const KLING16_IMAGE_TO_VIDEO: &str = "fal-ai/kling-video/v1.6/pro/image-to-video";
const MINIMAX_IMAGE_TO_VIDEO: &str = "fal-ai/minimax/image-to-video";
const RECRAFT_V3_TEXT_TO_IMAGE: &str = "fal-ai/recraft-v3";
#[derive(Clone, Debug)]
pub enum FalEndpoint {
FluxProUltraTextToImage,
Hunyuan3d2Base,
Kling16ImageToVideo,
Minimax01ImageToVideo,
RecraftV3TextToImage,
Other(String),
}
impl FalEndpoint {
pub fn from_queue_response<R: DeserializeOwned>(queue: &Queue<R>) -> Self {
match queue.endpoint.as_str() {
FLUX_PRO_ULTRA_TEXT_TO_IMAGE => FalEndpoint::FluxProUltraTextToImage,
HUNYUAN_3D_2_BASE => FalEndpoint::Hunyuan3d2Base,
KLING16_IMAGE_TO_VIDEO => FalEndpoint::Kling16ImageToVideo,
MINIMAX_IMAGE_TO_VIDEO => FalEndpoint::Minimax01ImageToVideo,
RECRAFT_V3_TEXT_TO_IMAGE => FalEndpoint::RecraftV3TextToImage,
_ => FalEndpoint::Other(queue.endpoint.clone()),
}
}
pub fn url(&self) -> &str {
match self {
Self::FluxProUltraTextToImage => FLUX_PRO_ULTRA_TEXT_TO_IMAGE,
Self::Hunyuan3d2Base => HUNYUAN_3D_2_BASE,
Self::Kling16ImageToVideo => KLING16_IMAGE_TO_VIDEO,
Self::Minimax01ImageToVideo => MINIMAX_IMAGE_TO_VIDEO,
Self::RecraftV3TextToImage => RECRAFT_V3_TEXT_TO_IMAGE,
Self::Other(url) => url,
}
}
}
@@ -1,13 +0,0 @@
use std::fmt::Display;
use serde::{Deserialize, Serialize};
use crate::model::fal_endpoint::FalEndpoint;
/// A strongly typed request ID for the Fal API.
#[derive(Clone, PartialEq, Eq, PartialOrd, Ord, Hash, Debug, Serialize, Deserialize)]
pub struct FalRequestId(pub String);
impl Display for FalRequestId {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
Display::fmt(&self.0, f)
}
}
@@ -1,3 +0,0 @@
pub mod enqueued_request;
pub mod fal_endpoint;
pub mod fal_request_id;
@@ -5,9 +5,9 @@ use serde::{de::DeserializeOwned, Serialize};
use log::info;
use crate::error::fal_error::FalError;
use crate::requests::api::queue::Queue;
use crate::requests::api::queue_response::QueueResponse;
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::queue::Queue;
use crate::requests::core_api::queue_response::QueueResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
/// A request to the FAL API.
///
@@ -3,8 +3,8 @@ use std::marker::PhantomData;
use serde::{de::DeserializeOwned, Deserialize, Serialize};
use crate::error::fal_error::FalError;
use crate::requests::api::queue_response::QueueResponse;
use crate::requests::api::queue_status::QueueStatus;
use crate::requests::core_api::queue_response::QueueResponse;
use crate::requests::core_api::queue_status::QueueStatus;
#[derive(Debug, Serialize, Deserialize)]
pub struct Queue<Response: DeserializeOwned> {
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
/// Non-BYOK edit-image (image-to-image) binding for
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
/// Non-BYOK text-to-image binding for `fal-ai/gpt-image-1/text-to-image`.
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
use crate::requests::api::fal_request::FalRequest;
use crate::requests::core_api::fal_request::FalRequest;
use serde::{Deserialize, Serialize};
#[derive(Debug, Serialize, Deserialize, Default)]
@@ -1,4 +1,4 @@
pub mod api;
pub mod core_api;
pub mod http;
pub mod traits;
pub mod webhook;
@@ -0,0 +1,5 @@
pub trait FalEndpoint {
/// Return the endpoint, eg. `fal-ai/flux-2-lora-gallery/multiple-angles`
fn get_endpoint() -> &'static str;
}
@@ -1 +1,2 @@
pub mod fal_endpoint_trait;
pub mod fal_request_cost_calculator_trait;
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::angle::http_flux_2_lora_edit_image_angle::{http_flux_2_lora_edit_image_angle, Flux2LoraEditImageAngleInput};
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct EnqueueFlux2LoraEditImageAngleArgs<'a, R: IntoUrl> {
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::angle::http_qwen_edit_2511_edit_image_angle::{http_qwen_edit_2511_edit_image_angle, QwenEdit2511EditImageAngleInput};
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct EnqueueQwenEdit2511EditImageAngleArgs<'a, R: IntoUrl> {
@@ -2,7 +2,7 @@ use crate::creds::fal_api_key::FalApiKey;
use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::background::http_rembg_remove_background::{rembg_remove_background, RembgRemoveBackgroundInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct RemoveBackgroundRembgWebhookArgs<'a, V: IntoUrl> {
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::http::image::edit::http_seedream_4_edit_image::{seedream_4_edit_image, SeedreamV4EditImageInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct EnqueueBytedanceSeedreamV4EditImageArgs<'a, R: IntoUrl> {
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::http::image::edit::http_seedream_4p5_edit_image::{seedream_4p5_edit_image, SeedreamV4p5EditImageInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct EnqueueBytedanceSeedreamV4p5EditImageArgs<'a, R: IntoUrl> {
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::edit::http_seedream_5_edit_image::{http_seedream_5_edit_image, SeedreamV5LiteEditImageInput};
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct EnqueueBytedanceSeedreamV5LiteEditImageArgs<'a, R: IntoUrl> {
@@ -2,7 +2,7 @@ use crate::creds::fal_api_key::FalApiKey;
use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::edit::http_flux_1_dev_edit_image::{flux_1_dev_edit_image, Flux1DevEditImageInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct Flux1DevEditImageArgs<'a, U: IntoUrl> {
@@ -2,7 +2,7 @@ use crate::creds::fal_api_key::FalApiKey;
use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::edit::http_flux_1_schnell_edit_image::{flux_1_schnell_edit_image, Flux1SchnellEditImageInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct Flux1SchnellEditImageArgs<'a, U: IntoUrl> {
@@ -2,7 +2,7 @@ use crate::creds::fal_api_key::FalApiKey;
use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::http::image::edit::http_flux_pro_kontext_max_edit::{flux_pro_kontext_max_edit, FluxProKontextMaxEditInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct FluxProKontextMaxArgs<'a, R: IntoUrl> {
@@ -3,7 +3,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::http::image::edit::http_gemini_25_flash_edit::{gemini_25_flash_edit, Gemini25FlashEditInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct Gemini25FlashEditArgs<'a, R: IntoUrl> {
@@ -9,7 +9,7 @@ use crate::error::classify_fal_error::classify_fal_error;
use crate::error::fal_error_plus::FalErrorPlus;
use crate::requests::traits::fal_request_cost_calculator_trait::{FalRequestCostCalculator, UsdCents};
use crate::requests::http::image::edit::http_gpt_image_1_edit_image::{gpt_image_1_edit_image, GptImage1EditImageInput};
use crate::requests::api::webhook_response::WebhookResponse;
use crate::requests::core_api::webhook_response::WebhookResponse;
use reqwest::IntoUrl;
pub struct GptEditImageByokArgs<'a, V: IntoUrl> {

Some files were not shown because too many files have changed in this diff Show More