codeberg_cli/actions/milestone/
mod.rs1use crate::render::option::option_display;
2
3pub mod create;
4pub mod edit;
5pub mod list;
6pub mod view;
7
8use clap::Subcommand;
9
10use super::GeneralArgs;
11
12#[derive(Subcommand, Debug)]
14pub enum MilestoneArgs {
15 List(list::ListMilestonesArgs),
16 View(view::ViewMilestonesArgs),
17 Create(create::CreateMilestoneArgs),
18 Edit(edit::EditMilestoneArgs),
19}
20
21impl MilestoneArgs {
22 pub async fn run(self, general_args: GeneralArgs) -> anyhow::Result<()> {
23 match self {
24 MilestoneArgs::List(args) => args.run(general_args).await,
25 MilestoneArgs::View(args) => args.run(general_args).await,
26 MilestoneArgs::Create(args) => args.run(general_args).await,
27 MilestoneArgs::Edit(args) => args.run(general_args).await,
28 }
29 }
30}
31
32fn display_milestone(milestone: &forgejo_api::structs::Milestone) -> String {
33 option_display(&milestone.title)
34}