]> Untitled Git - lemmy.git/blobdiff - crates/db_views_moderator/src/structs.rs
Get rid of Safe Views, use serde_skip (#2767)
[lemmy.git] / crates / db_views_moderator / src / structs.rs
index 9d525b57b11e9d5440797f032e8d0cd6852c6dbd..4a62ba9e41a6634e4c58fe5427509a010c4e8bb0 100644 (file)
-use lemmy_db_schema::source::{
-  comment::Comment,
-  community::CommunitySafe,
-  moderator::{
-    ModAdd,
-    ModAddCommunity,
-    ModBan,
-    ModBanFromCommunity,
-    ModHideCommunity,
-    ModLockPost,
-    ModRemoveComment,
-    ModRemoveCommunity,
-    ModRemovePost,
-    ModStickyPost,
-    ModTransferCommunity,
+use lemmy_db_schema::{
+  newtypes::{CommunityId, PersonId},
+  source::{
+    comment::Comment,
+    community::Community,
+    moderator::{
+      AdminPurgeComment,
+      AdminPurgeCommunity,
+      AdminPurgePerson,
+      AdminPurgePost,
+      ModAdd,
+      ModAddCommunity,
+      ModBan,
+      ModBanFromCommunity,
+      ModFeaturePost,
+      ModHideCommunity,
+      ModLockPost,
+      ModRemoveComment,
+      ModRemoveCommunity,
+      ModRemovePost,
+      ModTransferCommunity,
+    },
+    person::Person,
+    post::Post,
   },
-  person::{PersonSafe, PersonSafeAlias1},
-  post::Post,
 };
 use serde::{Deserialize, Serialize};
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModAddCommunityView {
   pub mod_add_community: ModAddCommunity,
-  pub moderator: PersonSafe,
-  pub community: CommunitySafe,
-  pub modded_person: PersonSafeAlias1,
+  pub moderator: Option<Person>,
+  pub community: Community,
+  pub modded_person: Person,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModAddView {
   pub mod_add: ModAdd,
-  pub moderator: PersonSafe,
-  pub modded_person: PersonSafeAlias1,
+  pub moderator: Option<Person>,
+  pub modded_person: Person,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModBanFromCommunityView {
   pub mod_ban_from_community: ModBanFromCommunity,
-  pub moderator: PersonSafe,
-  pub community: CommunitySafe,
-  pub banned_person: PersonSafeAlias1,
+  pub moderator: Option<Person>,
+  pub community: Community,
+  pub banned_person: Person,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModBanView {
   pub mod_ban: ModBan,
-  pub moderator: PersonSafe,
-  pub banned_person: PersonSafeAlias1,
+  pub moderator: Option<Person>,
+  pub banned_person: Person,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModHideCommunityView {
   pub mod_hide_community: ModHideCommunity,
-  pub admin: PersonSafe,
-  pub community: CommunitySafe,
+  pub admin: Option<Person>,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModLockPostView {
   pub mod_lock_post: ModLockPost,
-  pub moderator: PersonSafe,
+  pub moderator: Option<Person>,
   pub post: Post,
-  pub community: CommunitySafe,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModRemoveCommentView {
   pub mod_remove_comment: ModRemoveComment,
-  pub moderator: PersonSafe,
+  pub moderator: Option<Person>,
   pub comment: Comment,
-  pub commenter: PersonSafeAlias1,
+  pub commenter: Person,
   pub post: Post,
-  pub community: CommunitySafe,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModRemoveCommunityView {
   pub mod_remove_community: ModRemoveCommunity,
-  pub moderator: PersonSafe,
-  pub community: CommunitySafe,
+  pub moderator: Option<Person>,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModRemovePostView {
   pub mod_remove_post: ModRemovePost,
-  pub moderator: PersonSafe,
+  pub moderator: Option<Person>,
   pub post: Post,
-  pub community: CommunitySafe,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
-pub struct ModStickyPostView {
-  pub mod_sticky_post: ModStickyPost,
-  pub moderator: PersonSafe,
+pub struct ModFeaturePostView {
+  pub mod_feature_post: ModFeaturePost,
+  pub moderator: Option<Person>,
   pub post: Post,
-  pub community: CommunitySafe,
+  pub community: Community,
 }
 
 #[derive(Debug, Serialize, Deserialize, Clone)]
 pub struct ModTransferCommunityView {
   pub mod_transfer_community: ModTransferCommunity,
-  pub moderator: PersonSafe,
-  pub community: CommunitySafe,
-  pub modded_person: PersonSafeAlias1,
+  pub moderator: Option<Person>,
+  pub community: Community,
+  pub modded_person: Person,
+}
+
+#[derive(Debug, Serialize, Deserialize, Clone)]
+pub struct AdminPurgeCommentView {
+  pub admin_purge_comment: AdminPurgeComment,
+  pub admin: Option<Person>,
+  pub post: Post,
+}
+
+#[derive(Debug, Serialize, Deserialize, Clone)]
+pub struct AdminPurgeCommunityView {
+  pub admin_purge_community: AdminPurgeCommunity,
+  pub admin: Option<Person>,
+}
+
+#[derive(Debug, Serialize, Deserialize, Clone)]
+pub struct AdminPurgePersonView {
+  pub admin_purge_person: AdminPurgePerson,
+  pub admin: Option<Person>,
+}
+
+#[derive(Debug, Serialize, Deserialize, Clone)]
+pub struct AdminPurgePostView {
+  pub admin_purge_post: AdminPurgePost,
+  pub admin: Option<Person>,
+  pub community: Community,
+}
+
+#[derive(Debug, Serialize, Deserialize, Clone, Copy)]
+pub struct ModlogListParams {
+  pub community_id: Option<CommunityId>,
+  pub mod_person_id: Option<PersonId>,
+  pub other_person_id: Option<PersonId>,
+  pub page: Option<i64>,
+  pub limit: Option<i64>,
+  pub hide_modlog_names: bool,
 }