lemmy-js-client 1.0.0-rename-timestamp-to-at.3 → 1.0.0-rename-rate-limit-columns.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 (53) hide show
  1. package/dist/http.d.ts +24 -4
  2. package/dist/http.js +82 -11
  3. package/dist/index.d.ts +13 -0
  4. package/dist/other_types.d.ts +6 -0
  5. package/dist/types/CommentReplyView.d.ts +2 -3
  6. package/dist/types/CommentReportView.d.ts +0 -1
  7. package/dist/types/CommentSlimView.d.ts +2 -4
  8. package/dist/types/CommentView.d.ts +2 -3
  9. package/dist/types/CreateMultiCommunity.d.ts +5 -0
  10. package/dist/types/CreateMultiCommunity.js +3 -0
  11. package/dist/types/CreateOrDeleteMultiCommunityEntry.d.ts +6 -0
  12. package/dist/types/CreateOrDeleteMultiCommunityEntry.js +2 -0
  13. package/dist/types/CreateSite.d.ts +16 -12
  14. package/dist/types/EditSite.d.ts +22 -12
  15. package/dist/types/FollowMultiCommunity.d.ts +5 -0
  16. package/dist/types/FollowMultiCommunity.js +2 -0
  17. package/dist/types/GetMultiCommunity.d.ts +4 -0
  18. package/dist/types/GetMultiCommunity.js +2 -0
  19. package/dist/types/GetMultiCommunityResponse.d.ts +6 -0
  20. package/dist/types/GetMultiCommunityResponse.js +2 -0
  21. package/dist/types/GetPosts.d.ts +2 -0
  22. package/dist/types/LemmyErrorType.d.ts +8 -2
  23. package/dist/types/ListMultiCommunities.d.ts +5 -0
  24. package/dist/types/ListMultiCommunities.js +2 -0
  25. package/dist/types/ListMultiCommunitiesResponse.d.ts +4 -0
  26. package/dist/types/ListMultiCommunitiesResponse.js +2 -0
  27. package/dist/types/ListingType.d.ts +1 -1
  28. package/dist/types/LocalImage.d.ts +1 -1
  29. package/dist/types/LocalSite.d.ts +4 -0
  30. package/dist/types/LocalSiteRateLimit.d.ts +14 -14
  31. package/dist/types/LocalUserView.d.ts +1 -2
  32. package/dist/types/MultiCommunity.d.ts +17 -0
  33. package/dist/types/MultiCommunity.js +2 -0
  34. package/dist/types/MultiCommunityFollow.d.ts +8 -0
  35. package/dist/types/MultiCommunityFollow.js +2 -0
  36. package/dist/types/MultiCommunityId.d.ts +1 -0
  37. package/dist/types/MultiCommunityId.js +3 -0
  38. package/dist/types/MultiCommunityView.d.ts +6 -0
  39. package/dist/types/MultiCommunityView.js +2 -0
  40. package/dist/types/NotePerson.d.ts +10 -0
  41. package/dist/types/NotePerson.js +2 -0
  42. package/dist/types/PersonActions.d.ts +8 -0
  43. package/dist/types/PersonCommentMentionView.d.ts +2 -3
  44. package/dist/types/PersonPostMentionView.d.ts +2 -3
  45. package/dist/types/PersonView.d.ts +2 -3
  46. package/dist/types/PostReportView.d.ts +0 -1
  47. package/dist/types/PostView.d.ts +2 -3
  48. package/dist/types/Search.d.ts +1 -1
  49. package/dist/types/SearchCombinedView.d.ts +4 -1
  50. package/dist/types/SearchType.d.ts +1 -1
  51. package/dist/types/UpdateMultiCommunity.d.ts +7 -0
  52. package/dist/types/UpdateMultiCommunity.js +2 -0
  53. package/package.json +1 -1
package/dist/http.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Controller } from "@tsoa/runtime";
2
- import { AdminListUsersI, CommunityIdQueryI, DeleteImageParamsI, GetCommentI, GetCommentsI, GetCommunityI, GetCommunityPendingFollowsCountI, GetModlogI, GetPersonDetailsI, GetPostI, GetPostsI, GetRandomCommunityI, GetRegistrationApplicationI, GetReportCountI, GetSiteMetadataI, ListCommentLikesI, ListCommunitiesI, ListCommunityPendingFollowsI, ListCustomEmojisI, ListInboxI, ListMediaI, ListPersonContentI, ListPersonHiddenI, ListPersonLikedI, ListPersonReadI, ListPersonSavedI, ListPostLikesI, ListRegistrationApplicationsI, ListReportsI, ListTaglinesI, ResolveObjectI, SearchI, UploadImage } from "./other_types";
2
+ import { AdminListUsersI, CommunityIdQueryI, DeleteImageParamsI, GetCommentI, GetCommentsI, GetCommunityI, GetCommunityPendingFollowsCountI, GetModlogI, GetMultiCommunityI, GetPersonDetailsI, GetPostI, GetPostsI, GetRandomCommunityI, GetRegistrationApplicationI, GetReportCountI, GetSiteMetadataI, ListCommentLikesI, ListCommunitiesI, ListCommunityPendingFollowsI, ListCustomEmojisI, ListInboxI, ListMediaI, ListMultiCommunitiesI, ListPersonContentI, ListPersonHiddenI, ListPersonLikedI, ListPersonReadI, ListPersonSavedI, ListPostLikesI, ListRegistrationApplicationsI, ListReportsI, ListTaglinesI, ResolveObjectI, SearchI, UploadImage } from "./other_types";
3
3
  import { AddAdmin } from "./types/AddAdmin";
