]> Untitled Git - lemmy.git/blobdiff - crates/api_common/src/person.rs
Adding diesel enums for SortType and ListingType (#2808)
[lemmy.git] / crates / api_common / src / person.rs
index 897dd998ec7d8f98927e748e3fa02ba802900a10..10a0e806f7f3003df143849ab90885a0626dcc28 100644 (file)
@@ -2,6 +2,7 @@ use crate::sensitive::Sensitive;
 use lemmy_db_schema::{
   newtypes::{CommentReplyId, CommunityId, LanguageId, PersonId, PersonMentionId},
   CommentSortType,
+  ListingType,
   SortType,
 };
 use lemmy_db_views::structs::{CommentView, PostView};
@@ -9,7 +10,7 @@ use lemmy_db_views_actor::structs::{
   CommentReplyView,
   CommunityModeratorView,
   PersonMentionView,
-  PersonViewSafe,
+  PersonView,
 };
 use serde::{Deserialize, Serialize};
 
@@ -17,6 +18,7 @@ use serde::{Deserialize, Serialize};
 pub struct Login {
   pub username_or_email: Sensitive<String>,
   pub password: Sensitive<String>,
+  pub totp_2fa_token: Option<String>,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone, Default)]
@@ -54,8 +56,8 @@ pub struct SaveUserSettings {
   pub show_nsfw: Option<bool>,
   pub show_scores: Option<bool>,
   pub theme: Option<String>,
-  pub default_sort_type: Option<i16>,
-  pub default_listing_type: Option<i16>,
+  pub default_sort_type: Option<SortType>,
+  pub default_listing_type: Option<ListingType>,
   pub interface_language: Option<String>,
   pub avatar: Option<String>,
   pub banner: Option<String>,
@@ -70,6 +72,8 @@ pub struct SaveUserSettings {
   pub show_read_posts: Option<bool>,
   pub show_new_post_notifs: Option<bool>,
   pub discussion_languages: Option<Vec<LanguageId>>,
+  /// None leaves it as is, true will generate or regenerate it, false clears it out
+  pub generate_totp_2fa: Option<bool>,
   pub auth: Sensitive<String>,
 }
 
@@ -104,7 +108,7 @@ pub struct GetPersonDetails {
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct GetPersonDetailsResponse {
-  pub person_view: PersonViewSafe,
+  pub person_view: PersonView,
   pub comments: Vec<CommentView>,
   pub posts: Vec<PostView>,
   pub moderates: Vec<CommunityModeratorView>,
@@ -134,7 +138,7 @@ pub struct AddAdmin {
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct AddAdminResponse {
-  pub admins: Vec<PersonViewSafe>,
+  pub admins: Vec<PersonView>,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone, Default)]
@@ -154,12 +158,12 @@ pub struct GetBannedPersons {
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct BannedPersonsResponse {
-  pub banned: Vec<PersonViewSafe>,
+  pub banned: Vec<PersonView>,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct BanPersonResponse {
-  pub person_view: PersonViewSafe,
+  pub person_view: PersonView,
   pub banned: bool,
 }
 
@@ -172,7 +176,7 @@ pub struct BlockPerson {
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct BlockPersonResponse {
-  pub person_view: PersonViewSafe,
+  pub person_view: PersonView,
   pub blocked: bool,
 }