lemmy-js-client 1.0.0-instance-user-blocking.5 → 1.0.0-instance-user-blocking.7

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 (72) hide show
  1. package/dist/http.d.ts +15 -20
  2. package/dist/http.js +40 -45
  3. package/dist/index.d.ts +17 -16
  4. package/dist/other_types.d.ts +2 -2
  5. package/dist/types/CommentReportView.d.ts +3 -0
  6. package/dist/types/CommentResponse.d.ts +0 -2
  7. package/dist/types/CommunityActions.d.ts +2 -0
  8. package/dist/types/CommunityNotificationsMode.d.ts +4 -0
  9. package/dist/types/CommunityReportView.d.ts +4 -0
  10. package/dist/types/CreateCommunityTag.d.ts +3 -1
  11. package/dist/types/ExportDataResponse.d.ts +13 -0
  12. package/dist/types/FederationError.d.ts +3 -1
  13. package/dist/types/LemmyErrorType.d.ts +4 -18
  14. package/dist/types/{ListInbox.d.ts → ListNotifications.d.ts} +3 -3
  15. package/dist/types/{ListInboxResponse.d.ts → ListNotificationsResponse.d.ts} +3 -3
  16. package/dist/types/LocalUser.d.ts +1 -0
  17. package/dist/types/MarkNotificationAsRead.d.ts +8 -0
  18. package/dist/types/ModEditPost.d.ts +10 -0
  19. package/dist/types/Notification.d.ts +16 -0
  20. package/dist/types/NotificationData.d.ts +10 -0
  21. package/dist/types/NotificationDataType.d.ts +4 -0
  22. package/dist/types/NotificationId.d.ts +1 -0
  23. package/dist/types/NotificationTypes.d.ts +4 -0
  24. package/dist/types/NotificationView.d.ts +6 -0
  25. package/dist/types/PersonActions.d.ts +12 -0
  26. package/dist/types/PostActions.d.ts +2 -0
  27. package/dist/types/PostActions.js +0 -1
  28. package/dist/types/PostNotificationsMode.d.ts +4 -0
  29. package/dist/types/PostNotificationsMode.js +3 -0
  30. package/dist/types/PostOrCommentOrPrivateMessage.d.ts +10 -0
  31. package/dist/types/PostReportView.d.ts +3 -0
  32. package/dist/types/PrivateMessage.d.ts +0 -1
  33. package/dist/types/PrivateMessageReportView.d.ts +2 -0
  34. package/dist/types/SaveUserSettings.d.ts +4 -0
  35. package/dist/types/Tag.d.ts +6 -14
  36. package/dist/types/TagsView.d.ts +1 -1
  37. package/dist/types/UpdateCommunityNotifications.d.ts +9 -0
  38. package/dist/types/UpdateCommunityTag.d.ts +3 -2
  39. package/dist/types/UpdatePostNotifications.d.ts +9 -0
  40. package/dist/types/UserSettingsBackup.d.ts +31 -0
  41. package/dist/types/VoteView.d.ts +1 -0
  42. package/package.json +2 -2
  43. package/dist/types/CommentReply.d.ts +0 -13
  44. package/dist/types/CommentReplyId.d.ts +0 -4
  45. package/dist/types/CommentReplyView.d.ts +0 -31
  46. package/dist/types/InboxCombinedView.d.ts +0 -13
  47. package/dist/types/InboxDataType.d.ts +0 -4
  48. package/dist/types/MarkCommentReplyAsRead.d.ts +0 -8
  49. package/dist/types/MarkPersonCommentMentionAsRead.d.ts +0 -8
  50. package/dist/types/MarkPersonPostMentionAsRead.d.ts +0 -8
  51. package/dist/types/PersonCommentMention.d.ts +0 -13
  52. package/dist/types/PersonCommentMentionId.d.ts +0 -4
  53. package/dist/types/PersonCommentMentionView.d.ts +0 -29
  54. package/dist/types/PersonPostMention.d.ts +0 -13
  55. package/dist/types/PersonPostMentionId.d.ts +0 -4
  56. package/dist/types/PersonPostMentionView.d.ts +0 -31
  57. /package/dist/types/{CommentReplyId.js → CommunityNotificationsMode.js} +0 -0
  58. /package/dist/types/{CommentReply.js → ExportDataResponse.js} +0 -0
  59. /package/dist/types/{CommentReplyView.js → ListNotifications.js} +0 -0
  60. /package/dist/types/{InboxCombinedView.js → ListNotificationsResponse.js} +0 -0
  61. /package/dist/types/{ListInbox.js → MarkNotificationAsRead.js} +0 -0
  62. /package/dist/types/{ListInboxResponse.js → ModEditPost.js} +0 -0
  63. /package/dist/types/{MarkCommentReplyAsRead.js → Notification.js} +0 -0
  64. /package/dist/types/{MarkPersonCommentMentionAsRead.js → NotificationData.js} +0 -0
  65. /package/dist/types/{InboxDataType.js → NotificationDataType.js} +0 -0
  66. /package/dist/types/{PersonCommentMentionId.js → NotificationId.js} +0 -0
  67. /package/dist/types/{PersonPostMentionId.js → NotificationTypes.js} +0 -0
  68. /package/dist/types/{MarkPersonPostMentionAsRead.js → NotificationView.js} +0 -0
  69. /package/dist/types/{PersonCommentMention.js → PostOrCommentOrPrivateMessage.js} +0 -0
  70. /package/dist/types/{PersonCommentMentionView.js → UpdateCommunityNotifications.js} +0 -0
  71. /package/dist/types/{PersonPostMention.js → UpdatePostNotifications.js} +0 -0
  72. /package/dist/types/{PersonPostMentionView.js → UserSettingsBackup.js} +0 -0