4
4
  import { AddAdminResponse } from "./types/AddAdminResponse";
5
5
  import { AddModToCommunity } from "./types/AddModToCommunity";
@@ -137,7 +137,13 @@ import { ResendVerificationEmail } from "./types/ResendVerificationEmail";
137
137
  import { ListPersonReadResponse } from "./types/ListPersonReadResponse";
138
138
  import { ListPersonHiddenResponse } from "./types/ListPersonHiddenResponse";
139
139
  import { CommunityIdQuery } from "./types/CommunityIdQuery";
140
+ import { CreateMultiCommunity } from "./types/CreateMultiCommunity";
141
+ import { UpdateMultiCommunity } from "./types/UpdateMultiCommunity";
142
+ import { ListMultiCommunitiesResponse } from "./types/ListMultiCommunitiesResponse";
140
143
  import { AdminListUsersResponse } from "./types/AdminListUsersResponse";
144
+ import { CreateOrDeleteMultiCommunityEntry } from "./types/CreateOrDeleteMultiCommunityEntry";
145
+ import { GetMultiCommunityResponse } from "./types/GetMultiCommunityResponse";
146
+ import { FollowMultiCommunity } from "./types/FollowMultiCommunity";
141
147
  import { ListLoginsResponse } from "./types/ListLoginsResponse";
142
148
  import { ListPersonLikedResponse } from "./types/ListPersonLikedResponse";
143
149
  type RequestOptions = Pick<RequestInit, "signal">;
@@ -737,10 +743,15 @@ export declare class LemmyHttp extends Controller {
737
743
  imageHealth(options?: RequestOptions): Promise<SuccessResponse>;
738
744
  /**
739
745
  * Mark donation dialog as shown, so it isn't displayed anymore.
740
- *
741
- * `HTTP.POST /user/donation_dialog_shown`
742
746
  */
743
- donation_dialog_shown(options?: RequestOptions): Promise<SuccessResponse>;
747
+ donationDialogShown(options?: RequestOptions): Promise<SuccessResponse>;
748
+ createMultiCommunity(form: CreateMultiCommunity, options?: RequestOptions): Promise<GetMultiCommunityResponse>;
749
+ updateMultiCommunity(form: UpdateMultiCommunity, options?: RequestOptions): Promise<SuccessResponse>;
750
+ getMultiCommunity(form: GetMultiCommunityI, options?: RequestOptions): Promise<GetMultiCommunityResponse>;
751
+ createMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry, options?: RequestOptions): Promise<SuccessResponse>;
752
+ deleteMultiCommunityEntry(form: CreateOrDeleteMultiCommunityEntry, options?: RequestOptions): Promise<SuccessResponse>;
753
+ listMultiCommunities(form: ListMultiCommunitiesI, options?: RequestOptions): Promise<ListMultiCommunitiesResponse>;
754
+ followMultiCommunity(form: FollowMultiCommunity, options?: RequestOptions): Promise<SuccessResponse>;
744
755
  /**
745
756
  * Set the headers (can be used to set the auth header)
746
757
  */
@@ -748,4 +759,13 @@ export declare class LemmyHttp extends Controller {
748
759
  [key: string]: string;
749
760
  }): void;
750
761
  }
762
+ /**
763
+ * A Lemmy error type.
764
+ *
765
+ * The name is the i18n translatable error code.
766
+ * The msg is either an empty string, or extra non-translatable info.
767
+ */
768
+ export declare class LemmyError extends Error {
769
+ constructor(name: string, msg?: string);
770
+ }
751
771
  export {};
package/dist/http.js CHANGED
@@ -21,7 +21,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
21
21
  };
22
22
  var _LemmyHttp_instances, _LemmyHttp_apiUrl, _LemmyHttp_headers, _LemmyHttp_fetchFunction, _LemmyHttp_buildFullUrl, _LemmyHttp_upload, _LemmyHttp_uploadWithQuery, _LemmyHttp_wrapper;
23
23
  Object.defineProperty(exports, "__esModule", { value: true });
24
- exports.LemmyHttp = void 0;
24
+ exports.LemmyError = exports.LemmyHttp = void 0;
25
25
  const runtime_1 = require("@tsoa/runtime");
26
26
  const other_types_1 = require("./other_types");
27
27
  var HttpType;
@@ -918,12 +918,31 @@ let LemmyHttp = class LemmyHttp extends runtime_1.Controller {
918
918
  }
919
919
  /**
920
920
  * Mark donation dialog as shown, so it isn't displayed anymore.
921
- *
922
- * `HTTP.POST /user/donation_dialog_shown`
923
921
  */
924
- donation_dialog_shown(options) {
922
+ donationDialogShown(options) {
925
923
  return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Post, "/user/donation_dialog_shown", {}, options);
926
924
  }
