lemmy-js-client 1.0.0-rename-rate-limit-columns.1 → 1.0.0-rename-person-banned.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (130) hide show
  1. package/README.md +6 -0
  2. package/dist/http.d.ts +40 -25
  3. package/dist/http.js +101 -53
  4. package/dist/index.d.ts +35 -30
  5. package/dist/other_types.d.ts +2 -2
  6. package/dist/types/{ModAdd.d.ts → AdminAdd.d.ts} +4 -4
  7. package/dist/types/AdminAddId.d.ts +1 -0
  8. package/dist/types/{ModAddView.d.ts → AdminAddView.d.ts} +3 -3
  9. package/dist/types/{ModBan.d.ts → AdminBan.d.ts} +3 -3
  10. package/dist/types/AdminBanId.d.ts +1 -0
  11. package/dist/types/{ModBanView.d.ts → AdminBanView.d.ts} +3 -3
  12. package/dist/types/{ModRemoveCommunity.d.ts → AdminRemoveCommunity.d.ts} +3 -3
  13. package/dist/types/AdminRemoveCommunityId.d.ts +1 -0
  14. package/dist/types/AdminRemoveCommunityView.d.ts +11 -0
  15. package/dist/types/Comment.d.ts +4 -0
  16. package/dist/types/CommentReportView.d.ts +3 -0
  17. package/dist/types/CommentResponse.d.ts +0 -2
  18. package/dist/types/CommentSlimView.d.ts +0 -2
  19. package/dist/types/CommentView.d.ts +2 -2
  20. package/dist/types/CommunityActions.d.ts +2 -0
  21. package/dist/types/CommunityNotificationsMode.d.ts +4 -0
  22. package/dist/types/CommunityReportView.d.ts +4 -0
  23. package/dist/types/CommunityView.d.ts +0 -2
  24. package/dist/types/CreateCommunityTag.d.ts +3 -1
  25. package/dist/types/EditSite.d.ts +4 -0
  26. package/dist/types/ExportDataResponse.d.ts +13 -0
  27. package/dist/types/FederationError.d.ts +4 -2
  28. package/dist/types/InstanceActions.d.ts +6 -2
  29. package/dist/types/LemmyErrorType.d.ts +10 -134
  30. package/dist/types/LinkMetadata.d.ts +4 -0
  31. package/dist/types/{ListInbox.d.ts → ListNotifications.d.ts} +3 -3
  32. package/dist/types/{ListInboxResponse.d.ts → ListNotificationsResponse.d.ts} +3 -3
  33. package/dist/types/LocalSite.d.ts +1 -0
  34. package/dist/types/LocalUser.d.ts +2 -0
  35. package/dist/types/LocalUserView.d.ts +1 -0
  36. package/dist/types/LockComment.d.ts +6 -0
  37. package/dist/types/MarkNotificationAsRead.d.ts +8 -0
  38. package/dist/types/{ModAddCommunity.d.ts → ModAddToCommunity.d.ts} +3 -3
  39. package/dist/types/ModAddToCommunityId.d.ts +1 -0
  40. package/dist/types/{ModAddCommunityView.d.ts → ModAddToCommunityView.d.ts} +3 -3
  41. package/dist/types/ModEditPost.d.ts +10 -0
  42. package/dist/types/ModLockComment.d.ts +14 -0
  43. package/dist/types/ModLockCommentId.d.ts +1 -0
  44. package/dist/types/ModLockCommentView.d.ts +14 -0
  45. package/dist/types/ModlogActionType.d.ts +1 -1
  46. package/dist/types/ModlogCombinedView.d.ts +16 -13
  47. package/dist/types/MyUserInfo.d.ts +2 -1
  48. package/dist/types/Notification.d.ts +16 -0
  49. package/dist/types/NotificationData.d.ts +10 -0
  50. package/dist/types/NotificationDataType.d.ts +4 -0
  51. package/dist/types/NotificationId.d.ts +1 -0
  52. package/dist/types/NotificationTypes.d.ts +4 -0
  53. package/dist/types/NotificationTypes.js +3 -0
  54. package/dist/types/NotificationView.d.ts +6 -0
  55. package/dist/types/OpenGraphData.d.ts +4 -0
  56. package/dist/types/PersonActions.d.ts +12 -0
  57. package/dist/types/PersonView.d.ts +2 -1
  58. package/dist/types/PostActions.d.ts +2 -0
  59. package/dist/types/PostActions.js +0 -1
  60. package/dist/types/PostNotificationsMode.d.ts +4 -0
  61. package/dist/types/PostNotificationsMode.js +3 -0
  62. package/dist/types/PostOrCommentOrPrivateMessage.d.ts +10 -0
  63. package/dist/types/PostReportView.d.ts +3 -0
  64. package/dist/types/PostView.d.ts +2 -2
  65. package/dist/types/PrivateMessage.d.ts +0 -1
  66. package/dist/types/PrivateMessageReportView.d.ts +2 -0
  67. package/dist/types/SaveUserSettings.d.ts +8 -0
  68. package/dist/types/Tag.d.ts +6 -14
  69. package/dist/types/TagsView.d.ts +1 -1
  70. package/dist/types/UpdateCommunityNotifications.d.ts +9 -0
  71. package/dist/types/UpdateCommunityTag.d.ts +3 -2
  72. package/dist/types/UpdatePostNotifications.d.ts +9 -0
  73. package/dist/types/UserBlockInstanceCommunitiesParams.d.ts +8 -0
  74. package/dist/types/UserBlockInstanceCommunitiesParams.js +2 -0
  75. package/dist/types/{UserBlockInstanceParams.d.ts → UserBlockInstancePersonsParams.d.ts} +2 -2
  76. package/dist/types/UserBlockInstancePersonsParams.js +2 -0
  77. package/dist/types/UserSettingsBackup.d.ts +27 -0
  78. package/dist/types/UserSettingsBackup.js +2 -0
  79. package/dist/types/VoteView.d.ts +1 -0
  80. package/package.json +6 -5
  81. package/dist/types/CommentReply.d.ts +0 -13
  82. package/dist/types/CommentReplyId.d.ts +0 -4
  83. package/dist/types/CommentReplyView.d.ts +0 -31
  84. package/dist/types/InboxCombinedView.d.ts +0 -13
  85. package/dist/types/InboxDataType.d.ts +0 -4
  86. package/dist/types/MarkCommentReplyAsRead.d.ts +0 -8
  87. package/dist/types/MarkPersonCommentMentionAsRead.d.ts +0 -8
  88. package/dist/types/MarkPersonPostMentionAsRead.d.ts +0 -8
  89. package/dist/types/MarkPrivateMessageAsRead.d.ts +0 -8
  90. package/dist/types/ModAddCommunityId.d.ts +0 -1
  91. package/dist/types/ModAddId.d.ts +0 -1
  92. package/dist/types/ModBanId.d.ts +0 -1
  93. package/dist/types/ModRemoveCommunityId.d.ts +0 -1
  94. package/dist/types/ModRemoveCommunityView.d.ts +0 -11
  95. package/dist/types/PersonCommentMention.d.ts +0 -13
  96. package/dist/types/PersonCommentMentionId.d.ts +0 -4
  97. package/dist/types/PersonCommentMentionView.d.ts +0 -29
  98. package/dist/types/PersonPostMention.d.ts +0 -13
  99. package/dist/types/PersonPostMentionId.d.ts +0 -4
  100. package/dist/types/PersonPostMentionView.d.ts +0 -31
  101. /package/dist/types/{CommentReply.js → AdminAdd.js} +0 -0
  102. /package/dist/types/{CommentReplyId.js → AdminAddId.js} +0 -0
  103. /package/dist/types/{CommentReplyView.js → AdminAddView.js} +0 -0
  104. /package/dist/types/{InboxCombinedView.js → AdminBan.js} +0 -0
  105. /package/dist/types/{InboxDataType.js → AdminBanId.js} +0 -0
  106. /package/dist/types/{ListInbox.js → AdminBanView.js} +0 -0
  107. /package/dist/types/{ListInboxResponse.js → AdminRemoveCommunity.js} +0 -0
  108. /package/dist/types/{ModAddCommunityId.js → AdminRemoveCommunityId.js} +0 -0
  109. /package/dist/types/{MarkCommentReplyAsRead.js → AdminRemoveCommunityView.js} +0 -0
  110. /package/dist/types/{ModAddId.js → CommunityNotificationsMode.js} +0 -0
  111. /package/dist/types/{MarkPersonCommentMentionAsRead.js → ExportDataResponse.js} +0 -0
  112. /package/dist/types/{MarkPersonPostMentionAsRead.js → ListNotifications.js} +0 -0
  113. /package/dist/types/{MarkPrivateMessageAsRead.js → ListNotificationsResponse.js} +0 -0
  114. /package/dist/types/{ModAdd.js → LockComment.js} +0 -0
  115. /package/dist/types/{ModAddCommunity.js → MarkNotificationAsRead.js} +0 -0
  116. /package/dist/types/{ModAddCommunityView.js → ModAddToCommunity.js} +0 -0
  117. /package/dist/types/{ModBanId.js → ModAddToCommunityId.js} +0 -0
  118. /package/dist/types/{ModAddView.js → ModAddToCommunityView.js} +0 -0
  119. /package/dist/types/{ModBan.js → ModEditPost.js} +0 -0
  120. /package/dist/types/{ModBanView.js → ModLockComment.js} +0 -0
  121. /package/dist/types/{ModRemoveCommunityId.js → ModLockCommentId.js} +0 -0
  122. /package/dist/types/{ModRemoveCommunity.js → ModLockCommentView.js} +0 -0
  123. /package/dist/types/{ModRemoveCommunityView.js → Notification.js} +0 -0
  124. /package/dist/types/{PersonCommentMention.js → NotificationData.js} +0 -0
  125. /package/dist/types/{PersonCommentMentionId.js → NotificationDataType.js} +0 -0
  126. /package/dist/types/{PersonPostMentionId.js → NotificationId.js} +0 -0
  127. /package/dist/types/{PersonCommentMentionView.js → NotificationView.js} +0 -0
  128. /package/dist/types/{PersonPostMention.js → PostOrCommentOrPrivateMessage.js} +0 -0
  129. /package/dist/types/{PersonPostMentionView.js → UpdateCommunityNotifications.js} +0 -0
  130. /package/dist/types/{UserBlockInstanceParams.js → UpdatePostNotifications.js} +0 -0
