285 feature request multi host (#293)

This commit is contained in:
Christian Visintin
2024-10-07 16:27:45 +02:00
committed by GitHub
parent a4c9acb49f
commit aab266a661
59 changed files with 5523 additions and 2652 deletions

View File

@@ -2,11 +2,23 @@
//!
//! `Utils` implements utilities functions to work with layouts
use tuirealm::terminal::TerminalBridge;
/// Read a secret from tty with customisable prompt
pub fn read_secret_from_tty(prompt: &str) -> std::io::Result<Option<String>> {
match rpassword::prompt_password(prompt) {
pub fn read_secret_from_tty(
terminal_bridge: &mut TerminalBridge,
prompt: impl ToString,
) -> std::io::Result<Option<String>> {
let _ = terminal_bridge.disable_raw_mode();
let _ = terminal_bridge.leave_alternate_screen();
let res = match rpassword::prompt_password(prompt) {
Ok(p) if p.is_empty() => Ok(None),
Ok(p) => Ok(Some(p)),
Err(err) => Err(err),
}
};
let _ = terminal_bridge.enter_alternate_screen();
let _ = terminal_bridge.enable_raw_mode();
res
}