925
+ createMultiCommunity(form, options) {
926
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Post, "/multi_community", form, options);
927
+ }
928
+ updateMultiCommunity(form, options) {
929
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Put, "/multi_community", form, options);
930
+ }
931
+ getMultiCommunity(form, options) {
932
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Get, "/multi_community", form, options);
933
+ }
934
+ createMultiCommunityEntry(form, options) {
935
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Post, "/multi_community/entry", form, options);
936
+ }
937
+ deleteMultiCommunityEntry(form, options) {
938
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Delete, "/multi_community/entry", form, options);
939
+ }
940
+ listMultiCommunities(form, options) {
941
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Get, "/multi_community/list", form, options);
942
+ }
943
+ followMultiCommunity(form, options) {
944
+ return __classPrivateFieldGet(this, _LemmyHttp_instances, "m", _LemmyHttp_wrapper).call(this, HttpType.Post, "/multi_community/follow", form, options);
945
+ }
927
946
  /**
928
947
  * Set the headers (can be used to set the auth header)
929
948
  */
@@ -978,14 +997,10 @@ _LemmyHttp_wrapper = async function _LemmyHttp_wrapper(type_, endpoint, form, op
978
997
  json = await response.json();
979
998
  }
980
999
  catch {
981
- throw new Error(response.statusText);
1000
+ throw new LemmyError(response.statusText);
982
1001
  }
983
1002
  if (!response.ok) {
984
- let err = {
985
- name: json.error ?? response.statusText,
986
- // Leave an empty error message if undefined
987
- message: json.message ?? "",
988
- };
1003
+ let err = new LemmyError(json.error ?? response.statusText, json.message);
989
1004
  throw err;
990
1005
  }
991
1006
  else {
@@ -1981,8 +1996,49 @@ __decorate([
1981
1996
  __param(0, (0, runtime_1.Inject)())
1982
1997
  ], LemmyHttp.prototype, "imageHealth", null);
1983
1998
  __decorate([
1999
+ (0, runtime_1.Security)("bearerAuth"),
2000
+ (0, runtime_1.Post)("/user/donation_dialog_shown"),
1984
2001
  __param(0, (0, runtime_1.Inject)())
1985
- ], LemmyHttp.prototype, "donation_dialog_shown", null);
2002
+ ], LemmyHttp.prototype, "donationDialogShown", null);
2003
+ __decorate([
2004
+ (0, runtime_1.Security)("bearerAuth"),
2005
+ (0, runtime_1.Post)("/multi_community"),
2006
+ __param(0, (0, runtime_1.Body)()),
2007
+ __param(1, (0, runtime_1.Inject)())
2008
+ ], LemmyHttp.prototype, "createMultiCommunity", null);
2009
+ __decorate([
2010
+ (0, runtime_1.Security)("bearerAuth"),
2011
+ (0, runtime_1.Put)("/multi_community"),
2012
+ __param(0, (0, runtime_1.Body)()),
2013
+ __param(1, (0, runtime_1.Inject)())
2014
+ ], LemmyHttp.prototype, "updateMultiCommunity", null);
2015
+ __decorate([
2016
+ (0, runtime_1.Get)("/multi_community"),
2017
+ __param(0, (0, runtime_1.Queries)()),
2018
+ __param(1, (0, runtime_1.Inject)())
2019
+ ], LemmyHttp.prototype, "getMultiCommunity", null);
2020
+ __decorate([
2021
+ (0, runtime_1.Security)("bearerAuth"),
2022
+ (0, runtime_1.Post)("/multi_community/entry"),
2023
+ __param(0, (0, runtime_1.Body)()),
2024
+ __param(1, (0, runtime_1.Inject)())
2025
+ ], LemmyHttp.prototype, "createMultiCommunityEntry", null);
2026
+ __decorate([
2027
+ (0, runtime_1.Security)("bearerAuth"),
2028
+ (0, runtime_1.Delete)("/multi_community/entry"),
2029
+ __param(0, (0, runtime_1.Body)()),
2030
+ __param(1, (0, runtime_1.Inject)())
2031
+ ], LemmyHttp.prototype, "deleteMultiCommunityEntry", null);
2032
+ __decorate([
2033
+ (0, runtime_1.Get)("/multi_community/list"),
2034
+ __param(0, (0, runtime_1.Queries)()),
2035
+ __param(1, (0, runtime_1.Inject)())
2036
+ ], LemmyHttp.prototype, "listMultiCommunities", null);
2037
+ __decorate([
2038
+ (0, runtime_1.Post)("/multi_community/follow"),
2039
+ __param(0, (0, runtime_1.Body)()),
2040
+ __param(1, (0, runtime_1.Inject)())
2041
+ ], LemmyHttp.prototype, "followMultiCommunity", null);
1986
2042
  exports.LemmyHttp = LemmyHttp = __decorate([
1987
2043
  (0, runtime_1.Route)("api/v4")
1988
2044
  ], LemmyHttp);
@@ -2003,3 +2059,18 @@ function createFormData(image) {
2003
2059
  }
2004
2060
  return formData;
2005
2061
  }
2062
+ /**
2063
+ * A Lemmy error type.
2064
+ *
2065
+ * The name is the i18n translatable error code.
2066
+ * The msg is either an empty string, or extra non-translatable info.
2067
+ */
2068
+ class LemmyError extends Error {
2069
+ constructor(name, msg) {
2070
+ super(msg ?? "");
2071
+ this.name = name;
2072
+ // Set the prototype explicitly.
2073
+ Object.setPrototypeOf(this, LemmyError.prototype);
2074
+ }
2075
+ }
2076
+ exports.LemmyError = LemmyError;
package/dist/index.d.ts CHANGED
@@ -76,7 +76,9 @@ export { CreateCommunity } from "./types/CreateCommunity";
76
76
  export { CreateCommunityReport } from "./types/CreateCommunityReport";
