local -> Bool,
published -> Timestamp,
updated -> Nullable<Timestamp>,
- ap_id -> Nullable<Text>,
+ ap_id -> Text,
sensitive -> Nullable<Bool>,
}
}
table! {
+ use diesel_ltree::sql_types::Ltree;
+ use diesel::sql_types::*;
+
comment (id) {
id -> Int4,
creator_id -> Int4,
post_id -> Int4,
- parent_id -> Nullable<Int4>,
content -> Text,
removed -> Bool,
- read -> Bool,
published -> Timestamp,
updated -> Nullable<Timestamp>,
deleted -> Bool,
ap_id -> Varchar,
local -> Bool,
+ path -> Ltree,
+ distinguished -> Bool,
+ language_id -> Int4,
}
}
upvotes -> Int8,
downvotes -> Int8,
published -> Timestamp,
+ child_count -> Int4,
}
}
followers_url -> Varchar,
inbox_url -> Varchar,
shared_inbox_url -> Nullable<Varchar>,
+ moderators_url -> Nullable<Varchar>,
+ featured_url -> Nullable<Varchar>,
+ hidden -> Bool,
+ posting_restricted_to_mods -> Bool,
+ instance_id -> Int4,
}
}
community_id -> Int4,
person_id -> Int4,
published -> Timestamp,
- pending -> Nullable<Bool>,
+ pending -> Bool,
}
}
community_id -> Int4,
person_id -> Int4,
published -> Timestamp,
+ expires -> Nullable<Timestamp>,
}
}
theme -> Varchar,
default_sort_type -> Int2,
default_listing_type -> Int2,
- lang -> Varchar,
+ interface_language -> Varchar,
show_avatars -> Bool,
send_notifications_to_email -> Bool,
validator_time -> Timestamp,
show_scores -> Bool,
show_read_posts -> Bool,
show_new_post_notifs -> Bool,
+ email_verified -> Bool,
+ accepted_application -> Bool,
}
}
}
table! {
- mod_sticky_post (id) {
+ mod_feature_post (id) {
id -> Int4,
mod_person_id -> Int4,
post_id -> Int4,
- stickied -> Nullable<Bool>,
+ featured -> Bool,
when_ -> Timestamp,
+ is_featured_community -> Bool,
}
}
matrix_user_id -> Nullable<Text>,
admin -> Bool,
bot_account -> Bool,
+ ban_expires -> Nullable<Timestamp>,
+ instance_id -> Int4,
}
}
}
}
+table! {
+ comment_reply (id) {
+ id -> Int4,
+ recipient_id -> Int4,
+ comment_id -> Int4,
+ read -> Bool,
+ published -> Timestamp,
+ }
+}
+
table! {
post (id) {
id -> Int4,
updated -> Nullable<Timestamp>,
deleted -> Bool,
nsfw -> Bool,
- stickied -> Bool,
embed_title -> Nullable<Text>,
embed_description -> Nullable<Text>,
- embed_html -> Nullable<Text>,
+ embed_video_url -> Nullable<Text>,
thumbnail_url -> Nullable<Text>,
ap_id -> Varchar,
local -> Bool,
+ language_id -> Int4,
+ featured_community -> Bool,
+ featured_local -> Bool,
+ }
+}
+
+table! {
+ person_post_aggregates (id) {
+ id -> Int4,
+ person_id -> Int4,
+ post_id -> Int4,
+ read_comments -> Int8,
+ published -> Timestamp,
}
}
score -> Int8,
upvotes -> Int8,
downvotes -> Int8,
- stickied -> Bool,
published -> Timestamp,
newest_comment_time_necro -> Timestamp,
newest_comment_time -> Timestamp,
+ featured_community -> Bool,
+ featured_local -> Bool,
}
}
}
}
+table! {
+ private_message_report (id) {
+ id -> Int4,
+ creator_id -> Int4,
+ private_message_id -> Int4,
+ original_pm_text -> Text,
+ reason -> Text,
+ resolved -> Bool,
+ resolver_id -> Nullable<Int4>,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
+
table! {
site (id) {
id -> Int4,
name -> Varchar,
sidebar -> Nullable<Text>,
- creator_id -> Int4,
published -> Timestamp,
updated -> Nullable<Timestamp>,
- enable_downvotes -> Bool,
- open_registration -> Bool,
- enable_nsfw -> Bool,
icon -> Nullable<Varchar>,
banner -> Nullable<Varchar>,
description -> Nullable<Text>,
- community_creation_admin_only -> Bool,
+ actor_id -> Text,
+ last_refreshed_at -> Timestamp,
+ inbox_url -> Text,
+ private_key -> Nullable<Text>,
+ public_key -> Text,
+ instance_id -> Int4,
}
}
}
}
-// These are necessary since diesel doesn't have self joins / aliases
table! {
- comment_alias_1 (id) {
+ secret(id) {
+ id -> Int4,
+ jwt_secret -> Varchar,
+ }
+}
+
+table! {
+ admin_purge_comment (id) {
+ id -> Int4,
+ admin_person_id -> Int4,
+ post_id -> Int4,
+ reason -> Nullable<Text>,
+ when_ -> Timestamp,
+ }
+}
+
+table! {
+ email_verification (id) {
+ id -> Int4,
+ local_user_id -> Int4,
+ email -> Text,
+ verification_token -> Varchar,
+ published -> Timestamp,
+ }
+}
+
+table! {
+ admin_purge_community (id) {
+ id -> Int4,
+ admin_person_id -> Int4,
+ reason -> Nullable<Text>,
+ when_ -> Timestamp,
+ }
+}
+
+table! {
+ admin_purge_person (id) {
+ id -> Int4,
+ admin_person_id -> Int4,
+ reason -> Nullable<Text>,
+ when_ -> Timestamp,
+ }
+}
+
+table! {
+ admin_purge_post (id) {
+ id -> Int4,
+ admin_person_id -> Int4,
+ community_id -> Int4,
+ reason -> Nullable<Text>,
+ when_ -> Timestamp,
+ }
+}
+
+table! {
+ registration_application (id) {
id -> Int4,
- creator_id -> Int4,
- post_id -> Int4,
- parent_id -> Nullable<Int4>,
- content -> Text,
- removed -> Bool,
- read -> Bool,
+ local_user_id -> Int4,
+ answer -> Text,
+ admin_id -> Nullable<Int4>,
+ deny_reason -> Nullable<Text>,
published -> Timestamp,
- updated -> Nullable<Timestamp>,
- deleted -> Bool,
- ap_id -> Varchar,
- local -> Bool,
}
}
table! {
- person_alias_1 (id) {
+ mod_hide_community (id) {
id -> Int4,
- name -> Varchar,
- display_name -> Nullable<Varchar>,
- avatar -> Nullable<Varchar>,
- banned -> Bool,
- published -> Timestamp,
- updated -> Nullable<Timestamp>,
- actor_id -> Varchar,
- bio -> Nullable<Text>,
- local -> Bool,
- private_key -> Nullable<Text>,
- public_key -> Text,
- last_refreshed_at -> Timestamp,
- banner -> Nullable<Varchar>,
- deleted -> Bool,
- inbox_url -> Varchar,
- shared_inbox_url -> Nullable<Varchar>,
- matrix_user_id -> Nullable<Text>,
- admin -> Bool,
- bot_account -> Bool,
+ community_id -> Int4,
+ mod_person_id -> Int4,
+ reason -> Nullable<Text>,
+ hidden -> Nullable<Bool>,
+ when_ -> Timestamp,
}
}
table! {
- person_alias_2 (id) {
+ language (id) {
id -> Int4,
- name -> Varchar,
- display_name -> Nullable<Varchar>,
- avatar -> Nullable<Varchar>,
- banned -> Bool,
- published -> Timestamp,
- updated -> Nullable<Timestamp>,
- actor_id -> Varchar,
- bio -> Nullable<Text>,
- local -> Bool,
- private_key -> Nullable<Text>,
- public_key -> Text,
- last_refreshed_at -> Timestamp,
- banner -> Nullable<Varchar>,
- deleted -> Bool,
- inbox_url -> Varchar,
- shared_inbox_url -> Nullable<Varchar>,
- matrix_user_id -> Nullable<Text>,
- admin -> Bool,
- bot_account -> Bool,
+ code -> Text,
+ name -> Text,
}
}
table! {
- secret(id) {
+ local_user_language(id) {
+ id -> Int4,
+ local_user_id -> Int4,
+ language_id -> Int4,
+ }
+}
+
+table! {
+ site_language(id) {
+ id -> Int4,
+ site_id -> Int4,
+ language_id -> Int4,
+ }
+}
+
+table! {
+ community_language(id) {
+ id -> Int4,
+ community_id -> Int4,
+ language_id -> Int4,
+ }
+}
+
+table! {
+ instance(id) {
id -> Int4,
- jwt_secret -> Varchar,
+ domain -> Text,
+ software -> Nullable<Text>,
+ version -> Nullable<Text>,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
+
+table! {
+ federation_allowlist(id) {
+ id -> Int4,
+ instance_id -> Int4,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
+
+table! {
+ federation_blocklist(id) {
+ id -> Int4,
+ instance_id -> Int4,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
}
}
-joinable!(comment_alias_1 -> person_alias_1 (creator_id));
-joinable!(comment -> comment_alias_1 (parent_id));
-joinable!(person_mention -> person_alias_1 (recipient_id));
-joinable!(post -> person_alias_1 (creator_id));
-joinable!(comment -> person_alias_1 (creator_id));
+table! {
+ use crate::source::local_site::RegistrationModeType;
+ use diesel::sql_types::*;
+
+ local_site(id) {
+ id -> Int4,
+ site_id -> Int4,
+ site_setup -> Bool,
+ enable_downvotes -> Bool,
+ enable_nsfw -> Bool,
+ community_creation_admin_only -> Bool,
+ require_email_verification -> Bool,
+ application_question -> Nullable<Text>,
+ private_instance -> Bool,
+ default_theme -> Text,
+ default_post_listing_type -> Text,
+ legal_information -> Nullable<Text>,
+ hide_modlog_mod_names -> Bool,
+ application_email_admins -> Bool,
+ slur_filter_regex -> Nullable<Text>,
+ actor_name_max_length -> Int4,
+ federation_enabled -> Bool,
+ federation_debug -> Bool,
+ federation_worker_count -> Int4,
+ captcha_enabled -> Bool,
+ captcha_difficulty -> Text,
+ registration_mode -> RegistrationModeType,
+ reports_email_admins -> Bool,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
-joinable!(post_report -> person_alias_2 (resolver_id));
-joinable!(comment_report -> person_alias_2 (resolver_id));
+table! {
+ local_site_rate_limit(id) {
+ id -> Int4,
+ local_site_id -> Int4,
+ message -> Int4,
+ message_per_second-> Int4,
+ post -> Int4,
+ post_per_second -> Int4,
+ register -> Int4,
+ register_per_second -> Int4,
+ image -> Int4,
+ image_per_second -> Int4,
+ comment -> Int4,
+ comment_per_second -> Int4,
+ search -> Int4,
+ search_per_second -> Int4,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
+
+table! {
+ tagline(id) {
+ id -> Int4,
+ local_site_id -> Int4,
+ content -> Text,
+ published -> Timestamp,
+ updated -> Nullable<Timestamp>,
+ }
+}
+
+table! {
+ person_follower (id) {
+ id -> Int4,
+ person_id -> Int4,
+ follower_id -> Int4,
+ published -> Timestamp,
+ pending -> Bool,
+ }
+}
joinable!(person_block -> person (person_id));
-joinable!(person_block -> person_alias_1 (target_id));
joinable!(comment -> person (creator_id));
joinable!(comment -> post (post_id));
joinable!(mod_remove_community -> person (mod_person_id));
joinable!(mod_remove_post -> person (mod_person_id));
joinable!(mod_remove_post -> post (post_id));
-joinable!(mod_sticky_post -> person (mod_person_id));
-joinable!(mod_sticky_post -> post (post_id));
+joinable!(mod_feature_post -> person (mod_person_id));
+joinable!(mod_feature_post -> post (post_id));
joinable!(password_reset_request -> local_user (local_user_id));
joinable!(person_aggregates -> person (person_id));
joinable!(person_ban -> person (person_id));
joinable!(person_mention -> comment (comment_id));
joinable!(person_mention -> person (recipient_id));
+joinable!(comment_reply -> comment (comment_id));
+joinable!(comment_reply -> person (recipient_id));
joinable!(post -> community (community_id));
joinable!(post -> person (creator_id));
+joinable!(person_post_aggregates -> post (post_id));
+joinable!(person_post_aggregates -> person (person_id));
joinable!(post_aggregates -> post (post_id));
joinable!(post_like -> person (person_id));
joinable!(post_like -> post (post_id));
joinable!(post_report -> post (post_id));
joinable!(post_saved -> person (person_id));
joinable!(post_saved -> post (post_id));
-joinable!(site -> person (creator_id));
joinable!(site_aggregates -> site (site_id));
+joinable!(email_verification -> local_user (local_user_id));
+joinable!(registration_application -> local_user (local_user_id));
+joinable!(registration_application -> person (admin_id));
+joinable!(mod_hide_community -> person (mod_person_id));
+joinable!(mod_hide_community -> community (community_id));
+joinable!(post -> language (language_id));
+joinable!(comment -> language (language_id));
+joinable!(local_user_language -> language (language_id));
+joinable!(local_user_language -> local_user (local_user_id));
+joinable!(private_message_report -> private_message (private_message_id));
+joinable!(site_language -> language (language_id));
+joinable!(site_language -> site (site_id));
+joinable!(community_language -> language (language_id));
+joinable!(community_language -> community (community_id));
+joinable!(person_follower -> person (follower_id));
+
+joinable!(admin_purge_comment -> person (admin_person_id));
+joinable!(admin_purge_comment -> post (post_id));
+joinable!(admin_purge_community -> person (admin_person_id));
+joinable!(admin_purge_person -> person (admin_person_id));
+joinable!(admin_purge_post -> community (community_id));
+joinable!(admin_purge_post -> person (admin_person_id));
+
+joinable!(site -> instance (instance_id));
+joinable!(person -> instance (instance_id));
+joinable!(community -> instance (instance_id));
+joinable!(federation_allowlist -> instance (instance_id));
+joinable!(federation_blocklist -> instance (instance_id));
+joinable!(local_site -> site (site_id));
+joinable!(local_site_rate_limit -> local_site (local_site_id));
+joinable!(tagline -> local_site (local_site_id));
allow_tables_to_appear_in_same_query!(
activity,
mod_remove_comment,
mod_remove_community,
mod_remove_post,
- mod_sticky_post,
+ mod_feature_post,
+ mod_hide_community,
password_reset_request,
person,
person_aggregates,
person_ban,
person_block,
person_mention,
+ person_post_aggregates,
+ comment_reply,
post,
post_aggregates,
post_like,
post_report,
post_saved,
private_message,
+ private_message_report,
site,
site_aggregates,
- comment_alias_1,
- person_alias_1,
- person_alias_2,
+ admin_purge_comment,
+ admin_purge_community,
+ admin_purge_person,
+ admin_purge_post,
+ email_verification,
+ registration_application,
+ language,
+ tagline,
+ local_user_language,
+ site_language,
+ community_language,
+ instance,
+ federation_allowlist,
+ federation_blocklist,
+ local_site,
+ local_site_rate_limit,
+ person_follower
);