diff options
author | Jesse Luehrs <doy@tozt.net> | 2020-05-03 18:07:40 -0400 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2020-05-03 20:46:45 -0400 |
commit | dcca2c702999997ebdc2ae7acd1228edf7333014 (patch) | |
tree | 08c54f5ec850739665d19a5deb7f3ad9a6231cf7 /src/db.rs | |
parent | 2feed7e2e9367c935aeb669daab66a63cff2f6c0 (diff) | |
download | rbw-dcca2c702999997ebdc2ae7acd1228edf7333014.tar.gz rbw-dcca2c702999997ebdc2ae7acd1228edf7333014.zip |
start adding support for different entry types
Diffstat (limited to 'src/db.rs')
-rw-r--r-- | src/db.rs | 41 |
1 files changed, 39 insertions, 2 deletions
@@ -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, |