mangadex-api 4.2.1

SDK for the MangaDex API
Documentation
pub mod chapter;
pub mod cover;

use bytes::Bytes;
use uuid::Uuid;

use crate::HttpClientRef;

use self::{
    chapter::ChapterDownloadBuilder,
    cover::{CoverDownloadBuilder, CoverQuality},
};

use crate::Result;

pub type DownloadElement = (String, Result<Bytes>);

#[derive(Debug)]
pub struct DownloadBuilder {
    http_client: HttpClientRef,
}

impl DownloadBuilder {
    #[doc(hidden)]
    pub(crate) fn new(http_client: HttpClientRef) -> Self {
        Self { http_client }
    }
    pub fn chapter(&self, id: Uuid) -> ChapterDownloadBuilder {
        ChapterDownloadBuilder::default()
            .http_client(self.http_client.clone())
            .id(id)
            .force_port_443(false)
            .report(false)
    }

    pub fn cover(&self) -> CoverDownloadBuilder {
        CoverDownloadBuilder::default()
            .http_client(self.http_client.clone())
            .quality(CoverQuality::Default)
    }
}