lemmy-js-client 1.0.0-action-structs.0 → 1.0.0-add-liked.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 (142) hide show
  1. package/dist/http.d.ts +78 -26
  2. package/dist/http.js +1001 -892
  3. package/dist/index.d.ts +23 -6
  4. package/dist/other_types.d.ts +15 -0
  5. package/dist/types/AdminListUsers.d.ts +7 -0
  6. package/dist/types/AdminListUsersResponse.d.ts +10 -0
  7. package/dist/types/Comment.d.ts +5 -0
  8. package/dist/types/CommentActions.d.ts +9 -4
  9. package/dist/types/CommentActions.js +1 -0
  10. package/dist/types/CommentReplyView.d.ts +5 -0
  11. package/dist/types/CommentSlimView.d.ts +5 -0
  12. package/dist/types/CommentView.d.ts +5 -0
  13. package/dist/types/Community.d.ts +1 -4
  14. package/dist/types/CommunityActions.d.ts +18 -5
  15. package/dist/types/CommunityIdQuery.d.ts +8 -0
  16. package/dist/types/CommunityReportResponse.d.ts +7 -0
  17. package/dist/types/CommunityReportResponse.js +2 -0
  18. package/dist/types/CommunityView.d.ts +2 -0
  19. package/dist/types/CommunityVisibility.d.ts +1 -1
  20. package/dist/types/CreateCommunityReport.d.ts +8 -0
  21. package/dist/types/CreateCommunityReport.js +2 -0
  22. package/dist/types/CreateCommunityTag.d.ts +8 -0
  23. package/dist/types/CreateCommunityTag.js +2 -0
  24. package/dist/types/CreateSite.d.ts +1 -2
  25. package/dist/types/DeleteCommunityTag.d.ts +7 -0
  26. package/dist/types/DeleteCommunityTag.js +2 -0
  27. package/dist/types/EditPost.d.ts +1 -1
  28. package/dist/types/EditSite.d.ts +4 -9
  29. package/dist/types/GetComments.d.ts +3 -3
  30. package/dist/types/GetCommentsResponse.d.ts +3 -0
  31. package/dist/types/GetCommentsSlimResponse.d.ts +3 -0
  32. package/dist/types/GetModlog.d.ts +1 -0
  33. package/dist/types/GetModlogResponse.d.ts +1 -0
  34. package/dist/types/GetPosts.d.ts +3 -11
  35. package/dist/types/GetPostsResponse.d.ts +3 -2
  36. package/dist/types/GetSiteResponse.d.ts +2 -0
  37. package/dist/types/Instance.d.ts +11 -1
  38. package/dist/types/InstanceActions.d.ts +11 -4
  39. package/dist/types/InstanceActions.js +1 -0
  40. package/dist/types/InstanceWithFederationState.d.ts +9 -0
  41. package/dist/types/LemmyErrorType.d.ts +91 -24
  42. package/dist/types/LikeType.d.ts +4 -0
  43. package/dist/types/ListCommentLikes.d.ts +3 -1
  44. package/dist/types/ListCommentLikesResponse.d.ts +6 -0
  45. package/dist/types/ListCommunities.d.ts +3 -1
  46. package/dist/types/ListCommunitiesResponse.d.ts +6 -0
  47. package/dist/types/ListCommunityPendingFollows.d.ts +3 -1
  48. package/dist/types/ListCommunityPendingFollows.js +0 -1
  49. package/dist/types/ListCommunityPendingFollowsResponse.d.ts +6 -0
  50. package/dist/types/ListCustomEmojis.d.ts +0 -3
  51. package/dist/types/ListInbox.d.ts +1 -0
  52. package/dist/types/ListInboxResponse.d.ts +1 -0
  53. package/dist/types/ListMedia.d.ts +3 -1
  54. package/dist/types/ListMedia.js +0 -1
  55. package/dist/types/ListMediaResponse.d.ts +6 -0
  56. package/dist/types/ListPersonContent.d.ts +1 -0
  57. package/dist/types/ListPersonContentResponse.d.ts +1 -0
  58. package/dist/types/ListPersonHidden.d.ts +9 -0
  59. package/dist/types/ListPersonHidden.js +2 -0
  60. package/dist/types/ListPersonHiddenResponse.d.ts +13 -0
  61. package/dist/types/ListPersonHiddenResponse.js +2 -0
  62. package/dist/types/ListPersonLiked.d.ts +13 -0
  63. package/dist/types/ListPersonLiked.js +2 -0
  64. package/dist/types/ListPersonLikedResponse.d.ts +13 -0
  65. package/dist/types/ListPersonLikedResponse.js +2 -0
  66. package/dist/types/ListPersonRead.d.ts +9 -0
  67. package/dist/types/ListPersonRead.js +2 -0
  68. package/dist/types/ListPersonReadResponse.d.ts +13 -0
  69. package/dist/types/ListPersonReadResponse.js +2 -0
  70. package/dist/types/ListPersonSaved.d.ts +1 -0
  71. package/dist/types/ListPersonSavedResponse.d.ts +1 -0
  72. package/dist/types/ListPostLikes.d.ts +3 -1
  73. package/dist/types/ListPostLikesResponse.d.ts +6 -0
  74. package/dist/types/ListRegistrationApplications.d.ts +3 -1
  75. package/dist/types/ListRegistrationApplications.js +0 -1
  76. package/dist/types/ListRegistrationApplicationsResponse.d.ts +6 -0
  77. package/dist/types/ListReports.d.ts +1 -0
  78. package/dist/types/ListReportsResponse.d.ts +1 -0
  79. package/dist/types/ListTaglines.d.ts +3 -1
  80. package/dist/types/ListTaglines.js +0 -1
  81. package/dist/types/ListTaglinesResponse.d.ts +6 -0
  82. package/dist/types/LocalImage.d.ts +7 -2
  83. package/dist/types/LocalImageView.d.ts +2 -0
  84. package/dist/types/LocalSite.d.ts +6 -11
  85. package/dist/types/LocalUser.d.ts +2 -1
  86. package/dist/types/LocalUserView.d.ts +2 -0
  87. package/dist/types/LockPost.d.ts +1 -0
  88. package/dist/types/Login.d.ts +3 -0
  89. package/dist/types/ModBan.d.ts +2 -0
  90. package/dist/types/ModChangeCommunityVisibility.d.ts +11 -0
  91. package/dist/types/ModChangeCommunityVisibility.js +2 -0
  92. package/dist/types/ModChangeCommunityVisibilityId.d.ts +1 -0
  93. package/dist/types/ModChangeCommunityVisibilityView.d.ts +11 -0
  94. package/dist/types/ModChangeCommunityVisibilityView.js +2 -0
  95. package/dist/types/ModLockPost.d.ts +1 -0
  96. package/dist/types/ModlogActionType.d.ts +1 -1
  97. package/dist/types/ModlogCombinedView.d.ts +3 -3
  98. package/dist/types/MyUserInfo.d.ts +1 -0
  99. package/dist/types/PendingFollow.d.ts +2 -2
  100. package/dist/types/Person.d.ts +0 -8
  101. package/dist/types/PersonActions.d.ts +3 -5
  102. package/dist/types/PersonActions.js +1 -0
  103. package/dist/types/PersonCommentMentionView.d.ts +3 -0
  104. package/dist/types/PersonLikedCombinedView.d.ts +7 -0
  105. package/dist/types/PersonLikedCombinedView.js +2 -0
  106. package/dist/types/PersonPostMentionView.d.ts +5 -0
  107. package/dist/types/PersonView.d.ts +4 -0
  108. package/dist/types/PluginMetadata.d.ts +5 -0
  109. package/dist/types/Post.d.ts +5 -0
  110. package/dist/types/PostActions.d.ts +22 -4
  111. package/dist/types/PostActions.js +1 -0
  112. package/dist/types/PostView.d.ts +5 -0
  113. package/dist/types/ResolveCommunityReport.d.ts +8 -0
  114. package/dist/types/ResolveCommunityReport.js +2 -0
  115. package/dist/types/SaveUserSettings.d.ts +3 -1
  116. package/dist/types/Search.d.ts +5 -0
  117. package/dist/types/SearchResponse.d.ts +1 -0
  118. package/dist/types/Site.d.ts +2 -1
  119. package/dist/types/SiteResponse.d.ts +0 -4
  120. package/dist/types/SiteView.d.ts +2 -0
  121. package/dist/types/Tag.d.ts +8 -6
  122. package/dist/types/Tagline.d.ts +2 -1
  123. package/dist/types/Tagline.js +0 -1
  124. package/dist/types/TagsView.d.ts +5 -0
  125. package/dist/types/TagsView.js +2 -0
  126. package/dist/types/UpdateCommunityTag.d.ts +8 -0
  127. package/dist/types/UpdateCommunityTag.js +2 -0
  128. package/dist/types/VoteShow.d.ts +4 -0
  129. package/dist/types/VoteShow.js +3 -0
  130. package/package.json +8 -5
  131. package/dist/types/BannedPersonsResponse.d.ts +0 -7
  132. package/dist/types/ModHideCommunity.d.ts +0 -14
  133. package/dist/types/ModHideCommunityId.d.ts +0 -1
  134. package/dist/types/ModHideCommunityView.d.ts +0 -11
  135. package/dist/types/PostPaginationCursor.d.ts +0 -7
  136. package/dist/types/SubscribedType.d.ts +0 -4
  137. /package/dist/types/{BannedPersonsResponse.js → AdminListUsers.js} +0 -0
  138. /package/dist/types/{ModHideCommunity.js → AdminListUsersResponse.js} +0 -0
  139. /package/dist/types/{ModHideCommunityView.js → CommunityIdQuery.js} +0 -0
  140. /package/dist/types/{ModHideCommunityId.js → LikeType.js} +0 -0
  141. /package/dist/types/{PostPaginationCursor.js → ModChangeCommunityVisibilityId.js} +0 -0
  142. /package/dist/types/{SubscribedType.js → PluginMetadata.js} +0 -0
