aboutsummaryrefslogtreecommitdiffstats
path: root/src/db.rs
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2020-05-03 18:07:40 -0400
committerJesse Luehrs <doy@tozt.net>2020-05-03 20:46:45 -0400
commitdcca2c702999997ebdc2ae7acd1228edf7333014 (patch)
tree08c54f5ec850739665d19a5deb7f3ad9a6231cf7 /src/db.rs
parent2feed7e2e9367c935aeb669daab66a63cff2f6c0 (diff)
downloadrbw-dcca2c702999997ebdc2ae7acd1228edf7333014.tar.gz
rbw-dcca2c702999997ebdc2ae7acd1228edf7333014.zip
start adding support for different entry types
Diffstat (limited to 'src/db.rs')
-rw-r--r--src/db.rs41
1 files changed, 39 insertions, 2 deletions
diff --git a/src/db.rs b/src/db.rs
index e5c7257..8cb27ad 100644
--- a/src/db.rs
+++ b/src/db.rs
@@ -11,8 +11,7 @@ pub struct Entry {
pub org_id: Option<String>,
pub folder: Option<String>,
pub name: String,
- pub username: Option<String>,
- pub password: Option<String>,
+ pub data: EntryData,
pub notes: Option<String>,
pub history: Vec<HistoryEntry>,
}
@@ -20,6 +19,44 @@ pub struct Entry {
#[derive(
serde::Serialize, serde::Deserialize, Debug, Clone, Eq, PartialEq,
)]
+pub enum EntryData {
+ Login {
+ username: Option<String>,
+ password: Option<String>,
+ },
+ Card {
+ cardholder_name: Option<String>,
+ number: Option<String>,
+ brand: Option<String>,
+ exp_month: Option<String>,
+ exp_year: Option<String>,
+ code: Option<String>,
+ },
+ Identity {
+ title: Option<String>,
+ first_name: Option<String>,
+ middle_name: Option<String>,
+ last_name: Option<String>,
+ address1: Option<String>,
+ address2: Option<String>,
+ address3: Option<String>,
+ city: Option<String>,
+ state: Option<String>,
+ postal_code: Option<String>,
+ country: Option<String>,
+ phone: Option<String>,
+ email: Option<String>,
+ ssn: Option<String>,
+ license_number: Option<String>,
+ passport_number: Option<String>,
+ username: Option<String>,
+ },
+ SecureNote,
+}
+
+#[derive(
+ serde::Serialize, serde::Deserialize, Debug, Clone, Eq, PartialEq,
+)]
pub struct HistoryEntry {
pub last_used_date: String,
pub password: String,