@@ -4,7 +4,9 @@ export type LemmyErrorType = {
4
4
  } | {
5
5
  error: "block_keyword_too_long";
6
6
  } | {
7
- error: "couldnt_update_keywords";
7
+ error: "couldnt_update";
8
+ } | {
9
+ error: "couldnt_create";
8
10
  } | {
9
11
  error: "report_reason_required";
10
12
  } | {
@@ -19,16 +21,12 @@ export type LemmyErrorType = {
19
21
  error: "cant_note_yourself";
20
22
  } | {
21
23
  error: "cant_block_admin";
22
- } | {
23
- error: "couldnt_update_user";
24
24
  } | {
25
25
  error: "passwords_do_not_match";
26
26
  } | {
27
27
  error: "email_not_verified";
28
28
  } | {
29
29
  error: "email_required";
30
- } | {
31
- error: "couldnt_update_comment";
32
30
  } | {
33
31
  error: "cannot_leave_admin";
34
32
  } | {
@@ -83,8 +81,6 @@ export type LemmyErrorType = {
83
81
  error: "registration_application_is_pending";
84
82
  } | {
85
83
  error: "locked";
86
- } | {
87
- error: "couldnt_create_comment";
88
84
  } | {
89
85
  error: "max_comment_depth_reached";
90
86
  } | {
@@ -92,21 +88,15 @@ export type LemmyErrorType = {
92
88
  } | {
93
89
  error: "only_admins_can_create_communities";
94
90
  } | {
95
- error: "community_already_exists";
91
+ error: "already_exists";
96
92
  } | {
97
93
  error: "language_not_allowed";
98
- } | {
99
- error: "couldnt_update_languages";
100
- } | {
101
- error: "couldnt_update_post";
102
94
  } | {
103
95
  error: "no_post_edit_allowed";
104
96
  } | {
105
97
  error: "nsfw_not_allowed";
106
98
  } | {
107
99
  error: "edit_private_message_not_allowed";
108
- } | {
109
- error: "site_already_exists";
110
100
  } | {
111
101
  error: "application_question_required";
112
102
  } | {
@@ -118,9 +108,9 @@ export type LemmyErrorType = {
118
108
  } | {
119
109
  error: "registration_username_required";
120
110
  } | {
121
- error: "email_already_exists";
111
+ error: "email_already_taken";
122
112
  } | {
123
- error: "username_already_exists";
113
+ error: "username_already_taken";
124
114
  } | {
125
115
  error: "person_is_banned_from_community";
126
116
  } | {
@@ -150,62 +140,18 @@ export type LemmyErrorType = {
150
140
  error: "bio_length_overflow";
151
141
  } | {
152
142
  error: "alt_text_length_overflow";
153
- } | {
154
- error: "missing_totp_token";
155
- } | {
156
- error: "missing_totp_secret";
157
- } | {
158
- error: "incorrect_totp_token";
159
143
  } | {
160
144
  error: "couldnt_parse_totp_secret";
161
145
  } | {
162
146
  error: "couldnt_generate_totp";
163
147
  } | {
164
- error: "totp_already_enabled";
165
- } | {
166
- error: "couldnt_like_comment";
167
- } | {
168
- error: "couldnt_save_comment";
169
- } | {
170
- error: "couldnt_create_report";
171
- } | {
172
- error: "couldnt_resolve_report";
173
- } | {
174
- error: "community_moderator_already_exists";
175
- } | {
176
- error: "community_user_already_banned";
177
- } | {
178
- error: "community_block_already_exists";
179
- } | {
180
- error: "community_follower_already_exists";
181
- } | {
182
- error: "person_block_already_exists";
183
- } | {
184
- error: "couldnt_like_post";
185
- } | {
186
- error: "couldnt_save_post";
187
- } | {
188
- error: "couldnt_mark_post_as_read";
189
- } | {
190
- error: "couldnt_update_read_comments";
191
- } | {
192
- error: "couldnt_hide_post";
193
- } | {
194
- error: "couldnt_update_community";
195
- } | {
196
- error: "couldnt_create_person_comment_mention";
197
- } | {
198
- error: "couldnt_update_person_comment_mention";
199
- } | {
200
- error: "couldnt_create_person_post_mention";
201
- } | {
202
- error: "couldnt_update_person_post_mention";
148
+ error: "missing_totp_token";
203
149
  } | {
204
- error: "couldnt_create_post";
150
+ error: "missing_totp_secret";
205
151
  } | {
206
- error: "couldnt_create_private_message";
152
+ error: "incorrect_totp_token";
207
153
  } | {
208
- error: "couldnt_update_private_message";
154
+ error: "totp_already_enabled";
209
155
  } | {
210
156
  error: "blocked_url";
211
157
  } | {
@@ -239,8 +185,6 @@ export type LemmyErrorType = {
239
185
  error: "couldnt_send_webmention";
240
186
  } | {
241
187
  error: "contradicting_filters";
242
- } | {
243
- error: "instance_block_already_exists";
244
188
  } | {
245
189
  error: "too_many_items";
246
190
  } | {
@@ -249,8 +193,6 @@ export type LemmyErrorType = {
249
193
  error: "invalid_unix_time";
250
194
  } | {
251
195
  error: "invalid_bot_action";
252
- } | {
253
- error: "invalid_tag_name";
254
196
  } | {
255
197
  error: "tag_not_in_community";
256
198
  } | {
@@ -266,10 +208,6 @@ export type LemmyErrorType = {
266
208
  error: "oauth_login_failed";
267
209
  } | {
268
210
  error: "oauth_registration_closed";
269
- } | {
270
- error: "couldnt_create_oauth_provider";
271
- } | {
272
- error: "couldnt_update_oauth_provider";
273
211
  } | {
274
212
  error: "not_found";
275
213
  } | {
@@ -292,68 +230,6 @@ export type LemmyErrorType = {
292
230
  message: string;
293
231
  } | {
294
232
  error: "invalid_fetch_limit";
295
- } | {
296
- error: "couldnt_create_comment_reply";
297
- } | {
298
- error: "couldnt_update_comment_reply";
299
- } | {
300
- error: "couldnt_mark_comment_reply_as_read";
301
- } | {
302
- error: "couldnt_create_emoji";
303
- } | {
304
- error: "couldnt_update_emoji";
305
- } | {
306
- error: "couldnt_create_person";
307
- } | {
308
- error: "couldnt_update_person";
309
- } | {
310
- error: "couldnt_create_modlog";
311
- } | {
312
- error: "couldnt_update_modlog";
313
- } | {
314
- error: "couldnt_create_site";
315
- } | {
316
- error: "couldnt_update_site";
317
- } | {
318
- error: "couldnt_create_registration_application";
319
- } | {
320
- error: "couldnt_update_registration_application";
321
- } | {
322
- error: "couldnt_create_tag";
323
- } | {
324
- error: "couldnt_update_tag";
325
- } | {
326
- error: "couldnt_create_post_tag";
327
- } | {
328
- error: "couldnt_update_post_tag";
329
- } | {
330
- error: "couldnt_create_tagline";
331
- } | {
332
- error: "couldnt_update_tagline";
333
- } | {
334
- error: "couldnt_create_image";
335
- } | {
336
- error: "couldnt_allow_instance";
337
- } | {
338
- error: "couldnt_block_instance";
339
- } | {
340
- error: "couldnt_insert_activity";
341
- } | {
342
- error: "couldnt_create_rate_limit";
343
- } | {
344
- error: "couldnt_create_captcha_answer";
345
- } | {
346
- error: "couldnt_update_federation_queue_state";
347
- } | {
348
- error: "couldnt_create_oauth_account";
349
- } | {
350
- error: "couldnt_create_password_reset_request";
351
- } | {
352
- error: "couldnt_create_login_token";
353
- } | {
354
- error: "couldnt_update_local_site_url_blocklist";
355
- } | {
356
- error: "couldnt_create_email_verification";
357
233
  } | {
358
234
  error: "email_notifications_disabled";
359
235
  } | {
@@ -7,5 +7,9 @@ export type LinkMetadata = {
7
7
  title?: string;
8
8
  description?: string;
9
9
  image?: DbUrl;
10
+ image_width?: number;
11
+ image_height?: number;
10
12
  embed_video_url?: DbUrl;
13
+ video_width?: number;
14
+ video_height?: number;
11
15
  };
@@ -1,10 +1,10 @@
1
- import type { InboxDataType } from "./InboxDataType";
1
+ import type { NotificationDataType } from "./NotificationDataType";
2
2
  import type { PaginationCursor } from "./PaginationCursor";
3
3
  /**
4
4
  * Get your inbox (replies, comment mentions, post mentions, and messages)
5
5
  */
6
- export type ListInbox = {
7
- type_?: InboxDataType;
6
+ export type ListNotifications = {
7
+ type_?: NotificationDataType;
8
8
  unread_only?: boolean;
9
9
  page_cursor?: PaginationCursor;
10
10
  page_back?: boolean;
@@ -1,10 +1,10 @@
1
- import type { InboxCombinedView } from "./InboxCombinedView";
1
+ import type { NotificationView } from "./NotificationView";
2
2
  import type { PaginationCursor } from "./PaginationCursor";
3
3
  /**
4
4
  * Get your inbox (replies, comment mentions, post mentions, and messages)
5
5
  */
6
- export type ListInboxResponse = {
7
- inbox: Array<InboxCombinedView>;
6
+ export type ListNotificationsResponse = {
7
+ notifications: Array<NotificationView>;
8
8
  /**
9
9
  * the pagination cursor to use to fetch the next page
10
10
  */
@@ -145,4 +145,5 @@ export type LocalSite = {
145
145
  disable_email_notifications: boolean;
146
146
  suggested_communities?: MultiCommunityId;
147
147
  multi_comm_follower: PersonId;
148
+ default_items_per_page: number;
148
149
  };
@@ -102,4 +102,6 @@ export type LocalUser = {
102
102
  show_upvotes: boolean;
103
103
  show_downvotes: VoteShow;
104
104
  show_upvote_percentage: boolean;
105
+ show_person_votes: boolean;
106
+ default_items_per_page: number;
105
107
  };
@@ -7,4 +7,5 @@ export type LocalUserView = {
7
7
  local_user: LocalUser;
8
8
  person: Person;
9
9
  banned: boolean;
10
+ ban_expires_at?: string;
10
11
  };
@@ -0,0 +1,6 @@
1
+ import type { CommentId } from "./CommentId";
2
+ export type LockComment = {
3
+ comment_id: CommentId;
4
+ locked: boolean;
5
+ reason?: string;
6
+ };
@@ -0,0 +1,8 @@
1
+ import type { NotificationId } from "./NotificationId";
2
+ /**
3
+ * Mark a comment reply as read.
4
+ */
5
+ export type MarkNotificationAsRead = {
6
+ notification_id: NotificationId;
7
+ read: boolean;
8
+ };
@@ -1,11 +1,11 @@
1
1
  import type { CommunityId } from "./CommunityId";
2
- import type { ModAddCommunityId } from "./ModAddCommunityId";
2
+ import type { ModAddToCommunityId } from "./ModAddToCommunityId";
3
3
  import type { PersonId } from "./PersonId";
4
4
  /**
5
5
  * When someone is added as a community moderator.
6
6
  */
7
- export type ModAddCommunity = {
8
- id: ModAddCommunityId;
7
+ export type ModAddToCommunity = {
8
+ id: ModAddToCommunityId;
9
9
  mod_person_id: PersonId;
10
10
  other_person_id: PersonId;
11
11
  community_id: CommunityId;
@@ -0,0 +1 @@
1
+ export type ModAddToCommunityId = number;
@@ -1,11 +1,11 @@
1
1
  import type { Community } from "./Community";
2
- import type { ModAddCommunity } from "./ModAddCommunity";
2
+ import type { ModAddToCommunity } from "./ModAddToCommunity";
3
3
  import type { Person } from "./Person";
4
4
  /**
5
5
  * When someone is added as a community moderator.
6
6
  */
7
- export type ModAddCommunityView = {
8
- mod_add_community: ModAddCommunity;
7
+ export type ModAddToCommunityView = {
8
+ mod_add_to_community: ModAddToCommunity;
9
9
  moderator?: Person;
10
10
  community: Community;
11
11
  other_person: Person;
@@ -0,0 +1,10 @@
1
+ import type { PostId } from "./PostId";
2
+ import type { TagId } from "./TagId";
3
+ /**
4
+ * Mods can change some metadata for posts
5
+ */
6
+ export type ModEditPost = {
7
+ post_id: PostId;
8
+ nsfw?: boolean;
9
+ tags?: Array<TagId>;
10
+ };
@@ -0,0 +1,14 @@
1
+ import type { ModLockPostId } from "./ModLockPostId";
2
+ import type { PersonId } from "./PersonId";
3
+ import type { PostId } from "./PostId";
4
+ /**
5
+ * When a moderator locks a comment (prevents new replies to a comment or its children).
6
+ */
7
+ export type ModLockComment = {
8
+ id: ModLockPostId;
9
+ mod_person_id: PersonId;
10
+ comment_id: PostId;
11
+ locked: boolean;
12
+ reason?: string;
13
+ published_at: string;
14
+ };
@@ -0,0 +1 @@
1
+ export type ModLockCommentId = number;
@@ -0,0 +1,14 @@
1
+ import type { Comment } from "./Comment";
2
+ import type { Community } from "./Community";
3
+ import type { ModLockComment } from "./ModLockComment";
4
+ import type { Person } from "./Person";
5
+ /**
6
+ * When a moderator locks a comment (prevents replies to it or its children).
7
+ */
8
+ export type ModLockCommentView = {
9
+ mod_lock_comment: ModLockComment;
10
+ moderator?: Person;
11
+ other_person: Person;
12
+ comment: Comment;
13
+ community: Community;
14
+ };
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * A list of possible types for the various modlog actions.
3
3
  */
4
- export type ModlogActionType = "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
4
+ export type ModlogActionType = "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModLockComment" | "AdminRemoveCommunity" | "ModBanFromCommunity" | "ModAddToCommunity" | "ModTransferCommunity" | "AdminAdd" | "AdminBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
@@ -1,18 +1,19 @@
1
+ import type { AdminAddView } from "./AdminAddView";
1
2
  import type { AdminAllowInstanceView } from "./AdminAllowInstanceView";
3
+ import type { AdminBanView } from "./AdminBanView";
2
4
  import type { AdminBlockInstanceView } from "./AdminBlockInstanceView";
3
5
  import type { AdminPurgeCommentView } from "./AdminPurgeCommentView";
4
6
  import type { AdminPurgeCommunityView } from "./AdminPurgeCommunityView";
5
7
  import type { AdminPurgePersonView } from "./AdminPurgePersonView";
6
8
  import type { AdminPurgePostView } from "./AdminPurgePostView";
7
- import type { ModAddCommunityView } from "./ModAddCommunityView";
8
- import type { ModAddView } from "./ModAddView";
9
+ import type { AdminRemoveCommunityView } from "./AdminRemoveCommunityView";
10
+ import type { ModAddToCommunityView } from "./ModAddToCommunityView";
9
11
  import type { ModBanFromCommunityView } from "./ModBanFromCommunityView";
10
- import type { ModBanView } from "./ModBanView";
11
12
  import type { ModChangeCommunityVisibilityView } from "./ModChangeCommunityVisibilityView";
12
13
  import type { ModFeaturePostView } from "./ModFeaturePostView";
14
+ import type { ModLockCommentView } from "./ModLockCommentView";
13
15
  import type { ModLockPostView } from "./ModLockPostView";
14
16
  import type { ModRemoveCommentView } from "./ModRemoveCommentView";
15
- import type { ModRemoveCommunityView } from "./ModRemoveCommunityView";
16
17
  import type { ModRemovePostView } from "./ModRemovePostView";
17
18
  import type { ModTransferCommunityView } from "./ModTransferCommunityView";
18
19
  export type ModlogCombinedView = ({
@@ -28,12 +29,12 @@ export type ModlogCombinedView = ({
28
29
  } & AdminPurgePersonView) | ({
29
30
  type_: "AdminPurgePost";
30
31
  } & AdminPurgePostView) | ({
31
- type_: "ModAdd";
32
- } & ModAddView) | ({
33
- type_: "ModAddCommunity";
34
- } & ModAddCommunityView) | ({
35
- type_: "ModBan";
36
- } & ModBanView) | ({
32
+ type_: "AdminAdd";
33
+ } & AdminAddView) | ({
34
+ type_: "ModAddToCommunity";
35
+ } & ModAddToCommunityView) | ({
36
+ type_: "AdminBan";
37
+ } & AdminBanView) | ({
37
38
  type_: "ModBanFromCommunity";
38
39
  } & ModBanFromCommunityView) | ({
39
40
  type_: "ModFeaturePost";
@@ -44,9 +45,11 @@ export type ModlogCombinedView = ({
44
45
  } & ModLockPostView) | ({
45
46
  type_: "ModRemoveComment";
46
47
  } & ModRemoveCommentView) | ({
47
- type_: "ModRemoveCommunity";
48
- } & ModRemoveCommunityView) | ({
48
+ type_: "AdminRemoveCommunity";
49
+ } & AdminRemoveCommunityView) | ({
49
50
  type_: "ModRemovePost";
50
51
  } & ModRemovePostView) | ({
51
52
  type_: "ModTransferCommunity";
52
- } & ModTransferCommunityView);
53
+ } & ModTransferCommunityView) | ({
54
+ type_: "ModLockComment";
55
+ } & ModLockCommentView);
@@ -13,7 +13,8 @@ export type MyUserInfo = {
13
13
  follows: Array<CommunityFollowerView>;
14
14
  moderates: Array<CommunityModeratorView>;
15
15
  community_blocks: Array<Community>;
16
- instance_blocks: Array<Instance>;
16
+ instance_communities_blocks: Array<Instance>;
17
+ instance_persons_blocks: Array<Instance>;
17
18
  person_blocks: Array<Person>;
18
19
  keyword_blocks: Array<string>;
19
20
  discussion_languages: Array<LanguageId>;
@@ -0,0 +1,16 @@
1
+ import type { CommentId } from "./CommentId";
2
+ import type { NotificationId } from "./NotificationId";
3
+ import type { NotificationTypes } from "./NotificationTypes";
4
+ import type { PersonId } from "./PersonId";
5
+ import type { PostId } from "./PostId";
6
+ import type { PrivateMessageId } from "./PrivateMessageId";
7
+ export type Notification = {
8
+ id: NotificationId;
9
+ recipient_id: PersonId;
10
+ comment_id?: CommentId;
11
+ read: boolean;
12
+ published_at: string;
13
+ kind: NotificationTypes;
14
+ post_id?: PostId;
15
+ private_message_id?: PrivateMessageId;
16
+ };
@@ -0,0 +1,10 @@
1
+ import type { CommentView } from "./CommentView";
2
+ import type { PostView } from "./PostView";
3
+ import type { PrivateMessageView } from "./PrivateMessageView";
4
+ export type NotificationData = ({
5
+ type_: "Comment";
6
+ } & CommentView) | ({
7
+ type_: "Post";
8
+ } & PostView) | ({
9
+ type_: "PrivateMessage";
10
+ } & PrivateMessageView);
@@ -0,0 +1,4 @@
1
+ /**
2
+ * A list of possible types for the inbox.
3
+ */
4
+ export type NotificationDataType = "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed";
@@ -0,0 +1 @@
1
+ export type NotificationId = number;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Types of notifications which can be received in inbox
3
+ */
4
+ export type NotificationTypes = "Mention" | "Reply" | "Subscribed" | "PrivateMessage";
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ import type { Notification } from "./Notification";
2
+ import type { NotificationData } from "./NotificationData";
3
+ export type NotificationView = {
4
+ notification: Notification;
5
+ data: NotificationData;
6
+ };
@@ -6,5 +6,9 @@ export type OpenGraphData = {
6
6
  title?: string;
7
7
  description?: string;
8
8
  image?: DbUrl;
9
+ image_width?: number;
10
+ image_height?: number;
9
11
  embed_video_url?: DbUrl;
12
+ video_width?: number;
13
+ video_height?: number;
10
14
  };
@@ -11,4 +11,16 @@ export type PersonActions = {
11
11
  * A note about the person.
12
12
  */
13
13
  note?: string;
14
+ /**
15
+ * When the person was voted on.
16
+ */
17
+ voted_at?: string;
18
+ /**
19
+ * A total of upvotes given to this person
20
+ */
21
+ upvotes?: number;
22
+ /**
23
+ * A total of downvotes given to this person
24
+ */
25
+ downvotes?: number;
14
26
  };
@@ -7,5 +7,6 @@ export type PersonView = {
7
7
  person: Person;
8
8
  is_admin: boolean;
9
9
  person_actions?: PersonActions;
10
- creator_banned: boolean;
10
+ banned: boolean;
11
+ ban_expires_at?: string;
11
12
  };
@@ -1,3 +1,4 @@
1
+ import type { PostNotificationsMode } from "./PostNotificationsMode";
1
2
  export type PostActions = {
2
3
  /**
3
4
  * When the post was read.
@@ -28,4 +29,5 @@ export type PostActions = {
28
29
  * When the post was hidden.
29
30
  */
30
31
  hidden_at?: string;
32
+ notifications?: PostNotificationsMode;
31
33
  };
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
- // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Available settings for post notifications
3
+ */
4
+ export type PostNotificationsMode = "AllComments" | "RepliesAndMentions" | "Mute";
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import type { Comment } from "./Comment";
2
+ import type { Post } from "./Post";
3
+ import type { PrivateMessage } from "./PrivateMessage";
4
+ export type PostOrCommentOrPrivateMessage = {
5
+ Post: Post;
6
+ } | {
7
+ Comment: Comment;
8
+ } | {
9
+ PrivateMessage: PrivateMessage;
10
+ };
@@ -19,4 +19,7 @@ export type PostReportView = {
19
19
  person_actions?: PersonActions;
20
20
  resolver?: Person;
21
21
  creator_is_admin: boolean;
22
+ creator_is_moderator: boolean;
23
+ creator_banned: boolean;
24
+ creator_banned_from_community: boolean;
22
25
  };
@@ -1,7 +1,6 @@
1
1
  import type { Community } from "./Community";
2
2
  import type { CommunityActions } from "./CommunityActions";
3
3
  import type { ImageDetails } from "./ImageDetails";
4
- import type { InstanceActions } from "./InstanceActions";
5
4
  import type { Person } from "./Person";
6
5
  import type { PersonActions } from "./PersonActions";
7
6
  import type { Post } from "./Post";
@@ -18,11 +17,12 @@ export type PostView = {
18
17
  community_actions?: CommunityActions;
19
18
  person_actions?: PersonActions;
20
19
  post_actions?: PostActions;
21
- instance_actions?: InstanceActions;
22
20
  creator_is_admin: boolean;
23
21
  tags: TagsView;
24
22
  can_mod: boolean;
25
23
  creator_banned: boolean;
24
+ creator_ban_expires_at?: string;
26
25
  creator_is_moderator: boolean;
27
26
  creator_banned_from_community: boolean;
27
+ creator_community_ban_expires_at?: string;
28
28
  };
@@ -10,7 +10,6 @@ export type PrivateMessage = {
10
10
  recipient_id: PersonId;
11
11
  content: string;
12
12
  deleted: boolean;
13
- read: boolean;
14
13
  published_at: string;
15
14
  updated_at?: string;
16
15
  ap_id: DbUrl;
@@ -10,4 +10,6 @@ export type PrivateMessageReportView = {
10
10
  creator: Person;
11
11
  private_message_creator: Person;
12
12
  resolver?: Person;
13
+ creator_is_admin: boolean;
14
+ creator_banned: boolean;
13
15
  };