use clap::{Args, Subcommand};
use super::util::trigger_provider_completion_parser;
#[derive(Debug, Args)]
pub(crate) struct ConnectorArgs {
#[command(subcommand)]
pub command: ConnectorCommand,
}
#[derive(Debug, Subcommand)]
pub(crate) enum ConnectorCommand {
Check(ConnectorCheckArgs),
Test(ConnectorTestArgs),
}
#[derive(Debug, Args, Clone)]
pub(crate) struct ConnectorCheckArgs {
pub package: String,
#[arg(
long = "provider",
value_name = "ID",
value_parser = trigger_provider_completion_parser(),
hide_possible_values = true
)]
pub providers: Vec<String>,
#[arg(long = "run-poll-tick")]
pub run_poll_tick: bool,
#[arg(long)]
pub json: bool,
}
#[derive(Debug, Args, Clone)]
pub(crate) struct ConnectorTestArgs {
#[arg(default_value = ".")]
pub package: String,
#[arg(
long = "provider",
value_name = "ID",
value_parser = trigger_provider_completion_parser(),
hide_possible_values = true
)]
pub providers: Vec<String>,
#[arg(long = "run-poll-tick")]
pub run_poll_tick: bool,
#[arg(long)]
pub json: bool,
}