@@ -41,10 +41,6 @@ export type LocalSite = {
41
41
  * An optional legal disclaimer page.
42
42
  */
43
43
  legal_information?: string;
44
- /**
45
- * Whether to hide mod names on the modlog.
46
- */
47
- hide_modlog_mod_names: boolean;
48
44
  /**
49
45
  * Whether new applications email admins.
50
46
  */
@@ -113,15 +109,14 @@ export type LocalSite = {
113
109
  * What kind of comment downvotes your site allows.
114
110
  */
115
111
  comment_downvotes: FederationMode;
116
- /**
117
- * If this is true, users will never see the dialog asking to support Lemmy development with
118
- * donations.
119
- */
120
- disable_donation_dialog: boolean;
121
112
  /**
122
113
  * A default time range limit to apply to post sorts, in seconds.
123
114
  */
124
115
  default_post_time_range_seconds?: number;
116
+ /**
117
+ * Block NSFW content being created
118
+ */
119
+ disallow_nsfw_content: boolean;
125
120
  users: number;
126
121
  posts: number;
127
122
  comments: number;
@@ -143,7 +138,7 @@ export type LocalSite = {
143
138
  */
144
139
  users_active_half_year: number;
145
140
  /**
146
- * Block NSFW content being created
141
+ * Dont send email notifications to users for new replies, mentions etc
147
142
  */
148
- disallow_nsfw_content: boolean;
143
+ disable_email_notifications: boolean;
149
144
  };
@@ -5,6 +5,7 @@ import type { PersonId } from "./PersonId";
5
5
  import type { PostListingMode } from "./PostListingMode";
6
6
  import type { PostSortType } from "./PostSortType";
7
7
  import type { SensitiveString } from "./SensitiveString";
8
+ import type { VoteShow } from "./VoteShow";
8
9
  /**
9
10
  * A local user.
10
11
  */
@@ -99,6 +100,6 @@ export type LocalUser = {
99
100
  default_post_time_range_seconds?: number;
100
101
  show_score: boolean;
101
102
  show_upvotes: boolean;
102
- show_downvotes: boolean;
103
+ show_downvotes: VoteShow;
103
104
  show_upvote_percentage: boolean;
104
105
  };
@@ -1,3 +1,4 @@
1
+ import type { InstanceActions } from "./InstanceActions";
1
2
  import type { LocalUser } from "./LocalUser";
2
3
  import type { Person } from "./Person";
3
4
  /**
@@ -6,4 +7,5 @@ import type { Person } from "./Person";
6
7
  export type LocalUserView = {
7
8
  local_user: LocalUser;
8
9
  person: Person;
10
+ instance_actions?: InstanceActions;
9
11
  };
@@ -5,4 +5,5 @@ import type { PostId } from "./PostId";
5
5
  export type LockPost = {
6
6
  post_id: PostId;
7
7
  locked: boolean;
8
+ reason?: string;
8
9
  };
@@ -1,6 +1,9 @@
1
1
  import type { SensitiveString } from "./SensitiveString";
2
2
  /**
3
3
  * Logging into lemmy.
4
+ *
5
+ * Note: Banned users can still log in, to be able to do certain things like delete
6
+ * their account.
4
7
  */
5
8
  export type Login = {
6
9
  username_or_email: SensitiveString;
@@ -1,3 +1,4 @@
1
+ import type { InstanceId } from "./InstanceId";
1
2
  import type { ModBanId } from "./ModBanId";
2
3
  import type { PersonId } from "./PersonId";
3
4
  /**
@@ -11,4 +12,5 @@ export type ModBan = {
11
12
  banned: boolean;
12
13
  expires?: string;
13
14
  published: string;
15
+ instance_id: InstanceId;
14
16
  };
@@ -0,0 +1,11 @@
1
+ import type { CommunityId } from "./CommunityId";
2
+ import type { CommunityVisibility } from "./CommunityVisibility";
3
+ import type { ModChangeCommunityVisibilityId } from "./ModChangeCommunityVisibilityId";
4
+ import type { PersonId } from "./PersonId";
5
+ export type ModChangeCommunityVisibility = {
6
+ id: ModChangeCommunityVisibilityId;
7
+ community_id: CommunityId;
8
+ mod_person_id: PersonId;
9
+ published: string;
10
+ visibility: CommunityVisibility;
11
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export type ModChangeCommunityVisibilityId = number;
@@ -0,0 +1,11 @@
1
+ import type { Community } from "./Community";
2
+ import type { ModChangeCommunityVisibility } from "./ModChangeCommunityVisibility";
3
+ import type { Person } from "./Person";
4
+ /**
5
+ * When the visibility of a community is changed
6
+ */
7
+ export type ModChangeCommunityVisibilityView = {
8
+ mod_change_community_visibility: ModChangeCommunityVisibility;
9
+ moderator?: Person;
10
+ community: Community;
11
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -10,4 +10,5 @@ export type ModLockPost = {
10
10
  post_id: PostId;
11
11
  locked: boolean;
12
12
  published: string;
13
+ reason?: string;
13
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" | "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";
@@ -15,5 +15,6 @@ export type MyUserInfo = {
15
15
  community_blocks: Array<Community>;
16
16
  instance_blocks: Array<Instance>;
17
17
  person_blocks: Array<Person>;
18
+ keyword_blocks: Array<string>;
18
19
  discussion_languages: Array<LanguageId>;
19
20
  };
@@ -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,10 +15,6 @@ 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
18
  published: string;
23
19
  updated?: string;
24
20
  /**
@@ -49,10 +45,6 @@ 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;
57
49
  post_count: number;
58
50
  comment_count: number;
@@ -1,8 +1,6 @@
1
- import type { PersonId } from "./PersonId";
2
1
  export type PersonActions = {
3
- target_id: PersonId;
4
- person_id: PersonId;
5
- followed?: string;
6
- follow_pending?: boolean;
2
+ /**
3
+ * When the person was blocked.
4
+ */
7
5
  blocked?: string;
8
6
  };
@@ -1,2 +1,3 @@
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.
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -21,7 +21,10 @@ export type PersonCommentMentionView = {
21
21
  comment_actions?: CommentActions;
22
22
  person_actions?: PersonActions;
23
23
  instance_actions?: InstanceActions;
24
+ creator_home_instance_actions?: InstanceActions;
25
+ creator_local_instance_actions?: InstanceActions;
24
26
  creator_community_actions?: CommunityActions;
25
27
  creator_is_admin: boolean;
26
28
  can_mod: boolean;
29
+ creator_banned: boolean;
27
30
  };
@@ -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 });
@@ -7,6 +7,7 @@ import type { PersonActions } from "./PersonActions";
7
7
  import type { PersonPostMention } from "./PersonPostMention";
8
8
  import type { Post } from "./Post";
9
9
  import type { PostActions } from "./PostActions";
10
+ import type { TagsView } from "./TagsView";
10
11
  /**
11
12
  * A person post mention view.
12
13
  */
@@ -21,7 +22,11 @@ export type PersonPostMentionView = {
21
22
  person_actions?: PersonActions;
22
23
  post_actions?: PostActions;
23
24
  instance_actions?: InstanceActions;
25
+ creator_home_instance_actions?: InstanceActions;
26
+ creator_local_instance_actions?: InstanceActions;
24
27
  creator_community_actions?: CommunityActions;
28
+ post_tags: TagsView;
25
29
  creator_is_admin: boolean;
26
30
  can_mod: boolean;
31
+ creator_banned: boolean;
27
32
  };
@@ -1,3 +1,4 @@
1
+ import type { InstanceActions } from "./InstanceActions";
1
2
  import type { Person } from "./Person";
2
3
  /**
3
4
  * A person view.
@@ -5,4 +6,7 @@ import type { Person } from "./Person";
5
6
  export type PersonView = {
6
7
  person: Person;
7
8
  is_admin: boolean;
9
+ home_instance_actions?: InstanceActions;
10
+ local_instance_actions?: InstanceActions;
11
+ creator_banned: boolean;
8
12
  };
@@ -0,0 +1,5 @@
1
+ export type PluginMetadata = {
2
+ name: string;
3
+ url: string;
4
+ description: string;
5
+ };
@@ -89,4 +89,9 @@ export type Post = {
89
89
  newest_comment_time: string;
90
90
  report_count: number;
91
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;
92
97
  };
@@ -1,13 +1,31 @@
1
- import type { PersonId } from "./PersonId";
2
- import type { PostId } from "./PostId";
3
1
  export type PostActions = {
4
- post_id: PostId;
5
- person_id: PersonId;
2
+ /**
3
+ * When the post was read.
4
+ */
6
5
  read?: string;
6
+ /**
7
+ * When was the last time you read the comments.
8
+ */
7
9
  read_comments?: string;
10
+ /**
11
+ * The number of comments you read last. Subtract this from total comments to get an unread
12
+ * count.
13
+ */
8
14
  read_comments_amount?: number;
15
+ /**
16
+ * When the post was saved.
17
+ */
9
18
  saved?: string;
19
+ /**
20
+ * When the post was liked.
21
+ */
10
22
  liked?: string;
23
+ /**
24
+ * The like / score of the post.
25
+ */
11
26
  like_score?: number;
27
+ /**
28
+ * When the post was hidden.
29
+ */
12
30
  hidden?: string;
13
31
  };
@@ -1,2 +1,3 @@
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.
2
3
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -6,6 +6,7 @@ import type { Person } from "./Person";
6
6
  import type { PersonActions } from "./PersonActions";
7
7
  import type { Post } from "./Post";
8
8
  import type { PostActions } from "./PostActions";
9
+ import type { TagsView } from "./TagsView";
9
10
  /**
10
11
  * A post view.
11
12
  */
@@ -18,7 +19,11 @@ export type PostView = {
18
19
  person_actions?: PersonActions;
19
20
  post_actions?: PostActions;
20
21
  instance_actions?: InstanceActions;
22
+ creator_home_instance_actions?: InstanceActions;
23
+ creator_local_instance_actions?: InstanceActions;
21
24
  creator_community_actions?: CommunityActions;
22
25
  creator_is_admin: boolean;
26
+ tags: TagsView;
23
27
  can_mod: boolean;
28
+ creator_banned: boolean;
24
29
  };
@@ -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.
@@ -24,6 +24,11 @@ export type Search = {
24
24
  post_url_only?: boolean;
25
25
  liked_only?: boolean;
26
26
  disliked_only?: boolean;
27
+ /**
28
+ * If true, then show the nsfw posts (even if your user setting is to hide them)
29
+ */
30
+ show_nsfw?: boolean;
27
31
  page_cursor?: PaginationCursor;
28
32
  page_back?: boolean;
33
+ limit?: number;
29
34
  };
@@ -9,4 +9,5 @@ export type SearchResponse = {
9
9
  * the pagination cursor to use to fetch the next page
10
10
  */
11
11
  next_page?: PaginationCursor;
12
+ prev_page?: PaginationCursor;
12
13
  };
@@ -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;
@@ -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,3 +1,4 @@
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";
@@ -8,4 +9,5 @@ export type SiteView = {
8
9
  site: Site;
9
10
  local_site: LocalSite;
10
11
  local_site_rate_limit: LocalSiteRateLimit;
12
+ instance: Instance;
11
13
  };
@@ -7,16 +7,18 @@ import type { TagId } from "./TagId";
7
7
  * The assignment happens by the post creator and can be updated by the community moderators.
8
8
  *
9
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.
10
+ * displayed and filtered on. Currently, we only have community post tags, which is a tag that is
11
+ * created by the mods of a community, then assigned to posts by post authors as well as mods of a
12
+ * community, to categorize a post.
13
+ *
14
+ * In the future we may add more tag types, depending on the requirements, this will lead to either
15
+ * expansion of this table (community_id optional, addition of tag_type enum) or split of this
16
+ * table / creation of new tables.
15
17
  */
16
18
  export type Tag = {
17
19
  id: TagId;
18
20
  ap_id: DbUrl;
19
- name: string;
21
+ display_name: string;
20
22
  /**
21
23
  * the community that owns this tag
22
24
  */
@@ -1,8 +1,9 @@
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
8
  published: string;
8
9
  updated?: string;
@@ -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,8 @@
1
+ import type { TagId } from "./TagId";
2
+ /**
3
+ * Update a community tag.
4
+ */
5
+ export type UpdateCommunityTag = {
6
+ tag_id: TagId;
7
+ display_name: string;
8
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Lets you show votes for others only, show all votes, or hide all votes.
3
+ */
4
+ export type VoteShow = "Show" | "ShowForOthers" | "Hide";
@@ -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 });
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "lemmy-js-client",
3
3
  "description": "A javascript / typescript client for Lemmy",
4
- "version": "1.0.0-action-structs.0",
4
+ "version": "1.0.0-add-liked.0",
5
5
  "author": "Dessalines",
6
6
  "license": "AGPL-3.0",
7
7
  "main": "./dist/index.js",
@@ -19,28 +19,31 @@
19
19
  "type": "git",
20
20
  "url": "git+https://github.com/LemmyNet/lemmy-js-client.git"
21
21
  },
