use clap::{Args, Subcommand};
use crate::error::Result;
use crate::util::fmt;
#[derive(Debug, Subcommand)]
pub enum ExtensionCommands {
List,
Create(ExtensionCreateArgs),
}
#[derive(Debug, Args)]
pub struct ExtensionCreateArgs {
pub name: Option<String>,
}
pub async fn run(cmd: ExtensionCommands) -> Result<()> {
match cmd {
ExtensionCommands::List => {
fmt::info("No extensions installed.");
Ok(())
}
ExtensionCommands::Create(_args) => {
eprintln!(" To create a new hcli extension, run:");
eprintln!();
eprintln!(
" pipx run cookiecutter gh:Hex-RaysSA/ida-hcli-extension-template"
);
eprintln!();
Ok(())
}
}
}