lemmy-js-client 1.0.0-block-nsfw.1 → 1.0.0-comment-lock.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 (285) hide show
  1. package/README.md +6 -0
  2. package/dist/http.d.ts +125 -43
  3. package/dist/http.js +1135 -916
  4. package/dist/index.d.ts +65 -36
  5. package/dist/other_types.d.ts +23 -2
  6. package/dist/types/AdminAllowInstance.d.ts +1 -1
  7. package/dist/types/AdminBlockInstance.d.ts +2 -2
  8. package/dist/types/AdminBlockInstanceParams.d.ts +1 -1
  9. package/dist/types/AdminListUsers.d.ts +7 -0
  10. package/dist/types/AdminListUsersResponse.d.ts +10 -0
  11. package/dist/types/AdminPurgeComment.d.ts +1 -1
  12. package/dist/types/AdminPurgeCommunity.d.ts +1 -1
  13. package/dist/types/AdminPurgePerson.d.ts +1 -1
  14. package/dist/types/AdminPurgePost.d.ts +1 -1
  15. package/dist/types/BanFromCommunity.d.ts +1 -1
  16. package/dist/types/BanPerson.d.ts +1 -1
  17. package/dist/types/Comment.d.ts +20 -2
  18. package/dist/types/CommentActions.d.ts +14 -0
  19. package/dist/types/CommentReport.d.ts +2 -2
  20. package/dist/types/CommentReportView.d.ts +10 -13
  21. package/dist/types/CommentResponse.d.ts +0 -2
  22. package/dist/types/CommentSlimView.d.ts +7 -13
  23. package/dist/types/CommentView.d.ts +11 -13
  24. package/dist/types/Community.d.ts +25 -6
  25. package/dist/types/CommunityActions.d.ts +29 -0
  26. package/dist/types/CommunityIdQuery.d.ts +8 -0
  27. package/dist/types/CommunityNotificationsMode.d.ts +4 -0
  28. package/dist/types/CommunityReport.d.ts +2 -2
  29. package/dist/types/CommunityReportResponse.d.ts +7 -0
  30. package/dist/types/CommunityReportView.d.ts +4 -4
  31. package/dist/types/CommunityView.d.ts +4 -6
  32. package/dist/types/CommunityVisibility.d.ts +1 -1
  33. package/dist/types/CreateCommunityReport.d.ts +8 -0
  34. package/dist/types/CreateCommunityTag.d.ts +10 -0
  35. package/dist/types/CreateMultiCommunity.d.ts +5 -0
  36. package/dist/types/CreateOrDeleteMultiCommunityEntry.d.ts +6 -0
  37. package/dist/types/CreatePost.d.ts +1 -1
  38. package/dist/types/CreateSite.d.ts +18 -14
  39. package/dist/types/CustomEmoji.d.ts +2 -2
  40. package/dist/types/DeleteCommunityTag.d.ts +7 -0
  41. package/dist/types/EditPost.d.ts +2 -2
  42. package/dist/types/EditSite.d.ts +26 -21
  43. package/dist/types/ExportDataResponse.d.ts +13 -0
  44. package/dist/types/FederationBlockList.d.ts +3 -3
  45. package/dist/types/FederationError.d.ts +3 -1
  46. package/dist/types/FollowMultiCommunity.d.ts +5 -0
  47. package/dist/types/GetComments.d.ts +3 -3
  48. package/dist/types/GetCommentsResponse.d.ts +3 -0
  49. package/dist/types/GetCommentsSlimResponse.d.ts +3 -0
  50. package/dist/types/GetModlog.d.ts +3 -2
  51. package/dist/types/GetModlogResponse.d.ts +6 -0
  52. package/dist/types/GetMultiCommunity.d.ts +4 -0
  53. package/dist/types/GetMultiCommunityResponse.d.ts +6 -0
  54. package/dist/types/GetPosts.d.ts +3 -9
  55. package/dist/types/GetPostsResponse.d.ts +1 -0
  56. package/dist/types/GetSiteResponse.d.ts +4 -2
  57. package/dist/types/Instance.d.ts +13 -3
  58. package/dist/types/InstanceActions.d.ts +18 -0
  59. package/dist/types/InstanceWithFederationState.d.ts +11 -2
  60. package/dist/types/LemmyErrorType.d.ts +94 -29
  61. package/dist/types/LikeType.d.ts +4 -0
  62. package/dist/types/ListCommentLikes.d.ts +3 -1
  63. package/dist/types/ListCommentLikesResponse.d.ts +6 -0
  64. package/dist/types/ListCommunities.d.ts +3 -1
  65. package/dist/types/ListCommunitiesResponse.d.ts +6 -0
  66. package/dist/types/ListCommunityPendingFollows.d.ts +3 -1
  67. package/dist/types/ListCommunityPendingFollows.js +0 -1
  68. package/dist/types/ListCommunityPendingFollowsResponse.d.ts +6 -0
  69. package/dist/types/ListCustomEmojis.d.ts +0 -3
  70. package/dist/types/ListMedia.d.ts +3 -1
  71. package/dist/types/ListMedia.js +0 -1
  72. package/dist/types/ListMediaResponse.d.ts +6 -0
  73. package/dist/types/ListMultiCommunities.d.ts +5 -0
  74. package/dist/types/ListMultiCommunitiesResponse.d.ts +4 -0
  75. package/dist/types/ListNotifications.d.ts +12 -0
  76. package/dist/types/ListNotificationsResponse.d.ts +13 -0
  77. package/dist/types/ListPersonContent.d.ts +3 -2
  78. package/dist/types/ListPersonContentResponse.d.ts +6 -0
  79. package/dist/types/ListPersonHidden.d.ts +9 -0
  80. package/dist/types/ListPersonHiddenResponse.d.ts +13 -0
  81. package/dist/types/ListPersonLiked.d.ts +13 -0
  82. package/dist/types/ListPersonLikedResponse.d.ts +13 -0
  83. package/dist/types/ListPersonRead.d.ts +9 -0
  84. package/dist/types/ListPersonReadResponse.d.ts +13 -0
  85. package/dist/types/ListPersonSaved.d.ts +3 -2
  86. package/dist/types/ListPersonSavedResponse.d.ts +8 -2
  87. package/dist/types/ListPostLikes.d.ts +3 -1
  88. package/dist/types/ListPostLikesResponse.d.ts +6 -0
  89. package/dist/types/ListRegistrationApplications.d.ts +3 -1
  90. package/dist/types/ListRegistrationApplications.js +0 -1
  91. package/dist/types/ListRegistrationApplicationsResponse.d.ts +6 -0
  92. package/dist/types/ListReports.d.ts +3 -2
  93. package/dist/types/ListReportsResponse.d.ts +6 -0
  94. package/dist/types/ListTaglines.d.ts +3 -1
  95. package/dist/types/ListTaglines.js +0 -1
  96. package/dist/types/ListTaglinesResponse.d.ts +6 -0
  97. package/dist/types/ListingType.d.ts +1 -1
  98. package/dist/types/LocalImage.d.ts +8 -3
  99. package/dist/types/LocalImageView.d.ts +2 -0
  100. package/dist/types/LocalSite.d.ts +30 -11
  101. package/dist/types/LocalSiteRateLimit.d.ts +16 -16
  102. package/dist/types/LocalSiteUrlBlocklist.d.ts +2 -2
  103. package/dist/types/LocalUser.d.ts +7 -1
  104. package/dist/types/LocalUserView.d.ts +1 -4
  105. package/dist/types/LockComment.d.ts +6 -0
  106. package/dist/types/LockComment.js +2 -0
  107. package/dist/types/LockPost.d.ts +1 -0
  108. package/dist/types/Login.d.ts +3 -0
  109. package/dist/types/LoginToken.d.ts +1 -1
  110. package/dist/types/MarkNotificationAsRead.d.ts +8 -0
  111. package/dist/types/MarkNotificationAsRead.js +2 -0
  112. package/dist/types/ModAdd.d.ts +1 -1
  113. package/dist/types/ModAddCommunity.d.ts +1 -1
  114. package/dist/types/ModBan.d.ts +4 -2
  115. package/dist/types/ModBanFromCommunity.d.ts +2 -2
  116. package/dist/types/ModChangeCommunityVisibility.d.ts +11 -0
  117. package/dist/types/ModChangeCommunityVisibility.js +2 -0
  118. package/dist/types/ModChangeCommunityVisibilityId.d.ts +1 -0
  119. package/dist/types/ModChangeCommunityVisibilityView.d.ts +11 -0
  120. package/dist/types/ModChangeCommunityVisibilityView.js +2 -0
  121. package/dist/types/ModEditPost.d.ts +10 -0
  122. package/dist/types/ModEditPost.js +2 -0
  123. package/dist/types/ModFeaturePost.d.ts +1 -1
  124. package/dist/types/ModLockComment.d.ts +14 -0
  125. package/dist/types/ModLockComment.js +2 -0
  126. package/dist/types/ModLockCommentId.d.ts +1 -0
  127. package/dist/types/ModLockCommentView.d.ts +14 -0
  128. package/dist/types/ModLockCommentView.js +2 -0
  129. package/dist/types/ModLockPost.d.ts +2 -1
  130. package/dist/types/ModRemoveComment.d.ts +1 -1
  131. package/dist/types/ModRemoveCommunity.d.ts +1 -1
  132. package/dist/types/ModRemovePost.d.ts +1 -1
  133. package/dist/types/ModTransferCommunity.d.ts +1 -1
  134. package/dist/types/ModlogActionType.d.ts +1 -1
  135. package/dist/types/ModlogCombinedView.d.ts +7 -4
  136. package/dist/types/MultiCommunity.d.ts +17 -0
  137. package/dist/types/MultiCommunity.js +2 -0
  138. package/dist/types/MultiCommunityFollow.d.ts +8 -0
  139. package/dist/types/MultiCommunityFollow.js +2 -0
  140. package/dist/types/MultiCommunityId.d.ts +1 -0
  141. package/dist/types/MultiCommunityView.d.ts +6 -0
  142. package/dist/types/MultiCommunityView.js +2 -0
  143. package/dist/types/MyUserInfo.d.ts +3 -1
  144. package/dist/types/NotePerson.d.ts +10 -0
  145. package/dist/types/NotePerson.js +2 -0
  146. package/dist/types/Notification.d.ts +16 -0
  147. package/dist/types/Notification.js +2 -0
  148. package/dist/types/NotificationData.d.ts +10 -0
  149. package/dist/types/NotificationData.js +2 -0
  150. package/dist/types/NotificationDataType.d.ts +4 -0
  151. package/dist/types/NotificationId.d.ts +1 -0
  152. package/dist/types/NotificationTypes.d.ts +4 -0
  153. package/dist/types/NotificationView.d.ts +6 -0
  154. package/dist/types/NotificationView.js +2 -0
  155. package/dist/types/OAuthAccount.d.ts +2 -2
  156. package/dist/types/OAuthProvider.d.ts +2 -2
  157. package/dist/types/PaginationCursor.d.ts +1 -4
  158. package/dist/types/PendingFollow.d.ts +2 -2
  159. package/dist/types/Person.d.ts +4 -10
  160. package/dist/types/PersonActions.d.ts +26 -0
  161. package/dist/types/PersonLikedCombinedView.d.ts +7 -0
  162. package/dist/types/PersonLikedCombinedView.js +2 -0
  163. package/dist/types/PersonSavedCombinedView.d.ts +7 -0
  164. package/dist/types/PersonSavedCombinedView.js +2 -0
  165. package/dist/types/PersonView.d.ts +3 -2
  166. package/dist/types/PluginMetadata.d.ts +5 -0
  167. package/dist/types/Post.d.ts +18 -3
  168. package/dist/types/PostActions.d.ts +33 -0
  169. package/dist/types/PostActions.js +2 -0
  170. package/dist/types/PostNotificationsMode.d.ts +4 -0
  171. package/dist/types/PostNotificationsMode.js +3 -0
  172. package/dist/types/PostOrCommentOrPrivateMessage.d.ts +10 -0
  173. package/dist/types/PostOrCommentOrPrivateMessage.js +2 -0
  174. package/dist/types/PostReport.d.ts +2 -2
  175. package/dist/types/PostReportView.d.ts +10 -16
  176. package/dist/types/PostView.d.ts +11 -18
  177. package/dist/types/PrivateMessage.d.ts +2 -3
  178. package/dist/types/PrivateMessageReport.d.ts +2 -2
  179. package/dist/types/PrivateMessageReportView.d.ts +3 -1
  180. package/dist/types/ReadableFederationState.d.ts +2 -2
  181. package/dist/types/RegistrationApplication.d.ts +1 -1
  182. package/dist/types/ResolveCommunityReport.d.ts +8 -0
  183. package/dist/types/ResolveCommunityReport.js +2 -0
  184. package/dist/types/SaveUserSettings.d.ts +7 -1
  185. package/dist/types/Search.d.ts +8 -3
  186. package/dist/types/SearchCombinedView.d.ts +4 -1
  187. package/dist/types/SearchResponse.d.ts +6 -0
  188. package/dist/types/SearchType.d.ts +1 -1
  189. package/dist/types/Site.d.ts +4 -3
  190. package/dist/types/SiteResponse.d.ts +0 -4
  191. package/dist/types/SiteView.d.ts +2 -2
  192. package/dist/types/Tag.d.ts +7 -13
  193. package/dist/types/Tagline.d.ts +4 -3
  194. package/dist/types/Tagline.js +0 -1
  195. package/dist/types/TagsView.d.ts +5 -0
  196. package/dist/types/TagsView.js +2 -0
  197. package/dist/types/UpdateCommunityNotifications.d.ts +9 -0
  198. package/dist/types/UpdateCommunityNotifications.js +2 -0
  199. package/dist/types/UpdateCommunityTag.d.ts +9 -0
  200. package/dist/types/UpdateCommunityTag.js +2 -0
  201. package/dist/types/UpdateMultiCommunity.d.ts +7 -0
  202. package/dist/types/UpdateMultiCommunity.js +2 -0
  203. package/dist/types/UpdatePostNotifications.d.ts +9 -0
  204. package/dist/types/UpdatePostNotifications.js +2 -0
  205. package/dist/types/UserBlockInstanceCommunitiesParams.d.ts +8 -0
  206. package/dist/types/UserBlockInstanceCommunitiesParams.js +2 -0
  207. package/dist/types/{UserBlockInstanceParams.d.ts → UserBlockInstancePersonsParams.d.ts} +2 -2
  208. package/dist/types/UserBlockInstancePersonsParams.js +2 -0
  209. package/dist/types/UserSettingsBackup.d.ts +31 -0
  210. package/dist/types/UserSettingsBackup.js +2 -0
  211. package/dist/types/VoteShow.d.ts +4 -0
  212. package/dist/types/VoteShow.js +3 -0
  213. package/dist/types/VoteView.d.ts +1 -0
  214. package/package.json +10 -6
  215. package/dist/types/BannedPersonsResponse.d.ts +0 -7
  216. package/dist/types/CommentAggregates.d.ts +0 -17
  217. package/dist/types/CommentReply.d.ts +0 -13
  218. package/dist/types/CommentReplyId.d.ts +0 -4
  219. package/dist/types/CommentReplyView.d.ts +0 -31
  220. package/dist/types/CommunityAggregates.d.ts +0 -30
  221. package/dist/types/InboxCombinedPaginationCursor.d.ts +0 -4
  222. package/dist/types/InboxCombinedView.d.ts +0 -13
  223. package/dist/types/InboxDataType.d.ts +0 -4
  224. package/dist/types/ListInbox.d.ts +0 -11
  225. package/dist/types/ListInboxResponse.d.ts +0 -7
  226. package/dist/types/LocalUserVoteDisplayMode.d.ts +0 -9
  227. package/dist/types/MarkCommentReplyAsRead.d.ts +0 -8
  228. package/dist/types/MarkPersonCommentMentionAsRead.d.ts +0 -8
  229. package/dist/types/MarkPersonPostMentionAsRead.d.ts +0 -8
  230. package/dist/types/ModHideCommunity.d.ts +0 -14
  231. package/dist/types/ModHideCommunityId.d.ts +0 -1
  232. package/dist/types/ModHideCommunityView.d.ts +0 -11
  233. package/dist/types/ModlogCombinedPaginationCursor.d.ts +0 -4
  234. package/dist/types/PersonAggregates.d.ts +0 -10
  235. package/dist/types/PersonCommentMention.d.ts +0 -13
  236. package/dist/types/PersonCommentMentionId.d.ts +0 -4
  237. package/dist/types/PersonCommentMentionView.d.ts +0 -31
  238. package/dist/types/PersonContentCombinedPaginationCursor.d.ts +0 -4
  239. package/dist/types/PersonPostMention.d.ts +0 -13
  240. package/dist/types/PersonPostMentionId.d.ts +0 -4
  241. package/dist/types/PersonPostMentionView.d.ts +0 -36
  242. package/dist/types/PersonSavedCombinedPaginationCursor.d.ts +0 -4
  243. package/dist/types/PostAggregates.d.ts +0 -18
  244. package/dist/types/PostTags.d.ts +0 -7
  245. package/dist/types/ReportCombinedPaginationCursor.d.ts +0 -4
  246. package/dist/types/ResolveObjectResponse.d.ts +0 -13
  247. package/dist/types/SearchCombinedPaginationCursor.d.ts +0 -4
  248. package/dist/types/SiteAggregates.d.ts +0 -27
  249. package/dist/types/SubscribedType.d.ts +0 -4
  250. /package/dist/types/{BannedPersonsResponse.js → AdminListUsers.js} +0 -0
  251. /package/dist/types/{CommentAggregates.js → AdminListUsersResponse.js} +0 -0
  252. /package/dist/types/{CommentReplyId.js → CommentActions.js} +0 -0
  253. /package/dist/types/{CommentReply.js → CommunityActions.js} +0 -0
  254. /package/dist/types/{CommentReplyView.js → CommunityIdQuery.js} +0 -0
  255. /package/dist/types/{InboxCombinedPaginationCursor.js → CommunityNotificationsMode.js} +0 -0
  256. /package/dist/types/{CommunityAggregates.js → CommunityReportResponse.js} +0 -0
  257. /package/dist/types/{InboxCombinedView.js → CreateCommunityReport.js} +0 -0
  258. /package/dist/types/{ListInbox.js → CreateCommunityTag.js} +0 -0
  259. /package/dist/types/{InboxDataType.js → CreateMultiCommunity.js} +0 -0
  260. /package/dist/types/{ListInboxResponse.js → CreateOrDeleteMultiCommunityEntry.js} +0 -0
  261. /package/dist/types/{MarkCommentReplyAsRead.js → DeleteCommunityTag.js} +0 -0
  262. /package/dist/types/{MarkPersonCommentMentionAsRead.js → ExportDataResponse.js} +0 -0
  263. /package/dist/types/{MarkPersonPostMentionAsRead.js → FollowMultiCommunity.js} +0 -0
  264. /package/dist/types/{ModHideCommunity.js → GetMultiCommunity.js} +0 -0
  265. /package/dist/types/{ModHideCommunityView.js → GetMultiCommunityResponse.js} +0 -0
  266. /package/dist/types/{LocalUserVoteDisplayMode.js → InstanceActions.js} +0 -0
  267. /package/dist/types/{ModHideCommunityId.js → LikeType.js} +0 -0
  268. /package/dist/types/{PersonAggregates.js → ListMultiCommunities.js} +0 -0
  269. /package/dist/types/{PersonCommentMention.js → ListMultiCommunitiesResponse.js} +0 -0
  270. /package/dist/types/{PersonCommentMentionView.js → ListNotifications.js} +0 -0
  271. /package/dist/types/{PersonPostMention.js → ListNotificationsResponse.js} +0 -0
  272. /package/dist/types/{PersonPostMentionView.js → ListPersonHidden.js} +0 -0
  273. /package/dist/types/{PostAggregates.js → ListPersonHiddenResponse.js} +0 -0
  274. /package/dist/types/{PostTags.js → ListPersonLiked.js} +0 -0
  275. /package/dist/types/{ResolveObjectResponse.js → ListPersonLikedResponse.js} +0 -0
  276. /package/dist/types/{SiteAggregates.js → ListPersonRead.js} +0 -0
  277. /package/dist/types/{UserBlockInstanceParams.js → ListPersonReadResponse.js} +0 -0
  278. /package/dist/types/{ModlogCombinedPaginationCursor.js → ModChangeCommunityVisibilityId.js} +0 -0
  279. /package/dist/types/{PersonCommentMentionId.js → ModLockCommentId.js} +0 -0
  280. /package/dist/types/{PersonContentCombinedPaginationCursor.js → MultiCommunityId.js} +0 -0
  281. /package/dist/types/{PersonPostMentionId.js → NotificationDataType.js} +0 -0
  282. /package/dist/types/{PersonSavedCombinedPaginationCursor.js → NotificationId.js} +0 -0
  283. /package/dist/types/{ReportCombinedPaginationCursor.js → NotificationTypes.js} +0 -0
  284. /package/dist/types/{SearchCombinedPaginationCursor.js → PersonActions.js} +0 -0
  285. /package/dist/types/{SubscribedType.js → PluginMetadata.js} +0 -0
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -7,6 +7,6 @@ export type OAuthAccount = {
7
7
  local_user_id: LocalUserId;
8
8
  oauth_provider_id: OAuthProviderId;
9
9
  oauth_user_id: string;
10
- published: string;
11
- updated?: string;
10
+ published_at: string;
11
+ updated_at?: string;
12
12
  };
