-
Notifications
You must be signed in to change notification settings - Fork 12
/
discourse-final-jdl.jdl
1707 lines (1532 loc) · 33.4 KB
/
discourse-final-jdl.jdl
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
entity AllowedPmUsers {
userId String required,
allowedPmUserId String required
}
entity AnonymousUsers {
userId String required,
masterUserId String required,
active Boolean required
}
entity ApiKeyScopes {
apiKeyId Long required,
resource String required,
action String required,
allowedParameters String
}
entity ApiKeys {
userId String,
allowedIps String,
hidden Boolean required,
lastUsedAt Instant,
revokedAt Instant,
description String,
keyHash String required,
truncatedKey String required
}
entity ApplicationRequests {
date LocalDate required,
reqType Long required,
count Long required
}
entity ArInternalMetadata {
key String required,
value String
}
entity BackupDraftPosts {
userId String required,
postId Long required,
key String required
}
entity BackupDraftTopics {
userId String required,
topicId Long required
}
entity BackupMetadata {
name String required,
value String
}
entity BadgeGroupings {
name String required,
description String,
position Long required
}
entity BadgePosts {
userId String,
topicId Long,
postNumber Long,
raw TextBlob,
cooked String,
replyToPostNumber Long,
replyCount Integer,
quoteCount Integer,
deletedAt Instant,
offTopicCount Integer,
likeCount Integer,
incomingLinkCount Integer,
bookmarkCount Integer,
score Double,
reads Integer,
postType Integer,
sortOrder Integer,
lastEditorId String,
hidden Boolean,
hiddenReasonId Long,
notifyModeratorsCount Integer,
spamCount Integer,
illegalCount Integer,
inappropriateCount Integer,
lastVersionAt Instant,
userDeleted Boolean,
replyToUserId String,
percentRank Double,
notifyUserCount Integer,
likeScore Integer,
deletedById String,
editReason String,
wordCount Integer,
version Integer,
cookMethod Integer,
wiki Boolean,
bakedAt Instant,
bakedVersion Integer,
hiddenAt Instant,
selfEdits Integer,
replyQuoted Boolean,
viaEmail Boolean,
rawEmail String,
publicVersion Integer,
actionCode String,
lockedById String,
imageUploadId Long
}
entity BadgeTypes {
name String required
}
entity Badges {
name String required,
description String,
badgeTypeId Long required,
grantCount Integer required,
allowTitle Boolean required,
multipleGrant Boolean required,
icon String,
listable Boolean,
targetPosts Boolean,
query String,
enabled Boolean required,
autoRevoke Boolean required,
badgeGroupingId Long required,
trigger Integer,
showPosts Boolean required,
system Boolean required,
image String,
longDescription String,
imageUploadId Long
}
entity Bookmarks {
userId String required,
topicId Long required,
postId Long required,
name String,
reminderType Integer,
reminderAt Instant,
reminderLastSentAt Instant,
reminderSetAt Instant,
autoDeletePreference Integer required,
pinned Boolean
}
entity Categories {
name String required,
color String required,
topicId Long,
topicCount Integer required,
userId String required,
topicsYear Integer,
topicsMonth Integer,
topicsWeek Integer,
slug String required,
description String,
textColor String required,
readRestricted Boolean required,
autoCloseHours Double,
postCount Integer required,
latestPostId Long,
latestTopicId Long,
position Integer,
parentCategoryId Long,
postsYear Integer,
postsMonth Integer,
postsWeek Integer,
emailIn String,
emailInAllowStrangers Boolean,
topicsDay Integer,
postsDay Integer,
allowBadges Boolean required,
nameLower String ,
autoCloseBasedOnLastPost Boolean,
topicTemplate String,
containsMessages Boolean,
sortOrder String,
sortAscending Boolean,
uploadedLogoId Long,
uploadedBackgroundId Long,
topicFeaturedLinkAllowed Boolean,
allTopicsWiki Boolean required,
showSubcategoryList Boolean,
numFeaturedTopics Integer,
defaultView String,
subcategoryListStyle String,
defaultTopPeriod String,
mailinglistMirror Boolean required,
minimumRequiredTags Integer required,
navigateToFirstPostAfterRead Boolean required,
searchPriority Integer,
allowGlobalTags Boolean required,
reviewableByGroupId Long,
requiredTagGroupId Long,
minTagsFromRequiredGroup Integer required,
readOnlyBanner String,
defaultListFilter String,
allowUnlimitedOwnerEditsOnFirstPost Boolean required
}
entity CategoriesWebHooks {
webHookId Long required,
categoryId Long required
}
entity CategoryCustomFields {
categoryId Long required,
name String required,
value String
}
entity CategoryFeaturedTopics {
categoryId Long required,
topicId Long required,
rank Integer required
}
entity CategoryGroups {
categoryId Long required,
groupId Long required,
permissionType Integer
}
entity CategorySearchData {
categoryId Long required,
searchData String,
rawData String,
locale String,
version Integer
}
entity CategoryTagGroups {
categoryId Long required,
tagGroupId Long required
}
entity CategoryTagStats {
categoryId Long required,
tagId Long required,
topicCount Integer required
}
entity CategoryTags {
categoryId Long required,
tagId Long required
}
entity CategoryUsers {
categoryId Long required,
userId String required,
notificationLevel Integer,
lastSeenAt Instant
}
entity ChildThemes {
parentThemeId Long,
childThemeId Long
}
entity ColorSchemeColors {
name String required ,
hex String required ,
colorSchemeId Long required
}
entity ColorSchemes {
name String required ,
version Integer required,
viaWizard Boolean required,
baseSchemeId String,
themeId Long,
userSelectable Boolean required
}
entity CustomEmojis {
name String required ,
uploadId Long required,
group String
}
entity Developers {
userId String required
}
entity DirectoryItems {
periodType Integer required,
userId String required,
likesReceived Integer required,
likesGiven Integer required,
topicsEntered Integer required,
topicCount Integer required,
postCount Integer required,
daysVisited Integer required,
postsRead Integer required
}
entity DismissedTopicUsers {
userId String,
topicId Long,
createdAt Instant
}
entity DoNotDisturbTimings {
userId String required,
startsAt Instant required,
endsAt Instant required,
scheduled Boolean
}
entity DraftSequences {
userId String required,
draftKey String required ,
sequence Long required
}
entity Drafts {
userId String required,
draftKey String required,
data String required,
sequence Long required,
revisions Integer required,
owner String
}
entity EmailChangeRequests {
userId String required,
oldEmail String ,
newEmail String required ,
oldEmailTokenId Integer,
newEmailTokenId Integer,
changeState Integer required,
requestedByUserId String
}
entity EmailLogs {
toAddress String required ,
emailType String required ,
userId String,
postId Long,
bounceKey String ,
bounced Boolean required,
messageId String
}
entity EmailTokens {
userId String required,
email String required,
token String required,
confirmed Boolean required,
expired Boolean required,
updatedAt Instant required
}
entity EmbeddableHosts {
host String required,
categoryId Long required,
className String,
allowedPaths String
}
entity GivenDailyLikes {
userId String required,
likesGiven Integer required,
givenDate LocalDate required,
limitReached Boolean required
}
entity GroupArchivedMessages {
groupId Long required,
topicId Long required
}
entity GroupCategoryNotificationDefaults {
groupId Long required,
categoryId Long required,
notificationLevel Integer required
}
entity GroupCustomFields {
groupId Long required,
name String required,
value String
}
entity GroupHistories {
groupId Long required,
actingUserId String required,
targetUserId String,
action Integer required,
subject String,
prevValue String,
newValue String,
updatedAt Instant required
}
entity GroupMentions {
postId Long,
groupId Long,
updatedAt Instant required
}
entity GroupRequests {
groupId Long,
userId String,
reason String,
updatedAt Instant required
}
entity GroupTagNotificationDefaults {
groupId Long required,
tagId Long required,
notificationLevel Integer required
}
entity GroupUsers {
groupId Long required,
userId String required,
owner Boolean required,
notificationLevel Integer required,
firstUnreadPmAt Instant required
}
entity Groups {
name String required,
automatic Boolean required,
userCount Integer required,
automaticMembershipEmailDomains String ,
primaryGroup Boolean required,
title String,
grantTrustLevel Integer,
incomingEmail String,
hasMessages Boolean required,
flairUrl String,
flairBgColor String,
flairColor String,
bioRaw String,
bioCooked String,
allowMembershipRequests Boolean required,
fullName String,
defaultNotificationLevel Integer required,
visibilityLevel Integer required,
publicExit Boolean required,
publicAdmission Boolean required,
membershipRequestTemplate String ,
messageableLevel Integer,
mentionableLevel Integer,
smtpServer String,
smtpPort Integer,
smtpSsl Boolean,
imapServer String,
imapPort Integer,
imapSsl Boolean,
imapMailboxName String required,
imapUidValidity Integer required,
imapLastUid Integer required,
emailUsername String,
emailPassword String,
publishReadState Boolean required,
membersVisibilityLevel Integer required,
imapLastError String,
imapOldEmails Integer,
imapNewEmails Integer,
flairIcon String,
flairUploadId Integer,
allowUnknownSenderTopicReplies Boolean required
}
entity GroupsWebHooks {
webHookId Long required,
groupId Long required
}
entity IgnoredUsers {
userId String required,
ignoredUserId String required,
summarizedAt Instant,
expiringAt Instant required
}
entity ImapSyncLogs {
level Integer required,
message String required,
groupId Long
}
entity IncomingDomains {
name String required,
https Boolean required,
port Integer required
}
entity IncomingEmails {
userId String,
topicId Long,
postId Long,
raw String,
error String,
messageId String,
fromAddress String,
toAddresses String,
ccAddresses String,
subject String,
rejectionMessage String,
isAutoGenerated Boolean,
isBounce Boolean required,
imapUidValidity Integer,
imapUid Integer,
imapSync Boolean,
imapGroupId Long,
imapMissing Boolean required,
createdVia Integer required
}
entity IncomingLinks {
userId String,
ipAddress String,
currentUserId String,
postId Long required,
incomingRefererId Long
}
entity IncomingReferers {
path String required ,
incomingDomainId Long required
}
entity InvitedGroups {
groupId Long,
inviteId Long
}
entity InvitedUsers {
userId String,
inviteId Long required,
redeemedAt Instant,
updatedAt Instant required
}
entity Invites {
inviteKey String required ,
email String ,
invitedById String required,
userId String,
redeemedAt Instant,
deletedAt Instant,
deletedById String,
invalidatedAt Instant,
moderator Boolean required,
customMessage String ,
emailedStatus Integer,
maxRedemptionsAllowed Integer required,
redemptionCount Integer required,
expiresAt Instant required,
emailToken String
}
entity JavascriptCaches {
themeFieldId Long,
digest String ,
content String required,
themeId Long
}
entity LinkedTopics {
topicId Long required,
originalTopicId Long required,
sequence Integer required
}
entity MessageBus {
name String,
context String,
data String
}
entity MutedUsers {
userId String required,
mutedUserId String required
}
entity Notifications {
notificationType Integer required,
userId String required,
data String required ,
read Boolean required,
topicId Long,
postNumber Integer,
postActionId Long,
highPriority Boolean required
}
entity Oauth2UserInfos {
userId String required,
uid String required,
provider String required,
email String,
name String,
updatedAt Instant required
}
entity OnceoffLogs {
jobName String
}
entity OptimizedImages {
sha1 String required,
extension String required,
width Integer required,
height Integer required,
uploadId Long required,
url String required,
filesize Integer,
etag String,
version Integer
}
entity Permalinks {
url String required,
topicId Long,
postId Long,
categoryId Long,
externalUrl String,
tagId Long
}
entity PluginStoreRows {
pluginName String required,
key String required,
typeName String required,
value String
}
entity PollOptions {
pollId Long,
digest String required,
html String required,
anonymousVotes Integer
}
entity PollVotes {
pollId Long,
pollOptionId Long,
userId Long
}
entity Polls {
postId Long,
name String required,
closeAt Instant,
type Integer required,
status Integer required,
results Integer required,
visibility Integer required,
min Integer,
max Integer,
step Integer,
anonymousVoters Integer,
chartType Integer required,
groups String,
title String
}
entity PostActionTypes {
nameKey String required,
isFlag Boolean required,
icon String,
position Integer required,
scoreBonus Double required,
reviewablePriority Integer required
}
entity PostActions {
postId Long required,
userId String required,
postActionTypeId Long required,
deletedAt Instant,
deletedById String,
relatedPostId Long,
staffTookAction Boolean required,
deferredById String,
targetsTopic Boolean required,
agreedAt Instant,
agreedById String,
deferredAt Instant,
disagreedAt Instant,
disagreedById String
}
entity PostCustomFields {
postId Long required,
name String required,
value String,
updatedAt Instant required
}
entity PostDetails {
postId Long,
key String,
value String,
extra String
}
entity PostReplies {
postId Long,
replyPostId Long
}
entity PostReplyKeys {
userId String required,
postId Long required,
replyKey String required,
}
entity PostRevisions {
userId String,
postId Long,
modifications String,
number Integer,
hidden Boolean required
}
entity PostSearchData {
postId Long required,
searchData String,
rawData String,
locale String,
version Integer,
privateMessage Boolean required
}
entity PostStats {
postId Long,
draftsSaved Integer,
typingDurationMsecs Integer,
composerOpenDurationMsecs Integer
}
entity PostTimings {
topicId Long required,
postNumber Integer required,
userId String required,
msecs Integer required
}
entity PostUploads {
postId Long required,
uploadId Long required
}
entity Posts {
userId String,
topicId Long required,
postNumber Integer required,
raw TextBlob required,
cooked String required,
replyToPostNumber Long,
replyCount Integer required,
quoteCount Integer required,
deletedAt Instant,
offTopicCount Integer required,
likeCount Integer required,
incomingLinkCount Integer required,
bookmarkCount Integer required,
score Double,
reads Integer required,
postType Integer required,
sortOrder Integer,
lastEditorId String,
hidden Boolean required,
hiddenReasonId Long,
notifyModeratorsCount Integer required,
spamCount Integer required,
illegalCount Integer required,
inappropriateCount Integer required,
lastVersionAt Instant required,
userDeleted Boolean required,
replyToUserId String,
percentRank Double,
notifyUserCount Integer required,
likeScore Integer required,
deletedById String,
editReason String ,
wordCount Integer,
version Integer required,
cookMethod Integer required,
wiki Boolean required,
bakedAt Instant,
bakedVersion Integer,
hiddenAt Instant,
selfEdits Integer required,
replyQuoted Boolean required,
viaEmail Boolean required,
rawEmail String ,
publicVersion Integer required,
actionCode String ,
lockedById String,
imageUploadId Long
}
entity PublishedPages {
topicId Long required,
slug String required,
publiclyAvailable Boolean required
}
entity PushSubscriptions {
userId String required,
data String required
}
entity QuotedPosts {
postId Long required,
quotedPostId Long required
}
entity RemoteThemes {
remoteUrl String required,
remoteVersion String,
localVersion String,
aboutUrl String,
licenseUrl String,
commitsBehind Integer,
remoteUpdatedAt Instant,
privateKey String,
branch String,
lastErrorText String,
authors String,
themeVersion String,
minimumDiscourseVersion String,
maximumDiscourseVersion String
}
entity ReviewableClaimedTopics {
userId String required,
topicId Long required
}
entity ReviewableHistories {
reviewableId Long required,
reviewableHistoryType Integer required,
status Integer required,
edited String
}
entity ReviewableScores {
reviewableId Long required,
userId String required,
reviewableScoreType Integer required,
status Integer required,
score Double required,
takeActionBonus Double required,
reviewedById String,
reviewedAt Instant,
metaTopicId Long,
reason String,
userAccuracyBonus Double required
}
entity Reviewables {
type String required ,
status Integer required,
reviewableByModerator Boolean required,
reviewableByGroupId Long,
categoryId Long,
topicId Long,
score Double required,
potentialSpam Boolean required,
targetId Long,
targetType String ,
targetCreatedById String,
payload String,
version Integer required,
latestScore Instant,
forceReview Boolean required,
rejectReason String
}
entity SchedulerStats {
name String required,
hostname String required,
pid Long required,
durationMs Integer,
liveSlotsStart Integer,
liveSlotsFinish Integer,
startedAt Instant required,
success Boolean,
error String
}
entity SchemaMigrationDetails {
version String required,
name String,
hostname String,
gitVersion String,
railsVersion String,
duration Integer,
direction String
}
entity SchemaMigrations {
version String required
}
entity ScreenedEmails {
email String required,
actionType Integer required,
matchCount Integer required,
lastMatchAt Instant,
ipAddress String
}
entity ScreenedIpAddresses {
ipAddress String required,
actionType Integer required,
matchCount Integer required,
lastMatchAt Instant
}
entity ScreenedUrls {
url String required,
domain String required,
actionType Integer required,
matchCount Integer required,
lastMatchAt Instant,
ipAddress String
}
entity SearchLogs {
term String required,
userId String,
ipAddress String,
searchResultId Long,
searchType Integer required,
searchResultType Integer
}
entity SharedDrafts {
topicId Long required,
categoryId Long required
}
entity ShelvedNotifications {
notificationId Long required
}
entity SingleSignOnRecords {
userId String required,
externalId String required,
lastPayload String required,
externalUsername String,
externalEmail String,
externalName String,
externalAvatarUrl String,
externalProfileBackgroundUrl String,
externalCardBackgroundUrl String
}
entity SiteSettings {
name String required,
dataType Integer required,
value String
}
entity SkippedEmailLogs {
emailType String required,
toAddress String required,
userId String,
postId Long,
reasonType Integer required,
customReason String
}
entity StylesheetCache {
target String required,
digest String required,
content String required,
themeId Long required,
sourceMap String
}
entity TagGroupMemberships {
tagId Long required,
tagGroupId Long required
}
entity TagGroupPermissions {
tagGroupId Long required,
groupId Long required,
permissionType Integer required
}
entity TagGroups {
name String required,
parentTagId Long,