use std::time::Duration;
use indicatif::{ProgressBar, ProgressStyle};
pub const DEFAULT_INTERVAL: Duration = Duration::from_millis(500);
pub fn get_bar_pb(message: String, interval: Duration, total: u64) -> ProgressBar {
let pb = ProgressBar::new(total);
pb.set_style(
ProgressStyle::with_template(
"{msg}::> {wide_bar} {human_pos}/{human_len} speed:{per_sec} elapsed:{elapsed} eta:{eta}").
unwrap());
pb.set_message(message);
pb.enable_steady_tick(interval);
pb
}
pub fn get_spin_pb(message: String, interval: Duration) -> ProgressBar {
let pb = ProgressBar::new_spinner();
pb.set_style(
ProgressStyle::with_template("{msg} {spinner} {human_pos} {per_sec} {elapsed}").unwrap(),
);
pb.enable_steady_tick(interval);
pb.set_message(message);
pb
}