22
+ "dependencies": {
23
+ "@tsoa/runtime": "^6.6.0"
24
+ },
22
25
  "devDependencies": {
23
26
  "@eslint/js": "^9.20.0",
24
27
  "@redocly/cli": "^1.27.2",
25
- "@types/joi": "^17.2.3",
26
28
  "@types/node": "^22.7.4",
27
29
  "@typescript-eslint/eslint-plugin": "^8.7.0",
28
30
  "@typescript-eslint/parser": "^8.7.0",
29
31
  "eslint": "^9.11.1",
30
32
  "eslint-plugin-prettier": "^5.2.1",
31
33
  "husky": "^9.1.4",
32
- "lint-staged": "^15.2.7",
34
+ "joi": "^17.13.3",
35
+ "lint-staged": "^16.0.0",
33
36
  "prettier": "^3.3.3",
34
37
  "prettier-plugin-import-sort": "^0.0.7",
35
38
  "prettier-plugin-organize-imports": "^4.0.0",
36
39
  "prettier-plugin-packagejson": "^2.5.1",
37
40
  "sortpack": "^2.4.0",
38
41
  "tsoa": "^6.6.0",
39
- "typedoc": "^0.27.0",
42
+ "typedoc": "^0.28.0",
40
43
  "typescript": "^5.5.4",
41
44
  "typescript-eslint": "^8.7.0"
42
45
  },
