lemmy-js-client 0.20.0-modlog-combined.0 → 0.20.0-move-community-hidden.1

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 (163) hide show
  1. package/README.md +13 -4
  2. package/dist/http.d.ts +189 -466
  3. package/dist/http.js +1109 -418
  4. package/dist/index.d.ts +26 -25
  5. package/dist/other_types.d.ts +81 -0
  6. package/dist/types/AdminAllowInstance.d.ts +1 -1
  7. package/dist/types/AdminBlockInstance.d.ts +1 -1
  8. package/dist/types/AdminPurgeComment.d.ts +1 -1
  9. package/dist/types/AdminPurgeCommunity.d.ts +1 -1
  10. package/dist/types/AdminPurgePerson.d.ts +1 -1
  11. package/dist/types/AdminPurgePost.d.ts +1 -1
  12. package/dist/types/Comment.d.ts +9 -0
  13. package/dist/types/CommentReplyView.d.ts +5 -3
  14. package/dist/types/CommentReport.d.ts +1 -0
  15. package/dist/types/CommentReportView.d.ts +4 -3
  16. package/dist/types/CommentSlimView.d.ts +22 -0
  17. package/dist/types/CommentView.d.ts +5 -3
  18. package/dist/types/Community.d.ts +24 -6
  19. package/dist/types/CommunityReport.d.ts +22 -0
  20. package/dist/types/CommunityReportId.d.ts +4 -0
  21. package/dist/types/CommunityReportView.d.ts +14 -0
  22. package/dist/types/CommunitySortType.d.ts +1 -1
  23. package/dist/types/CommunityView.d.ts +1 -2
  24. package/dist/types/CommunityVisibility.d.ts +1 -1
  25. package/dist/types/CreateCommentReport.d.ts +1 -0
  26. package/dist/types/CreatePostReport.d.ts +1 -0
  27. package/dist/types/CreateSite.d.ts +3 -2
  28. package/dist/types/DeleteImageParams.d.ts +0 -1
  29. package/dist/types/EditSite.d.ts +13 -8
  30. package/dist/types/FederationError.d.ts +2 -2
  31. package/dist/types/GetComments.d.ts +5 -0
  32. package/dist/types/GetCommentsSlimResponse.d.ts +7 -0
  33. package/dist/types/GetModlog.d.ts +27 -3
  34. package/dist/types/GetModlogResponse.d.ts +5 -0
  35. package/dist/types/GetPostResponse.d.ts +0 -2
  36. package/dist/types/GetPosts.d.ts +12 -2
  37. package/dist/types/GetPostsResponse.d.ts +2 -2
  38. package/dist/types/GetRandomCommunity.d.ts +1 -0
  39. package/dist/types/GetSiteResponse.d.ts +2 -2
  40. package/dist/types/GetUnreadCountResponse.d.ts +2 -4
  41. package/dist/types/ImageDetails.d.ts +1 -0
  42. package/dist/types/InboxCombinedView.d.ts +13 -0
  43. package/dist/types/InboxDataType.d.ts +4 -0
  44. package/dist/types/LemmyErrorType.d.ts +5 -5
  45. package/dist/types/ListCommunities.d.ts +5 -0
  46. package/dist/types/ListInbox.d.ts +11 -0
  47. package/dist/types/ListInboxResponse.d.ts +12 -0
  48. package/dist/types/ListPersonContent.d.ts +2 -2
  49. package/dist/types/ListPersonContentResponse.d.ts +5 -0
  50. package/dist/types/ListPersonSaved.d.ts +2 -2
  51. package/dist/types/ListPersonSavedResponse.d.ts +7 -2
  52. package/dist/types/ListReports.d.ts +20 -2
  53. package/dist/types/ListReportsResponse.d.ts +5 -0
  54. package/dist/types/LocalImage.d.ts +0 -1
  55. package/dist/types/LocalSite.d.ts +33 -0
  56. package/dist/types/LocalUser.d.ts +17 -0
  57. package/dist/types/LocalUserView.d.ts +0 -4
  58. package/dist/types/MarkPersonCommentMentionAsRead.d.ts +8 -0
  59. package/dist/types/MarkPersonPostMentionAsRead.d.ts +8 -0
  60. package/dist/types/ModAdd.d.ts +1 -1
  61. package/dist/types/ModAddCommunity.d.ts +1 -1
  62. package/dist/types/ModAddCommunityView.d.ts +1 -1
  63. package/dist/types/ModAddView.d.ts +1 -1
  64. package/dist/types/ModBan.d.ts +1 -1
  65. package/dist/types/ModBanFromCommunity.d.ts +1 -1
  66. package/dist/types/ModBanFromCommunityView.d.ts +1 -1
  67. package/dist/types/ModBanView.d.ts +1 -1
  68. package/dist/types/ModChangeCommunityVisibility.d.ts +12 -0
  69. package/dist/types/ModChangeCommunityVisibilityId.d.ts +1 -0
  70. package/dist/types/ModChangeCommunityVisibilityView.d.ts +11 -0
  71. package/dist/types/ModFeaturePost.d.ts +1 -1
  72. package/dist/types/ModFeaturePostView.d.ts +1 -1
  73. package/dist/types/ModLockPost.d.ts +1 -1
  74. package/dist/types/ModLockPostView.d.ts +1 -1
  75. package/dist/types/ModRemoveComment.d.ts +1 -1
  76. package/dist/types/ModRemoveCommentView.d.ts +1 -1
  77. package/dist/types/ModRemoveCommunity.d.ts +1 -1
  78. package/dist/types/ModRemovePost.d.ts +1 -1
  79. package/dist/types/ModRemovePostView.d.ts +1 -1
  80. package/dist/types/ModTransferCommunity.d.ts +1 -1
  81. package/dist/types/ModTransferCommunityView.d.ts +1 -1
  82. package/dist/types/ModlogActionType.d.ts +1 -1
  83. package/dist/types/ModlogCombinedView.d.ts +3 -3
  84. package/dist/types/PaginationCursor.d.ts +1 -4
  85. package/dist/types/Person.d.ts +4 -2
  86. package/dist/types/{PersonMention.d.ts → PersonCommentMention.d.ts} +3 -3
  87. package/dist/types/PersonCommentMentionId.d.ts +4 -0
  88. package/dist/types/{PersonMentionView.d.ts → PersonCommentMentionView.d.ts} +9 -7
  89. package/dist/types/PersonContentType.d.ts +1 -1
  90. package/dist/types/PersonPostMention.d.ts +13 -0
  91. package/dist/types/PersonPostMentionId.d.ts +4 -0
  92. package/dist/types/PersonPostMentionView.d.ts +34 -0
  93. package/dist/types/PersonSavedCombinedView.d.ts +7 -0
  94. package/dist/types/PersonView.d.ts +0 -2
  95. package/dist/types/Post.d.ts +10 -0
  96. package/dist/types/PostPaginationCursor.d.ts +7 -0
  97. package/dist/types/PostReport.d.ts +1 -0
  98. package/dist/types/PostReportView.d.ts +4 -3
  99. package/dist/types/PostSortType.d.ts +1 -1
  100. package/dist/types/PostView.d.ts +5 -3
  101. package/dist/types/PrivateMessage.d.ts +1 -0
  102. package/dist/types/ReportCombinedView.d.ts +4 -1
  103. package/dist/types/ReportType.d.ts +4 -0
  104. package/dist/types/ResendVerificationEmail.d.ts +7 -0
  105. package/dist/types/SaveUserSettings.d.ts +8 -0
  106. package/dist/types/Search.d.ts +12 -6
  107. package/dist/types/SearchCombinedView.d.ts +13 -0
  108. package/dist/types/SearchResponse.d.ts +7 -10
  109. package/dist/types/SearchSortType.d.ts +4 -0
  110. package/dist/types/SearchSortType.js +3 -0
  111. package/dist/types/Site.d.ts +2 -2
  112. package/dist/types/SiteView.d.ts +0 -2
  113. package/dist/types/SuccessResponse.d.ts +1 -1
  114. package/dist/types/UploadImageResponse.d.ts +0 -1
  115. package/package.json +9 -4
  116. package/dist/types/CommentAggregates.d.ts +0 -17
  117. package/dist/types/CommentReplyResponse.d.ts +0 -7
  118. package/dist/types/CommunityAggregates.d.ts +0 -28
  119. package/dist/types/GetPersonMentions.d.ts +0 -10
  120. package/dist/types/GetPersonMentionsResponse.d.ts +0 -7
  121. package/dist/types/GetPrivateMessages.d.ts +0 -10
  122. package/dist/types/GetReplies.d.ts +0 -10
  123. package/dist/types/GetRepliesResponse.d.ts +0 -7
  124. package/dist/types/LocalUserVoteDisplayMode.d.ts +0 -9
  125. package/dist/types/MarkPersonMentionAsRead.d.ts +0 -8
  126. package/dist/types/ModHideCommunity.d.ts +0 -14
  127. package/dist/types/ModHideCommunityId.d.ts +0 -1
  128. package/dist/types/ModHideCommunityView.d.ts +0 -11
  129. package/dist/types/ModlogCombinedPaginationCursor.d.ts +0 -4
  130. package/dist/types/PersonAggregates.d.ts +0 -9
  131. package/dist/types/PersonContentCombinedPaginationCursor.d.ts +0 -4
  132. package/dist/types/PersonMentionId.d.ts +0 -4
  133. package/dist/types/PersonMentionResponse.d.ts +0 -7
  134. package/dist/types/PersonSavedCombinedPaginationCursor.d.ts +0 -4
  135. package/dist/types/PostAggregates.d.ts +0 -18
  136. package/dist/types/PrivateMessagesResponse.d.ts +0 -7
  137. package/dist/types/ReportCombinedPaginationCursor.d.ts +0 -4
  138. package/dist/types/SiteAggregates.d.ts +0 -27
  139. /package/dist/types/{CommentAggregates.js → CommentSlimView.js} +0 -0
  140. /package/dist/types/{CommentReplyResponse.js → CommunityReport.js} +0 -0
  141. /package/dist/types/{LocalUserVoteDisplayMode.js → CommunityReportId.js} +0 -0
  142. /package/dist/types/{CommunityAggregates.js → CommunityReportView.js} +0 -0
  143. /package/dist/types/{GetPersonMentions.js → GetCommentsSlimResponse.js} +0 -0
  144. /package/dist/types/{GetPersonMentionsResponse.js → InboxCombinedView.js} +0 -0
  145. /package/dist/types/{ModHideCommunityId.js → InboxDataType.js} +0 -0
  146. /package/dist/types/{GetPrivateMessages.js → ListInbox.js} +0 -0
  147. /package/dist/types/{GetReplies.js → ListInboxResponse.js} +0 -0
  148. /package/dist/types/{GetRepliesResponse.js → MarkPersonCommentMentionAsRead.js} +0 -0
  149. /package/dist/types/{MarkPersonMentionAsRead.js → MarkPersonPostMentionAsRead.js} +0 -0
  150. /package/dist/types/{ModHideCommunity.js → ModChangeCommunityVisibility.js} +0 -0
  151. /package/dist/types/{ModlogCombinedPaginationCursor.js → ModChangeCommunityVisibilityId.js} +0 -0
  152. /package/dist/types/{ModHideCommunityView.js → ModChangeCommunityVisibilityView.js} +0 -0
  153. /package/dist/types/{PersonAggregates.js → PersonCommentMention.js} +0 -0
  154. /package/dist/types/{PersonContentCombinedPaginationCursor.js → PersonCommentMentionId.js} +0 -0
  155. /package/dist/types/{PersonMention.js → PersonCommentMentionView.js} +0 -0
  156. /package/dist/types/{PersonMentionResponse.js → PersonPostMention.js} +0 -0
  157. /package/dist/types/{PersonMentionId.js → PersonPostMentionId.js} +0 -0
  158. /package/dist/types/{PersonMentionView.js → PersonPostMentionView.js} +0 -0
  159. /package/dist/types/{PostAggregates.js → PersonSavedCombinedView.js} +0 -0
  160. /package/dist/types/{PersonSavedCombinedPaginationCursor.js → PostPaginationCursor.js} +0 -0
  161. /package/dist/types/{ReportCombinedPaginationCursor.js → ReportType.js} +0 -0
  162. /package/dist/types/{PrivateMessagesResponse.js → ResendVerificationEmail.js} +0 -0
  163. /package/dist/types/{SiteAggregates.js → SearchCombinedView.js} +0 -0
