🔨 Refactors panics to error returning

Signed-off-by: Ash Svitan <selfsigned-ash@proton.me>
This commit is contained in:
2026-04-30 15:34:39 +02:00
parent 0430ff2bd2
commit 74631f8675
2 changed files with 18 additions and 6 deletions
+16 -4
View File
@@ -74,12 +74,24 @@ pub fn check_pass() -> Result<(), Error> {
return Ok(());
}
pub fn get_vaults() -> Vaults {
pub fn get_vaults() -> Result<Vaults, Error> {
let vaults_raw = sh::sh(format!("{} vault list --output json", EXECUTABLE));
return serde_json::from_str(vaults_raw.as_str()).expect("Couldn't parse JSON");
return match serde_json::from_str(vaults_raw.as_str()) {
Ok(val) => Ok(val),
Err(e) => Err(Error::new(
ErrorKind::Other,
format!("Couldn't get vaults: {e}"),
)),
};
}
pub fn get_items(vault: &String) -> Items {
pub fn get_items(vault: &String) -> Result<Items, Error> {
let items_raw = sh::sh(format!("{} item list {} --output json", EXECUTABLE, vault));
return serde_json::from_str(items_raw.as_str()).expect("Couldn't parse JSON");
return match serde_json::from_str(items_raw.as_str()) {
Ok(val) => Ok(val),
Err(e) => Err(Error::new(
ErrorKind::Other,
format!("Couldn't get items: {e}"),
)),
};
}