77
77
  export { CreateCommunityTag } from "./types/CreateCommunityTag";
78
78
  export { CreateCustomEmoji } from "./types/CreateCustomEmoji";
79
+ export { CreateMultiCommunity } from "./types/CreateMultiCommunity";
79
80
  export { CreateOAuthProvider } from "./types/CreateOAuthProvider";
81
+ export { CreateOrDeleteMultiCommunityEntry } from "./types/CreateOrDeleteMultiCommunityEntry";
80
82
  export { CreatePost } from "./types/CreatePost";
81
83
  export { CreatePostLike } from "./types/CreatePostLike";
82
84
  export { CreatePostReport } from "./types/CreatePostReport";
@@ -114,6 +116,7 @@ export { FederationBlockList } from "./types/FederationBlockList";
114
116
  export { FederationError } from "./types/FederationError";
115
117
  export { FederationMode } from "./types/FederationMode";
116
118
  export { FollowCommunity } from "./types/FollowCommunity";
119
+ export { FollowMultiCommunity } from "./types/FollowMultiCommunity";
117
120
  export { GenerateTotpSecretResponse } from "./types/GenerateTotpSecretResponse";
118
121
  export { GetCaptchaResponse } from "./types/GetCaptchaResponse";
119
122
  export { GetComment } from "./types/GetComment";
@@ -127,6 +130,8 @@ export { GetCommunityResponse } from "./types/GetCommunityResponse";
127
130
  export { GetFederatedInstancesResponse } from "./types/GetFederatedInstancesResponse";
128
131
  export { GetModlog } from "./types/GetModlog";
129
132
  export { GetModlogResponse } from "./types/GetModlogResponse";
133
+ export { GetMultiCommunity } from "./types/GetMultiCommunity";
134
+ export { GetMultiCommunityResponse } from "./types/GetMultiCommunityResponse";
130
135
  export { GetPersonDetails } from "./types/GetPersonDetails";
131
136
  export { GetPersonDetailsResponse } from "./types/GetPersonDetailsResponse";
132
137
  export { GetPost } from "./types/GetPost";
@@ -171,6 +176,8 @@ export { ListInboxResponse } from "./types/ListInboxResponse";
171
176
  export { ListLoginsResponse } from "./types/ListLoginsResponse";
172
177
  export { ListMedia } from "./types/ListMedia";
173
178
  export { ListMediaResponse } from "./types/ListMediaResponse";
179
+ export { ListMultiCommunities } from "./types/ListMultiCommunities";
180
+ export { ListMultiCommunitiesResponse } from "./types/ListMultiCommunitiesResponse";
174
181
  export { ListPersonContent } from "./types/ListPersonContent";
175
182
  export { ListPersonContentResponse } from "./types/ListPersonContentResponse";
176
183
  export { ListPersonHidden } from "./types/ListPersonHidden";
@@ -244,7 +251,12 @@ export { ModTransferCommunityId } from "./types/ModTransferCommunityId";
244
251
  export { ModTransferCommunityView } from "./types/ModTransferCommunityView";
245
252
  export { ModlogActionType } from "./types/ModlogActionType";
246
253
  export { ModlogCombinedView } from "./types/ModlogCombinedView";
254
+ export { MultiCommunity } from "./types/MultiCommunity";
255
+ export { MultiCommunityFollow } from "./types/MultiCommunityFollow";
256
+ export { MultiCommunityId } from "./types/MultiCommunityId";
257
+ export { MultiCommunityView } from "./types/MultiCommunityView";
247
258
  export { MyUserInfo } from "./types/MyUserInfo";
259
+ export { NotePerson } from "./types/NotePerson";
248
260
  export { OAuthAccount } from "./types/OAuthAccount";
249
261
  export { OAuthProvider } from "./types/OAuthProvider";
250
262
  export { OAuthProviderId } from "./types/OAuthProviderId";
@@ -333,6 +345,7 @@ export { TaglineResponse } from "./types/TaglineResponse";
333
345
  export { TagsView } from "./types/TagsView";
334
346
  export { TransferCommunity } from "./types/TransferCommunity";
335
347
  export { UpdateCommunityTag } from "./types/UpdateCommunityTag";
348
+ export { UpdateMultiCommunity } from "./types/UpdateMultiCommunity";
336
349
  export { UpdateTagline } from "./types/UpdateTagline";
337
350
  export { UpdateTotp } from "./types/UpdateTotp";
338
351
  export { UpdateTotpResponse } from "./types/UpdateTotpResponse";
@@ -6,6 +6,7 @@ import { GetComments } from "./types/GetComments";
6
6
  import { GetCommunity } from "./types/GetCommunity";
7
7
  import { GetCommunityPendingFollowsCount } from "./types/GetCommunityPendingFollowsCount";
8
8
  import { GetModlog } from "./types/GetModlog";
9
+ import { GetMultiCommunity } from "./types/GetMultiCommunity";
9
10
  import { GetPersonDetails } from "./types/GetPersonDetails";