@@ -10,5 +10,5 @@ export type ModRemoveComment = {
10
10
  comment_id: CommentId;
11
11
  reason?: string;
12
12
  removed: boolean;
13
- when_: string;
13
+ published: string;
14
14
  };
@@ -9,7 +9,7 @@ import type { Post } from "./Post";
9
9
  export type ModRemoveCommentView = {
10
10
  mod_remove_comment: ModRemoveComment;
11
11
  moderator?: Person;
12
- modded_person: Person;
12
+ other_person: Person;
13
13
  comment: Comment;
14
14
  post: Post;
15
15
  community: Community;
@@ -10,5 +10,5 @@ export type ModRemoveCommunity = {
10
10
  community_id: CommunityId;
11
11
  reason?: string;
12
12
  removed: boolean;
13
- when_: string;
13
+ published: string;
14
14
  };
@@ -10,5 +10,5 @@ export type ModRemovePost = {
10
10
  post_id: PostId;
11
11
  reason?: string;
12
12
  removed: boolean;
13
- when_: string;
13
+ published: string;
14
14
  };
@@ -8,7 +8,7 @@ import type { Post } from "./Post";
8
8
  export type ModRemovePostView = {
9
9
  mod_remove_post: ModRemovePost;
10
10
  moderator?: Person;
11
- modded_person: Person;
11
+ other_person: Person;
12
12
  post: Post;
13
13
  community: Community;
14
14
  };
@@ -9,5 +9,5 @@ export type ModTransferCommunity = {
9
9
  mod_person_id: PersonId;
10
10
  other_person_id: PersonId;
11
11
  community_id: CommunityId;
12
- when_: string;
12
+ published: string;
13
13
  };
@@ -8,5 +8,5 @@ export type ModTransferCommunityView = {
8
8
  mod_transfer_community: ModTransferCommunity;
9
9
  moderator?: Person;
10
10
  community: Community;
11
- modded_person: Person;
11
+ other_person: Person;
12
12
  };
@@ -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" | "ModHideCommunity" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
4
+ export type ModlogActionType = "All" | "ModRemovePost" | "ModLockPost" | "ModFeaturePost" | "ModRemoveComment" | "ModRemoveCommunity" | "ModBanFromCommunity" | "ModAddCommunity" | "ModTransferCommunity" | "ModAdd" | "ModBan" | "ModChangeCommunityVisibility" | "AdminPurgePerson" | "AdminPurgeCommunity" | "AdminPurgePost" | "AdminPurgeComment" | "AdminBlockInstance" | "AdminAllowInstance";
@@ -8,8 +8,8 @@ import type { ModAddCommunityView } from "./ModAddCommunityView";
8
8
  import type { ModAddView } from "./ModAddView";
9
9
  import type { ModBanFromCommunityView } from "./ModBanFromCommunityView";
10
10
  import type { ModBanView } from "./ModBanView";
11
+ import type { ModChangeCommunityVisibilityView } from "./ModChangeCommunityVisibilityView";
11
12
  import type { ModFeaturePostView } from "./ModFeaturePostView";
12
- import type { ModHideCommunityView } from "./ModHideCommunityView";
13
13
  import type { ModLockPostView } from "./ModLockPostView";
14
14
  import type { ModRemoveCommentView } from "./ModRemoveCommentView";
15
15
  import type { ModRemoveCommunityView } from "./ModRemoveCommunityView";
@@ -38,8 +38,8 @@ export type ModlogCombinedView = ({
38
38
  } & ModBanFromCommunityView) | ({
39
39
  type_: "ModFeaturePost";
40
40
  } & ModFeaturePostView) | ({
41
- type_: "ModHideCommunity";
42
- } & ModHideCommunityView) | ({
41
+ type_: "ModChangeCommunityVisibility";
42
+ } & ModChangeCommunityVisibilityView) | ({
43
43
  type_: "ModLockPost";
44
44
  } & ModLockPostView) | ({
45
45
  type_: "ModRemoveComment";
@@ -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;
@@ -22,9 +22,9 @@ export type Person = {
22
22
  published: string;
23
23
  updated?: string;
24
24
  /**
25
- * The federated actor_id.
25
+ * The federated ap_id.
26
26
  */
27
- actor_id: DbUrl;
27
+ ap_id: DbUrl;
28
28
  /**
29
29
  * An optional bio, in markdown.
30
30
  */
@@ -54,4 +54,6 @@ export type Person = {
54
54
  */
55
55
  ban_expires?: string;
56
56
  instance_id: InstanceId;
57
+ post_count: number;
58
+ comment_count: number;
57
59
  };
@@ -1,11 +1,11 @@
1
1
  import type { CommentId } from "./CommentId";
2
+ import type { PersonCommentMentionId } from "./PersonCommentMentionId";
2
3
  import type { PersonId } from "./PersonId";
3
- import type { PersonMentionId } from "./PersonMentionId";
4
4
  /**
5
5
  * A person mention.
6
6
  */
7
- export type PersonMention = {
8
- id: PersonMentionId;
7
+ export type PersonCommentMention = {
8
+ id: PersonCommentMentionId;
9
9
  recipient_id: PersonId;
10
10
  comment_id: CommentId;
11
11
  read: boolean;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * The person comment mention id.
3
+ */
4
+ export type PersonCommentMentionId = number;
@@ -1,27 +1,29 @@
1
1
  import type { Comment } from "./Comment";
2
- import type { CommentAggregates } from "./CommentAggregates";
3
2
  import type { Community } from "./Community";
4
3
  import type { Person } from "./Person";
5
- import type { PersonMention } from "./PersonMention";
4
+ import type { PersonCommentMention } from "./PersonCommentMention";
6
5
  import type { Post } from "./Post";
7
6
  import type { SubscribedType } from "./SubscribedType";
8
7
  /**
9
- * A person mention view.
8
+ * A person comment mention view.
10
9
  */
11
- export type PersonMentionView = {
12
- person_mention: PersonMention;
10
+ export type PersonCommentMentionView = {
11
+ person_comment_mention: PersonCommentMention;
13
12
  comment: Comment;
14
13
  creator: Person;
15
14
  post: Post;
16
15
  community: Community;
17
16
  recipient: Person;
18
- counts: CommentAggregates;
19
17
  creator_banned_from_community: boolean;
20
18
  banned_from_community: boolean;
21
19
  creator_is_moderator: boolean;
22
20
  creator_is_admin: boolean;
23
21
  subscribed: SubscribedType;
24
- saved: boolean;
22
+ /**
23
+ * The time when the comment was saved.
24
+ */
25
+ saved?: string;
25
26
  creator_blocked: boolean;
26
27
  my_vote?: number;
28
+ can_mod: boolean;
27
29
  };
@@ -1,4 +1,4 @@
1
1
  /**
2
- * A list of possible types for the various modlog actions.
2
+ * A list of possible types for a person's content.
3
3
  */
4
4
  export type PersonContentType = "All" | "Comments" | "Posts";
@@ -0,0 +1,13 @@
1
+ import type { PersonId } from "./PersonId";
2
+ import type { PersonPostMentionId } from "./PersonPostMentionId";
3
+ import type { PostId } from "./PostId";
4
+ /**
5
+ * A person mention.
6
+ */
7
+ export type PersonPostMention = {
8
+ id: PersonPostMentionId;
9
+ recipient_id: PersonId;
10
+ post_id: PostId;
11
+ read: boolean;
12
+ published: string;
13
+ };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * The person post mention id.
3
+ */
4
+ export type PersonPostMentionId = number;
@@ -0,0 +1,34 @@
1
+ import type { Community } from "./Community";
2
+ import type { ImageDetails } from "./ImageDetails";
3
+ import type { Person } from "./Person";
4
+ import type { PersonPostMention } from "./PersonPostMention";
5
+ import type { Post } from "./Post";
6
+ import type { PostTags } from "./PostTags";
7
+ import type { SubscribedType } from "./SubscribedType";
8
+ /**
9
+ * A person post mention view.
10
+ */
11
+ export type PersonPostMentionView = {
12
+ person_post_mention: PersonPostMention;
13
+ post: Post;
14
+ creator: Person;
15
+ community: Community;
16
+ image_details?: ImageDetails;
17
+ recipient: Person;
18
+ creator_banned_from_community: boolean;
19
+ banned_from_community: boolean;
20
+ creator_is_moderator: boolean;
21
+ creator_is_admin: boolean;
22
+ subscribed: SubscribedType;
23
+ /**
24
+ * The time when the post was saved.
25
+ */
26
+ saved?: string;
27
+ read: boolean;
28
+ hidden: boolean;
29
+ creator_blocked: boolean;
30
+ my_vote?: number;
31
+ unread_comments: number;
32
+ post_tags: PostTags;
33
+ can_mod: boolean;
34
+ };
@@ -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);
@@ -1,10 +1,8 @@
1
1
  import type { Person } from "./Person";
2
- import type { PersonAggregates } from "./PersonAggregates";
3
2
  /**
4
3
  * A person view.
5
4
  */
6
5
  export type PersonView = {
7
6
  person: Person;
8
- counts: PersonAggregates;
9
7
  is_admin: boolean;
10
8
  };
@@ -79,4 +79,14 @@ export type Post = {
79
79
  * Time at which the post will be published. None means publish immediately.
80
80
  */
81
81
  scheduled_publish_time?: 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: string;
90
+ report_count: number;
91
+ unresolved_report_count: number;
82
92
  };
@@ -0,0 +1,7 @@
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
6
+ */
7
+ export type PostPaginationCursor = string;
@@ -26,4 +26,5 @@ export type PostReport = {
26
26
  resolver_id?: PersonId;
27
27
  published: string;
28
28
  updated?: string;
29
+ violates_instance_rules: boolean;
29
30
  };
@@ -1,7 +1,6 @@
1
1
  import type { Community } from "./Community";
2
2
  import type { Person } from "./Person";
3
3
  import type { Post } from "./Post";
4
- import type { PostAggregates } from "./PostAggregates";
5
4
  import type { PostReport } from "./PostReport";
6
5
  import type { SubscribedType } from "./SubscribedType";
7
6
  /**
@@ -17,12 +16,14 @@ export type PostReportView = {
17
16
  creator_is_moderator: boolean;
18
17
  creator_is_admin: boolean;
19
18
  subscribed: SubscribedType;
20
- saved: boolean;
19
+ /**
20
+ * The time when the post was saved.
21
+ */
22
+ saved?: string;
21
23
  read: boolean;
22
24
  hidden: boolean;
23
25
  creator_blocked: boolean;
24
26
  my_vote?: number;
25
27
  unread_comments: number;
26
- counts: PostAggregates;
27
28
  resolver?: Person;
28
29
  };
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * The post sort types. See here for descriptions: https://join-lemmy.org/docs/en/users/03-votes-and-ranking.html
3
3
  */
4
- export type PostSortType = "Active" | "Hot" | "New" | "Old" | "TopDay" | "TopWeek" | "TopMonth" | "TopYear" | "TopAll" | "MostComments" | "NewComments" | "TopHour" | "TopSixHour" | "TopTwelveHour" | "TopThreeMonths" | "TopSixMonths" | "TopNineMonths" | "Controversial" | "Scaled";
4
+ export type PostSortType = "Active" | "Hot" | "New" | "Old" | "Top" | "MostComments" | "NewComments" | "Controversial" | "Scaled";
@@ -2,7 +2,6 @@ import type { Community } from "./Community";
2
2
  import type { ImageDetails } from "./ImageDetails";
3
3
  import type { Person } from "./Person";
4
4
  import type { Post } from "./Post";
5
- import type { PostAggregates } from "./PostAggregates";
6
5
  import type { PostTags } from "./PostTags";
7
6
  import type { SubscribedType } from "./SubscribedType";
8
7
  /**
@@ -17,13 +16,16 @@ export type PostView = {
17
16
  banned_from_community: boolean;
18
17
  creator_is_moderator: boolean;
19
18
  creator_is_admin: boolean;
20
- counts: PostAggregates;
21
19
  subscribed: SubscribedType;
22
- saved: boolean;
20
+ /**
21
+ * The time when the post was saved.
22
+ */
23
+ saved?: string;
23
24
  read: boolean;
24
25
  hidden: boolean;
25
26
  creator_blocked: boolean;
26
27
  my_vote?: number;
27
28
  unread_comments: number;
28
29
  tags: PostTags;
30
+ can_mod: boolean;
29
31
  };
@@ -15,4 +15,5 @@ export type PrivateMessage = {
15
15
  updated?: string;
16
16
  ap_id: DbUrl;
17
17
  local: boolean;
18
+ removed: boolean;
18
19
  };
@@ -1,4 +1,5 @@
1
1
  import type { CommentReportView } from "./CommentReportView";
2
+ import type { CommunityReportView } from "./CommunityReportView";
2
3
  import type { PostReportView } from "./PostReportView";
3
4
  import type { PrivateMessageReportView } from "./PrivateMessageReportView";
4
5
  export type ReportCombinedView = ({
@@ -7,4 +8,6 @@ export type ReportCombinedView = ({
7
8
  type_: "Comment";
8
9
  } & CommentReportView) | ({
9
10
  type_: "PrivateMessage";
10
- } & PrivateMessageReportView);
11
+ } & PrivateMessageReportView) | ({
12
+ type_: "Community";
13
+ } & CommunityReportView);
@@ -0,0 +1,4 @@
1
+ /**
2
+ * A list of possible types for reports.
3
+ */
4
+ export type ReportType = "All" | "Posts" | "Comments" | "PrivateMessages" | "Communities";
@@ -0,0 +1,7 @@
1
+ import type { SensitiveString } from "./SensitiveString";
2
+ /**
3
+ * Make a request to resend your verification email.
4
+ */
5
+ export type ResendVerificationEmail = {
6
+ email: SensitiveString;
7
+ };
@@ -32,6 +32,10 @@ export type SaveUserSettings = {
32
32
  * The default post sort, usually "active"
33
33
  */
34
34
  default_post_sort_type?: PostSortType;
35
+ /**
36
+ * A default time range limit to apply to post sorts, in seconds. 0 means none.
37
+ */
38
+ default_post_time_range_seconds?: number;
35
39
  /**
36
40
  * The default comment sort, usually "hot"
37
41
  */
@@ -116,4 +120,8 @@ export type SaveUserSettings = {
116
120
  * Whether to automatically mark fetched posts as read.
117
121
  */
118
122
  auto_mark_fetched_posts_as_read?: boolean;
123
+ /**
124
+ * Whether to hide posts containing images/videos.
125
+ */
126
+ hide_media?: boolean;
119
127
  };
@@ -1,23 +1,29 @@
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 { PostSortType } from "./PostSortType";
5
+ import type { SearchSortType } from "./SearchSortType";
5
6
  import type { SearchType } from "./SearchType";
6
7
  /**
7
- * Searches the site, given a query string, and some optional filters.
8
+ * Searches the site, given a search term, and some optional filters.
8
9
  */
9
10
  export type Search = {
10
- q: string;
11
+ search_term?: string;
11
12
  community_id?: CommunityId;
12
13
  community_name?: string;
13
14
  creator_id?: PersonId;
14
15
  type_?: SearchType;
15
- sort?: PostSortType;
16
+ sort?: SearchSortType;
17
+ /**
18
+ * Filter to within a given time range, in seconds.
19
+ * IE 60 would give results for the past minute.
20
+ */
21
+ time_range_seconds?: number;
16
22
  listing_type?: ListingType;
17
- page?: number;
18
- limit?: number;
19
23
  title_only?: boolean;
20
24
  post_url_only?: boolean;
21
25
  liked_only?: boolean;
22
26
  disliked_only?: boolean;
27
+ page_cursor?: PaginationCursor;
28
+ page_back?: boolean;
23
29
  };
@@ -0,0 +1,13 @@
1
+ import type { CommentView } from "./CommentView";
2
+ import type { CommunityView } from "./CommunityView";
3
+ import type { PersonView } from "./PersonView";
4
+ import type { PostView } from "./PostView";
5
+ export type SearchCombinedView = ({
6
+ type_: "Post";
7
+ } & PostView) | ({
8
+ type_: "Comment";
9
+ } & CommentView) | ({
10
+ type_: "Community";
11
+ } & CommunityView) | ({
12
+ type_: "Person";
13
+ } & PersonView);
@@ -1,15 +1,12 @@
1
- import type { CommentView } from "./CommentView";
2
- import type { CommunityView } from "./CommunityView";
3
- import type { PersonView } from "./PersonView";
4
- import type { PostView } from "./PostView";
5
- import type { SearchType } from "./SearchType";
1
+ import type { PaginationCursor } from "./PaginationCursor";
2
+ import type { SearchCombinedView } from "./SearchCombinedView";
6
3
  /**
7
4
  * The search response, containing lists of the return type possibilities
8
5
  */
9
6
  export type SearchResponse = {
10
- type_: SearchType;
11
- comments: Array<CommentView>;
12
- posts: Array<PostView>;
13
- communities: Array<CommunityView>;
14
- users: Array<PersonView>;
7
+ results: Array<SearchCombinedView>;
8
+ /**
9
+ * the pagination cursor to use to fetch the next page
10
+ */
11
+ next_page?: PaginationCursor;
15
12
  };
@@ -0,0 +1,4 @@
1
+ /**
2
+ * The search sort types.
3
+ */
4
+ export type SearchSortType = "New" | "Top" | "Old";
@@ -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 });
@@ -26,9 +26,9 @@ export type Site = {
26
26
  */
27
27
  description?: string;
28
28
  /**
29
- * The federated actor_id.
29
+ * The federated ap_id.
30
30
  */
31
- actor_id: DbUrl;
31
+ ap_id: DbUrl;
32
32
  /**
33
33
  * The time the site was last refreshed.
34
34
  */
@@ -1,7 +1,6 @@
1
1
  import type { LocalSite } from "./LocalSite";
2
2
  import type { LocalSiteRateLimit } from "./LocalSiteRateLimit";
3
3
  import type { Site } from "./Site";
4
- import type { SiteAggregates } from "./SiteAggregates";
5
4
  /**
6
5
  * A site view.
7
6
  */
@@ -9,5 +8,4 @@ export type SiteView = {
9
8
  site: Site;
10
9
  local_site: LocalSite;
11
10
  local_site_rate_limit: LocalSiteRateLimit;
12
- counts: SiteAggregates;
13
11
  };
@@ -1,5 +1,5 @@
1
1
  /**
2
- * Saves settings for your user.
2
+ * A response that completes successfully.
3
3
  */
4
4
  export type SuccessResponse = {
5
5
  success: boolean;
@@ -1,5 +1,4 @@
1
1
  export type UploadImageResponse = {
2
2
  image_url: string;
3
3
  filename: string;
4
- delete_token: string;
5
4
  };
package/package.json CHANGED
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "name": "lemmy-js-client",
3
3
  "description": "A javascript / typescript client for Lemmy",
4
- "version": "0.20.0-modlog-combined.0",
5
- "author": "Dessalines <tyhou13@gmx.com>",
4
+ "version": "0.20.0-move-community-hidden.1",
5
+ "author": "Dessalines",
6
6
  "license": "AGPL-3.0",
7
7
  "main": "./dist/index.js",
8
8
  "files": [
@@ -12,13 +12,17 @@
12
12
  "build": "tsc",
13
13
  "docs": "typedoc src/index.ts",
14
14
  "lint": "tsc --noEmit && eslint --report-unused-disable-directives && prettier --check src",
15
- "prepare": "pnpm run build && husky"
15
+ "prepare": "pnpm run build && husky",
16
+ "tsoa": "tsoa spec-and-routes && tsc && redocly build-docs tsoa_build/swagger.json"
16
17
  },
17
18
  "repository": {
18
19
  "type": "git",
19
20
  "url": "git+https://github.com/LemmyNet/lemmy-js-client.git"
20
21
  },
21
22
  "devDependencies": {
23
+ "@eslint/js": "^9.20.0",
24
+ "@redocly/cli": "^1.27.2",
25
+ "@types/joi": "^17.2.3",
22
26
  "@types/node": "^22.7.4",
23
27
  "@typescript-eslint/eslint-plugin": "^8.7.0",
24
28
  "@typescript-eslint/parser": "^8.7.0",
@@ -31,11 +35,12 @@
31
35
  "prettier-plugin-organize-imports": "^4.0.0",
32
36
  "prettier-plugin-packagejson": "^2.5.1",
33
37
  "sortpack": "^2.4.0",
38
+ "tsoa": "^6.6.0",
34
39
  "typedoc": "^0.27.0",
35
40
  "typescript": "^5.5.4",
36
41
  "typescript-eslint": "^8.7.0"
37
42
  },
38
- "packageManager": "pnpm@9.15.3",
43
+ "packageManager": "pnpm@10.6.1",
39
44
  "types": "./dist/index.d.ts",
40
45
  "lint-staged": {
41
46
  "*.{ts,tsx,js}": [
@@ -1,17 +0,0 @@
1
- import type { CommentId } from "./CommentId";
2
- /**
3
- * Aggregate data for a comment.
4
- */
5
- export type CommentAggregates = {
6
- comment_id: CommentId;
7
- score: number;
8
- upvotes: number;
9
- downvotes: number;
10
- published: string;
11
- /**
12
- * The total number of children in this comment branch.
13
- */
14
- child_count: number;
15
- report_count: number;
16
- unresolved_report_count: number;
17
- };
@@ -1,7 +0,0 @@
1
- import type { CommentReplyView } from "./CommentReplyView";
2
- /**
3
- * The response for a comment reply action.
4
- */
5
- export type CommentReplyResponse = {
6
- comment_reply_view: CommentReplyView;
7
- };
@@ -1,28 +0,0 @@
1
- import type { CommunityId } from "./CommunityId";
2
- /**
3
- * Aggregate data for a community.
4
- */
5
- export type CommunityAggregates = {
6
- community_id: CommunityId;
7
- subscribers: number;
8
- posts: number;
9
- comments: number;
10
- published: string;
11
- /**
12
- * The number of users with any activity in the last day.
13
- */
14
- users_active_day: number;
15
- /**
16
- * The number of users with any activity in the last week.
17
- */
18
- users_active_week: number;
19
- /**
20
- * The number of users with any activity in the last month.
21
- */
22
- users_active_month: number;
23
- /**
24
- * The number of users with any activity in the last year.
25
- */
26
- users_active_half_year: number;
27
- subscribers_local: number;
28
- };