@@ -54,8 +54,8 @@ export type OAuthProvider = {
54
54
  * switch to enable or disable an oauth provider
55
55
  */
56
56
  enabled: boolean;
57
- published: string;
58
- updated?: string;
57
+ published_at: string;
58
+ updated_at?: string;
59
59
  /**
60
60
  * switch to enable or disable PKCE
61
61
  */
@@ -1,7 +1,4 @@
1
1
  /**
2
- * currently this is just a wrapper around post id, but should be seen as opaque from the client's
3
- * perspective. stringified since we might want to use arbitrary info later, with a P prepended to
4
- * prevent ossification (api users love to make assumptions (e.g. parse stuff that looks like
5
- * numbers as numbers) about apis that aren't part of the spec
2
+ * A pagination cursor
6
3
  */
7
4
  export type PaginationCursor = string;
@@ -1,9 +1,9 @@
1
1
  import type { Community } from "./Community";
2
+ import type { CommunityFollowerState } from "./CommunityFollowerState";
2
3
  import type { Person } from "./Person";
3
- import type { SubscribedType } from "./SubscribedType";
4
4
  export type PendingFollow = {
5
5
  person: Person;
6
6
  community: Community;
7
7
  is_new_instance: boolean;
8
- subscribed: SubscribedType;
8
+ follow_state?: CommunityFollowerState;
9
9
  };
@@ -15,12 +15,8 @@ export type Person = {
15
15
  * A URL for an avatar.
16
16
  */
17
17
  avatar?: DbUrl;
18
- /**
19
- * Whether the person is banned.
20
- */
21
- banned: boolean;
22
- published: string;
23
- updated?: string;
18
+ published_at: string;
19
+ updated_at?: string;
24
20
  /**
25
21
  * The federated ap_id.
26
22
  */
@@ -49,9 +45,7 @@ export type Person = {
49
45
  * Whether the person is a bot account.
50
46
  */
51
47
  bot_account: boolean;
52
- /**
53
- * When their ban, if it exists, expires, if at all.
54
- */
55
- ban_expires?: string;
56
48
  instance_id: InstanceId;
49
+ post_count: number;
50
+ comment_count: number;
57
51
  };
@@ -0,0 +1,26 @@
1
+ export type PersonActions = {
2
+ /**
3
+ * When the person was blocked.
4
+ */
5
+ blocked_at?: string;
6
+ /**
7
+ * When the person was noted.
8
+ */
9
+ noted_at?: string;
10
+ /**
11
+ * A note about the person.
12
+ */
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;
26
+ };
@@ -0,0 +1,7 @@
1
+ import type { CommentView } from "./CommentView";
2
+ import type { PostView } from "./PostView";
3
+ export type PersonLikedCombinedView = ({
4
+ type_: "Post";
5
+ } & PostView) | ({
6
+ type_: "Comment";
7
+ } & CommentView);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,7 @@
1
+ import type { CommentView } from "./CommentView";
2
+ import type { PostView } from "./PostView";
3
+ export type PersonSavedCombinedView = ({
4
+ type_: "Post";
5
+ } & PostView) | ({
6
+ type_: "Comment";
7
+ } & CommentView);
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,10 +1,11 @@
1
1
  import type { Person } from "./Person";
2
- import type { PersonAggregates } from "./PersonAggregates";
2
+ import type { PersonActions } from "./PersonActions";
3
3
  /**
4
4
  * A person view.
5
5
  */
6
6
  export type PersonView = {
7
7
  person: Person;
8
- counts: PersonAggregates;
9
8
  is_admin: boolean;
9
+ person_actions?: PersonActions;
10
+ creator_banned: boolean;
10
11
  };
@@ -0,0 +1,5 @@
1
+ export type PluginMetadata = {
2
+ name: string;
3
+ url: string;
4
+ description: string;
5
+ };
@@ -27,8 +27,8 @@ export type Post = {
27
27
  * Whether the post is locked.
28
28
  */
29
29
  locked: boolean;
30
- published: string;
31
- updated?: string;
30
+ published_at: string;
31
+ updated_at?: string;
32
32
  /**
33
33
  * Whether the post is deleted.
34
34
  */
@@ -78,5 +78,20 @@ export type Post = {
78
78
  /**
79
79
  * Time at which the post will be published. None means publish immediately.
80
80
  */
81
- scheduled_publish_time?: string;
81
+ scheduled_publish_time_at?: string;
82
+ comments: number;
83
+ score: number;
84
+ upvotes: number;
85
+ downvotes: number;
86
+ /**
87
+ * The time of the newest comment in the post.
88
+ */
89
+ newest_comment_time_at: string;
90
+ report_count: number;
91
+ unresolved_report_count: number;
92
+ /**
93
+ * If a local user posts in a remote community, the comment is hidden until it is confirmed
94
+ * accepted by the community (by receiving it back via federation).
95
+ */
96
+ federation_pending: boolean;
82
97
  };
@@ -0,0 +1,33 @@
1
+ import type { PostNotificationsMode } from "./PostNotificationsMode";
2
+ export type PostActions = {
3
+ /**
4
+ * When the post was read.
5
+ */
6
+ read_at?: string;
7
+ /**
8
+ * When was the last time you read the comments.
9
+ */
10
+ read_comments_at?: string;
11
+ /**
12
+ * The number of comments you read last. Subtract this from total comments to get an unread
13
+ * count.
14
+ */
15
+ read_comments_amount?: number;
16
+ /**
17
+ * When the post was saved.
18
+ */
19
+ saved_at?: string;
20
+ /**
21
+ * When the post was liked.
22
+ */
23
+ liked_at?: string;
24
+ /**
25
+ * The like / score of the post.
26
+ */
27
+ like_score?: number;
28
+ /**
29
+ * When the post was hidden.
30
+ */
31
+ hidden_at?: string;
32
+ notifications?: PostNotificationsMode;
33
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
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
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -24,7 +24,7 @@ export type PostReport = {
24
24
  reason: string;
25
25
  resolved: boolean;
26
26
  resolver_id?: PersonId;
27
- published: string;
28
- updated?: string;
27
+ published_at: string;
28
+ updated_at?: string;
29
29
  violates_instance_rules: boolean;
30
30
  };
@@ -1,9 +1,10 @@
1
1
  import type { Community } from "./Community";
2
+ import type { CommunityActions } from "./CommunityActions";
2
3
  import type { Person } from "./Person";
4
+ import type { PersonActions } from "./PersonActions";
3
5
  import type { Post } from "./Post";
4
- import type { PostAggregates } from "./PostAggregates";
6
+ import type { PostActions } from "./PostActions";
5
7
  import type { PostReport } from "./PostReport";
6
- import type { SubscribedType } from "./SubscribedType";
7
8
  /**
8
9
  * A post report view.
9
10
  */
@@ -13,19 +14,12 @@ export type PostReportView = {
13
14
  community: Community;
14
15
  creator: Person;
15
16
  post_creator: Person;
16
- creator_banned_from_community: boolean;
17
- creator_is_moderator: boolean;
18
- creator_is_admin: boolean;
19
- subscribed: SubscribedType;
20
- /**
21
- * The time when the post was saved.
22
- */
23
- saved?: string;
24
- read: boolean;
25
- hidden: boolean;
26
- creator_blocked: boolean;
27
- my_vote?: number;
28
- unread_comments: number;
29
- counts: PostAggregates;
17
+ community_actions?: CommunityActions;
18
+ post_actions?: PostActions;
19
+ person_actions?: PersonActions;
30
20
  resolver?: Person;
21
+ creator_is_admin: boolean;
22
+ creator_is_moderator: boolean;
23
+ creator_banned: boolean;
24
+ creator_banned_from_community: boolean;
31
25
  };
@@ -1,10 +1,11 @@
1
1
  import type { Community } from "./Community";
2
+ import type { CommunityActions } from "./CommunityActions";
2
3
  import type { ImageDetails } from "./ImageDetails";
3
4
  import type { Person } from "./Person";
5
+ import type { PersonActions } from "./PersonActions";
4
6
  import type { Post } from "./Post";
5
- import type { PostAggregates } from "./PostAggregates";
6
- import type { PostTags } from "./PostTags";
7
- import type { SubscribedType } from "./SubscribedType";
7
+ import type { PostActions } from "./PostActions";
8
+ import type { TagsView } from "./TagsView";
8
9
  /**
9
10
  * A post view.
10
11
  */
@@ -13,21 +14,13 @@ export type PostView = {
13
14
  creator: Person;
14
15
  community: Community;
15
16
  image_details?: ImageDetails;
16
- creator_banned_from_community: boolean;
17
- banned_from_community: boolean;
18
- creator_is_moderator: boolean;
17
+ community_actions?: CommunityActions;
18
+ person_actions?: PersonActions;
19
+ post_actions?: PostActions;
19
20
  creator_is_admin: boolean;
20
- counts: PostAggregates;
21
- subscribed: SubscribedType;
22
- /**
23
- * The time when the post was saved.
24
- */
25
- saved?: string;
26
- read: boolean;
27
- hidden: boolean;
28
- creator_blocked: boolean;
29
- my_vote?: number;
30
- unread_comments: number;
31
- tags: PostTags;
21
+ tags: TagsView;
32
22
  can_mod: boolean;
23
+ creator_banned: boolean;
24
+ creator_is_moderator: boolean;
25
+ creator_banned_from_community: boolean;
33
26
  };
@@ -10,9 +10,8 @@ export type PrivateMessage = {
10
10
  recipient_id: PersonId;
11
11
  content: string;
12
12
  deleted: boolean;
13
- read: boolean;
14
- published: string;
15
- updated?: string;
13
+ published_at: string;
14
+ updated_at?: string;
16
15
  ap_id: DbUrl;
17
16
  local: boolean;
18
17
  removed: boolean;
@@ -15,6 +15,6 @@ export type PrivateMessageReport = {
15
15
  reason: string;
16
16
  resolved: boolean;
17
17
  resolver_id?: PersonId;
18
- published: string;
19
- updated?: string;
18
+ published_at: string;
19
+ updated_at?: string;
20
20
  };
@@ -7,7 +7,9 @@ import type { PrivateMessageReport } from "./PrivateMessageReport";
7
7
  export type PrivateMessageReportView = {
8
8
  private_message_report: PrivateMessageReport;
9
9
  private_message: PrivateMessage;
10
- private_message_creator: Person;
11
10
  creator: Person;
11
+ private_message_creator: Person;
12
12
  resolver?: Person;
13
+ creator_is_admin: boolean;
14
+ creator_banned: boolean;
13
15
  };
@@ -10,7 +10,7 @@ export type ReadableFederationState = {
10
10
  * the last successfully sent activity id
11
11
  */
12
12
  last_successful_id?: ActivityId;
13
- last_successful_published_time?: string;
13
+ last_successful_published_time_at?: string;
14
14
  /**
15
15
  * how many failed attempts have been made to send the next activity
16
16
  */
@@ -18,5 +18,5 @@ export type ReadableFederationState = {
18
18
  /**
19
19
  * timestamp of the last retry attempt (when the last failing activity was resent)
20
20
  */
21
- last_retry?: string;
21
+ last_retry_at?: string;
22
22
  };
@@ -10,5 +10,5 @@ export type RegistrationApplication = {
10
10
  answer: string;
11
11
  admin_id?: PersonId;
12
12
  deny_reason?: string;
13
- published: string;
13
+ published_at: string;
14
14
  };
@@ -0,0 +1,8 @@
1
+ import type { CommunityReportId } from "./CommunityReportId";
2
+ /**
3
+ * Resolve a community report.
4
+ */
5
+ export type ResolveCommunityReport = {
6
+ report_id: CommunityReportId;
7
+ resolved: boolean;
8
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -4,6 +4,7 @@ import type { ListingType } from "./ListingType";
4
4
  import type { PostListingMode } from "./PostListingMode";
5
5
  import type { PostSortType } from "./PostSortType";
6
6
  import type { SensitiveString } from "./SensitiveString";
7
+ import type { VoteShow } from "./VoteShow";
7
8
  /**
8
9
  * Saves settings for your user.
9
10
  */
@@ -84,6 +85,7 @@ export type SaveUserSettings = {
84
85
  * A list of languages you are able to see discussion in.
85
86
  */
86
87
  discussion_languages?: Array<LanguageId>;
88
+ blocking_keywords?: Array<string>;
87
89
  /**
88
90
  * Open links in a new tab
89
91
  */
@@ -114,7 +116,7 @@ export type SaveUserSettings = {
114
116
  */
115
117
  show_scores?: boolean;
116
118
  show_upvotes?: boolean;
117
- show_downvotes?: boolean;
119
+ show_downvotes?: VoteShow;
118
120
  show_upvote_percentage?: boolean;
119
121
  /**
120
122
  * Whether to automatically mark fetched posts as read.
@@ -124,4 +126,8 @@ export type SaveUserSettings = {
124
126
  * Whether to hide posts containing images/videos.
125
127
  */
126
128
  hide_media?: boolean;
129
+ /**
130
+ * Whether to show vote totals given to others.
131
+ */
132
+ show_person_votes?: boolean;
127
133
  };
@@ -1,14 +1,14 @@
1
1
  import type { CommunityId } from "./CommunityId";
2
2
  import type { ListingType } from "./ListingType";
3
+ import type { PaginationCursor } from "./PaginationCursor";
3
4
  import type { PersonId } from "./PersonId";
4
- import type { SearchCombinedPaginationCursor } from "./SearchCombinedPaginationCursor";
5
5
  import type { SearchSortType } from "./SearchSortType";
6
6
  import type { SearchType } from "./SearchType";
7
7
  /**
8
8
  * Searches the site, given a search term, and some optional filters.
9
9
  */
10
10
  export type Search = {
11
- search_term?: string;
11
+ q: string;
12
12
  community_id?: CommunityId;
13
13
  community_name?: string;
14
14
  creator_id?: PersonId;
@@ -24,6 +24,11 @@ export type Search = {
24
24
  post_url_only?: boolean;
25
25
  liked_only?: boolean;
26
26
  disliked_only?: boolean;
27
- page_cursor?: SearchCombinedPaginationCursor;
27
+ /**
28
+ * If true, then show the nsfw posts (even if your user setting is to hide them)
29
+ */
30
+ show_nsfw?: boolean;
31
+ page_cursor?: PaginationCursor;
28
32
  page_back?: boolean;
33
+ limit?: number;
29
34
  };
@@ -1,5 +1,6 @@
1
1
  import type { CommentView } from "./CommentView";
2
2
  import type { CommunityView } from "./CommunityView";
3
+ import type { MultiCommunityView } from "./MultiCommunityView";
3
4
  import type { PersonView } from "./PersonView";
4
5
  import type { PostView } from "./PostView";
5
6
  export type SearchCombinedView = ({
@@ -10,4 +11,6 @@ export type SearchCombinedView = ({
10
11
  type_: "Community";
11
12
  } & CommunityView) | ({
12
13
  type_: "Person";
13
- } & PersonView);
14
+ } & PersonView) | ({
15
+ type_: "MultiCommunity";
16
+ } & MultiCommunityView);
@@ -1,7 +1,13 @@
1
+ import type { PaginationCursor } from "./PaginationCursor";
1
2
  import type { SearchCombinedView } from "./SearchCombinedView";
2
3
  /**
3
4
  * The search response, containing lists of the return type possibilities
4
5
  */
5
6
  export type SearchResponse = {
6
7
  results: Array<SearchCombinedView>;
8
+ /**
9
+ * the pagination cursor to use to fetch the next page
10
+ */
11
+ next_page?: PaginationCursor;
12
+ prev_page?: PaginationCursor;
7
13
  };
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * The type of content returned from a search.
3
3
  */
4
- export type SearchType = "All" | "Comments" | "Posts" | "Communities" | "Users";
4
+ export type SearchType = "All" | "Comments" | "Posts" | "Communities" | "Users" | "MultiCommunities";
@@ -2,7 +2,8 @@ import type { DbUrl } from "./DbUrl";
2
2
  import type { InstanceId } from "./InstanceId";
3
3
  import type { SiteId } from "./SiteId";
4
4
  /**
5
- * The site.
5
+ * Additional data for federated instances. This may be missing for other platforms which are not
6
+ * fully compatible. Basic data is guaranteed to be available via [[Instance]].
6
7
  */
7
8
  export type Site = {
8
9
  id: SiteId;
@@ -11,8 +12,8 @@ export type Site = {
11
12
  * A sidebar for the site in markdown.
12
13
  */
13
14
  sidebar?: string;
14
- published: string;
15
- updated?: string;
15
+ published_at: string;
16
+ updated_at?: string;
16
17
  /**
17
18
  * An icon URL.
18
19
  */
@@ -4,8 +4,4 @@ import type { SiteView } from "./SiteView";
4
4
  */
5
5
  export type SiteResponse = {
6
6
  site_view: SiteView;
7
- /**
8
- * deprecated, use field `tagline` or /api/v4/tagline/list
9
- */
10
- taglines: Array<null>;
11
7
  };
@@ -1,7 +1,7 @@
1
+ import type { Instance } from "./Instance";
1
2
  import type { LocalSite } from "./LocalSite";
2
3
  import type { LocalSiteRateLimit } from "./LocalSiteRateLimit";
3
4
  import type { Site } from "./Site";
4
- import type { SiteAggregates } from "./SiteAggregates";
5
5
  /**
6
6
  * A site view.
7
7
  */
@@ -9,5 +9,5 @@ export type SiteView = {
9
9
  site: Site;
10
10
  local_site: LocalSite;
11
11
  local_site_rate_limit: LocalSiteRateLimit;
12
- counts: SiteAggregates;
12
+ instance: Instance;
13
13
  };
@@ -2,26 +2,20 @@ import type { CommunityId } from "./CommunityId";
2
2
  import type { DbUrl } from "./DbUrl";
3
3
  import type { TagId } from "./TagId";
4
4
  /**
5
- * A tag that can be assigned to a post within a community.
6
- * The tag object is created by the community moderators.
7
- * The assignment happens by the post creator and can be updated by the community moderators.
8
- *
9
- * A tag is a federatable object that gives additional context to another object, which can be
10
- * displayed and filtered on currently, we only have community post tags, which is a tag that is
11
- * created by post authors as well as mods of a community, to categorize a post. in the future we
12
- * may add more tag types, depending on the requirements, this will lead to either expansion of
13
- * this table (community_id optional, addition of tag_type enum) or split of this table / creation
14
- * of new tables.
5
+ * A tag that is created by community moderators, and assigned to posts by the creator
6
+ * or by mods.
15
7
  */
16
8
  export type Tag = {
17
9
  id: TagId;
18
10
  ap_id: DbUrl;
19
11
  name: string;
12
+ display_name?: string;
13
+ description?: string;
20
14
  /**
21
- * the community that owns this tag
15
+ * The community that this tag belongs to
22
16
  */
23
17
  community_id: CommunityId;
24
- published: string;
25
- updated?: string;
18
+ published_at: string;
19
+ updated_at?: string;
26
20
  deleted: boolean;
27
21
  };
@@ -1,9 +1,10 @@
1
+ import type { TaglineId } from "./TaglineId";
1
2
  /**
2
3
  * A tagline, shown at the top of your site.
3
4
  */
4
5
  export type Tagline = {
5
- id: number;
6
+ id: TaglineId;
6
7
  content: string;
7
- published: string;
8
- updated?: string;
8
+ published_at: string;
9
+ updated_at?: string;
9
10
  };
@@ -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,5 @@
1
+ import type { Tag } from "./Tag";
2
+ /**
3
+ * We wrap this in a struct so we can implement FromSqlRow<Json> for it
4
+ */
5
+ export type TagsView = Array<Tag>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,9 @@
1
+ import type { CommunityId } from "./CommunityId";
2
+ import type { CommunityNotificationsMode } from "./CommunityNotificationsMode";
3
+ /**
4
+ * Change notification settings for a community
5
+ */
6
+ export type UpdateCommunityNotifications = {
7
+ community_id: CommunityId;
8
+ mode: CommunityNotificationsMode;
9
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });