eureka_manager_cli/commands/
delete.rs

1pub mod chapter;
2pub mod cover;
3pub mod manga;
4
5use clap::Subcommand;
6
7use super::{AsyncRun, AsyncRunContext};
8
9#[derive(Debug, Subcommand)]
10pub enum DeleteSubcommands {
11    /// Delete Manga subcommand
12    Manga(manga::MangaDeleteArgs),
13    /// Delete Cover subcommand
14    Cover(cover::CoverDeleteArgs),
15    /// Delete Chapter subcommand
16    Chapter(chapter::ChapterDeleteArgs),
17}
18
19impl AsyncRun for DeleteSubcommands {
20    async fn run(&self, ctx: AsyncRunContext) -> anyhow::Result<()> {
21        match self {
22            DeleteSubcommands::Manga(manga_delete_args) => manga_delete_args.run(ctx).await,
23            DeleteSubcommands::Cover(cover_delete_args) => cover_delete_args.run(ctx).await,
24            DeleteSubcommands::Chapter(chapter_delete_args) => chapter_delete_args.run(ctx).await,
25        }
26    }
27}