+#![recursion_limit = "256"]
+
#[cfg(feature = "full")]
#[macro_use]
extern crate diesel;
extern crate diesel_derive_newtype;
// this is used in tests
#[cfg(feature = "full")]
-#[allow(unused_imports)]
#[macro_use]
extern crate diesel_migrations;
+#[cfg(feature = "full")]
+#[macro_use]
+extern crate async_trait;
+
pub mod aggregates;
#[cfg(feature = "full")]
pub mod impls;
Active,
Hot,
New,
+ Old,
TopDay,
TopWeek,
TopMonth,
NewComments,
}
-#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy, PartialEq)]
+#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy)]
+pub enum CommentSortType {
+ Hot,
+ Top,
+ New,
+ Old,
+}
+
+#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy, PartialEq, Eq)]
pub enum ListingType {
All,
Local,
Subscribed,
- Community,
}
#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy)]
Url,
}
-#[derive(EnumString, Display, Debug, PartialEq, Serialize, Deserialize, Clone, Copy)]
+#[derive(EnumString, Display, Debug, PartialEq, Eq, Serialize, Deserialize, Clone, Copy)]
pub enum SubscribedType {
Subscribed,
NotSubscribed,
Pending,
}
+
+#[derive(EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy, PartialEq, Eq)]
+pub enum ModlogActionType {
+ All,
+ ModRemovePost,
+ ModLockPost,
+ ModFeaturePost,
+ ModRemoveComment,
+ ModRemoveCommunity,
+ ModBanFromCommunity,
+ ModAddCommunity,
+ ModTransferCommunity,
+ ModAdd,
+ ModBan,
+ ModHideCommunity,
+ AdminPurgePerson,
+ AdminPurgeCommunity,
+ AdminPurgePost,
+ AdminPurgeComment,
+}
+
+#[derive(
+ EnumString, Display, Debug, Serialize, Deserialize, Clone, Copy, Default, PartialEq, Eq,
+)]
+pub enum PostFeatureType {
+ #[default]
+ Local,
+ Community,
+}