@@ -0,0 +1,8 @@
1
+ import type { NotificationId } from "./NotificationId";
2
+ /**
3
+ * Mark a comment reply as read.
4
+ */
5
+ export type MarkNotificationAsRead = {
6
+ notification_id: NotificationId;
7
+ read: boolean;
8
+ };
@@ -0,0 +1,10 @@
1
+ import type { PostId } from "./PostId";
2
+ import type { TagId } from "./TagId";
3
+ /**
4
+ * Mods can change some metadata for posts
5
+ */
6
+ export type ModEditPost = {
7
+ post_id: PostId;
8
+ nsfw?: boolean;
9
+ tags?: Array<TagId>;
10
+ };
@@ -0,0 +1,16 @@
1
+ import type { CommentId } from "./CommentId";
2
+ import type { NotificationId } from "./NotificationId";
3
+ import type { NotificationTypes } from "./NotificationTypes";
4
+ import type { PersonId } from "./PersonId";
5
+ import type { PostId } from "./PostId";
6
+ import type { PrivateMessageId } from "./PrivateMessageId";
7
+ export type Notification = {
8
+ id: NotificationId;
9
+ recipient_id: PersonId;
10
+ comment_id?: CommentId;
11
+ read: boolean;
12
+ published_at: string;
13
+ kind: NotificationTypes;
14
+ post_id?: PostId;
15
+ private_message_id?: PrivateMessageId;
16
+ };
@@ -0,0 +1,10 @@
1
+ import type { CommentView } from "./CommentView";
2
+ import type { PostView } from "./PostView";
3
+ import type { PrivateMessageView } from "./PrivateMessageView";
4
+ export type NotificationData = ({
5
+ type_: "Comment";
6
+ } & CommentView) | ({
7
+ type_: "Post";
8
+ } & PostView) | ({
9
+ type_: "PrivateMessage";
10
+ } & PrivateMessageView);
@@ -0,0 +1,4 @@
1
+ /**
2
+ * A list of possible types for the inbox.
3
+ */
4
+ export type NotificationDataType = "All" | "Reply" | "Mention" | "PrivateMessage" | "Subscribed";
@@ -0,0 +1 @@
1
+ export type NotificationId = number;
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Types of notifications which can be received in inbox
3
+ */
4
+ export type NotificationTypes = "Mention" | "Reply" | "Subscribed" | "PrivateMessage";
@@ -0,0 +1,6 @@
1
+ import type { Notification } from "./Notification";
2
+ import type { NotificationData } from "./NotificationData";
3
+ export type NotificationView = {
4
+ notification: Notification;
5
+ data: NotificationData;
6
+ };
@@ -11,4 +11,16 @@ export type PersonActions = {
11
11
  * A note about the person.
12
12
  */
13
13
  note?: string;
14
+ /**
15
+ * When the person was voted on.
16
+ */
17
+ voted_at?: string;
18
+ /**
19
+ * A total of upvotes given to this person
20
+ */
21
+ upvotes?: number;
22
+ /**
23
+ * A total of downvotes given to this person
24
+ */
25
+ downvotes?: number;
14
26
  };
