// @generated automatically by Diesel CLI. pub mod sql_types { #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "actor_type_enum"))] pub struct ActorTypeEnum; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "community_visibility"))] pub struct CommunityVisibility; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "listing_type_enum"))] pub struct ListingTypeEnum; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "ltree"))] pub struct Ltree; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "post_listing_mode_enum"))] pub struct PostListingModeEnum; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "registration_mode_enum"))] pub struct RegistrationModeEnum; #[derive(diesel::sql_types::SqlType)] #[diesel(postgres_type(name = "sort_type_enum"))] pub struct SortTypeEnum; } diesel::table! { admin_purge_comment (id) { id -> Int4, admin_person_id -> Int4, post_id -> Int4, reason -> Nullable, when_ -> Timestamptz, } } diesel::table! { admin_purge_community (id) { id -> Int4, admin_person_id -> Int4, reason -> Nullable, when_ -> Timestamptz, } } diesel::table! { admin_purge_person (id) { id -> Int4, admin_person_id -> Int4, reason -> Nullable, when_ -> Timestamptz, } } diesel::table! { admin_purge_post (id) { id -> Int4, admin_person_id -> Int4, community_id -> Int4, reason -> Nullable, when_ -> Timestamptz, } } diesel::table! { captcha_answer (uuid) { uuid -> Uuid, answer -> Text, published -> Timestamptz, } } diesel::table! { use diesel::sql_types::*; use diesel_ltree::sql_types::Ltree; comment (id) { id -> Int4, creator_id -> Int4, post_id -> Int4, content -> Text, removed -> Bool, published -> Timestamptz, updated -> Nullable, deleted -> Bool, #[max_length = 255] ap_id -> Varchar, local -> Bool, path -> Ltree, distinguished -> Bool, language_id -> Int4, } } diesel::table! { comment_aggregates (comment_id) { comment_id -> Int4, score -> Int8, upvotes -> Int8, downvotes -> Int8, published -> Timestamptz, child_count -> Int4, hot_rank -> Float8, controversy_rank -> Float8, } } diesel::table! { comment_like (person_id, comment_id) { person_id -> Int4, comment_id -> Int4, post_id -> Int4, score -> Int2, published -> Timestamptz, } } diesel::table! { comment_reply (id) { id -> Int4, recipient_id -> Int4, comment_id -> Int4, read -> Bool, published -> Timestamptz, } } diesel::table! { comment_report (id) { id -> Int4, creator_id -> Int4, comment_id -> Int4, original_comment_text -> Text, reason -> Text, resolved -> Bool, resolver_id -> Nullable, published -> Timestamptz, updated -> Nullable, } } diesel::table! { comment_saved (person_id, comment_id) { comment_id -> Int4, person_id -> Int4, published -> Timestamptz, } } diesel::table! { use diesel::sql_types::*; use super::sql_types::CommunityVisibility; community (id) { id -> Int4, #[max_length = 255] name -> Varchar, #[max_length = 255] title -> Varchar, description -> Nullable, removed -> Bool, published -> Timestamptz, updated -> Nullable, deleted -> Bool, nsfw -> Bool, #[max_length = 255] actor_id -> Varchar, local -> Bool, private_key -> Nullable, public_key -> Text, last_refreshed_at -> Timestamptz, icon -> Nullable, banner -> Nullable, #[max_length = 255] followers_url -> Varchar, #[max_length = 255] inbox_url -> Varchar, #[max_length = 255] shared_inbox_url -> Nullable, hidden -> Bool, posting_restricted_to_mods -> Bool, instance_id -> Int4, #[max_length = 255] moderators_url -> Nullable, #[max_length = 255] featured_url -> Nullable, visibility -> CommunityVisibility, } } diesel::table! { community_aggregates (community_id) { community_id -> Int4, subscribers -> Int8, posts -> Int8, comments -> Int8, published -> Timestamptz, users_active_day -> Int8, users_active_week -> Int8, users_active_month -> Int8, users_active_half_year -> Int8, hot_rank -> Float8, subscribers_local -> Int8, } } diesel::table! { community_block (person_id, community_id) { person_id -> Int4, community_id -> Int4, published -> Timestamptz, } } diesel::table! { community_follower (person_id, community_id) { community_id -> Int4, person_id -> Int4, published -> Timestamptz, pending -> Bool, } } diesel::table! { community_language (community_id, language_id) { community_id -> Int4, language_id -> Int4, } } diesel::table! { community_moderator (person_id, community_id) { community_id -> Int4, person_id -> Int4, published -> Timestamptz, } } diesel::table! { community_person_ban (person_id, community_id) { community_id -> Int4, person_id -> Int4, published -> Timestamptz, expires -> Nullable, } } diesel::table! { custom_emoji (id) { id -> Int4, local_site_id -> Int4, #[max_length = 128] shortcode -> Varchar, image_url -> Text, alt_text -> Text, category -> Text, published -> Timestamptz, updated -> Nullable, } } diesel::table! { custom_emoji_keyword (custom_emoji_id, keyword) { custom_emoji_id -> Int4, #[max_length = 128] keyword -> Varchar, } } diesel::table! { email_verification (id) { id -> Int4, local_user_id -> Int4, email -> Text, verification_token -> Text, published -> Timestamptz, } } diesel::table! { federation_allowlist (instance_id) { instance_id -> Int4, published -> Timestamptz, updated -> Nullable, } } diesel::table! { federation_blocklist (instance_id) { instance_id -> Int4, published -> Timestamptz, updated -> Nullable, } } diesel::table! { federation_queue_state (instance_id) { instance_id -> Int4, last_successful_id -> Nullable, fail_count -> Int4, last_retry -> Nullable, last_successful_published_time -> Nullable, } } diesel::table! { instance (id) { id -> Int4, #[max_length = 255] domain -> Varchar, published -> Timestamptz, updated -> Nullable, #[max_length = 255] software -> Nullable, #[max_length = 255] version -> Nullable, } } diesel::table! { instance_block (person_id, instance_id) { person_id -> Int4, instance_id -> Int4, published -> Timestamptz, } } diesel::table! { language (id) { id -> Int4, #[max_length = 3] code -> Varchar, name -> Text, } } diesel::table! { local_image (pictrs_alias) { local_user_id -> Int4, pictrs_alias -> Text, pictrs_delete_token -> Text, published -> Timestamptz, } } diesel::table! { use diesel::sql_types::*; use super::sql_types::ListingTypeEnum; use super::sql_types::RegistrationModeEnum; 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, private_instance -> Bool, default_theme -> Text, default_post_listing_type -> ListingTypeEnum, legal_information -> Nullable, hide_modlog_mod_names -> Bool, application_email_admins -> Bool, slur_filter_regex -> Nullable, actor_name_max_length -> Int4, federation_enabled -> Bool, captcha_enabled -> Bool, #[max_length = 255] captcha_difficulty -> Varchar, published -> Timestamptz, updated -> Nullable, registration_mode -> RegistrationModeEnum, reports_email_admins -> Bool, federation_signed_fetch -> Bool, } } diesel::table! { local_site_rate_limit (local_site_id) { 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 -> Timestamptz, updated -> Nullable, import_user_settings -> Int4, import_user_settings_per_second -> Int4, } } diesel::table! { use diesel::sql_types::*; use super::sql_types::SortTypeEnum; use super::sql_types::ListingTypeEnum; use super::sql_types::PostListingModeEnum; local_user (id) { id -> Int4, person_id -> Int4, password_encrypted -> Text, email -> Nullable, show_nsfw -> Bool, theme -> Text, default_sort_type -> SortTypeEnum, default_listing_type -> ListingTypeEnum, #[max_length = 20] interface_language -> Varchar, show_avatars -> Bool, send_notifications_to_email -> Bool, show_scores -> Bool, show_bot_accounts -> Bool, show_read_posts -> Bool, email_verified -> Bool, accepted_application -> Bool, totp_2fa_secret -> Nullable, open_links_in_new_tab -> Bool, blur_nsfw -> Bool, auto_expand -> Bool, infinite_scroll_enabled -> Bool, admin -> Bool, post_listing_mode -> PostListingModeEnum, totp_2fa_enabled -> Bool, enable_keyboard_navigation -> Bool, enable_animated_images -> Bool, collapse_bot_comments -> Bool, } } diesel::table! { local_user_language (local_user_id, language_id) { local_user_id -> Int4, language_id -> Int4, } } diesel::table! { login_token (token) { token -> Text, user_id -> Int4, published -> Timestamptz, ip -> Nullable, user_agent -> Nullable, } } diesel::table! { mod_add (id) { id -> Int4, mod_person_id -> Int4, other_person_id -> Int4, removed -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_add_community (id) { id -> Int4, mod_person_id -> Int4, other_person_id -> Int4, community_id -> Int4, removed -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_ban (id) { id -> Int4, mod_person_id -> Int4, other_person_id -> Int4, reason -> Nullable, banned -> Bool, expires -> Nullable, when_ -> Timestamptz, } } diesel::table! { mod_ban_from_community (id) { id -> Int4, mod_person_id -> Int4, other_person_id -> Int4, community_id -> Int4, reason -> Nullable, banned -> Bool, expires -> Nullable, when_ -> Timestamptz, } } diesel::table! { mod_feature_post (id) { id -> Int4, mod_person_id -> Int4, post_id -> Int4, featured -> Bool, when_ -> Timestamptz, is_featured_community -> Bool, } } diesel::table! { mod_hide_community (id) { id -> Int4, community_id -> Int4, mod_person_id -> Int4, when_ -> Timestamptz, reason -> Nullable, hidden -> Bool, } } diesel::table! { mod_lock_post (id) { id -> Int4, mod_person_id -> Int4, post_id -> Int4, locked -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_remove_comment (id) { id -> Int4, mod_person_id -> Int4, comment_id -> Int4, reason -> Nullable, removed -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_remove_community (id) { id -> Int4, mod_person_id -> Int4, community_id -> Int4, reason -> Nullable, removed -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_remove_post (id) { id -> Int4, mod_person_id -> Int4, post_id -> Int4, reason -> Nullable, removed -> Bool, when_ -> Timestamptz, } } diesel::table! { mod_transfer_community (id) { id -> Int4, mod_person_id -> Int4, other_person_id -> Int4, community_id -> Int4, when_ -> Timestamptz, } } diesel::table! { password_reset_request (id) { id -> Int4, token -> Text, published -> Timestamptz, local_user_id -> Int4, } } diesel::table! { person (id) { id -> Int4, #[max_length = 255] name -> Varchar, #[max_length = 255] display_name -> Nullable, avatar -> Nullable, banned -> Bool, published -> Timestamptz, updated -> Nullable, #[max_length = 255] actor_id -> Varchar, bio -> Nullable, local -> Bool, private_key -> Nullable, public_key -> Text, last_refreshed_at -> Timestamptz, banner -> Nullable, deleted -> Bool, #[max_length = 255] inbox_url -> Varchar, #[max_length = 255] shared_inbox_url -> Nullable, matrix_user_id -> Nullable, bot_account -> Bool, ban_expires -> Nullable, instance_id -> Int4, } } diesel::table! { person_aggregates (person_id) { person_id -> Int4, post_count -> Int8, post_score -> Int8, comment_count -> Int8, comment_score -> Int8, } } diesel::table! { person_ban (person_id) { person_id -> Int4, published -> Timestamptz, } } diesel::table! { person_block (person_id, target_id) { person_id -> Int4, target_id -> Int4, published -> Timestamptz, } } diesel::table! { person_follower (follower_id, person_id) { person_id -> Int4, follower_id -> Int4, published -> Timestamptz, pending -> Bool, } } diesel::table! { person_mention (id) { id -> Int4, recipient_id -> Int4, comment_id -> Int4, read -> Bool, published -> Timestamptz, } } diesel::table! { person_post_aggregates (person_id, post_id) { person_id -> Int4, post_id -> Int4, read_comments -> Int8, published -> Timestamptz, } } diesel::table! { post (id) { id -> Int4, #[max_length = 200] name -> Varchar, #[max_length = 512] url -> Nullable, body -> Nullable, creator_id -> Int4, community_id -> Int4, removed -> Bool, locked -> Bool, published -> Timestamptz, updated -> Nullable, deleted -> Bool, nsfw -> Bool, embed_title -> Nullable, embed_description -> Nullable, thumbnail_url -> Nullable, #[max_length = 255] ap_id -> Varchar, local -> Bool, embed_video_url -> Nullable, language_id -> Int4, featured_community -> Bool, featured_local -> Bool, url_content_type -> Nullable, } } diesel::table! { post_aggregates (post_id) { post_id -> Int4, comments -> Int8, score -> Int8, upvotes -> Int8, downvotes -> Int8, published -> Timestamptz, newest_comment_time_necro -> Timestamptz, newest_comment_time -> Timestamptz, featured_community -> Bool, featured_local -> Bool, hot_rank -> Float8, hot_rank_active -> Float8, community_id -> Int4, creator_id -> Int4, controversy_rank -> Float8, instance_id -> Int4, scaled_rank -> Float8, } } diesel::table! { post_like (person_id, post_id) { post_id -> Int4, person_id -> Int4, score -> Int2, published -> Timestamptz, } } diesel::table! { post_read (person_id, post_id) { post_id -> Int4, person_id -> Int4, published -> Timestamptz, } } diesel::table! { post_report (id) { id -> Int4, creator_id -> Int4, post_id -> Int4, #[max_length = 200] original_post_name -> Varchar, original_post_url -> Nullable, original_post_body -> Nullable, reason -> Text, resolved -> Bool, resolver_id -> Nullable, published -> Timestamptz, updated -> Nullable, } } diesel::table! { post_saved (person_id, post_id) { post_id -> Int4, person_id -> Int4, published -> Timestamptz, } } diesel::table! { private_message (id) { id -> Int4, creator_id -> Int4, recipient_id -> Int4, content -> Text, deleted -> Bool, read -> Bool, published -> Timestamptz, updated -> Nullable, #[max_length = 255] ap_id -> Varchar, local -> Bool, } } diesel::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, published -> Timestamptz, updated -> Nullable, } } diesel::table! { received_activity (ap_id) { ap_id -> Text, published -> Timestamptz, } } diesel::table! { registration_application (id) { id -> Int4, local_user_id -> Int4, answer -> Text, admin_id -> Nullable, deny_reason -> Nullable, published -> Timestamptz, } } diesel::table! { remote_image (id) { id -> Int4, link -> Text, published -> Timestamptz, } } diesel::table! { secret (id) { id -> Int4, jwt_secret -> Varchar, } } diesel::table! { use diesel::sql_types::*; use super::sql_types::ActorTypeEnum; sent_activity (id) { id -> Int8, ap_id -> Text, data -> Json, sensitive -> Bool, published -> Timestamptz, send_inboxes -> Array>, send_community_followers_of -> Nullable, send_all_instances -> Bool, actor_type -> ActorTypeEnum, actor_apub_id -> Nullable, } } diesel::table! { site (id) { id -> Int4, #[max_length = 20] name -> Varchar, sidebar -> Nullable, published -> Timestamptz, updated -> Nullable, icon -> Nullable, banner -> Nullable, #[max_length = 150] description -> Nullable, #[max_length = 255] actor_id -> Varchar, last_refreshed_at -> Timestamptz, #[max_length = 255] inbox_url -> Varchar, private_key -> Nullable, public_key -> Text, instance_id -> Int4, } } diesel::table! { site_aggregates (site_id) { site_id -> Int4, users -> Int8, posts -> Int8, comments -> Int8, communities -> Int8, users_active_day -> Int8, users_active_week -> Int8, users_active_month -> Int8, users_active_half_year -> Int8, } } diesel::table! { site_language (site_id, language_id) { site_id -> Int4, language_id -> Int4, } } diesel::table! { tagline (id) { id -> Int4, local_site_id -> Int4, content -> Text, published -> Timestamptz, updated -> Nullable, } } diesel::joinable!(admin_purge_comment -> person (admin_person_id)); diesel::joinable!(admin_purge_comment -> post (post_id)); diesel::joinable!(admin_purge_community -> person (admin_person_id)); diesel::joinable!(admin_purge_person -> person (admin_person_id)); diesel::joinable!(admin_purge_post -> community (community_id)); diesel::joinable!(admin_purge_post -> person (admin_person_id)); diesel::joinable!(comment -> language (language_id)); diesel::joinable!(comment -> person (creator_id)); diesel::joinable!(comment -> post (post_id)); diesel::joinable!(comment_aggregates -> comment (comment_id)); diesel::joinable!(comment_like -> comment (comment_id)); diesel::joinable!(comment_like -> person (person_id)); diesel::joinable!(comment_like -> post (post_id)); diesel::joinable!(comment_reply -> comment (comment_id)); diesel::joinable!(comment_reply -> person (recipient_id)); diesel::joinable!(comment_report -> comment (comment_id)); diesel::joinable!(comment_saved -> comment (comment_id)); diesel::joinable!(comment_saved -> person (person_id)); diesel::joinable!(community -> instance (instance_id)); diesel::joinable!(community_aggregates -> community (community_id)); diesel::joinable!(community_block -> community (community_id)); diesel::joinable!(community_block -> person (person_id)); diesel::joinable!(community_follower -> community (community_id)); diesel::joinable!(community_follower -> person (person_id)); diesel::joinable!(community_language -> community (community_id)); diesel::joinable!(community_language -> language (language_id)); diesel::joinable!(community_moderator -> community (community_id)); diesel::joinable!(community_moderator -> person (person_id)); diesel::joinable!(community_person_ban -> community (community_id)); diesel::joinable!(community_person_ban -> person (person_id)); diesel::joinable!(custom_emoji -> local_site (local_site_id)); diesel::joinable!(custom_emoji_keyword -> custom_emoji (custom_emoji_id)); diesel::joinable!(email_verification -> local_user (local_user_id)); diesel::joinable!(federation_allowlist -> instance (instance_id)); diesel::joinable!(federation_blocklist -> instance (instance_id)); diesel::joinable!(federation_queue_state -> instance (instance_id)); diesel::joinable!(instance_block -> instance (instance_id)); diesel::joinable!(instance_block -> person (person_id)); diesel::joinable!(local_image -> local_user (local_user_id)); diesel::joinable!(local_site -> site (site_id)); diesel::joinable!(local_site_rate_limit -> local_site (local_site_id)); diesel::joinable!(local_user -> person (person_id)); diesel::joinable!(local_user_language -> language (language_id)); diesel::joinable!(local_user_language -> local_user (local_user_id)); diesel::joinable!(login_token -> local_user (user_id)); diesel::joinable!(mod_add_community -> community (community_id)); diesel::joinable!(mod_ban_from_community -> community (community_id)); diesel::joinable!(mod_feature_post -> person (mod_person_id)); diesel::joinable!(mod_feature_post -> post (post_id)); diesel::joinable!(mod_hide_community -> community (community_id)); diesel::joinable!(mod_hide_community -> person (mod_person_id)); diesel::joinable!(mod_lock_post -> person (mod_person_id)); diesel::joinable!(mod_lock_post -> post (post_id)); diesel::joinable!(mod_remove_comment -> comment (comment_id)); diesel::joinable!(mod_remove_comment -> person (mod_person_id)); diesel::joinable!(mod_remove_community -> community (community_id)); diesel::joinable!(mod_remove_community -> person (mod_person_id)); diesel::joinable!(mod_remove_post -> person (mod_person_id)); diesel::joinable!(mod_remove_post -> post (post_id)); diesel::joinable!(mod_transfer_community -> community (community_id)); diesel::joinable!(password_reset_request -> local_user (local_user_id)); diesel::joinable!(person -> instance (instance_id)); diesel::joinable!(person_aggregates -> person (person_id)); diesel::joinable!(person_ban -> person (person_id)); diesel::joinable!(person_mention -> comment (comment_id)); diesel::joinable!(person_mention -> person (recipient_id)); diesel::joinable!(person_post_aggregates -> person (person_id)); diesel::joinable!(person_post_aggregates -> post (post_id)); diesel::joinable!(post -> community (community_id)); diesel::joinable!(post -> language (language_id)); diesel::joinable!(post -> person (creator_id)); diesel::joinable!(post_aggregates -> community (community_id)); diesel::joinable!(post_aggregates -> instance (instance_id)); diesel::joinable!(post_aggregates -> person (creator_id)); diesel::joinable!(post_aggregates -> post (post_id)); diesel::joinable!(post_like -> person (person_id)); diesel::joinable!(post_like -> post (post_id)); diesel::joinable!(post_read -> person (person_id)); diesel::joinable!(post_read -> post (post_id)); diesel::joinable!(post_report -> post (post_id)); diesel::joinable!(post_saved -> person (person_id)); diesel::joinable!(post_saved -> post (post_id)); diesel::joinable!(private_message_report -> private_message (private_message_id)); diesel::joinable!(registration_application -> local_user (local_user_id)); diesel::joinable!(registration_application -> person (admin_id)); diesel::joinable!(site -> instance (instance_id)); diesel::joinable!(site_aggregates -> site (site_id)); diesel::joinable!(site_language -> language (language_id)); diesel::joinable!(site_language -> site (site_id)); diesel::joinable!(tagline -> local_site (local_site_id)); diesel::allow_tables_to_appear_in_same_query!( admin_purge_comment, admin_purge_community, admin_purge_person, admin_purge_post, captcha_answer, comment, comment_aggregates, comment_like, comment_reply, comment_report, comment_saved, community, community_aggregates, community_block, community_follower, community_language, community_moderator, community_person_ban, custom_emoji, custom_emoji_keyword, email_verification, federation_allowlist, federation_blocklist, federation_queue_state, instance, instance_block, language, local_image, local_site, local_site_rate_limit, local_user, local_user_language, login_token, mod_add, mod_add_community, mod_ban, mod_ban_from_community, mod_feature_post, mod_hide_community, mod_lock_post, mod_remove_comment, mod_remove_community, mod_remove_post, mod_transfer_community, password_reset_request, person, person_aggregates, person_ban, person_block, person_follower, person_mention, person_post_aggregates, post, post_aggregates, post_like, post_read, post_report, post_saved, private_message, private_message_report, received_activity, registration_application, remote_image, secret, sent_activity, site, site_aggregates, site_language, tagline, );