mod args;
mod cmd;
mod parsers;
mod progress;
mod qrcode;
mod records;
mod sign;
mod storage;
mod style;
mod transport;
fn try_main() -> anyhow::Result<()> {
let args = args::parse();
let mut storage = storage::Storage::init()?;
if let Err(e) = args.cmd.clone().execute(args, &mut storage) {
println!("{:?}", e);
return Ok(());
}
storage.save()?;
Ok(())
}
fn main() {
if let Err(err) = try_main() {
eprintln!("Error: {:?}", err);
std::process::exit(1);
}
}