diff options
| author | A Farzat <a@farzat.xyz> | 2026-02-08 11:22:27 +0300 |
|---|---|---|
| committer | A Farzat <a@farzat.xyz> | 2026-02-08 11:22:27 +0300 |
| commit | 639ddf4b2e88bdc95a9e09eadea1be606327dea5 (patch) | |
| tree | a608d3811b7d1d0e0324930140fcb8ed0ec4563a /src/main.rs | |
| parent | 9d3bff94d9dfc332a6bb05efc923135cf22a35d2 (diff) | |
| download | safaribooks-rs-639ddf4b2e88bdc95a9e09eadea1be606327dea5.tar.gz safaribooks-rs-639ddf4b2e88bdc95a9e09eadea1be606327dea5.zip | |
Add display and config modules
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/main.rs b/src/main.rs index 3b3e84d..ad33122 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,8 +1,30 @@ mod cli; +mod config; +mod display; use clap::Parser; use cli::Args; +use display::Display; fn main() { let args = Args::parse(); + + let mut ui = Display::new(&args.bookid); + + let cookies = config::cookies_file(); + if !cookies.exists() { + ui.error_and_exit( + "cookies.json not found.\n\ + This version requires an existing authenticated session.", + ); + } + + ui.info(&format!("Using cookies file: {}", cookies.display())); + + let output_dir = config::books_root().join(format!("(pending) ({})", args.bookid)); + + ui.set_output_dir(output_dir); + + ui.info("Initialization complete."); + ui.info("No network operations performed in this version."); } |
