index : bitwarden-ssh-agent.git

ascending towards madness

author holly sparkles <sparkles@holly.sh> 2023-08-01 19:06:20.0 +00:00:00
committer holly sparkles <sparkles@holly.sh> 2023-08-01 19:06:20.0 +00:00:00
commit
6bb5927fa9832fb3b3edd5414df262f2f4a7b9f1 [patch]
tree
13a8aab63a74277cb9f047183c8d8eb8d6643226
parent
8452da6da8a3cc34fb27ee2075954a7758cead61
download
6bb5927fa9832fb3b3edd5414df262f2f4a7b9f1.tar.gz

feat: add data structures for bitwarden items



Diff

 src/bwutil.rs | 31 ++++++++++++++++++++++++++++---
 1 file changed, 28 insertions(+), 3 deletions(-)

diff --git a/src/bwutil.rs b/src/bwutil.rs
index 6815858..36597fb 100644
--- a/src/bwutil.rs
+++ b/src/bwutil.rs
@@ -6,9 +6,34 @@ use anyhow::{anyhow, Result, Context};
#[derive(Default, Debug, Clone, PartialEq, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BitwardenFolder {
	object: String,
	id: String,
	name: String
	pub id: String,
	pub name: String
}

/// Represents an item in Bitwarden containing an SSH key.
#[derive(Default, Debug, Clone, PartialEq, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BitwardenItem {
	pub id: String,
	pub name: String,
	pub attachments: Option<Vec<BitwardenAttachment>>,
	pub fields: Option<Vec<BitwardenFieldItem>>
}

/// Represents a custom field in Bitwarden.
#[derive(Default, Debug, Clone, PartialEq, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BitwardenFieldItem {
	pub name: String,
	pub value: String
}

/// Represents a file attachment in Bitwarden.
#[derive(Default, Debug, Clone, PartialEq, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct BitwardenAttachment {
	pub id: String,
	pub file_name: String
}

/// Gets the user's logged-in status from Bitwarden.