@@ -1,3 +1,4 @@
1
+ import type { PostNotificationsMode } from "./PostNotificationsMode";
1
2
  export type PostActions = {
2
3
  /**
3
4
  * When the post was read.
@@ -28,4 +29,5 @@ export type PostActions = {
28
29
  * When the post was hidden.
29
30
  */
30
31
  hidden_at?: string;
32
+ notifications?: PostNotificationsMode;
31
33
  };
@@ -1,3 +1,2 @@
1
1
  "use strict";
2
- // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
2
  Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Available settings for post notifications
3
+ */
4
+ export type PostNotificationsMode = "AllComments" | "RepliesAndMentions" | "Mute";
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import type { Comment } from "./Comment";
2
+ import type { Post } from "./Post";
3
+ import type { PrivateMessage } from "./PrivateMessage";
4
+ export type PostOrCommentOrPrivateMessage = {
5
+ Post: Post;
6
+ } | {
7
+ Comment: Comment;
8
+ } | {
9
+ PrivateMessage: PrivateMessage;
10
+ };
@@ -19,4 +19,7 @@ export type PostReportView = {
19
19
  person_actions?: PersonActions;
20
20
  resolver?: Person;
21
21
  creator_is_admin: boolean;
22
+ creator_is_moderator: boolean;
23
+ creator_banned: boolean;
24
+ creator_banned_from_community: boolean;
22
25
  };
@@ -10,7 +10,6 @@ export type PrivateMessage = {
10
10
  recipient_id: PersonId;
11
11
  content: string;
12
12
  deleted: boolean;
13
- read: boolean;
14
13
  published_at: string;
15
14
  updated_at?: string;
16
15
  ap_id: DbUrl;
@@ -10,4 +10,6 @@ export type PrivateMessageReportView = {
10
10
  creator: Person;
11
11
  private_message_creator: Person;
12
12
  resolver?: Person;
13
+ creator_is_admin: boolean;
14
+ creator_banned: boolean;
13
15
  };
@@ -126,4 +126,8 @@ export type SaveUserSettings = {
126
126
  * Whether to hide posts containing images/videos.
127
127
  */
128
128
  hide_media?: boolean;
129
+ /**
130
+ * Whether to show vote totals given to others.
131
+ */
132
+ show_person_votes?: boolean;
129
133
  };
@@ -2,25 +2,17 @@ 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 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.
5
+ * A tag that is created by community moderators, and assigned to posts by the creator
6
+ * or by mods.
17
7
  */
18
8
  export type Tag = {
19
9
  id: TagId;
20
10
  ap_id: DbUrl;
21
- display_name: string;
11
+ name: string;
12
+ display_name?: string;
13
+ description?: string;
22
14
  /**
23
- * the community that owns this tag
15
+ * The community that this tag belongs to
24
16
  */
25
17
  community_id: CommunityId;
26
18
  published_at: string;
@@ -1,5 +1,5 @@
1
1
  import type { Tag } from "./Tag";
2
2
  /**
3
- * we wrap this in a struct so we can implement FromSqlRow<Json> for it
3
+ * We wrap this in a struct so we can implement FromSqlRow<Json> for it
4
4
  */
5
5
  export type TagsView = Array<Tag>;
@@ -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
+ };
@@ -1,8 +1,9 @@
1
1
  import type { TagId } from "./TagId";
2
2
  /**
3
- * Update a community tag.
3
+ * Make changes to a community tag
4
4
  */
5
5
  export type UpdateCommunityTag = {
6
6
  tag_id: TagId;
7
- display_name: string;
7
+ display_name?: string;
8
+ description?: string;
8
9
  };
@@ -0,0 +1,9 @@
1
+ import type { PostId } from "./PostId";
2
+ import type { PostNotificationsMode } from "./PostNotificationsMode";
3
+ /**
4
+ * Change notification settings for a post
5
+ */
6
+ export type UpdatePostNotifications = {
7
+ post_id: PostId;
8
+ mode: PostNotificationsMode;
9
+ };
@@ -0,0 +1,31 @@
1
+ import type { LocalUser } from "./LocalUser";
2
+ /**
3
+ * Backup of user data. This struct should never be changed so that the data can be used as a
4
+ * long-term backup in case the instance goes down unexpectedly. All fields are optional to allow
5
+ * importing partial backups.
6
+ *
7
+ * This data should not be parsed by apps/clients, but directly downloaded as a file.
8
+ *
9
+ * Be careful with any changes to this struct, to avoid breaking changes which could prevent
10
+ * importing older backups.
11
+ */
12
+ export type UserSettingsBackup = {
13
+ display_name?: string;
14
+ bio?: string;
15
+ avatar?: string;
16
+ banner?: string;
17
+ matrix_id?: string;
18
+ bot_account?: boolean;
19
+ settings?: LocalUser;
20
+ followed_communities: Array<string>;
21
+ saved_posts: Array<string>;
22
+ saved_comments: Array<string>;
23
+ blocked_communities: Array<string>;
24
+ blocked_users: Array<string>;
25
+ /**
26
+ * Only kept for v0.19 compatibility
27
+ */
28
+ blocked_instances: Array<string>;
29
+ blocked_instances_communities: Array<string>;
30
+ blocked_instances_persons: Array<string>;
31
+ };
@@ -4,6 +4,7 @@ import type { Person } from "./Person";
4
4
  */
5
5
  export type VoteView = {
6
6
  creator: Person;
7
+ creator_banned: boolean;
7
8
  creator_banned_from_community: boolean;
8
9
  score: number;
9
10
  };
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-instance-user-blocking.5",
4
+ "version": "1.0.0-instance-user-blocking.7",
5
5
  "author": "Dessalines",
6
6
  "license": "AGPL-3.0",
7
7
  "main": "./dist/index.js",
@@ -43,7 +43,7 @@
43
43
  "typescript": "^5.5.4",
44
44
  "typescript-eslint": "^8.7.0"
45
45
  },
