ptcg-tools/src/main.rs

36 lines
801 B
Rust
Raw Normal View History

use anyhow::Result;
2025-04-28 19:02:32 -04:00
use clap::Parser;
2025-12-28 21:20:16 -03:00
use crate::lang::Language;
2025-04-28 19:02:32 -04:00
pub mod cli;
pub mod constants;
2025-12-27 23:11:03 -03:00
pub mod data_store;
pub mod directories;
2025-04-28 19:02:32 -04:00
pub mod editions;
pub mod lang;
2025-12-20 19:01:40 -03:00
pub mod logging;
pub mod malie;
2025-04-28 19:02:32 -04:00
#[tokio::main]
async fn main() -> Result<()> {
let args = cli::Args::parse();
let log_mode = if args.command == cli::Command::Tui {
logging::LogMode::File
} else {
logging::LogMode::Print
};
logging::initialize_logging(log_mode).await?;
match args.command {
2025-12-28 21:20:16 -03:00
cli::Command::DownloadData { lang } => download_data(lang).await?,
cli::Command::Tui => todo!(),
}
Ok(())
}
2025-12-28 21:20:16 -03:00
async fn download_data(lang: Language) -> Result<()> {
let client = malie::client::Client::new().await?;
2025-12-28 21:20:16 -03:00
client.download_all_data(lang).await?;
2025-04-28 19:02:32 -04:00
Ok(())
}