feat: use ChoicePrompt in user_wants_to_continue method

This commit is contained in:
Talison Fabio 2025-03-18 17:41:39 -03:00
parent 98ca77f953
commit 8a8e44abe7

View File

@ -78,18 +78,25 @@ pub fn user_wants_to_continue(
QuestionPolicy::AlwaysYes => Ok(true),
QuestionPolicy::AlwaysNo => Ok(false),
QuestionPolicy::Ask => {
let path = path_to_str(strip_cur_dir(path));
let action = match question_action {
QuestionAction::Compression => "compress",
QuestionAction::Decompression => "decompress",
};
let path = path_to_str(strip_cur_dir(path));
let path = Some(&*path);
let placeholder = Some("FILE");
Confirmation::new(&format!("Do you want to {action} 'FILE'?"), placeholder).ask(path)
ChoicePrompt::new(
format!("Do you want to {action} {path}?"),
[
("yes", true, *colors::GREEN),
("no", false, *colors::RED),
],
)
.ask()
}
}
}
/// Choise dialog for end user with [option1/option2/...] question.
///
/// If the placeholder is found in the prompt text, it will be replaced to form the final message.