46
- "packageManager": "pnpm@10.12.1",
46
+ "packageManager": "pnpm@10.13.1",
47
47
  "types": "./dist/index.d.ts",
48
48
  "lint-staged": {
49
49
  "*.{ts,tsx,js}": [
@@ -1,13 +0,0 @@
1
- import type { CommentId } from "./CommentId";
2
- import type { CommentReplyId } from "./CommentReplyId";
3
- import type { PersonId } from "./PersonId";
4
- /**
5
- * A comment reply.
6
- */
7
- export type CommentReply = {
8
- id: CommentReplyId;
9
- recipient_id: PersonId;
10
- comment_id: CommentId;
11
- read: boolean;
12
- published_at: string;
13
- };
@@ -1,4 +0,0 @@
1
- /**
2
- * The comment reply id.
3
- */
4
- export type CommentReplyId = number;
@@ -1,31 +0,0 @@
1
- import type { Comment } from "./Comment";
2
- import type { CommentActions } from "./CommentActions";
3
- import type { CommentReply } from "./CommentReply";
4
- import type { Community } from "./Community";
5
- import type { CommunityActions } from "./CommunityActions";
6
- import type { InstanceActions } from "./InstanceActions";
7
- import type { Person } from "./Person";
8
- import type { PersonActions } from "./PersonActions";
9
- import type { Post } from "./Post";
10
- import type { TagsView } from "./TagsView";
11
- /**
12
- * A comment reply view.
13
- */
14
- export type CommentReplyView = {
15
- comment_reply: CommentReply;
16
- recipient: Person;
17
- comment: Comment;
18
- creator: Person;
19
- post: Post;
20
- community: Community;
21
- community_actions?: CommunityActions;
22
- comment_actions?: CommentActions;
23
- person_actions?: PersonActions;
24
- instance_actions?: InstanceActions;
25
- creator_is_admin: boolean;
26
- post_tags: TagsView;
27
- can_mod: boolean;
28
- creator_banned: boolean;
29
- creator_is_moderator: boolean;
30
- creator_banned_from_community: boolean;
31
- };
@@ -1,13 +0,0 @@
1
- import type { CommentReplyView } from "./CommentReplyView";
2
- import type { PersonCommentMentionView } from "./PersonCommentMentionView";
3
- import type { PersonPostMentionView } from "./PersonPostMentionView";
4
- import type { PrivateMessageView } from "./PrivateMessageView";
5
- export type InboxCombinedView = ({
6
- type_: "CommentReply";
7
- } & CommentReplyView) | ({
8
- type_: "CommentMention";
9
- } & PersonCommentMentionView) | ({
10
- type_: "PostMention";
11
- } & PersonPostMentionView) | ({
12
- type_: "PrivateMessage";
13
- } & PrivateMessageView);
@@ -1,4 +0,0 @@
1
- /**
2
- * A list of possible types for the inbox.
3
- */
4
- export type InboxDataType = "All" | "CommentReply" | "CommentMention" | "PostMention" | "PrivateMessage";
@@ -1,8 +0,0 @@
1
- import type { CommentReplyId } from "./CommentReplyId";
2
- /**
3
- * Mark a comment reply as read.
4
- */
5
- export type MarkCommentReplyAsRead = {
6
- comment_reply_id: CommentReplyId;
7
- read: boolean;
8
- };
@@ -1,8 +0,0 @@
1
- import type { PersonCommentMentionId } from "./PersonCommentMentionId";
2
- /**
3
- * Mark a person mention as read.
4
- */
5
- export type MarkPersonCommentMentionAsRead = {
6
- person_comment_mention_id: PersonCommentMentionId;
7
- read: boolean;
8
- };
@@ -1,8 +0,0 @@
1
- import type { PersonPostMentionId } from "./PersonPostMentionId";
2
- /**
3
- * Mark a person mention as read.
4
- */
5
- export type MarkPersonPostMentionAsRead = {
6
- person_post_mention_id: PersonPostMentionId;
7
- read: boolean;
8
- };
@@ -1,13 +0,0 @@
1
- import type { CommentId } from "./CommentId";
2
- import type { PersonCommentMentionId } from "./PersonCommentMentionId";
3
- import type { PersonId } from "./PersonId";
4
- /**
5
- * A person mention.
6
- */
7
- export type PersonCommentMention = {
8
- id: PersonCommentMentionId;
9
- recipient_id: PersonId;
10
- comment_id: CommentId;
11
- read: boolean;
12
- published_at: string;
13
- };
@@ -1,4 +0,0 @@
1
- /**
2
- * The person comment mention id.
3
- */
4
- export type PersonCommentMentionId = number;
@@ -1,29 +0,0 @@
1
- import type { Comment } from "./Comment";
2
- import type { CommentActions } from "./CommentActions";
3
- import type { Community } from "./Community";
4
- import type { CommunityActions } from "./CommunityActions";
5
- import type { InstanceActions } from "./InstanceActions";
6
- import type { Person } from "./Person";
7
- import type { PersonActions } from "./PersonActions";
8
- import type { PersonCommentMention } from "./PersonCommentMention";
9
- import type { Post } from "./Post";
10
- /**
11
- * A person comment mention view.
12
- */
13
- export type PersonCommentMentionView = {
14
- person_comment_mention: PersonCommentMention;
15
- recipient: Person;
16
- comment: Comment;
17
- creator: Person;
18
- post: Post;
19
- community: Community;
20
- community_actions?: CommunityActions;
21
- comment_actions?: CommentActions;
22
- person_actions?: PersonActions;
23
- instance_actions?: InstanceActions;
24
- creator_is_admin: boolean;
25
- can_mod: boolean;
26
- creator_banned: boolean;
27
- creator_is_moderator: boolean;
28
- creator_banned_from_community: boolean;
29
- };
@@ -1,13 +0,0 @@
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_at: string;
13
- };
@@ -1,4 +0,0 @@
1
- /**
2
- * The person post mention id.
3
- */
4
- export type PersonPostMentionId = number;
@@ -1,31 +0,0 @@
1
- import type { Community } from "./Community";
2
- import type { CommunityActions } from "./CommunityActions";
3
- import type { ImageDetails } from "./ImageDetails";
4
- import type { InstanceActions } from "./InstanceActions";
5
- import type { Person } from "./Person";
6
- import type { PersonActions } from "./PersonActions";
7
- import type { PersonPostMention } from "./PersonPostMention";
8
- import type { Post } from "./Post";
9
- import type { PostActions } from "./PostActions";
10
- import type { TagsView } from "./TagsView";
11
- /**
12
- * A person post mention view.
13
- */
14
- export type PersonPostMentionView = {
15
- person_post_mention: PersonPostMention;
16
- recipient: Person;
17
- post: Post;
18
- creator: Person;
19
- community: Community;
20
- image_details?: ImageDetails;
21
- community_actions?: CommunityActions;
22
- person_actions?: PersonActions;
23
- post_actions?: PostActions;
24
- instance_actions?: InstanceActions;
25
- post_tags: TagsView;
26
- creator_is_admin: boolean;
27
- can_mod: boolean;
28
- creator_banned: boolean;
29
- creator_is_moderator: boolean;
30
- creator_banned_from_community: boolean;
31
- };