10
11
  import { GetPost } from "./types/GetPost";
11
12
  import { GetPosts } from "./types/GetPosts";
@@ -19,6 +20,7 @@ import { ListCommunityPendingFollows } from "./types/ListCommunityPendingFollows
19
20
  import { ListCustomEmojis } from "./types/ListCustomEmojis";
20
21
  import { ListInbox } from "./types/ListInbox";
21
22
  import { ListMedia } from "./types/ListMedia";
23
+ import { ListMultiCommunities } from "./types/ListMultiCommunities";
22
24
  import { ListPersonContent } from "./types/ListPersonContent";
23
25
  import { ListPersonHidden } from "./types/ListPersonHidden";
24
26
  import { ListPersonLiked } from "./types/ListPersonLiked";
@@ -98,3 +100,7 @@ export interface AdminListUsersI extends AdminListUsers {
98
100
  }
99
101
  export interface CommunityIdQueryI extends CommunityIdQuery {
100
102
  }
103
+ export interface ListMultiCommunitiesI extends ListMultiCommunities {
104
+ }
105
+ export interface GetMultiCommunityI extends GetMultiCommunity {
106
+ }
@@ -22,11 +22,10 @@ export type CommentReplyView = {
22
22
  comment_actions?: CommentActions;
23
23
  person_actions?: PersonActions;
24
24
  instance_actions?: InstanceActions;
25
- creator_home_instance_actions?: InstanceActions;
26
- creator_local_instance_actions?: InstanceActions;
27
- creator_community_actions?: CommunityActions;
28
25
  creator_is_admin: boolean;
29
26
  post_tags: TagsView;
30
27
  can_mod: boolean;
31
28
  creator_banned: boolean;
29
+ creator_is_moderator: boolean;
30
+ creator_banned_from_community: boolean;
32
31
  };
