warcraft_rs/utils/
progress.rs1use indicatif::{ProgressBar, ProgressStyle};
4
5#[allow(dead_code)]
7pub fn create_progress_bar(total: u64, message: &str) -> ProgressBar {
8 let pb = ProgressBar::new(total);
9 pb.set_style(
10 ProgressStyle::default_bar()
11 .template("[{elapsed_precise}] {bar:40.cyan/blue} {pos}/{len} {msg}")
12 .unwrap()
13 .progress_chars("##-"),
14 );
15 pb.set_message(message.to_string());
16 pb
17}
18
19#[allow(dead_code)]
21pub fn create_spinner(message: &str) -> ProgressBar {
22 let pb = ProgressBar::new_spinner();
23 pb.set_style(
24 ProgressStyle::default_spinner()
25 .template("{spinner:.green} {msg}")
26 .unwrap(),
27 );
28 pb.set_message(message.to_string());
29 pb.enable_steady_tick(std::time::Duration::from_millis(100));
30 pb
31}