]> Untitled Git - lemmy.git/blob - crates/db_schema/src/schema.rs
Diesel 2.0.0 upgrade (#2452)
[lemmy.git] / crates / db_schema / src / schema.rs
1 table! {
2     activity (id) {
3         id -> Int4,
4         data -> Jsonb,
5         local -> Bool,
6         published -> Timestamp,
7         updated -> Nullable<Timestamp>,
8         ap_id -> Text,
9         sensitive -> Nullable<Bool>,
10     }
11 }
12
13 table! {
14   use diesel_ltree::sql_types::Ltree;
15   use diesel::sql_types::*;
16
17     comment (id) {
18         id -> Int4,
19         creator_id -> Int4,
20         post_id -> Int4,
21         content -> Text,
22         removed -> Bool,
23         published -> Timestamp,
24         updated -> Nullable<Timestamp>,
25         deleted -> Bool,
26         ap_id -> Varchar,
27         local -> Bool,
28         path -> Ltree,
29         distinguished -> Bool,
30         language_id -> Int4,
31     }
32 }
33
34 table! {
35     comment_aggregates (id) {
36         id -> Int4,
37         comment_id -> Int4,
38         score -> Int8,
39         upvotes -> Int8,
40         downvotes -> Int8,
41         published -> Timestamp,
42         child_count ->  Int4,
43     }
44 }
45
46 table! {
47     comment_like (id) {
48         id -> Int4,
49         person_id -> Int4,
50         comment_id -> Int4,
51         post_id -> Int4,
52         score -> Int2,
53         published -> Timestamp,
54     }
55 }
56
57 table! {
58     comment_report (id) {
59         id -> Int4,
60         creator_id -> Int4,
61         comment_id -> Int4,
62         original_comment_text -> Text,
63         reason -> Text,
64         resolved -> Bool,
65         resolver_id -> Nullable<Int4>,
66         published -> Timestamp,
67         updated -> Nullable<Timestamp>,
68     }
69 }
70
71 table! {
72     comment_saved (id) {
73         id -> Int4,
74         comment_id -> Int4,
75         person_id -> Int4,
76         published -> Timestamp,
77     }
78 }
79
80 table! {
81     community (id) {
82         id -> Int4,
83         name -> Varchar,
84         title -> Varchar,
85         description -> Nullable<Text>,
86         removed -> Bool,
87         published -> Timestamp,
88         updated -> Nullable<Timestamp>,
89         deleted -> Bool,
90         nsfw -> Bool,
91         actor_id -> Varchar,
92         local -> Bool,
93         private_key -> Nullable<Text>,
94         public_key -> Text,
95         last_refreshed_at -> Timestamp,
96         icon -> Nullable<Varchar>,
97         banner -> Nullable<Varchar>,
98         followers_url -> Varchar,
99         inbox_url -> Varchar,
100         shared_inbox_url -> Nullable<Varchar>,
101         hidden -> Bool,
102         posting_restricted_to_mods -> Bool,
103     }
104 }
105
106 table! {
107     community_aggregates (id) {
108         id -> Int4,
109         community_id -> Int4,
110         subscribers -> Int8,
111         posts -> Int8,
112         comments -> Int8,
113         published -> Timestamp,
114         users_active_day -> Int8,
115         users_active_week -> Int8,
116         users_active_month -> Int8,
117         users_active_half_year -> Int8,
118     }
119 }
120
121 table! {
122     community_follower (id) {
123         id -> Int4,
124         community_id -> Int4,
125         person_id -> Int4,
126         published -> Timestamp,
127         pending -> Nullable<Bool>,
128     }
129 }
130
131 table! {
132     community_moderator (id) {
133         id -> Int4,
134         community_id -> Int4,
135         person_id -> Int4,
136         published -> Timestamp,
137     }
138 }
139
140 table! {
141     community_person_ban (id) {
142         id -> Int4,
143         community_id -> Int4,
144         person_id -> Int4,
145         published -> Timestamp,
146         expires -> Nullable<Timestamp>,
147     }
148 }
149
150 table! {
151     local_user (id) {
152         id -> Int4,
153         person_id -> Int4,
154         password_encrypted -> Text,
155         email -> Nullable<Text>,
156         show_nsfw -> Bool,
157         theme -> Varchar,
158         default_sort_type -> Int2,
159         default_listing_type -> Int2,
160         interface_language -> Varchar,
161         show_avatars -> Bool,
162         send_notifications_to_email -> Bool,
163         validator_time -> Timestamp,
164         show_bot_accounts -> Bool,
165         show_scores -> Bool,
166         show_read_posts -> Bool,
167         show_new_post_notifs -> Bool,
168         email_verified -> Bool,
169         accepted_application -> Bool,
170     }
171 }
172
173 table! {
174     mod_add (id) {
175         id -> Int4,
176         mod_person_id -> Int4,
177         other_person_id -> Int4,
178         removed -> Nullable<Bool>,
179         when_ -> Timestamp,
180     }
181 }
182
183 table! {
184     mod_add_community (id) {
185         id -> Int4,
186         mod_person_id -> Int4,
187         other_person_id -> Int4,
188         community_id -> Int4,
189         removed -> Nullable<Bool>,
190         when_ -> Timestamp,
191     }
192 }
193
194 table! {
195     mod_transfer_community (id) {
196         id -> Int4,
197         mod_person_id -> Int4,
198         other_person_id -> Int4,
199         community_id -> Int4,
200         removed -> Nullable<Bool>,
201         when_ -> Timestamp,
202     }
203 }
204
205 table! {
206     mod_ban (id) {
207         id -> Int4,
208         mod_person_id -> Int4,
209         other_person_id -> Int4,
210         reason -> Nullable<Text>,
211         banned -> Nullable<Bool>,
212         expires -> Nullable<Timestamp>,
213         when_ -> Timestamp,
214     }
215 }
216
217 table! {
218     mod_ban_from_community (id) {
219         id -> Int4,
220         mod_person_id -> Int4,
221         other_person_id -> Int4,
222         community_id -> Int4,
223         reason -> Nullable<Text>,
224         banned -> Nullable<Bool>,
225         expires -> Nullable<Timestamp>,
226         when_ -> Timestamp,
227     }
228 }
229
230 table! {
231     mod_lock_post (id) {
232         id -> Int4,
233         mod_person_id -> Int4,
234         post_id -> Int4,
235         locked -> Nullable<Bool>,
236         when_ -> Timestamp,
237     }
238 }
239
240 table! {
241     mod_remove_comment (id) {
242         id -> Int4,
243         mod_person_id -> Int4,
244         comment_id -> Int4,
245         reason -> Nullable<Text>,
246         removed -> Nullable<Bool>,
247         when_ -> Timestamp,
248     }
249 }
250
251 table! {
252     mod_remove_community (id) {
253         id -> Int4,
254         mod_person_id -> Int4,
255         community_id -> Int4,
256         reason -> Nullable<Text>,
257         removed -> Nullable<Bool>,
258         expires -> Nullable<Timestamp>,
259         when_ -> Timestamp,
260     }
261 }
262
263 table! {
264     mod_remove_post (id) {
265         id -> Int4,
266         mod_person_id -> Int4,
267         post_id -> Int4,
268         reason -> Nullable<Text>,
269         removed -> Nullable<Bool>,
270         when_ -> Timestamp,
271     }
272 }
273
274 table! {
275     mod_sticky_post (id) {
276         id -> Int4,
277         mod_person_id -> Int4,
278         post_id -> Int4,
279         stickied -> Nullable<Bool>,
280         when_ -> Timestamp,
281     }
282 }
283
284 table! {
285     password_reset_request (id) {
286         id -> Int4,
287         token_encrypted -> Text,
288         published -> Timestamp,
289         local_user_id -> Int4,
290     }
291 }
292
293 table! {
294     person (id) {
295         id -> Int4,
296         name -> Varchar,
297         display_name -> Nullable<Varchar>,
298         avatar -> Nullable<Varchar>,
299         banned -> Bool,
300         published -> Timestamp,
301         updated -> Nullable<Timestamp>,
302         actor_id -> Varchar,
303         bio -> Nullable<Text>,
304         local -> Bool,
305         private_key -> Nullable<Text>,
306         public_key -> Text,
307         last_refreshed_at -> Timestamp,
308         banner -> Nullable<Varchar>,
309         deleted -> Bool,
310         inbox_url -> Varchar,
311         shared_inbox_url -> Nullable<Varchar>,
312         matrix_user_id -> Nullable<Text>,
313         admin -> Bool,
314         bot_account -> Bool,
315         ban_expires -> Nullable<Timestamp>,
316     }
317 }
318
319 table! {
320     person_aggregates (id) {
321         id -> Int4,
322         person_id -> Int4,
323         post_count -> Int8,
324         post_score -> Int8,
325         comment_count -> Int8,
326         comment_score -> Int8,
327     }
328 }
329
330 table! {
331     person_ban (id) {
332         id -> Int4,
333         person_id -> Int4,
334         published -> Timestamp,
335     }
336 }
337
338 table! {
339     person_mention (id) {
340         id -> Int4,
341         recipient_id -> Int4,
342         comment_id -> Int4,
343         read -> Bool,
344         published -> Timestamp,
345     }
346 }
347
348 table! {
349     comment_reply (id) {
350         id -> Int4,
351         recipient_id -> Int4,
352         comment_id -> Int4,
353         read -> Bool,
354         published -> Timestamp,
355     }
356 }
357
358 table! {
359     post (id) {
360         id -> Int4,
361         name -> Varchar,
362         url -> Nullable<Varchar>,
363         body -> Nullable<Text>,
364         creator_id -> Int4,
365         community_id -> Int4,
366         removed -> Bool,
367         locked -> Bool,
368         published -> Timestamp,
369         updated -> Nullable<Timestamp>,
370         deleted -> Bool,
371         nsfw -> Bool,
372         stickied -> Bool,
373         embed_title -> Nullable<Text>,
374         embed_description -> Nullable<Text>,
375         embed_video_url -> Nullable<Text>,
376         thumbnail_url -> Nullable<Text>,
377         ap_id -> Varchar,
378         local -> Bool,
379         language_id -> Int4,
380     }
381 }
382
383 table! {
384     post_aggregates (id) {
385         id -> Int4,
386         post_id -> Int4,
387         comments -> Int8,
388         score -> Int8,
389         upvotes -> Int8,
390         downvotes -> Int8,
391         stickied -> Bool,
392         published -> Timestamp,
393         newest_comment_time_necro -> Timestamp,
394         newest_comment_time -> Timestamp,
395     }
396 }
397
398 table! {
399     post_like (id) {
400         id -> Int4,
401         post_id -> Int4,
402         person_id -> Int4,
403         score -> Int2,
404         published -> Timestamp,
405     }
406 }
407
408 table! {
409     post_read (id) {
410         id -> Int4,
411         post_id -> Int4,
412         person_id -> Int4,
413         published -> Timestamp,
414     }
415 }
416
417 table! {
418     post_report (id) {
419         id -> Int4,
420         creator_id -> Int4,
421         post_id -> Int4,
422         original_post_name -> Varchar,
423         original_post_url -> Nullable<Text>,
424         original_post_body -> Nullable<Text>,
425         reason -> Text,
426         resolved -> Bool,
427         resolver_id -> Nullable<Int4>,
428         published -> Timestamp,
429         updated -> Nullable<Timestamp>,
430     }
431 }
432
433 table! {
434     post_saved (id) {
435         id -> Int4,
436         post_id -> Int4,
437         person_id -> Int4,
438         published -> Timestamp,
439     }
440 }
441
442 table! {
443     private_message (id) {
444         id -> Int4,
445         creator_id -> Int4,
446         recipient_id -> Int4,
447         content -> Text,
448         deleted -> Bool,
449         read -> Bool,
450         published -> Timestamp,
451         updated -> Nullable<Timestamp>,
452         ap_id -> Varchar,
453         local -> Bool,
454     }
455 }
456
457 table! {
458     private_message_report (id) {
459         id -> Int4,
460         creator_id -> Int4,
461         private_message_id -> Int4,
462         original_pm_text -> Text,
463         reason -> Text,
464         resolved -> Bool,
465         resolver_id -> Nullable<Int4>,
466         published -> Timestamp,
467         updated -> Nullable<Timestamp>,
468     }
469 }
470
471 table! {
472     site (id) {
473         id -> Int4,
474         name -> Varchar,
475         sidebar -> Nullable<Text>,
476         published -> Timestamp,
477         updated -> Nullable<Timestamp>,
478         enable_downvotes -> Bool,
479         open_registration -> Bool,
480         enable_nsfw -> Bool,
481         icon -> Nullable<Varchar>,
482         banner -> Nullable<Varchar>,
483         description -> Nullable<Text>,
484         community_creation_admin_only -> Bool,
485         require_email_verification -> Bool,
486         require_application -> Bool,
487         application_question -> Nullable<Text>,
488         private_instance -> Bool,
489         actor_id -> Text,
490         last_refreshed_at -> Timestamp,
491         inbox_url -> Text,
492         private_key -> Nullable<Text>,
493         public_key -> Text,
494         default_theme -> Text,
495         default_post_listing_type -> Text,
496         legal_information -> Nullable<Text>,
497         hide_modlog_mod_names -> Bool,
498     }
499 }
500
501 table! {
502     site_aggregates (id) {
503         id -> Int4,
504         site_id -> Int4,
505         users -> Int8,
506         posts -> Int8,
507         comments -> Int8,
508         communities -> Int8,
509         users_active_day -> Int8,
510         users_active_week -> Int8,
511         users_active_month -> Int8,
512         users_active_half_year -> Int8,
513     }
514 }
515
516 table! {
517     person_block (id) {
518         id -> Int4,
519         person_id -> Int4,
520         target_id -> Int4,
521         published -> Timestamp,
522     }
523 }
524
525 table! {
526     community_block (id) {
527         id -> Int4,
528         person_id -> Int4,
529         community_id -> Int4,
530         published -> Timestamp,
531     }
532 }
533
534 table! {
535   secret(id) {
536     id -> Int4,
537     jwt_secret -> Varchar,
538   }
539 }
540
541 table! {
542   admin_purge_comment (id) {
543     id -> Int4,
544     admin_person_id -> Int4,
545     post_id -> Int4,
546     reason -> Nullable<Text>,
547     when_ -> Timestamp,
548   }
549 }
550
551 table! {
552   email_verification (id) {
553     id -> Int4,
554     local_user_id -> Int4,
555     email -> Text,
556     verification_token -> Varchar,
557     published -> Timestamp,
558   }
559 }
560
561 table! {
562   admin_purge_community (id) {
563     id -> Int4,
564     admin_person_id -> Int4,
565     reason -> Nullable<Text>,
566     when_ -> Timestamp,
567   }
568 }
569
570 table! {
571   admin_purge_person (id) {
572     id -> Int4,
573     admin_person_id -> Int4,
574     reason -> Nullable<Text>,
575     when_ -> Timestamp,
576   }
577 }
578
579 table! {
580   admin_purge_post (id) {
581     id -> Int4,
582     admin_person_id -> Int4,
583     community_id -> Int4,
584     reason -> Nullable<Text>,
585     when_ -> Timestamp,
586   }
587 }
588
589 table! {
590     registration_application (id) {
591         id -> Int4,
592         local_user_id -> Int4,
593         answer -> Text,
594         admin_id -> Nullable<Int4>,
595         deny_reason -> Nullable<Text>,
596         published -> Timestamp,
597     }
598 }
599
600 table! {
601     mod_hide_community (id) {
602         id -> Int4,
603         community_id -> Int4,
604         mod_person_id -> Int4,
605         reason -> Nullable<Text>,
606         hidden -> Nullable<Bool>,
607         when_ -> Timestamp,
608     }
609 }
610
611 table! {
612     language (id) {
613         id -> Int4,
614         code -> Text,
615         name -> Text,
616     }
617 }
618
619 table! {
620     local_user_language(id) {
621         id -> Int4,
622         local_user_id -> Int4,
623         language_id -> Int4,
624     }
625 }
626
627 joinable!(person_block -> person (person_id));
628
629 joinable!(comment -> person (creator_id));
630 joinable!(comment -> post (post_id));
631 joinable!(comment_aggregates -> comment (comment_id));
632 joinable!(comment_like -> comment (comment_id));
633 joinable!(comment_like -> person (person_id));
634 joinable!(comment_like -> post (post_id));
635 joinable!(comment_report -> comment (comment_id));
636 joinable!(comment_saved -> comment (comment_id));
637 joinable!(comment_saved -> person (person_id));
638 joinable!(community_aggregates -> community (community_id));
639 joinable!(community_block -> community (community_id));
640 joinable!(community_block -> person (person_id));
641 joinable!(community_follower -> community (community_id));
642 joinable!(community_follower -> person (person_id));
643 joinable!(community_moderator -> community (community_id));
644 joinable!(community_moderator -> person (person_id));
645 joinable!(community_person_ban -> community (community_id));
646 joinable!(community_person_ban -> person (person_id));
647 joinable!(local_user -> person (person_id));
648 joinable!(mod_add_community -> community (community_id));
649 joinable!(mod_transfer_community -> community (community_id));
650 joinable!(mod_ban_from_community -> community (community_id));
651 joinable!(mod_lock_post -> person (mod_person_id));
652 joinable!(mod_lock_post -> post (post_id));
653 joinable!(mod_remove_comment -> comment (comment_id));
654 joinable!(mod_remove_comment -> person (mod_person_id));
655 joinable!(mod_remove_community -> community (community_id));
656 joinable!(mod_remove_community -> person (mod_person_id));
657 joinable!(mod_remove_post -> person (mod_person_id));
658 joinable!(mod_remove_post -> post (post_id));
659 joinable!(mod_sticky_post -> person (mod_person_id));
660 joinable!(mod_sticky_post -> post (post_id));
661 joinable!(password_reset_request -> local_user (local_user_id));
662 joinable!(person_aggregates -> person (person_id));
663 joinable!(person_ban -> person (person_id));
664 joinable!(person_mention -> comment (comment_id));
665 joinable!(person_mention -> person (recipient_id));
666 joinable!(comment_reply -> comment (comment_id));
667 joinable!(comment_reply -> person (recipient_id));
668 joinable!(post -> community (community_id));
669 joinable!(post -> person (creator_id));
670 joinable!(post_aggregates -> post (post_id));
671 joinable!(post_like -> person (person_id));
672 joinable!(post_like -> post (post_id));
673 joinable!(post_read -> person (person_id));
674 joinable!(post_read -> post (post_id));
675 joinable!(post_report -> post (post_id));
676 joinable!(post_saved -> person (person_id));
677 joinable!(post_saved -> post (post_id));
678 joinable!(site_aggregates -> site (site_id));
679 joinable!(email_verification -> local_user (local_user_id));
680 joinable!(registration_application -> local_user (local_user_id));
681 joinable!(registration_application -> person (admin_id));
682 joinable!(mod_hide_community -> person (mod_person_id));
683 joinable!(mod_hide_community -> community (community_id));
684 joinable!(post -> language (language_id));
685 joinable!(comment -> language (language_id));
686 joinable!(local_user_language -> language (language_id));
687 joinable!(local_user_language -> local_user (local_user_id));
688 joinable!(private_message_report -> private_message (private_message_id));
689
690 joinable!(admin_purge_comment -> person (admin_person_id));
691 joinable!(admin_purge_comment -> post (post_id));
692 joinable!(admin_purge_community -> person (admin_person_id));
693 joinable!(admin_purge_person -> person (admin_person_id));
694 joinable!(admin_purge_post -> community (community_id));
695 joinable!(admin_purge_post -> person (admin_person_id));
696
697 allow_tables_to_appear_in_same_query!(
698   activity,
699   comment,
700   comment_aggregates,
701   community_block,
702   comment_like,
703   comment_report,
704   comment_saved,
705   community,
706   community_aggregates,
707   community_follower,
708   community_moderator,
709   community_person_ban,
710   local_user,
711   mod_add,
712   mod_add_community,
713   mod_transfer_community,
714   mod_ban,
715   mod_ban_from_community,
716   mod_lock_post,
717   mod_remove_comment,
718   mod_remove_community,
719   mod_remove_post,
720   mod_sticky_post,
721   mod_hide_community,
722   password_reset_request,
723   person,
724   person_aggregates,
725   person_ban,
726   person_block,
727   person_mention,
728   comment_reply,
729   post,
730   post_aggregates,
731   post_like,
732   post_read,
733   post_report,
734   post_saved,
735   private_message,
736   private_message_report,
737   site,
738   site_aggregates,
739   admin_purge_comment,
740   admin_purge_community,
741   admin_purge_person,
742   admin_purge_post,
743   email_verification,
744   registration_application,
745   language,
746   local_user_language
747 );