@@ -18,7 +18,6 @@ export type CommentReportView = {
18
18
  comment_creator: Person;
19
19
  comment_actions?: CommentActions;
20
20
  resolver?: Person;
21
- creator_community_actions?: CommunityActions;
22
21
  person_actions?: PersonActions;
23
22
  community_actions?: CommunityActions;
24
23
  creator_is_admin: boolean;
@@ -1,6 +1,5 @@
1
1
  import type { Comment } from "./Comment";
2
2
  import type { CommentActions } from "./CommentActions";
3
- import type { CommunityActions } from "./CommunityActions";
4
3
  import type { InstanceActions } from "./InstanceActions";
5
4
  import type { Person } from "./Person";
6
5
  import type { PersonActions } from "./PersonActions";
@@ -12,11 +11,10 @@ export type CommentSlimView = {
12
11
  creator: Person;
13
12
  comment_actions?: CommentActions;
14
13
  person_actions?: PersonActions;
15
- creator_community_actions?: CommunityActions;
16
14
  instance_actions?: InstanceActions;
17
- creator_home_instance_actions?: InstanceActions;
18
- creator_local_instance_actions?: InstanceActions;
19
15
  creator_is_admin: boolean;
20
16
  can_mod: boolean;
21
17
  creator_banned: boolean;
18
+ creator_is_moderator: boolean;
19
+ creator_banned_from_community: boolean;
22
20
  };
@@ -19,11 +19,10 @@ export type CommentView = {
19
19
  comment_actions?: CommentActions;
20
20
  person_actions?: PersonActions;
21
21
  instance_actions?: InstanceActions;
22
- creator_home_instance_actions?: InstanceActions;
23
- creator_local_instance_actions?: InstanceActions;
24
- creator_community_actions?: CommunityActions;
25
22
  creator_is_admin: boolean;
26
23
  post_tags: TagsView;
27
24
  can_mod: boolean;
28
25
  creator_banned: boolean;
26
+ creator_is_moderator: boolean;
27
+ creator_banned_from_community: boolean;
29
28
  };
@@ -0,0 +1,5 @@
1
+ export type CreateMultiCommunity = {
2
+ name: string;
3
+ title?: string;
4
+ description?: string;
5
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ import type { CommunityId } from "./CommunityId";
2
+ import type { MultiCommunityId } from "./MultiCommunityId";
3
+ export type CreateOrDeleteMultiCommunityEntry = {
4
+ id: MultiCommunityId;
5
+ community_id: CommunityId;
6
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -2,6 +2,7 @@ import type { CommentSortType } from "./CommentSortType";
2
2
  import type { FederationMode } from "./FederationMode";
3
3
  import type { LanguageId } from "./LanguageId";
4
4
  import type { ListingType } from "./ListingType";
5
+ import type { MultiCommunityId } from "./MultiCommunityId";
5
6
  import type { PostListingMode } from "./PostListingMode";
6
7
  import type { PostSortType } from "./PostSortType";
7
8
  import type { RegistrationMode } from "./RegistrationMode";
@@ -27,18 +28,20 @@ export type CreateSite = {
27
28
  discussion_languages?: Array<LanguageId>;
28
29
  slur_filter_regex?: string;
29
30
  actor_name_max_length?: number;
30
- rate_limit_message?: number;
31
- rate_limit_message_per_second?: number;
32
- rate_limit_post?: number;
33
- rate_limit_post_per_second?: number;
34
- rate_limit_register?: number;
35
- rate_limit_register_per_second?: number;
36
- rate_limit_image?: number;
37
- rate_limit_image_per_second?: number;
38
- rate_limit_comment?: number;
39
- rate_limit_comment_per_second?: number;
40
- rate_limit_search?: number;
41
- rate_limit_search_per_second?: number;
31
+ rate_limit_message_max_requests?: number;
32
+ rate_limit_message_interval_seconds?: number;
33
+ rate_limit_post_max_requests?: number;
34
+ rate_limit_post_interval_seconds?: number;
35
+ rate_limit_register_max_requests?: number;
36
+ rate_limit_register_interval_seconds?: number;
37
+ rate_limit_image_max_requests?: number;
38
+ rate_limit_image_interval_seconds?: number;
39
+ rate_limit_comment_max_requests?: number;
40
+ rate_limit_comment_interval_seconds?: number;
41
+ rate_limit_search_max_requests?: number;
42
+ rate_limit_search_interval_seconds?: number;
43
+ rate_limit_import_user_settings_max_requests?: number;
44
+ rate_limit_import_user_settings_interval_seconds?: number;
42
45
  federation_enabled?: boolean;
43
46
  captcha_enabled?: boolean;
44
47
  captcha_difficulty?: string;
@@ -51,4 +54,5 @@ export type CreateSite = {
51
54
  comment_downvotes?: FederationMode;
52
55
  disallow_nsfw_content?: boolean;
53
56
  disable_email_notifications?: boolean;
57
+ suggested_communities?: MultiCommunityId;
54
58
  };
@@ -2,6 +2,7 @@ import type { CommentSortType } from "./CommentSortType";
2
2
  import type { FederationMode } from "./FederationMode";
3
3
  import type { LanguageId } from "./LanguageId";
4
4
  import type { ListingType } from "./ListingType";
5
+ import type { MultiCommunityId } from "./MultiCommunityId";
5
6
  import type { PostListingMode } from "./PostListingMode";
6
7
  import type { PostSortType } from "./PostSortType";
7
8
  import type { RegistrationMode } from "./RegistrationMode";
@@ -81,33 +82,38 @@ export type EditSite = {
81
82
  /**
82
83
  * The number of messages allowed in a given time frame.
83
84
  */
84
- rate_limit_message?: number;
85
- rate_limit_message_per_second?: number;
85
+ rate_limit_message_max_requests?: number;
86
+ rate_limit_message_interval_seconds?: number;
86
87
  /**
87
88
  * The number of posts allowed in a given time frame.
88
89
  */
89
- rate_limit_post?: number;
90
- rate_limit_post_per_second?: number;
90
+ rate_limit_post_max_requests?: number;
91
+ rate_limit_post_interval_seconds?: number;
91
92
  /**
92
93
  * The number of registrations allowed in a given time frame.
93
94
  */
94
- rate_limit_register?: number;
95
- rate_limit_register_per_second?: number;
95
+ rate_limit_register_max_requests?: number;
96
+ rate_limit_register_interval_seconds?: number;
96
97
  /**
97
98
  * The number of image uploads allowed in a given time frame.
98
99
  */
99
- rate_limit_image?: number;
100
- rate_limit_image_per_second?: number;
100
+ rate_limit_image_max_requests?: number;
101
+ rate_limit_image_interval_seconds?: number;
101
102
  /**
102
103
  * The number of comments allowed in a given time frame.
103
104
  */
104
- rate_limit_comment?: number;
105
- rate_limit_comment_per_second?: number;
105
+ rate_limit_comment_max_requests?: number;
106
+ rate_limit_comment_interval_seconds?: number;
106
107
  /**
107
108
  * The number of searches allowed in a given time frame.
108
109
  */
109
- rate_limit_search?: number;
110
- rate_limit_search_per_second?: number;
110
+ rate_limit_search_max_requests?: number;
111
+ rate_limit_search_interval_seconds?: number;
112
+ /**
113
+ * The number of settings imports or exports allowed in a given time frame.
114
+ */
115
+ rate_limit_import_user_settings_max_requests?: number;
116
+ rate_limit_import_user_settings_interval_seconds?: number;
111
117
  /**
112
118
  * Whether to enable federation.
113
119
  */
@@ -162,4 +168,8 @@ export type EditSite = {
162
168
  * Dont send email notifications to users for new replies, mentions etc
163
169
  */
164
170
  disable_email_notifications?: boolean;
171
+ /**
172
+ * A multicommunity with suggested communities which is shown on the homepage
173
+ */
174
+ suggested_communities?: MultiCommunityId;
165
175
  };
@@ -0,0 +1,5 @@
1
+ import type { MultiCommunityId } from "./MultiCommunityId";
2
+ export type FollowMultiCommunity = {
3
+ multi_community_id: MultiCommunityId;
4
+ follow: boolean;
5
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import type { MultiCommunityId } from "./MultiCommunityId";
2
+ export type GetMultiCommunity = {
3
+ id: MultiCommunityId;
4
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ import type { CommunityView } from "./CommunityView";
2
+ import type { MultiCommunityView } from "./MultiCommunityView";
3
+ export type GetMultiCommunityResponse = {
4
+ multi_community_view: MultiCommunityView;
5
+ communities: Array<CommunityView>;
6
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,5 +1,6 @@
1
1
  import type { CommunityId } from "./CommunityId";
2
2
  import type { ListingType } from "./ListingType";
3
+ import type { MultiCommunityId } from "./MultiCommunityId";
3
4
  import type { PaginationCursor } from "./PaginationCursor";
4
5
  import type { PostSortType } from "./PostSortType";
5
6
  /**
@@ -16,6 +17,7 @@ export type GetPosts = {
16
17
  time_range_seconds?: number;
17
18
  community_id?: CommunityId;
18
19
  community_name?: string;
20
+ multi_community_id?: MultiCommunityId;
19
21
  show_hidden?: boolean;
20
22
  /**
21
23
  * If true, then show the read posts (even if your user setting is to hide them)
@@ -15,6 +15,8 @@ export type LemmyErrorType = {
15
15
  error: "not_an_admin";
16
16
  } | {
17
17
  error: "cant_block_yourself";
18
+ } | {
19
+ error: "cant_note_yourself";
18
20
  } | {
19
21
  error: "cant_block_admin";
20
22
  } | {
@@ -132,8 +134,6 @@ export type LemmyErrorType = {
132
134
  } | {
133
135
  error: "invalid_email_address";
134
136
  message: string;
135
- } | {
136
- error: "rate_limit_error";
137
137
  } | {
138
138
  error: "invalid_name";
139
139
  } | {
@@ -356,4 +356,10 @@ export type LemmyErrorType = {
356
356
  error: "couldnt_create_email_verification";
357
357
  } | {
358
358
  error: "email_notifications_disabled";
359
+ } | {
360
+ error: "multi_community_update_wrong_user";
361
+ } | {
362
+ error: "cannot_combine_community_id_and_multi_community_id";
363
+ } | {
364
+ error: "multi_community_entry_limit_reached";
359
365
  };
@@ -0,0 +1,5 @@
1
+ import type { PersonId } from "./PersonId";
2
+ export type ListMultiCommunities = {
3
+ creator_id?: PersonId;
4
+ followed_only?: boolean;
5
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,4 @@
1
+ import type { MultiCommunityView } from "./MultiCommunityView";
2
+ export type ListMultiCommunitiesResponse = {
3
+ multi_communities: Array<MultiCommunityView>;
4
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -1,4 +1,4 @@
1
1
  /**
2
2
  * A listing type for post and comment list fetches.
3
3
  */
4
- export type ListingType = "All" | "Local" | "Subscribed" | "ModeratorView";
4
+ export type ListingType = "All" | "Local" | "Subscribed" | "ModeratorView" | "Suggested";
@@ -3,7 +3,7 @@ import type { PostId } from "./PostId";
3
3
  export type LocalImage = {
4
4
  pictrs_alias: string;
5
5
  published_at: string;
6
- person_id: PersonId;
6
+ person_id?: PersonId;
7
7
  /**
8
8
  * This means the image is an auto-generated thumbnail, for a post.
9
9
  */
@@ -2,6 +2,8 @@ import type { CommentSortType } from "./CommentSortType";
2
2
  import type { FederationMode } from "./FederationMode";
3
3
  import type { ListingType } from "./ListingType";
4
4
  import type { LocalSiteId } from "./LocalSiteId";
5
+ import type { MultiCommunityId } from "./MultiCommunityId";
6
+ import type { PersonId } from "./PersonId";
5
7
  import type { PostListingMode } from "./PostListingMode";
6
8
  import type { PostSortType } from "./PostSortType";
7
9
  import type { RegistrationMode } from "./RegistrationMode";
@@ -141,4 +143,6 @@ export type LocalSite = {
141
143
  * Dont send email notifications to users for new replies, mentions etc
142
144
  */
143
145
  disable_email_notifications: boolean;
146
+ suggested_communities?: MultiCommunityId;
147
+ multi_comm_follower: PersonId;
144
148
  };
@@ -4,20 +4,20 @@ import type { LocalSiteId } from "./LocalSiteId";
4
4
  */
5
5
  export type LocalSiteRateLimit = {
6
6
  local_site_id: LocalSiteId;
7
- message: number;
8
- message_per_second: number;
9
- post: number;
10
- post_per_second: number;
11
- register: number;
12
- register_per_second: number;
13
- image: number;
14
- image_per_second: number;
15
- comment: number;
16
- comment_per_second: number;
17
- search: number;
18
- search_per_second: number;
7
+ message_max_requests: number;
8
+ message_interval_seconds: number;
9
+ post_max_requests: number;
10
+ post_interval_seconds: number;
11
+ register_max_requests: number;
12
+ register_interval_seconds: number;
13
+ image_max_requests: number;
14
+ image_interval_seconds: number;
15
+ comment_max_requests: number;
16
+ comment_interval_seconds: number;
17
+ search_max_requests: number;
18
+ search_interval_seconds: number;
19
19
  published_at: string;
20
20
  updated_at?: string;
21
- import_user_settings: number;
22
- import_user_settings_per_second: number;
21
+ import_user_settings_max_requests: number;
22
+ import_user_settings_interval_seconds: number;
23
23
  };
@@ -1,4 +1,3 @@
1
- import type { InstanceActions } from "./InstanceActions";
2
1
  import type { LocalUser } from "./LocalUser";
3
2
  import type { Person } from "./Person";
4
3
  /**
@@ -7,5 +6,5 @@ import type { Person } from "./Person";
7
6
  export type LocalUserView = {
8
7
  local_user: LocalUser;
9
8
  person: Person;
10
- instance_actions?: InstanceActions;
9
+ banned: boolean;
11
10
  };
@@ -0,0 +1,17 @@
1
+ import type { DbUrl } from "./DbUrl";
2
+ import type { InstanceId } from "./InstanceId";
3
+ import type { MultiCommunityId } from "./MultiCommunityId";
4
+ import type { PersonId } from "./PersonId";
5
+ export type MultiCommunity = {
6
+ id: MultiCommunityId;
7
+ creator_id: PersonId;
8
+ instance_id: InstanceId;
9
+ name: string;
10
+ title?: string;
11
+ description?: string;
12
+ local: boolean;
13
+ deleted: boolean;
14
+ ap_id: DbUrl;
15
+ published_at: string;
16
+ updated_at?: string;
17
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,8 @@
1
+ import type { CommunityFollowerState } from "./CommunityFollowerState";
2
+ import type { MultiCommunityId } from "./MultiCommunityId";
3
+ import type { PersonId } from "./PersonId";
4
+ export type MultiCommunityFollow = {
5
+ multi_community_id: MultiCommunityId;
6
+ person_id: PersonId;
7
+ follow_state: CommunityFollowerState;
8
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1 @@
1
+ export type MultiCommunityId = number;
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ // This file was generated by [ts-rs](https://github.com/Aleph-Alpha/ts-rs). Do not edit this file manually.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,6 @@
1
+ import type { MultiCommunity } from "./MultiCommunity";
2
+ import type { Person } from "./Person";
3
+ export type MultiCommunityView = {
4
+ multi: MultiCommunity;
5
+ owner: Person;
6
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -0,0 +1,10 @@
1
+ import type { PersonId } from "./PersonId";
2
+ /**
3
+ * Make a note for a person.
4
+ *
5
+ * An empty string deletes the note.
6
+ */
7
+ export type NotePerson = {
8
+ person_id: PersonId;
9
+ note: string;
10
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -3,4 +3,12 @@ export type PersonActions = {
3
3
  * When the person was blocked.
4
4
  */
5
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;
6
14
  };
@@ -21,10 +21,9 @@ 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;
26
- creator_community_actions?: CommunityActions;
27
24
  creator_is_admin: boolean;
28
25
  can_mod: boolean;
29
26
  creator_banned: boolean;
27
+ creator_is_moderator: boolean;
28
+ creator_banned_from_community: boolean;
30
29
  };
@@ -22,11 +22,10 @@ export type PersonPostMentionView = {
22
22
  person_actions?: PersonActions;
23
23
  post_actions?: PostActions;
24
24
  instance_actions?: InstanceActions;
25
- creator_home_instance_actions?: InstanceActions;
26
- creator_local_instance_actions?: InstanceActions;
27
- creator_community_actions?: CommunityActions;
28
25
  post_tags: TagsView;
29
26
  creator_is_admin: boolean;
30
27
  can_mod: boolean;
31
28
  creator_banned: boolean;
29
+ creator_is_moderator: boolean;
30
+ creator_banned_from_community: boolean;
32
31
  };
@@ -1,12 +1,11 @@
1
- import type { InstanceActions } from "./InstanceActions";
2
1
  import type { Person } from "./Person";
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
8
  is_admin: boolean;
9
- home_instance_actions?: InstanceActions;
10
- local_instance_actions?: InstanceActions;
9
+ person_actions?: PersonActions;
11
10
  creator_banned: boolean;
12
11
  };
@@ -14,7 +14,6 @@ export type PostReportView = {
14
14
  community: Community;
15
15
  creator: Person;
16
16
  post_creator: Person;
17
- creator_community_actions?: CommunityActions;
18
17
  community_actions?: CommunityActions;
19
18
  post_actions?: PostActions;
20
19
  person_actions?: PersonActions;
@@ -19,11 +19,10 @@ export type PostView = {
19
19
  person_actions?: PersonActions;
20
20
  post_actions?: PostActions;
21
21
  instance_actions?: InstanceActions;
22
- creator_home_instance_actions?: InstanceActions;
23
- creator_local_instance_actions?: InstanceActions;
24
- creator_community_actions?: CommunityActions;
25
22
  creator_is_admin: boolean;
26
23
  tags: TagsView;
27
24
  can_mod: boolean;
28
25
  creator_banned: boolean;
26
+ creator_is_moderator: boolean;
27
+ creator_banned_from_community: boolean;
29
28
  };
@@ -8,7 +8,7 @@ import type { SearchType } from "./SearchType";
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;
@@ -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,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";
@@ -0,0 +1,7 @@
1
+ import type { MultiCommunityId } from "./MultiCommunityId";
2
+ export type UpdateMultiCommunity = {
3
+ id: MultiCommunityId;
4
+ title?: string;
5
+ description?: string;
6
+ deleted?: boolean;
7
+ };
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ 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-rename-timestamp-to-at.3",
4
+ "version": "1.0.0-rename-rate-limit-columns.1",
5
5
  "author": "Dessalines",
6
6
  "license": "AGPL-3.0",
7
7
  "main": "./dist/index.js",