43
- "packageManager": "pnpm@10.5.2",
46
+ "packageManager": "pnpm@10.11.1",
44
47
  "types": "./dist/index.d.ts",
45
48
  "lint-staged": {
46
49
  "*.{ts,tsx,js}": [
@@ -1,7 +0,0 @@
1
- import type { PersonView } from "./PersonView";
2
- /**
3
- * The list of banned persons.
4
- */
5
- export type BannedPersonsResponse = {
6
- banned: Array<PersonView>;
7
- };
@@ -1,14 +0,0 @@
1
- import type { CommunityId } from "./CommunityId";
2
- import type { ModHideCommunityId } from "./ModHideCommunityId";
3
- import type { PersonId } from "./PersonId";
4
- /**
5
- * When a community is hidden from public view.
6
- */
7
- export type ModHideCommunity = {
8
- id: ModHideCommunityId;
9
- community_id: CommunityId;
10
- mod_person_id: PersonId;
11
- published: string;
12
- reason?: string;
13
- hidden: boolean;
14
- };
@@ -1 +0,0 @@
1
- export type ModHideCommunityId = number;
@@ -1,11 +0,0 @@
1
- import type { Community } from "./Community";
2
- import type { ModHideCommunity } from "./ModHideCommunity";
3
- import type { Person } from "./Person";
4
- /**
5
- * When a community is hidden from public view.
6
- */
7
- export type ModHideCommunityView = {
8
- mod_hide_community: ModHideCommunity;
9
- admin?: Person;
10
- community: Community;
11
- };
@@ -1,7 +0,0 @@
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;